entering value while code is running

I have four machines, for the first machine i need to enter its number and the job which is going to be done on it and time its will take to complete that job and start timing, while its timing I want to be able to enter the parameters of the second job, but I am failing to do that,

[code#include <Wire.h> 
#include "DFRobot_RGBLCD.h"
#include <Keypad.h>





const byte ROWS = 4;
const byte COLS = 4;

char hexaKeys[ROWS][COLS] = {
  {'1', '4', '7', '*'},
  {'2', '5', '8', '0'},
  {'3', '6', '9', '#'},
  {'A', 'B', 'C', 'D'}
};

byte rowPins[ROWS] = {9, 8, 7, 6};
byte colPins[COLS] = {5, 4, 3, 2};

Keypad customKeypad = Keypad(makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS);
Keypad keypad = Keypad( makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS );
DFRobot_RGBLCD lcd(16, 2);  


enum {ST_INPUT, ST_RUNNING, ST_SIREN} currentState = ST_INPUT;
float Value = 0;
char customKey;


void setup(){
  lcd.init(); 
  
 
}

void loop()
{
   job1();  
}


int job1()
{


  int value = 0;                                
  int keyval;                                   
  int isnum;                                    
  lcd.print("ENTER M/C NO. ");
  lcd.setCursor(0,1);
  do
  {
    
    keyval = keypad.getKey();                          
    isnum = (keyval >= '0' && keyval <= '9');         
    if (isnum)
    { 

      
      lcd.print(keyval - '0');
      
      value = value * 10 + keyval - '0';               
    }

  } while (isnum || !keyval ); 
  if(value>=1 && value <=25){                     
  lcd.print(" ");
  delay(1000);
  lcd.clear();
  JobNumber();
  Minutes();
  TimeA();
 
  delay(1000);
  lcd.clear();
 // job2();
 //return value;
  
  }
  else {
      lcd.clear();
      lcd.print("INVALID M/C NO.");
      delay(1000);
      lcd.clear();
    
    }


}
int job2()
{

  unsigned long CurrentMillis;
  unsigned long previousePulseMillis;

  int value = 0;                               
  int keyval;                                     
  int isnum;                                   
  lcd.print("ENTER M/C NO2.");
  lcd.setCursor(0,1);
  do
  {
    keyval = keypad.getKey();                          
    isnum = (keyval >= '0' && keyval <= '9');         
    if (isnum)
    {
      
      
      lcd.print(keyval - '0');
      value = value * 10 + keyval - '0';               
    }

  } while (isnum || !keyval);                          
  if(value>=1 && value <=25){
  lcd.print(" ");
  delay(1000);
  lcd.clear();
  JobNumber();
  Minutes();
  CurrentMillis = millis()/60000;
  if(CurrentMillis - previousePulseMillis >= Value){
    lcd.clear();
     lcd.print("Job 2");
  }
  lcd.clear();
//job3();
  return value;
  }

  else  {
      lcd.clear();
      lcd.print("INVALID M/C NO.");
      delay(1000);
      lcd.clear();
    
    }

}

int job3()
{

 unsigned long currentMillis;
 unsigned long previousPulseMillis = 0;

  int value = 0;                                
  int keyval;                                     
  int isnum;                                    
  lcd.print("ENTER M/C NO3.");
   lcd.setCursor(0,1);
  do
  {
    keyval = keypad.getKey();                         
    isnum = (keyval >= '0' && keyval <= '9');         
    if (isnum)
    {
      
     
      lcd.print(keyval - '0');
      value = value * 10 + keyval - '0';              
    }

  } while (isnum || !keyval);                         
   if(value>=1 && value <=25){
  lcd.print(" ");
  delay(1000);
  lcd.clear();
  JobNumber();
  Minutes();
 currentMillis = millis()/1000;
  if(currentMillis - previousPulseMillis >= Value){
    lcd.clear();
     lcd.print("Job 2");
  }
  lcd.clear();
  //job4();
  return value;
   }
 else  {
      lcd.clear();
      lcd.print("INVALID M/C NO.");
      delay(1000);
      lcd.clear();
    
    }

 
}

int job4()
{

  unsigned long currentMillis;
  unsigned long previousPulsMillis = 0;

  int value = 0;                                
  int keyval;                                     
  int isnum;                                    
  lcd.print("ENTER M/C NO4. ");
   lcd.setCursor(0,1);
  do
  {
    keyval = keypad.getKey();                          
    isnum = (keyval >= '0' && keyval <= '9');         
    if (isnum)
    {
      
     
      lcd.print(keyval - '0');
      value = value * 10 + keyval - '0';               
    }

  } while (isnum || !keyval);                         
   if(value>=1 && value <=25){
  lcd.print(" ");
  delay(1000);
  lcd.clear();
  JobNumber();
  Minutes();
   currentMillis = millis()/1000;
  if(currentMillis - previousPulsMillis >= Value){
    lcd.clear();
     lcd.print("Job 2");
  }
  lcd.clear();
  return value;
   }
else {
      lcd.clear();
      lcd.print("INVALID M/C NO.");
      delay(1000);
      lcd.clear();
    
    }
  
}

int JobNumber(){

char JobNumber1 = '1';
char JobNumber2 = '2';
char JobNumber3 = '3';
char JobNumber4 = '4';
char JobNumber5 = '5';
char JobNumber6 = '6';
char customKey;

 
lcd.print("Enter Job No.");
      lcd.setCursor(0,1);
      customKey = customKeypad.waitForKey();
      if(customKey == JobNumber1){
        lcd.print("DYE LOT SEL.");
        delay(1000);
        lcd.clear();
      }

        else if (customKey == JobNumber2){
          lcd.print("D/CREEL SEL.");
          delay(1000);
          lcd.clear();
          }
       else if(customKey == JobNumber3){
        lcd.print("PACK SEL.");
        delay(1000);
        lcd.clear();
        }
        else if(customKey == JobNumber4){

                lcd.print("CREEL SEL.");
                delay(1000);
                lcd.clear();
            
          }
      else if(customKey ==JobNumber5){
        
              lcd.print("CUT/TIE SEl.");
              delay(1000);
              lcd.clear();
        }
    else if(customKey == JobNumber6){
      
       lcd.print("WRAP SEL");
       delay(1000);
       lcd.clear();
      }
      else{
      lcd.print("INVALID JOB NO.");
      delay(1000);
      lcd.clear();
      }
}




int Minutes()
{
                                  // the number accumulator
  int customKey;                                     // the key press
  int isnum;                                    //is it a number?
  lcd.print("ENTER TIME: ");
  lcd.setCursor(0,1);
  do
  {
    customKey = keypad.getKey();                          // input the key
    isnum = (customKey>= '0' && customKey <= '9');         // is it a digit?
    if (isnum)
    {
      lcd.print(customKey - '0');
      Value = Value * 10 + customKey- '0';               // accumulate the input number
    }

  } while (isnum || !customKey);                          // until not a digit or while no key pressed
  //Serial.println(" "); Serial.print("Returning "); Serial.println(value);
  lcd.print(" ");
  return Value;

}//getKeyp


 int TimeA(){
 float x;
 unsigned long currentMillis;
 unsigned long previousMillis = 0;
currentMillis = millis()/1000;
  if(currentMillis - previousPulsMillis >= Value){
    lcd.clear();
     lcd.print("Job 2");
  }
  }
  
  
 

]

[/code]

Why did you start a new thread for this ? Is it not a direct follow on from your previous thread ?

Whatever you are doing it is almost certainly not necessary to repeat the same code several times to collect parameters for each job and the use of multiple 10 second delay()s negates the use of millis() for timing.