![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
Previous | Next | Contents | Index | Navigation | Glossary | Library |
Business Rule: Create overtime premium transactions charged to the contract project on which the overtime was worked.
You charge overtime premium costs to the project and task on which the overtime is worked. You also bill the overtime premium costs at cost, and bill all straight time hours based on the billing methods defined for the project and task.
Employees identify the overtime hours worked on their timecard with one of the following expenditure types:
Note: This is a different method of accounting for overtime premium costs than charging overtime premium to a indirect project as supported by the Overtime Calculation extension provided by Oracle Projects
Suggestion: If you determine that you need to use both the Labor Transaction Extension and the Overtime Calculation extension to process overtime for your employees, you need to ensure that you have defined conditions in each of these functions so that each transaction is processed by only one of these functions, based on your company policies.
The following chart displays an example of the transactions that may exist on a project for which overtime is charged according to this business rule.
Source | Expenditure Type Class | Quantity | Cost Rate | Raw Cost | Bill Rate | Billable Status | Bill Amount |
---|---|---|---|---|---|---|---|
Professional | Straight Time | 8 | $40 | $320 | $140 | Yes | $1,120 |
Time and Half (Source Transaction) | Straight Time | 2 | $40 | $80 | $140 | Yes | $280 |
Time and Half Premium | Overtime | 0 | 20 (40 X .5) | $40 (A) | N/A | Yes | $40 (B) |
(A) Raw Cost = Raw Cost Amount X Time and Half Premium Multiplier: $80 X .5 | |||||||
(B) Bill Amount = Raw Cost Amount of Overtime Premium Transaction: (A) = (B) | |||||||
Table 1 - 94. (Page 1 of 1) Overtime Premium to Contract Project Example |
Suggestion: Review the PL/SQL code that corresponds to the implementation of this case study in the files PAXCCETB.pls and PAXICTMB.pls located in the Oracle Projects admin/sql directory.
First, you define expenditure types classified with the Straight Time expenditure type class; these expenditure types are used by employees to identify overtime worked when recording their timecards.
Next, you define expenditure types classified with the Overtime expenditure type class, which is used to identify the overtime premium transactions. These expenditure types are named using the corresponding expenditure type that identifies the overtime worked along with the word Premium concatenated to the end of it. For example, the Double Time Premium expenditure type holds the overtime premium costs for the overtime worked identified by the expenditure type of Double Time.
Expenditure Type | Expenditure Type Class |
---|---|
Double Time | Straight Time |
Time and Half | Straight Time |
Double Time Premium | Overtime |
Time and Half Premium | Overtime |
Related Item Expenditure Type | Labor Cost Multiplier |
---|---|
Double Time Premium | 1 |
Time and Half Premium | .5 |
Raw Cost Calculation. Cost straight time items according to the standard processing of Oracle Projects (hours X employee hourly cost rate).
Burdening. Burden straight time cost based on project and task setup using the standard cost plus processing of Oracle Projects.
Billable Status. All straight time transactions are billable, as determined by the project and task setup.
Bill Amount. Bill straight time labor as determined by the billing setup for projects and tasks using standard billing methods.
Accounting. Account for all straight time costs and revenue to contract projects according to your AutoAccounting rules.
Creating Overtime Premium Transactions. To create the overtime premium transactions for each overtime transaction recorded on a timecard, use the Labor Transactions Extension. See: Labor Transactions Extensions.
Suggestion: Review the file PAXCCETB.pls to see the PL/SQL code that creates the overtime premium transactions.
Identifying Overtime Transactions. You can identify the overtime transactions for which to create overtime premium transactions based on the implementation data defined for this business requirement. You create overtime premium transactions for all overtime transactions classified with an expenditure type name that also exists as a labor cost multiplier name. This functionality is illustrated in the example in the template files for the labor transaction extension.
You could also have identified these transactions by explicitly listing the appropriate expenditure type values in your labor transaction extension. However, with this method, any time you wanted to implement a new overtime type, you would have had to change the explicit list of overtime expenditure types in your labor transaction extension.
Note: There are many ways to implement a solution to a business requirement using client extensions. However, as illustrated by these two methods just described, you can see that one way may be superior to any other method to reduce maintenance of the extension. This type of implementation requires creative design skills along with an understanding of the client extensions, the PL/SQL language, and the Oracle Projects data structures.
Assigning Expenditure Types. Create overtime premium related transactions for source labor transactions charged with specific expenditure types.
For example, for any expenditure item with an expenditure type of Double Time or Time and Half, you want to create a related transaction to record the overtime premium costs. You create the related transaction with the associated overtime premium expenditure type. Based on your implementation data, you know that the overtime premium expenditure types uses the same name as the overtime expenditure type with the word Premium concatenated to the end of it. These overtime expenditure types and their corresponding overtime premium expenditure types are listed below.
Source Expenditure Type | Related Transaction Expenditure Type | Related Transaction Expenditure Type Class |
---|---|---|
Double Time | Double Time Premium | Overtime |
Time and Half | Time and Half Premium | Overtime |
In this case, you do not need to explicitly specify the project and task values when you call the CreateRelatedItem procedure in your labor transaction extension. If you do not specify these values, the CreateRelatedItem procedure automatically charges the related transaction to the same project and task as the source transaction.
Calculating Raw Cost. Cost overtime premium items according to the following formula:
Source transaction raw cost amount X appropriate labor cost multiplier
You have defined labor cost multipliers with names that match the expenditure types which identify the overtime hours worked. Use the appropriate labor cost multiplier to calculate the overtime premium transaction raw cost.
For example, if the expenditure type of the related transaction is Time and Half Premium, calculate the raw cost of the related transaction according to the raw cost amount of the source transaction times the labor cost multiplier of .5.
Suggestion: Review the file PAXICTMB.pls to see the PL/SQL code that calculates the bill amount of the overtime premium transactions.
Oracle Projects passes only billable transactions to the labor billing extension, so you only need to include logic based on the expenditure type class to identify the appropriate transactions.
Note: This assumes that all expenditure types classified with the Overtime expenditure type class are to be billed in this way. If this is not true in your case, you can explicitly list the expenditure types to which this rule applies.
For all transactions that you identified with the Overtime expenditure type class, you set the bill amount equal to the raw cost.
For all other labor transactions, you do not set the bill amount in the labor billing extension. Oracle Projects then uses the standard billing methods to calculate the bill amounts for these transactions.
Previous | Next | Contents | Index | Navigation | Glossary | Library |