Understanding the Time Administration Process Flow

The batch process in Time Administration converts reported and scheduled time into payable time. It executes the rules you defined using Time and Labor's online tools, selects time reporters for processing, combines time reporters into batches, determines the period to process, and calculates prior period adjustments before passing time reporter data to your payroll system or other applications.

The programs that make up the batch process are listed in the following table in the order in which they are run:

Program Name (Technical)

Function

TL_TIMEADMIN

Main Module

TL_TA000200

Step 1: Determining Time Reporters to Process

TL_TA000300

Step 2: Combining Time Reporters into Batches

TL_TA000400

Step 4: Building the Rule Map

TL_TA000501

Step 5: Batch Process Driver

TL_ABS_RSVL

Resolve Absence Data

TL_TA000600

Step 8: Matching Punches

TL_SCHRES_AE

Schedule resolve callable routine.

TL_TA000700

Step 9: Creating Intermediate Payable Time

TL_TA000750

Step 10: Tracking Attendance

TL_TA000850

Step 11: Apply Rounding

TL_TA_RULES

Rules Processing

TL_TA000900

Step 12: Validate Data and Perform Estimated Gross

TL_VALD_MAIN

Step 13: Time Validation

TL_TA001000

Step 14: Processing Offsets

TL_TA001100

Step 15: Updating Payable Time

TL_TA001200

Approvals and Notifications

TL_TA001300

Step 16: Updating TR Status

The following sections present detailed information about each of these steps.

This diagram illustrates the Time Administration process flow

gv_TimeAdministrationProcessFlow7e7b_htlr7f03

Time Administration, the core process in Time and Labor, produces payable time that is passed to other applications such as Payroll and Project Costing. It is critical that this process produces accurate results and successfully completes within a certain processing window. Time Administration is an iterative process that only processes records that need processing. Depending on the size of the population at your installation, you may need to configure Time Administration to run concurrently to reduce clock time in order to fit your processing window.

Time Administration is a complex process comprised of many Application Engine (AE) programs. The main driver for the Time Administration process is TL_TIMEADMIN. When invoked, TL_TIMEADMIN calls other Application Engine processes to perform various tasks. Most of these subprograms contain the prefix of TL_TA followed by a six-digit number starting from 000200 to 001300. Subprograms that do not contain a number have been added to increase performance.

This diagram illustrates the subprograms called by TL_TIMEADMIN

TL_TIMEADMIN Application Engine Processes

The following table lists the Application Engine processes associated with Time Administration and describes:

  • The function of each Application Engine.

  • Tables accessed during the Application Engine process.

  • Tables updated during the Application Engine process.

Application Engine

Function

Tables Accessed/Updated

TL_TIMEADMIN

This is the main Time Administration driver program. It performs initialization tasks, calls other AE programs to perform various tasks, and performs finalization tasks.

Note: The following table names listed ending with XX are temporary tables. You will need to replace XX with the correct temp table instance number before accessing them. Temp table instance number can be found in your AET log file or the Temp Tables tab of the Process Monitor while the process is running.

TL_TA000200

  • Calls TL_RCTRL_AE to resolve population specified on the run control as group(s).

  • Selects all multiple jobs regardless of the Time Administration status and earliest changed date even if multiple jobs are not specified on run.

Tables Accessed:

TL_TR_STATUS – selects records with TA_STATUS of Y or X and EARLIEST_CHGDT <= Process Date.

Tables Updated:

TL_TA_TRLISTXX – contains a list of time reporters to be processed in subsequent steps of Time Administration.

TL_TA000300

  • Groups time reporters into batches according to their workgroup, rule program, and start date.

  • Sets period of interest (POI) for each batch.

    Sets TA_STATUS to X for time reporters being processed.

    1. Identifies employee workgroups.

    2. Checks if multiple jobs are in the same workgroup. If so, multiple jobs are included in the same batch of the EmplID/Rcd specified on the run control or resolved from the group population. At this stage POI for these jobs is based on the minimum earliest change date of all the jobs where TA_STATUS ='Y'. If one of the jobs has a TA_STATUS ='N' that job is included.

    3. If multiple jobs are not in the same workgroup, the code checks the TL installation option to include multiple jobs.

    4. If the TL installation option is configured to include these jobs, they are placed in another batch and these batches are based on the earliest change date and TA status.

    5. If the installation options is configured not to run multiple jobs, then multiple jobs are removed from further processing when they are not in the same workgroup.

    6. Batches are further broken up based on the employee workgroup changes, and any effective date change in a workgroup, and any effective date change in the rule program.

    7. The TL_EXC_RESL process occurs a this point to resolve pending time reporting exceptions (see the next row in this table).

      After all the above, the TA_STATUS is set to 'X' to restrict the same employee being processed in another Time Admin process in case of concurrent runs.

Tables Accessed:

  • TL_INSTALLATION – contains Batch Size.

  • TL_TA_TRLISTXX – contains list of time reporters to be processed.

  • TL_TR_STATUS – sets TA_STATUS to X for all time reporters being processed.

Note: You can adjust the batch size (Max Employees In Rules Run) on the Installation Options page to increase or decrease the number of batches.

Tables Updated:

TL_TA_BATCH%XX – contains batches of time reporters.

Note: There are many temp tables with the prefix TL_TA_BATCH that hold batch related data.

TL_TR_STATUS – sets TA_STATUS to X for all time reporters being processed.

Note: The Time Administration process deletes a batch when there is no reason to process the employees in the batch. The rows that are deleted from TL_TA_BATCH result in gaps in the table.

If there still are high severity exceptions that are not resolved (from source TVP / TVE) and if theContinue with Exceptions check box is cleared in the Time Administration Options group box on the TL Installation page, TimeAdmin will remove those employees from the current batch.

TL_TA000400

Creates rule maps – contains rules to be executed in priority order for each batch.

Tables Accessed:

TL_TA_BATCHXX – contains batches of time reporters.

Tables Updated:

  • TL_TA_BAT_SUMXX – contains high-level rule information to be executed for each batch.

  • TL_RULE_MAPXX – contains detailed rule information to be executed in priority order for each batch.

TL_TA000501

Calls TL_TRPROFILE – to create time reporter profiles.

If Time and Labor is integrated with Global Payroll or Payroll for North America using Absence Management, or both, this step loads the Workgroup, PNA pay group and GP pay group attributes, including holiday configurations.

  • Truncates temporary tables contained in TL_WORK_TABLES.

  • Updates Run Time Statistics.

  • Calls TL_SCHRES_AE – to resolve schedules.

  • Calls TL_ABS_RSLV – to resolve absences.

  • Calls TL_TA000600 – to match punches, pre-rule punch rounding and applies day breaker options.

  • Calls TL_TA000700 – to create intermediate payable time (IPT).

  • Calls TL_TA000750 – to process attendance data.

  • Calls TL_TA000850 – to apply rules.

  • Calls TL_TA000900 – to apply post rule rounding, and to distribute the task profile.

Tables Accessed:

TL_TA_BATCH%XX – contains batches of time reporters.

Tables Updated:

  • TL_TA_BATCH%XX – contains batches of time reporters. Start date and end date get adjusted when there are changes.

  • TL_PROF_LISTXX – contains a list of time reporters for all batches being processed.

  • TL_PROF_WRKXX – contains a list of time reporters with JOB, EMPLOYMENT, PERSONAL, BADGE, and Time and Labor data.

Note: TL_PROF_WRKXX can be used in custom rules to improve performance.

TL_SCHRES_AE

Tables Accessed:

TL_PROF_WRK – contains time reporter data.

Tables Updated:

WRK_ADHOC_TAOXX

TL_ABS_RSLV

Tables Accessed:

  • WRK_ADHOC_TAOXX,TL_RPTD_TIME

  • GP_ABS_EVENT – contains absence data.

  • GP_RSLT_ABS – contains processed absence data

Tables Updated:

  • TL_ABS_WRKXX – contains absence data by DUR.

  • TL_TOTAL_QTYXX – contains employees quantity of reported time, scheduled time, absence by DUR.

TL_TA000600

Converts punch time into elapsed time by calculating duration between two consecutive punches. Applies day breaker options and applies pre-rule punch rounding.

Before inserting schedule punch time into the punch match table, the system checks for absence data for the days.

Tables Accessed:

  • TL_RPTD_TIME – contains punch time entries.

  • WRK_ADHOC_TAOXX – contains schedule details and applies day breaker options to schedule punch time.

Tables Updated:

TL_MTCHD_1XX – contains matched punches.

TL_TA000700

Load absences (if integrated).

Creates intermediate payable time (IPT) from matched punches (created by TL_TA000600), and reported elapsed time. Scheduled time is only created for workgroups with exceptions.

Tables Accessed:

  • TL_MTCHD_1XX – contains matched punches.

  • TL_RPTD_TIME – contains reported elapsed time.

  • WRK_ADHOC_TAOXX – contains scheduled time.

  • TL_TOTAL_QTYXX

  • TL_ABS_WRKXX – contains absence events reported in Global Payroll and Absence Management.

Tables Updated:

TL_IPT1XX– contains intermediate payable time data for all time reporters in the current batch.

TL_TA000750

Processes attendance data.

Tables Accessed:

  • TL_IPT1– contains intermediate payable time data for all time reporters in the current batch.

  • WRK_ADHOC_TAOXX – contains scheduled time.

  • TL_ATTEND_PGMXX – contains attendance program data.

Tables Updated:

  • TL_IPT1– contains intermediate payable time data for all time reporters in the current batch.

  • TL_ATTEND_HIST – contains attendance history data.

  • TL_ATTENDANCE – contains current attendance data.

TL_TA000850

Calls TL_TA_RULES to apply rules in the order specified on the rule program for each batch.

Tables Accessed:

  • TL_IPT1XX– contains intermediate payable time data for all time reporters in the current batch.

  • WRK_ADHOC_TAOXX – contains scheduled time.

  • TL_PROF_WRKXX – contains time reporter profiles.

Tables Updated:

TL_IPT1XX– contains intermediate payable time data for all time reporters in the current batch.

TL_TA000900

  • Calculates estimated gross amounts.

  • Applies rounding rules.

Tables Accessed:

  • TL_IPT1XX– contains intermediate payable time data for all time reporters in the current batch.

  • WRK_ADHOC_TAOXX – contains scheduled time.

  • TL_PROF_WRKXX – contains time reporter profiles.

Tables Updated:

TL_IPT1XX– contains intermediate payable time data for all time reporters in the current batch.

TL_VALD_MAIN

Post rule validation

  • Validates data and issues exceptions based on the validation and exception configuration. (Validations are not run on absence rows.)

  • Deletes resolved exceptions (no longer exists in TL_EXCEPT_WRK) from TL_EXCEPTION.

  • Inserts new exceptions into TL_EXCEPTION.

  • Updates unresolved exceptions with current date/time stamp.

Tables Accessed:

  • TL_VALID_DATAxx — join of TL_RPTD_TIME and TL_IPT1 tables. All validations executed on this one record.

    Multiple exceptions can exist for each day.

  • TL_EXCEPT_WRKXX – contains a list of exceptions in the current batch.

  • TL_EXCEPTION – contains updated exceptions.

TL_TIMEADMIN.JB000

  • Calculate Absence PT for NA employees

  • Inserts into IPT1

Table Accessed:

GP_PI_GEN_DATA — contains processed absence Positive Inputs

TL_TA001000

Creates offsets.

Creates offsets for absence rows that are from Global Payroll only.

Note: Payroll for North America processes offsets for absences created and passes negative absence rows into TL_PAYABLE_TIME.

Tables Accessed:

  • TL_IPT1XX– contains intermediate payable time data for all time reporters in the current batch.

  • TL_PAYABLE_TIME – contains payable time previously created.

  • TL_TA_BATCHXX – contains a list of time reporters in the current batch.

Tables Updated:

  • TL_TA_SE_DATEXX – contains a list of employees in the current batch with start date and end date.

  • TL_TA_PAY_TMXX – contains payable time records for the current batch within start date and end date.

  • TL_TA_OFFST01XX – contains payable time rows from TL_PAYABLE_TIME.

  • TL_TA_OFFST02XX – contains intermediate payable time rows from TL_IPT1. Excludes rows if the RT_SOURCE is 'AM' or if the PAY_SYSTEM is 'NA.'

  • TL_TA_OFFSETXX – contains offset rows to be inserted into TL_PAYABLE_TIME.

  • TL_IPT1XX – contains intermediate payable time for the current batch. IN_BATCH field gets set to 'N' in TL_TA001000 for previously processed payable time rows that have not changed.

TL_TA001100

  • Deletes existing payable time or forecasted payable time.

  • Inserts new rows of payable time or forecasted payable time.

  • Updates Payable_Status on TL_PAYABLE_TIME.

  • Calls TL_PTCOMPB – to process Comp Time.

  • Deletes absence rows from TL_IPT1 if PNA is the payroll system and online rules are not run.

  • Does not delete absence rows if online rules are run, regardless of the payroll system (GP or PNA).

Tables Accessed:

  • TL_TA_SE_DATEXX – contains a list of employees in the current batch with start date and end date.

  • TL_PAYABLE_TIME – contains payable time previously created.

  • TL_TA_BATCHXX – contains a list of time reporters in the current batch.

  • TL_TA_OFFSETXX – contains offset rows to be inserted into TL_PAYABLE_TIME.

Tables Updated:

  • TL_TA_PAYW_TMXX – contains payable time records for the current batch within start date and end date.

  • TL_TA_PAY_TMXX – contains sequenced payable time records for the current batch within start date and end date.

  • TL_PAYABLE_TIME – contains updated payable time.

TL_TA001200

  • Notifies exception reviewers

  • AWE approvals

  • Direct approvals

  • Non-AWE approvals

Tables Updated:

  • TL_MGR_NOTIFY

  • TL_PAYABLE_TIME

  • TL_APP_PAY_HDR

  • TL_APP_PAY_LINE

Note: TL_TA001200 is where Time Administration interacts with the AWE application.

TL_TA001300

  • Sets TA_STATUS to N and ECD to Null for positive time reporters without exceptions.

  • Sets TA_STATUS toY and ECD to the first day of the next period for exception time reporters without exceptions

  • Sets TA_STATUS toY and ECD to the first instance of unresolved exception for all time reporters with exceptions.

Tables Accessed:

  • TL_TA_BATCHCXX – contains a list of time reporters in the current batch.

  • TL_EXCEPTION – contains all exceptions.

  • TL_TRSTAT_BFRXX – contains a list of time reporters for the current batch.

  • TL_TR_STATUS – contains a row for each time reporter enrolled in Time and Labor.

Tables Updated:

TL_TR_STATUS – contains an updated row for each time reporter enrolled in Time and Labor.

TL_TR_STATUS is a control table in Time and Labor that is regularly updated by Time Administration and other processes. It is important to understand how and when this record gets created and updated, since it essentially controls the behavior of Time Administration.

When time reporters are enrolled in Time and Labor, the system creates a TL_TR_STATUS control record for each distinct time reporter. This control table is updated when certain changes are made to time related data. Specifically, there are two fields that tell Time Administration how much data to process for each time reporter:

  • TA_STATUS

  • EARLIEST_CHGDT

For exception and positive time reporters, TA_STATUS is initially set to Y and EARLIEST_CHGDT is set to the Time and Labor enrollment date.

When changes are made to reported time, EARLIEST_CHGDT gets updated if EARLIEST_CHGDT is later than the change date and TA_STATUS is set to Y.

Time Administration selects records with TA_STATUS = Y or X and EARLIEST_CHGDT is earlier or equal to the Process Date specified on the run control to be processed.

At the beginning of Time Administration (TL_TA000300), TA_STATUS gets set to X to indicate to other processes that it is being processed.

At the end of Time Administration (TL_TA001300), TA_STATUS and EARLIEST_CHGDT get updated as follows:

  • For positive time reporters without exceptions, TA_STATUS gets set to N and EARLIEST_CHGDT gets set to the latest date of payable time. If no changes are made to reported time, positive time reporters will not be selected for processing in subsequent Time Administration runs.

  • For exception time reporters without exceptions, TA_STATUS gets set to Y and EARLIEST_CHGDT gets set to the first day of the next time period (specified on work group). Exception time reporters will always be selected for processing in subsequent Time Administration.

  • For all time reporters with exceptions, TA_STATUS gets set toY and EARLIEST_CHGDT gets set to the first day of the exception. This way, exceptions will be processed and resolved.

Note: The Earliest Change Date (ECD) will be reset to the effective date upon rehiring or when reactivating a time reporter. ECD will not be reset if there are previous pending rows to be processed.

The following terms and concepts are used throughout the documentation on batch processing, and are defined:

Term

Definition

Date Under Report (DUR)

The actual date of the time being reported for a shift as defined by the Day Breaker Options and Day Breaker Range.

Earliest Change Date (EARLIEST_CHGDT)

The date-under-report of the earliest addition or update to time-related data for a time reporter since the last Time Administration run.

The earliest change date helps determine both the range of dates and the amount of data that will be processed for each time reporter.

TA Status (TA_STATUS)

This field is used to determine whether a time reporter should be processed through Time Administration. Valid values are Y (the time reporter should be processed) and N (the time reporter should not be processed).

Process Instance

Has a process instance value when the TL_TR_STATUS was last updated by a batch process, such as Time Admin or Submit Time.