Integration with Oracle Projects

Overview

Oracle Projects is used for managing small and large-scale projects that involve many tasks and milestones within an organization. Oracle Service integrates with Oracle Projects to enable cost identification and cost generation for a project.

Oracle Service leverages the costing feature of Oracle Projects so that when project tasks are executed in the field, the cost incurred on each activity is captured and posted to the appropriate GL account.

Key Terms and Definitions

Some of the key terms and definitions are as follows:

Integration with Oracle Projects

Oracle Service leverages Oracle Order Management and Oracle Accounts Receivables to report revenue to Oracle General Ledger. You can also use Oracle Projects to generate and post costs to appropriate GL accounts. Oracle Projects can generate revenue based on costs from service related activities.

Oracle Service tracks costs from executing tasks out in the field such as installing a huge cell tower or overhauling a wind turbine. You can use Oracle Projects to generate costs from these tasks. Costs include labor, expense, and material costs, which are posted back into Oracle Projects in order to carry out proper reporting and accounting for the project.

In Oracle Service, costs are tracked by service activity. A service activity represent activities that you want to track for financial purposes. When creating a cost for the service request, the Create Cost attribute is checked for the service activity. If this attribute is selected, then costs records are created for the service request and stored in the Service schema. For more information, see, Capturing Costs.

The costs that are generated in Oracle Service can be posted as expenditures in Oracle Projects interface table through the Interface Service Costs to Projects concurrent program. For each valid transaction, the Transaction Import process imports the transactions and creates corresponding expenditure records in the Oracle Projects expenditure tables; expenditure records include expenditure batches, expenditures, and expenditure items. For each invalid transaction, Transaction Import rejects the transaction and updates the transaction in the interface table with a status of Rejected and the rejection reason.

Process Overview

Implementation Considerations

Avoid Duplicate Cost Reporting

Oracle Service also uses Oracle Order Management and Oracle Accounts Receivables to report costs. If you are implementing the integration with Oracle Projects, then you must ensure that costs and revenue are not reported multiple times in Oracle Projects. You must choose either cost reporting in Oracle Order Management and Oracle Accounts Receivables or cost reporting in Oracle Projects.

Similarly, Oracle Projects has integration with many Oracle applications, including Oracle Inventory, Oracle Time and Labor, and Oracle Project Manufacturing. Costs can be passed from these applications to Oracle Projects. Hence, you must ensure that duplicate costs are not reported in Oracle Projects.

As Oracle Inventory has integration with Oracle Projects and can push costs from inventory to Oracle Projects, project and project task details can also be associated with item locators. If you are using Oracle Inventory to post costs in Oracle Projects, then you must hide or not use the project-related fields on the Field Service material debrief lines or Charges material lines such that costs are not posted twice.

Interfacing Costs in Oracle Projects

The PA_TRANSACTION_INTERFACE_ALL interface table is a staging location for project transactions before they can be physically loaded into Oracle Projects. Every application that needs to integrate with Oracle Projects must first stage their relevant data in the interface table. Data can be directly written into the table as no table handlers or APIs are available.

Every row in the interface table constitutes an expenditure line in Oracle Projects. During the import process, Oracle Projects validates the data before they are imported. The validation to be performed varies, depending on the expenditure type class chosen for the row.

You must also review the columns in the interface table to determine if the way Oracle Service derives these values fit your requirements. You can use custom logic to post the cost records into the PA_TRANSACTION_INTERFACE_ALL table or provide logic to perform additional steps after the cost records are entered into the interface table.

Implementation Prerequisites

Before you use Oracle Projects for capturing costs, you must implement the following:

Oracle Project Costing

Oracle Project Costing must be implemented as per the steps mentioned in Oracle Project Costing Implementation Checklists. As a part of this step, you are required to define expenditure categories, expenditure types and transaction sources.

Transaction Sources

Out of the box, Oracle Service provides three predefined transaction sources when posting cost records to Oracle Projects – Service Material, Service Labor, and Service Expense. However, you can define transaction sources in Oracle Projects as per your business requirements. For more information on the transaction sources, see Oracle Projects Costing User Guide.

Service Costing

You must enable Service Costing as per the steps outlined in Setting Up Service Costing. As part of this step, you are required to define the costing method you want to implement, setting up the material item and its cost in Oracle Inventory. However, you must avoid duplicate reporting of item costs as Oracle Inventory also integrates with Oracle Projects.

Service Activities and Billing Types

A service activity is the type of work that field service, depot, and call center agents use to classify work performed on behalf of a customer. Costs are generated in Oracle Service based on the service activity selected for the service request. You can specify multiple billing types for each service activity. The Create Cost and Create Charge attributes for each service activity must be enabled to generate costs and charges respectively.

For each service activity, define billing types. Billing types are used to categorize items in inventory for use in service applications. By associating billing types with service activities you determine what items an agent can enter in a charge line for a given activity. For more information, see Setting Up Service Activities.

You must specify the expenditure type class, expenditure type and the transaction source for the billing type to post the cost records in Oracle Projects. The Interface to Projects attribute for a billing type determines if the cost must be posted in Oracle Projects when the Interface Service Cost to Projects concurrent program is run.

Interfacing Service Costs with Oracle Projects

When a cost record is created in Oracle Service it is posted to the Oracle Projects' interface table by the Interface Service Costs to Projects concurrent program. Cost records whose corresponding charge lines are submitted, or debrief lines are completed are posted to the interface table. Each cost record that is successfully posted to the interface table in Oracle Projects is marked so that it does not get posted again. You can also execute custom logic to populate the interface tables, as per your requirements overriding the logic provided by the concurrent program.

After the interface program is run a log file is created to track errors and exceptions for debugging.

You can specify any of the following parameters to run the concurrent program.

Parameter Description
From Transaction Date Cost records created between a certain date range.
To Transaction Date Cost records created between a certain date range.
Project Number Costs for a particular project.
Project Task Num Costs for a particular project number and task number.
Service Activity Code Costs for a particular service activity code.
Billing Type Costs for a particular billing type. In Oracle Service, this means that they can only push labor costs, material costs, or expenses.
Service Request Number Costs for a particular service request number.
Service Request Status Costs for service requests of a particular status.
Source Costs from either Service Request or Field Service Debrief.
Source Number Costs for a specific source. If the source is Field Service, specify the debrief number.
Operating Unit Costs for a particular operating unit.
Inventory Org Costs for a particular inventory organization.
Expenditure Org Costs for a particular expenditure organization.

Using Oracle Projects for Reporting Costs

The following examples outline how you can use Oracle Projects in reporting costs.

Example 1: Using Project Information in Service Requests (for Field Service Tasks)

  1. Update an existing service request or create a service request.

  2. Select an expenditure organization, project number, and project task number and save the service request.

  3. Create field service tasks using the task type for the service request.

  4. Assign and schedule the tasks to field service technicians.

  5. Complete and debrief the tasks (This task is done by Field Service technicians.)

  6. View the converted debriefs to cost records in the View Cost Details page.

  7. Run the Interface Service Costs to Projects concurrent program to post the cost records in Oracle Projects interface table.

  8. Run the Transaction Import process to import the interface table records into Oracle Projects.

  9. View the expenditures in Oracle Projects and drill down to cost details.

Example 2: Using Project Information in Service Requests (for non Field Service Tasks)

  1. Update an existing service request or create a service request.

  2. Select an expenditure organization, project number, and project task number and save the service request.

  3. Create tasks using the task type for the service request.

  4. Create a charge line for the task.

  5. View the cost records in the View Cost Details page.

  6. Run the Interface Service Costs to Projects concurrent program to post the cost records in Oracle Projects interface table.

  7. Run the Transaction Import process to import the interface table records into Oracle Projects.

  8. View the expenditures in Oracle Projects and drill down to cost details.