Is this a case where an employee can work on Job A, then switch to Job B with Job A incomplete so that you need to account for only the time spent on Job A before they switch to a different job? The pause being the moment in time that they choose to work on a different job?
If so, I suggest an alternative approach. Set up your system to support the creation of multiple records in Employee Data that can all have the same Employee ID, Date and Job Number. When an employee switches to a different Job, they clock out of that job and clock into a different job--creating a new record in Employee Data. When they later return to the first Job, they start a new record in Employee Data--even if this is the 2nd, 3rd, however many time that they have started work on that job on the same day.
In employee data table i have a field for active or not, When they start a job it sets the active field at 1 so when i search later for end time i set field to "" to deactivate that record from searches. I plan on doing a search that will give me the pieces per hr later on but with multiple records of in ,out ,paused im not sure how to start that calc with so many starts and stops.
if i did it with multiple starts and stops they would have to enter start and stop counts every time they paused the job.
If I create a new table called Employee Data Pause, create fields for employee, job, in time, out time, date. I can then reference these records and minus this time from the Employee Data Records. Right?
That Seems like to much just for a pause feature
So now the question would be...What is a good calculation to take the record with Job, in time, out time with a status field of "RUN" and minus the record with the status field "PAUSE" to get total time on job ?
Main Time Record
Job Employee Date status in out 1 bill 7/28/2014 Run 8:00 AM 11:00 AM
minus pause record
Job Employee date status in out 1 bil 7/28/2014 Pause 8:50 AM 9:20 AM
Offering assistance here in the forum is often like peeking through a key hole to the front door of a house and trying to figure out the color of the walls in the bathroom. There often just isn't enough info available to be sure a suggestion is going to work due to a lack of critical details.
My assumptions about your project were quite different from what you now describe. I figured you were simply tracking employee time spent on different projects and in those cases, the employee needed only to click a button to "clock out" and then select a project for the new record where the time would be automatically logged by the act of creating that new project record. An further data entry would not have been needed except under cases where an employee does not log in or out as promptly as they should.
You now appear to be computing a production total--that's critical info not described in your original post. (yes there is a count field when I review that original post, but you did not describe how this field is to be used and I guessed incorrectly.)
Let's back up a bit and make sure that we are really on the same page. Please describe the production environment here and how a "pause" affects the results you need to log in more detail and what that "pause" means for your production environment.
I apologize for not explaining more in depth.
This is in a production area where the user "logs" into a job.Sometimes that user gets pulled away from their station multiple times a day. I need a way to "Pause" their production job time so i may later look at the numbers to see if we need to change our billing info on a per job basis(if certain jobs are taking longer at certain stations).
So, the user walks up to an ipad, scans the barcode for the job, selects which part of the job they are running, and it creates a record with job number, name, date, active, in time, status, and begin count if there is one. This is done in the Employee Data Table.
Then when finished with job, the user logs into the ipad, it shows they are logged into this job, they hit the select job button, it takes them to the complete area where they enter an end count, hit the button and it goes and finds that active record, deselects the active part, sets out time and enters end count.
All this is running in as we speak with no problems. I could do as you said phil, which is to add another record, but i for see a lot of pause records in the future. I actually have that set up, but noticed all the records being created with paused as the status, so i took it out for now.
I could create the paused record, then when the user clicks the unpaused button have it find the paused status record and change that record instead of creating a new one.
I hope i explained the process better this time.
That helps a lot, but now please explain what should happen to your data in general terms due to a pause. Do you just need to stop accruing time on that job or is there other data collected that must reflect the pause? It's that ongoing count that interests me here as I think that's where you have a concern and if your work flow is like I think it is, we can manage this without having to enter a count each time the worker pauses and still be able to generate separate records unless the count of pieces completed between pauses are significant and then you'd have to record this data regardless of how you pause things.
"I forsee a lot of pause records" doesn't dissuade me as there are a number of ways to work with that data that can pull all the different "slices" of time that refer to the same project on the same date and combines them into a single row of data. What becomes the key issue is whether logging that pause as a new record will impede employee work flow. I can't tell if that will happen here or not as I'm not clear on what needs to happen during a pause.
Knowing how many times that the user had to "pause" during a shift might even be useful info, you might identify problem areas where an employee needs to be managed differently in order to reduce the number of times that they are pulled off a job to do something else.
The pause is there to stop the accruing time on that job for that user.
Right now, I have created a pause button, that performs a find for current job, sets status to "Run/Paused",active to "",enters time out, creates a new record with timestamp, date, user, job, status as "Paused",sets active as "1", Then logs them out of the station. Then the user logs back in and the job is showing as "Paused" , so the user will click the Un-Pause button which performs a find for the status "Paused" ,changes status to "Run", sets in time as current, then logs the user out of station.
I thought this way would be to messy to find the PPH later on.
I don't foresee more than 5 pauses per day for maybe 4 employees.
My dilemma now is, finding the Pieces per hr for that machine, job and user.