[DONE] Timecode Fields

So, we have implemented a version of time log that does time in and time out stamps ( Full Time Card System ).  Keep in mind that we are using pyQT to build our interface and manage translations of display values to shotgun values.  One of the ways we were able to make a functional time card system that exports data to ADP was to use the time code field to denote time-in and time-out.  So for example if I came into the office at 9:00 AM and left at 6:00pm we would have a time-in value of 09:00:00:00 and a time out value of 18:00:00:00 and a date field for the day.  This actually works out really well when calculating OT and Double Time.  So lets say I came in at 9:00 on one day and left the following day the time log entry would have a date stamp for the day I arrived, a time in stamp for that same day and a time out stamp that is greater than 24:00:00:00.  It all seems to work out very well.  The one thing that is kind of a crutch is the conditional filtering for the time code field is poorly implemented.  We are trying to do the following:


1.  If a time-in code is greater than 09:00:00:00 to see who is coming into the office late.

2.  If a time-out code is greater than 24:00:00:00 to see who is staying at the office doing double time.

3.  If a time-out stamp is less than 18:00:00:00 to see who is leaving before 6:00pm


In the future it might be nice to have the ability to have an option for time code fields that allows the user to manage the way the data is displayed for that time code field.  So currently the field displays an integer as 16:00:00:00. It would be nice to be able to display that filed in the following ways:


1. 16:00:00:00 ( Time Code )

2. 16:00 ( Army Time)

3.  4:00 PM ( Regular Time )


It would also be nice to have the ability to delineate what are acceptable values.  So if a studio decides to only allow users to enter time in 15 minute increments you would want the ability to translate the following:


Input - 16:09:00:00 ( Time Code )

Output - 16:15:00:00 ( Time Code )

Output - 16:15 ( Army Time)

Output - 4:15 PM ( Regular Time )


Some of these suggestion will go a long way to make time logs a time card system while also improving time code interactivity.  Please consider these improvements as a high priority.



1 条评论

  • 0

    This is a very cool use of Timecode fields to meet your needs Romey. However, the Timecode column type is specifically designed for tracking and displaying editorial cut-related information. Modifying it to act more like a time tracking field is probably not the way we want to go since this field is specifically designed to adhere to certain standards.

    We also support the datetime field type that would probably work well for this type of setup.

    We also have a TimeLog entity type with can be used for tracking specific time spent on Tasks. While not the same thing as time cards, you can read detailed information about Time Logs now in our docs: Using Time Logs  and Administrator's Guide to Time Logs.

    For field validation, we're following along in this forum post: https://support.shotgunsoftware.com/entries/27093-simple-field-validation