0% found this document useful (0 votes)
169 views

Oracle Account Generator

This document describes the account generation process for project transactions in Oracle Project Costing and Billing. It involves three main processes: PO Requisition Account Generator (POWFRQAG), Project Supplier Invoice Account Generation (PAAPINVW), and Project Budget Account Generation (PABDACWF). The chart of accounts has 8 segments including GL Book, Business Unit, Account, Activity, Cost, and Project. The solution involves creating two processes - one to generate the account and one as a sub-process. It compares the expenditure organization to the project organization and derives segments from auto accounting lookups based on the project type.

Uploaded by

Munir Ahmad
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
169 views

Oracle Account Generator

This document describes the account generation process for project transactions in Oracle Project Costing and Billing. It involves three main processes: PO Requisition Account Generator (POWFRQAG), Project Supplier Invoice Account Generation (PAAPINVW), and Project Budget Account Generation (PABDACWF). The chart of accounts has 8 segments including GL Book, Business Unit, Account, Activity, Cost, and Project. The solution involves creating two processes - one to generate the account and one as a sub-process. It compares the expenditure organization to the project organization and derives segments from auto accounting lookups based on the project type.

Uploaded by

Munir Ahmad
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 9

APPLIES TO:

Oracle Project Costing- Version 12.1.3

Oracle Workflow Builder 2.6.3.5

GOAL:
The objective of this article is to describe in detail the account generation process used in a case where
project type is used to derive natural accounts and the process in general covers the following:

POWFRQAG (PO Requisition Account Generator)

PAAPINVW (Project Supplier Invoice Account Generation)

PABDACWF (Project Budget Account Generation)

The chart of accounts of the use case is an 8 segment combination and is as follows:

Segment 0- GL Book: This segment is used to identify the GL book of the organization under study. This
is set constant to 01 for organizational transactions. Manual GVs are used to pass transaction to the
other book which is denoted by 02. The transactions are done for the “01” book.

Segment 1- GL Business Unit: There are various departments in the organization and each department is
assigned a unique value. In project accounting, this account is derived using project organization (as
against expenditure organization)

Segment 2- GL Account: This defines the natural account segment.

Segment 3- GL Activity: This is defines a certain activity for which the transaction is done. Project
transactions make use of the class code on project definition to derive this segment.

Segment 4- GL Cost: The value here is mainly used by the organization to identify their capital and
operating expenditures.

Segment 5- GL Project: The organization uses unique identifiers to identify projects before the use of
project costing and billing module. This segment is set to become redundant after the Oracle project
costing and billing application goes live.

Segment 6 and Segment 7 are future segments. The generic values are preset at 000.

The requirement of the organization mandated that the project transaction derive natural account on
the basis of project type and expenditure type. Hence the auto accounting lookups were defined where
multiple accounts had to be derived for a single expenditure type.

Additional for the POWFRQAG and PAAPINVW there was an ask for restricting the data entry at
transaction level so that no other organization other than the project organization can be entered as
expenditure organization.
SOLUTION:
In discussing the solution, the example of PAAPINVW (Project Supplier Invoice Account Generation) will
be used, which is a singular process for deriving the charge account for AP invoices’ distribution lines
which contains project information to derive the charge account.

Figure 1

Step 0:

Create Project Auto Accounting Look- ups for deriving Segment 2, Segment 3, Segment 4, and Segment 5

Step 1: Create two processes for completing the account generator configuration by copying the default
“Generate Default Account”:

XX Project Supplier Invoice Account Generator

XX Project Supplier Invoice Account Generator Sub

Figure 2

Open the process: XX Project Supplier Invoice Account Generator, and embed the second process: XX
Project Supplier Invoice Account Generator Sub, by dragging it into the first process. Develop a condition
to start generation of account in the process “XX Project Supplier Invoice Account Generator” with
success condition of the process “XX Project Supplier Invoice Account Generator Sub” ending in
“Validation of Account Code Combination” with successful end generation process.
Figure 3

Step 2: Define functions for the process: XX Project Supplier Invoice Account Generator Sub

Figure 4

Table 1

Node 1 Start Generating Code Combination


Item Type Standard Flex Field Workflow
Internal Name FND_FLEX_START_GENERATION

The second node below is to determine whether the expenditure organization entered by the user is the
same as the project organization or not. The process ends in error if value does not match.
Table 2

Node 2 Compare Text (if successful go to next node or


abort generation)
Item Type STANDARD
Internal Name COMPARETEXT
Node Attributes
Name Value Type Value Type
Test Value Item Attribute Expenditure Organization
Reference value Item Attribute Project Organization

Assigning values to segment with constant values:


The following standard functions were used to assign value to GL segments where constant values were
used (In the current case it was: Segment 0, Segment 5, Segment 6 and Segment 7)
Table 3

Node Assign Value to segment


Item Type STANDARD FLEXFIELD WORKFLOW
Internal Name FND_FLEX_ASSIGN_TO_SEGMENT
Node Attributes
Name Value Type Value Type
Segment Identifier Constant Name
Segment Constant <GL Segment Name>
Value Constant <Constant Value for GL Segment>
Replace Existing Value Constant True

Assigning values to segment which depended on “Auto Accounting Lookups” defined in


project accounting (PA) module:
The following standard function was used to define the lookup from which the segment value needs to
be picked up:
Table 4

Node Segment Lookup Set Value


Item Type Project Supplier Invoice Account Generation
Internal Name SEGMENT_LOOKUP_SET
Node Attributes
Name Value Type Value Type
Lookup Set Name Constant <Auto Accounting Lookup set name defined in
PA>
Intermediate Value Item Attribute <Select the item attribute to which you want to
associate the segment derivation to. Eg:
Expenditure Type, Project Type, Project
Organization, etc.>

The function “Segment Lookup Set Value” was followed by a condition which says if true then use the
function “Assign Value to segment” and if false end the abort account generator. The conditions that
need to be met are as follows:

1. PA auto accounting Lookup defined in the “Segment Lookup Set Value” is available.
2. Item attribute passed in the transaction from UI matches the values in the PA Auto Accounting
Lookup. In case of supplier invoice the item attributes to derive project accounts are as follows:
a. Project attributes (Project Type, Project Id, etc)
b. Expenditure type
c. Task Attribute
d. Expenditure organization

Figure 5 Project Information in AP invoice lines

“Assign Value to segment” is used to assign segment value derived from the lookup associated to the
function mentioned above:
Table 5

Node Assign Value to segment


Item Type STANDARD FLEXFIELD WORKFLOW
Internal Name FND_FLEX_ASSIGN_TO_SEGMENT
Node Attributes
Name Value Type Value Type
Segment Identifier Constant Name
Segment Constant <GL Segment Name>
Value Item Attribute Lookup Set Value
Replace Existing Value Constant True

Natural Account Segment Derivation


The natural account segment derivation in this case is based on the combination of the project type of
the project assigned to the transaction (in this case AP invoice) and PA auto accounting lookup. The
following relation needs to be established:

If Project Type= Project Type 1, then chose the natural account value from Auto Accounting Lookup 1.

If Project Type= Project Type 2, then chose the natural account value from Auto Accounting Lookup 2.

If Project Type= Project Type 3, then chose the natural account value from Auto Accounting Lookup 3.

……………………………………………………………………………………………………………………………………………………….......

If Project Type= Project Type XX, then chose the natural account value from Auto Accounting Lookup XX.

To derive the above logic a sub process was included in the process: “XX Project Supplier Invoice
Account Generator Sub”. This is called “Fetch Natural Account against Project Type”- (see figure 4.)

Following functions were used to derive the logic:

Compare Text: This was used to equate the project type name of the project assigned to the transaction
level detail in AP invoice with the condition.
Table 6

Node 1 Compare Text (if successful go to next node or


abort generation)
Item Type STANDARD
Internal Name COMPARETEXT
Node Attributes
Name Value Type Value Type
Test Value Item Attribute Project Type
Reference value Constant <Project Type Name>

If the project type was equivalent to the constant reference value for project type defined in the above
function then the next function was activated which fetched the segment value from the PA auto
accounting lookup set.
Table 7

Node Segment Lookup Set Value


Item Type Project Supplier Invoice Account Generation
Internal Name SEGMENT_LOOKUP_SET
Node Attributes
Name Value Type Value Type
Lookup Set Name Constant <Auto Accounting Lookup set name defined in
PA>
Intermediate Value Item Attribute Expenditure Type

The above was followed by the “Assign Value to segment” function.

The process “Fetch Natural Account against Project Type” followed the following map:
Start Natural Accout
Derivation

Is Project Type= Fetch Segment


True
Project Type 1 Value from Lookup 1

Is Project Type= Fetch Segment


True
Project Type 2 Value from Lookup 2

Is Project Type= Fetch Segment


True
Project Type 3 Value from Lookup 3

Assign Value to
Is Project Type= Fetch Segment Natural Account
True Go to next function
Project Type 4 Value from Lookup 4 Segment from
Lookup

Fetch Segment
Is Project Type=
True Value from Lookup
Project Type XX
XX

No Matching Project
Type Found

Abort Generation

Figure 6

General
Other standard functions used are:

1. Abort Generation: Used to define if a function’s condition is not met:


Node Assign Value to segment
Item Type STANDARD FLEXFIELD WORKFLOW
Internal Name FND_FLEX_ABORT_GENERATION
Node Attributes
Name Value Type Value Type
Error Message Item Attribute Error Message

2. End Generation on successful CCID generation

Node End Generation Code Combination


Item Type STANDARD FLEXFIELD WORKFLOW
Internal Name FND_FLEX_END_GENERATION
Node
Label: FND_FLEX_END_GENERATION
Start/End: End
Result: Success

3. End on successfully assigning segment value to GL segment

Node END (Success)


Item Type STANDARD
Internal Name FND_FLEX_END_GENERATION
Node
Label: End
Start/End: End
Result: Success

4. Validate code combination: This is used to validate the CCID. This function is used in Project
Supplier Account generation and Project Budget Account generation at the end of the process
flow. (See Figure 3)

Node End Generation Code Combination


Item Type STANDARD FLEXFIELD WORKFLOW
Internal Name FND_FLEX_VALIDATE_COMBINATION
Node
Label: FND_FLEX_VALIDATE_COMBINATION
Start/End: End
Result: Success

Node Attribute
Name Value Type Value Type
Validation Type Constant Generate Code Combination ID
New Code Combinations are Constant True
allowed
Check Expiration Constant Yes
Validation Date Constant

You might also like