oracle projects basics
TRANSCRIPT
-
8/15/2019 Oracle Projects Basics
1/62
Oracle Projects Basics
In this Blog, I will be giving an introduction on what is Oracle Projects module in the Oracle Apps Ebiz Suite.
Oracle Projects is suite o modules which combines
Project !osting
Project Billing
Project "oundation
Project #anagement
Project $esource #anagement
and Project Portolio #anagement
Oracle Projects is ver% useul or an% Project Based Organizations. In toda%&s world i can sa% all he organizations arebased on Projects or ease o maintenance and trac'ing.
What is Project Costing ?
(o put it in a simpler manner, module to calculate the cost and account it. In an% organization there should be anapplication which 'eeps trac' o the costs o the projects and categorize the costs. I can sa% Project !osting issimilar to one o the applications, but not limited to calculating and accounting. I will e)plain in detail in the comingposts, how cost is calculated and accounted in Oracle Projects !osting.
What is Project Billing ?
*ets ta'e an e)ample o Services !ompan%. An% Services compan% has customers whom the% serve and inturn billthe clients or the service o+ered. In such scenarios Project Billing is handul in billing the customer. ot onl% that%ou can calculate revenue or the projects, which is ver% important. In detail e)planation will be in m% uture posts.
-hat is Project "oundation Project "oundation provides the basic inrastructure and components or the !ostingand Billing to wor'. So what it means "or !osting and Billing to wor' we need basic inrastructure /components
li'e Projects, (as's, -BS0-or' Brea' 1own Structure2 etc, !ost $ate Schedules, Bill $ate Schedules. (hesestructures are created using Project "oundation APIs and hence the name &"oundation&.
What is Project Management ?
O+course the name itsel e)plains that it is to manage the projects. (he unctions involve Project (rac'ing,Perormance (rac'ing and other standard project management unctions.
What is Project Resource Management ?
(his is or manging the resources o the project. "unctions involve assigning resources, moving resources/deallocating resources, competenc% management , creation o vacancies, advertising the vacancies, evaluating thes'ills o the resources etc.
For more info: see the Oracle Projects "undamentals 3ser guide
1. Draft Inoice !et "#s
(his article gives a basic understanding o the Oracle Projects Invoice "low4
Oracle Projects Inoice Flo$:
Below are Steps that needs to be ollowed or successull% creating a Projects Invoice and interacing it to Oracle$eceivables.
5. !reation o !ontract Project 0#andator%2
-
8/15/2019 Oracle Projects Basics
2/62
6. Assign a !ustomer or the Project 0#andator%2
7. !reate an Agreement with the !ustomer 0#andator%2
8. "und the Project through the !ustomer Agreement 0#andator%2
9. !reate an Approved $evenue Budget or the Project 0optional2.
:. Baseline the "unding 0#andator%2.
;.
-
8/15/2019 Oracle Projects Basics
3/62
PA@S3##A$C@P$OE!(@"31I
-
8/15/2019 Oracle Projects Basics
4/62
$A@I(E$"A!E@*IES@A**
MJ/dropcapN
11. %ie&ac4 inoices &ac4 to Oracle Projects
Once the Autoinvoice import is successull% run, the HP$!4 (iebac' Invoices rom $eceivablesH process is run toupdate the status o the invoice import in A$ to the Projects Invoices
Fun)ing Realuation in Oracle Projects Billing
Fore5 6oss'0ain in a 7utshell:
$evaluation is the process o revaluing accounts that have transactions denominated in oreign currenc%. (his isdone or the account balance, not individual transactions. $evaluation can be done on an% account, but t%picall%,this is done or balance sheet accounts, whose balance is made up o open transactions 0ie. Accounts Pa%able,Accounts $eceivable2. $evaluation reects the change in conversion rates between the date o the transactionand the date o the balance sheet.
-hen revaluation is run, a journal entr% is created that either increases or decreases the unctional currenc%amount or that account, based on theuctuation o the e)change rate. (he o+set or this journal is a predened 3nrealized
-
8/15/2019 Oracle Projects Basics
5/62
+t Project %#e leel; 9na&le /Realuate Fun)ing/ an) /Fun)ing Realuation inclu)es 0ain an) 6oss/.+ssociate the 0ain an) loss eent t#es .
-
8/15/2019 Oracle Projects Basics
6/62
7aigation: Project => Project O#tions => Billing !etu#
Project Billing Setup
!te# *
Create 9ent %#es $ith classications /Reali@e) 0ains/ an) /Reali@e) 6osses/ an) associate) them inthe Project %#es $in)o$ mentione) a&oe.
7aigation: Projects => !etu#=> Billing => 9ent %#es
Event (%pes Setup
!te# ,
7o$ $e nee) to setu# the Reali@e) 0ain an) 6oss Rules in +uto accounting an) assign them to thee5isting auto accounting function /Reenue an) Inoice +ccounts/.
(o do this, rst create rules or &$ealized *oss and $ealized
-
8/15/2019 Oracle Projects Basics
7/62
In this e)ample the compan% account segment to which $ealized
-
8/15/2019 Oracle Projects Basics
8/62
-
8/15/2019 Oracle Projects Basics
9/62
*. What )o the arious +uto+ccounting errors mean?
M9!!+09 7+M9 M9!!+09 %9A%
PA@AA@AA@E$$O$ Error occurred during AutoAccounting
PA@AA@ABO$(I< Process RP$O!ESS terminating with error
PA@AA@BA1@APP*I!A(IO Bad application id passed to AutoAccounting
PA@AA@E(E$@!OS(A(@FA*3E Please enter a constant value
PA@AA@E(E$@""@S($3!(3$E Please enter a e)eld structure
PA@AA@E(E$@PA$A#E(E$@A#E Please enter a parameter name
PA@AA@E(E$@SQ*@S(A(E#E( Please enter a SQ* Select Statement
PA@AA@E$$O$ Error in AutoAccounting Set Processing errorunction
PA@AA@"IE*1@O(@!OPIE1 "unction &R"3!(IO& could not update the eld&R"IE*1&
PA@AA@"I$I
-
8/15/2019 Oracle Projects Basics
10/62
PA@AA@O@S3!@($AS (he unction transaction code R"(!O1E does note)ist
PA@AA@O@($AS o transactions e)ist or unction &R"3!(IO&.
PA@AA@3**@SE*E!(E1 SQ* Statement or rule &R$3*E& has selected a rowwith a 3** value
PA@AA@O3(@O"@#E#O$C #emor% could not be allocated or &ROBE!(& in&R"3!(IO&.
PA@AA@PA(A3@A$
-
8/15/2019 Oracle Projects Basics
11/62
,. Project an) !u&le)ger 6in4s
In this Article we will loo' at how to lin' the data between Oracle Projects with the S*A module.
Ater
-
8/15/2019 Oracle Projects Basics
12/62
SE*E!( T "$O# )la@accounting@errors-E$E event@id in 0 SE*E!( acct@event@id "$O# pa@cost@distribution@lines@all -E$E e)penditure@item@id K 56789:2U
e. (o select all accounting event header data or an e)penditure item with id 56789:4
SE*E!( T "$O# )la@ae@headers-E$E application@id K 6;9A1 event@id I 0 SE*E!( acct@event@id "$O# pa@cost@distribution@lines@all -E$E e)penditure@item@id K 56789:2U
. (o select all accounting event line data or an e)penditure item with id 56789:4
SE*E!( T "$O# )la@ae@lines-E$E application@id K 6;9A1 ae@header@id I 0 SE*E!( ae@header@id "$O# )la@ae@headers -E$E application@id K 6;9 A1 event@id I 0 SE*E!( acct@event@id "$O# pa@cost@distribution@lines@all -E$E e)penditure@item@id K 56789:22U
g. (o select all distribution lin' data, which provides direct lin's between accounting event, event header, andevent line details and the associated transactions in the source subledger, %ou can use4
SE*E!( T "$O# )la@distribution@lin's-E$E application@id K 6;9A1 ae@header@id in 0 SE*E!( ae@header@id "$O# )la@ae@headers -E$E application@id K 6;9 A1 event@id I 0 SE*E!( acct@event@id "$O# pa@cost@distribution@lines@all -E$E e)penditure@item@id K 56789:22U
h. (o show accounting event headers that indicate the% are nall% accounted, but cannot be ound in
-
8/15/2019 Oracle Projects Basics
13/62
i. Cou can also use a Guer% li'e the one below to Guer% all events or a particular t%pe o transaction inProjects4
SE*E!( T "$O# )la@events-E$E application@id K 6;9A1 event@t%pe@code K upper0&Revent@t%pe@code&2U
-. Fun)s Chec4 Result Co)es
(his article lists all the valid unds chec' result codes as a result o unds chec' in oracle projects module.
R9!"6%ECOD9 D9!CRIP%IO7 R9!"6%
"?5 "unds !hec' ailed because o invalid budgeted tas' "ail
"?6 "unds !hec' ailed because o invalid parent resource member "ail
"?7 "unds !hec' ailed because o invalid top tas' "ail
"?8 "unds !hec' ailed due to invalid award number "ail
"?9 "unds !hec' ailed during budget period derivation "ail
"?: "unds !hec' ailed during burden calculation "ail
"?; "unds !hec' ailed during burden posting "ail
"?= Adjusted transaction has not been unds chec'ed "ail
"?> "unds !hec' ailed due to incomplete transer o data "ail
"5? (ransaction ailed unds chec' at Award level "ail
"5?? InsuVcient unds "ail
"5?5 o budget e)ists at the resource level "ail
"5?6 o budget e)ists at the resource group level "ail
"5?7 o budget e)ists at the tas' level "ail
"5?8 o budget e)ists at the top tas' level "ail
"5?9 o budget e)ists at the project level "ail
"5?: o budget e)ists at the project account level "ail
"5?; (he transaction account and the budget account are di+erent "ail
"5?= (he transaction ailed unds chec' at the resource level "ail
"5?> (he transaction ailed unds chec' at the resource group level "ail
"55? (he transaction ailed unds chec' at the tas' level "ail
"555 (he transaction ailed unds chec' at the top tas' level "ail
"556 (he transaction ailed unds chec' at the project level "ail
"557 (he transaction ailed unds chec' at project account level "ail
"558 (he transaction ailed to populate burden cost "ail
"559 "unds chec' ailed because o insuVcient unds to cover burden cost "ail
"55: "unds chec' ailed because o insuVcient unds to cover raw cost "ail
"55; (he transaction ailed because o errors in one or more cost distribution lines "ail
"55= "unds chec' ailed because o invalid budget versions "ail
"55> "ailed because %ear end rollover process is in progress "ail
"56? "unds chec' ailed during setup and summarization "ail
"565 (he resource list is invalid or null "ail
"566 (he amount t%pe or boundar% code is invalid "ail
"567 (he amount t%pe or boundar% code is invalid or no time phase "ail
-
8/15/2019 Oracle Projects Basics
14/62
"568 (he boundar% code or amount t%pe &&Project to date&& is invalid "ail
"569 Invalid boundar% code or amount t%pe &&Cear to date&& "ail
"56; Invalid boundar% code or amount t%pe &&Period to date&& "ail
"56= "unds chec' ailed because o invalid resource list member "ail
"56> Start date or end date is null or the specied date range "ail
"57? ot able to derive PA date "ail"575 Invalid budget entr% method or missing baseline version "ail
"576 !ould not map to a budget line while deriving budget account "ail
"578 ot able to derive
-
8/15/2019 Oracle Projects Basics
15/62
P555 (ransaction passed unds chec' at resource level Pass
P556 (ransaction passed unds chec' at resource level in advisor% mode Pass
P557 Increase in unds does not reGuire unds chec' Pass
P558 Invoice interaced rom projects does not reGuire unds chec' Pass
P559 E)pense report rom projects reGuires no unds chec' Pass
P55: (ransaction passed unds chec' in orce pass mode Pass
. Oracle Projects +ccount generators
(he main account generator processes that relate to Oracle Projects are4
P++PI7(W Project Supplier Invoice Account
-
8/15/2019 Oracle Projects Basics
16/62
(his procedure 0PO@-"@PO@!A$
-
8/15/2019 Oracle Projects Basics
17/62
I the Projects are used or billing the !lients or the wor' done 0(%pical !ontract Projects2, then %ou ma% want to$evenue, Agreements0!ontracts2, $evenue budgets and Invoices in addition to the above data.
Once the decision is made to which data to migrate, then the ne)t step would be setting up the Oracle Projects orthe conversion purpose, which we will see in detail sooner. Once the S%stem has been setup, the technicalelements0programs, concurrent processes etc2 have to be created in order to migrate the data rom *egac% S%stemto Oracle Projects.
!tages in Oracle Projects Conersion
5. (he First !tage is to obtain the data rom the *egac% S%stem which needs to be migrated to OracleProjects.
6. (he !econ) !tage will be most crucial step in the process which is to massage the data according to theOracle Projects !onversion Interace0Programs built using A#< APIs2. (his Step is indeed time consuming, manuallabor intensive to massage and recti% the errors etc. But completing this step successull% pa%s dividends in theconsecutive processes / Stages.
7. (he %hir) !tage is uploading the data obtained rom legac% s%stems into the Staging Area0Staging (ablescreated to hold the data temporaril% till it gets migrated into Oracle Projects2. Once the data is uploaded to theStaging tables, the programs built or migration0-e will see how to build these programs in detail2 will validate theStaging (able data to conrm that it is in compliance with the Projects !onversion Program0 (he A#< APIs used inthe programs indeed needs data in certain ormat, also the data should be validated against the Oracle Projects
Setup. "or instance, when migrating the cost or hours rom legac% to Projects, we might need to validate i thee)penditure t%pe is alread% setup in Oracle Projects, i the e)penditure t%pe is not setup, the program/APIs willthrow an error. So it is alwa%s better to capture these 'ind o scenarios in the Falidation Step o the #igration.
(he Second Stage and (hird Stages are repetitive until %ou get the Falid data rom the legac% s%stem which can bemigrated into Oracle Projects without an% errors or issues.
5. (he Fourth !tage is the actual migration process which will migrate the data rom the Staging (ables tothe Oracle Projects Base tables. Once this step is done, the projects, tas's and other data are available in OracleProjects or use.
Beore going through the stages, we will loo' at some o the basic setups that needs to be done in OracleProjects.
Oracle Projects !etu# For Conersion
Y[Ji [support*istsN\ Y[JendiNPro)uct Co)e:
(he Product !ode needs to be setup in Oracle Projects in the A#<
-
8/15/2019 Oracle Projects Basics
18/62
an option to migrate the projects with the same project number as in the legac% s%stem. (his isnot mandator% but is recommended since it will be eas% to reer bac' the projects in the sources%stem using the project numbers.
In order to pass the project number to the #igration program, this implementation option needsto be setup to anual&. Once the migration is done, this setup can be reverted bac' to&Automatic&.
Y[Ji [support*istsN\ Y[JendiN!etu# %ransaction !ource:
(he (ransaction Source needs to be setup in Oracle Projects in the (ransaction Sourcesorm in Oracle Projects Implementation Super 3ser $esponsibilit%. (his is a mandator% setup orthe !osts/hours migration rom the legac% s%stem to Oracle Projects. -e need to tell themigration API&s what is the source s%stem and how the data is handled when it is imported toOracle Projects.
Y[Ji [support*istsN\ Y[JendiN!etu# 95#en)iture %#es:
E)penditure (%pes are needed to categorize the cost/hours when it is imported to OracleProjects. (his is a mandator% setup or !ost/hours migration. -e need to tell the s%stem whiche)penditure t%pe the cost/hour belongs to.
Y[Ji [support*istsN\ Y[JendiN!etu# 9m#loee Cost Rates:
Setting up cost rates or emplo%ees is not mandator%. But i %ou need to cost the hoursthat are migrated in the s%stem, the labor cost distribution process in Oracle Projects do need therates setup in order to calculate the costs.
But i %ou are migrating the costs directl% rom the legac% instead o hours then this stepis not needed. But ideall% the cost rates are reGuired in a general production scenario wherein theemplo%ees/contractors enter their timecards.
Cou can setup job rate schedule, emplo%ee level rate schedule or emplo%ee level overrides.Alternativel%, the costing client e)tension can be setup to calculate the cost according to thebusiness scenario.
$eer to the Oracle Projects 3ser
-
8/15/2019 Oracle Projects Basics
19/62
"or !ost/$evenue Budget migration, single le is enough with all the Budgets 1ata.
!reate SQ* *oader concurrent program which will upload the obtained data into the Oracle Staging (ables.
Also it is alwa%s the best practice to create a control table in the Staging area, which will control the data
migration. "or e)ample %our control table might loo' li'e the one below4
Parameter %#e Parameter Parameter (alue
(emplate !ontract !ontract@(emplate
(emplate Indirect Indirect@(emplate
E)penditure (%pe ours *abor
E)penditure (%pe E)penses Emplo%ee@E)pense
(ransaction (ransaction Source *egac%5
Product !ode Product code *E
-
8/15/2019 Oracle Projects Basics
20/62
Y[Ji [support*istsN\ Y[JendiNFalidate the Product code is setup.
Y[Ji [support*istsN\ Y[JendiNFalidate i the reGuired Project (emplates are setup.
Y[Ji [support*istsN\ Y[JendiNFalidate i the Project umbering is set to anual& or creating projects withthe predened project numbers.
Project'%as4 Data (ali)ations:
Y[Ji [support*istsN\ Y[JendiNFalidate i the project name is uniGue. Project with the same name should note)ist in Oracle Projects.
Y[Ji [support*istsN\ Y[JendiNFalidate i the project number is uniGue. Project with the same number shouldnot e)ist in Oracle Projects.
Y[Ji [support*istsN\ Y[JendiNFalidate i the project long name is uniGue. Project with the same long nameshould not e)ist in Oracle.
Y[Ji [support*istsN\ Y[JendiNFalidate the project reerence0this eld is mandator% in the projects le, it canbe the projects identier o the source project or project number o the source project, but it has to be uniGue in thesource s%stem as well. (his eld needs to be populated in all the converted projects in order to trac' bac' andidenti% the project in the source s%stem2
Y[Ji [support*istsN\ Y[JendiNProject name and project number should be 7? chars in length. Project long
name should be 68? chars in length. Project 1escription should be 69? chars in length. Project description is not amandator% eld when creating project.
Y[Ji [support*istsN\ Y[JendiN!hec' i the project has a project manager and the project manager is activein Oracle $ and has an assignment and a ob assigned. Also the project manager has to be active rom the projectstart date, else %ou cannot create a project with that project manager.
Y[Ji [support*istsN\ Y[JendiNIn case o contract projects, chec' i the customer o the project is a validcustomer dened and with a valid Bill (o site assigned.
Y[Ji [support*istsN\ Y[JendiN!hec' i the (as's in the (as' le has a project in the Projects le.
Apart rom the above necessar% validations, %ou ma% have to validate the additional data such as Projects 1"" 1ata%ou ma% want to populate with %our custom eld values. "or e)ample %ou ma% want to populate the Project costcenter value in the Segment5 o the Project 1"". In such case %ou have to validate i the cost center value is a validvalue or that Segment50sometimes %ou ma% have attached an *OF to that segment5, so in that case, the costcenter has to be validated against that *OF Falues2.
"or tas's, values or tas' t%pes, wor' t%pe, tas' manager has to be validated. (as' t%pes and wor' t%pes have to bedened in Oracle Projects beore the tas' with those values are migrated, else the tas' will not be created.
Cost'hours ali)ation
!etu# (ali)ations:
Y[Ji [support*istsN\ Y[JendiNFalidate i the (ransaction source is setup.
Y[Ji [support*istsN\ Y[JendiNFalidate i the E)penditure t%pe is setup.
Data (ali)ations:
Y[Ji [support*istsN\ Y[JendiN!hec' i the hours value is greater than zero.
Y[Ji [support*istsN\ Y[JendiN!hec' i the emplo%ee number is valid in $ and is active on the timecarddate.
Y[Ji [support*istsN\ Y[JendiNI the transaction source is setup as costed, then the cost has provided whilemigrating the transactions. I the transaction source is setup as accounted, then the code combination ids need tobe provided when migrating transactions.
Apart rom the above validations, %ou ma% want to validate the additional 1"" segments that %ou are going topopulate or that e)penditure item.
Bu)gets (ali)ation
!etu# (ali)ations:
-
8/15/2019 Oracle Projects Basics
21/62
Y[Ji [support*istsN\ Y[JendiNFalidate the project template has the reGuired nancial plan t%pe attached."inancial plans are the project management versions o the Budget t%pes in the "orms applications.
Y[Ji [support*istsN\ Y[JendiNBudget amount has to be greater than zero.
Y[Ji [support*istsN\ Y[JendiN(here is no need to create revenue budgets i the &Baseline unding withoutbudget& option is chec'ed at the project or project t%pe level. -henever the unding is created or the contractproject and is baselined, the revenue budget is automaticall% created and baselined. I that option is not chec'ed, itis necessar% that a revenue budget with the same amount as the unding amount needs to be created andbaselined in order to baseline the unding.
Data (ali)ations:
(he cost budget or the project can be rom the source s%stem&s budgeting s%stem. I there is no budgeting in thesource s%stem, a cost budget with the total cost o the project can be created in Oracle Projects.
"or revenue budgets, it has to be eGual to the unding amount o the project. I there is no unding amount in thesource s%stem, the sum o the revenue amount can be the unding amount and it is the revenue budget amount aswell.
+greements an) Fun)ing (ali)ation
Data (ali)ations:
Y[Ji [support*istsN\ Y[JendiNAgreement t%pe should be valid.
Y[Ji [support*istsN\ Y[JendiNAgreement Amount should be greater than zero.
Y[Ji [support*istsN\ Y[JendiNard *imits can be setup according to business rules. I the hard limits aresetup or revenue and invoice then the revenue and invoice has to be within the unding limits or that project.
Y[Ji [support*istsN\ Y[JendiN"unding amount has to be within the Agreement amount.
Y[Ji [support*istsN\ Y[JendiNI the unding at the top tas' level, then the &!ustomer at top tas'& has to beenabled and the customer should have been assigned at the top tas'.
Y[Ji [support*istsN\ Y[JendiN"unding amount should be same as the $evenue budget amount which ingeneral will be same as the total revenue amount or that project. I there are no hard limits then the revenue orinvoice can e)ceed the unding amounts.
$ecords which ail the above validations have to be rectied beore doing the actual migration.
Reenue an) Inoice (ali)ations:
Data (ali)ations:
Y[Ji [support*istsN\ Y[JendiNProject / (as' should alread% been converted to Oracle.
Y[Ji [support*istsN\ Y[JendiNEvent amount should be non zero.
Y[Ji [support*istsN\ Y[JendiN"or revenue event revenue amount should be populated.
Y[Ji [support*istsN\ Y[JendiN"or invoice event invoice amount should be populated.
-
8/15/2019 Oracle Projects Basics
22/62
Accepted State. Alternativel% the generated projects invoices can be interaced to A$, tied bac' to Oracle and thenthe invoices can be deleted in A$.
!tage -: +ctual Migration
Once the data is validated, the program or conversion is e)ecuted to migrate the data into oracle projects basetables. (here might be still errors due to A#< APIs which has to anal%zed and resolved. But the chances o such
A#< API issues is just below 5?] in an% migration0based on m% e)perience in Oracle Projects !onversion2.
Below is a table with !onversion and which A#< APIs are used or that conversion4
Conersion +M0 +PIs
Projects/(as's !onversion PA@P$OE!(@P3B.!$EA(E@P$OE!(
Budgets !onversion PA@B31
-
8/15/2019 Oracle Projects Basics
23/62
Y[Ji [support*istsN\ Y[JendiN(here are APIs to publish and baseline the wor'plans created as a parto projects migration. But these APIs need to be used with care. (here are lot o perormance issues and bugswhen using these APIs.
Conclusion:
I hope this article would have provided %ou an insight o Oracle Projects 1ata #igration. "or moreinormation or i %ou need an% other inormation related to Projects migration, %ou are welcome to create a topic inm% orum http4//www.projectsaccounting.com/projectsorum.html
!hange #anagement An Overview
A change is an event, action, or condition that a+ects the scope, value, or duration o a project or tas'. All change
documents must be associated with a project or project/tas' combination. !hange management is the process o
creating, managing, resolving, implementing, and communicating changes. !hange management encompasses
both change reGuests and change order.
!hange reGuests enable %ou to document potential changes to the scope o a project and to acilitate the approval
process.
!hange orders enable %ou to trac' and implement the impacts o changes to a project.
Cou can merge the impacts o multiple change reGuests into a single change order. Once approved, %ou can
implement the impact o a change order.
!hange reGuests and change orders are sometimes reerred to collectivel% in Oracle Projects as change documents.
!hange #anagement
(he change management process consists o the ollowing stages4
!reate change documents
-hen %ou identi% a change or a project or tas', %ou can record the change details using Oracle Project
#anagement and assign ownership o the resulting change document. (he owner creates and assigns actions in ane+ort to resolve the change document, and denes the change document impacts. Cou can also create a change
document b% cop%ing an e)isting issue or change document.
#anage change documents
Cou can view change documents or one or more projects or which %ou are responsible or resolving. (hese lists
provide inormation to help %ou determine which change documents need immediate attention. Cou can also update
the progress being made to resolve change documents.
$esolve change documents
Ater change document impacts have been dened and all actions have been closed, the change document owner
is reGuired to submit it or approval.
I a resolution is reGuired or a change document, %ou must enter it beore %ou can submit the change document or
approval.
Approve change documents
Approval o a change document indicates that the approver has reviewed the change document and agrees with
the dened impacts and the resolution. B% deault, the approver or %our change documents is the project manager,
but %ou ma% dene the approver di+erentl% during implementation.
I the approver rejects the change document resolution, the status is changed to $ejected and the change
document must be rewor'ed in order to be resubmitted it or approval. A change document with open actions
cannot be submitted or approval.
Implement and close change documents
Once approved, %ou can include change reGuests in a change order. Once a change order has been approved, %ou
http://www.projectsaccounting.com/projects-forum.htmlhttp://www.projectsaccounting.com/projects-forum.htmlhttp://www.projectsaccounting.com/projects-forum.htmlhttp://www.projectsaccounting.com/projects-forum.html
-
8/15/2019 Oracle Projects Basics
24/62
can implement the nancial impact in the approved budget or the project. Cou can also implement and trac' the
supplier impact in purchase orders, and trac' the implementation details or wor'plan, contract, staVng, and other
impacts.
Ater a change document is approved and implemented, %ou can close it. !hange reGuests must be included in a
change order beore the% can be closed. Once approved, %ou can implement the impacts o a change order and
close the change order.
!hange 1ocument Participation
Both project team members and non^team members can participate in the resolution and implementation o a
change document. (hese participants can have di+erent levels o access to the change document and related
actions based on both the status o the change document and the t%pe o assigned actions. Possible participants
include4
!reator4 A change document creator is a project team member who creates the change document and designates
the owner. Onl% the creator and users with proper project securit% access such as super users, users with project
authorit% or an organization, and project managers have access to a change document while it is in 1rat status.
Owner4 A change document owner is a project team member who has been assigned the responsibilit% o
overseeing the progress, resolution, implementation, and closure o a change document. (his person creates and
assigns actions to both team members and non^team members, as appropriate. In addition, users who have proper
project securit% access can change the status and ownership o items. (he owner o the change document can be
changed onl% while the change document is in either 1rat or -or'ing status.
Assignee4 An assignee is a person who has been assigned an action. (he assignee can respond, close, or reassign
the action.
Approver4 An approver reviews and approves a change document. Project managers are the deault change
document approvers. I the person that submits the change document or approval is the project manager, the
change document is automaticall% approved once it is submitted.
!reating !hange 1ocuments
Each change document is based on a predened change reGuest t%pe or change order t%pe. (he change document
t%pe determines who can create a change document o that t%pe and the general behavior o a change document
such as how the change documents are numbered and i a resolution is reGuired. !hange document t%pes are
associated with project t%pes. (his association determines the list o change document t%pes available or a given
project.
Points to 'eep in mind when creating change documents4
I %ou are not read% or the project team to begin wor'ing on the change document and assigned action, then %ou
must change the status to 1rat beore %ou save the change document or the rst time. Cou cannot change the
status o a wor'ing change document bac' to 1rat once it has been saved.
I the change document status was originall% set to 1rat, change the status to -or'ing when %ou are read% or theproject team members and other action assignees to begin wor'ing on their actions and the resolution o the
change document.
Each change document has a log trac'ing the interaction between team members and action assignees. All
comments and responses to actions are recorded in this log and can be viewed through the Interaction istor%
page.
!hange 1ocument Attributes
-hen %ou create a change document, the inormation %ou provide assists in its trac'ing and resolution. All change
-
8/15/2019 Oracle Projects Basics
25/62
documents must be associated with a project. (his section describes the 'e% attributes o a change document. (he
change document attributes include4
Summar% and 1escription
Cou can provide both a te)tual summar% and a description o the change document. (he summar% appears on all
predened views o change document lists.
!lassication Cou must select a classication or each change document. (his classication provides urther categorization o the
change document.
"or e)ample, %ou have dened classications o $esource, Dnowledge
-
8/15/2019 Oracle Projects Basics
26/62
S%stem umber and !hange 1ocument umber
Each change document is assigned a s%stem^generated number that is uniGue across all projects. In addition, each
change document has a number to identi% it within the project 0see ne)t page2.
1ening !hange 1ocument Impacts
(he t%pes o impacts that are available or %ou to dene or a specic change reGuest or change order are based on
the impacts that are enabled or the change document t%pe.
Cou dene wor'plan, staVng, contract, and other impacts b% entering descriptive te)t. -hen %ou dene a supplier
impact, %ou can enter descriptive te)t, as well as an impact amount b% purchase order. Cou can use the supplier
impact amount inormation to manuall% update purchase orders at an% time.
-hen %ou dene nancial impact or a change document, %ou can enter descriptive te)t, estimate amounts, and
detail plan lines. Amounts can include Guantities, cost amounts, and revenue amounts, as appropriate, based on the
planning options dened in the approved budget plan t%pe or a project.
Oracle Project #anagement uses the plan setup or the approved budget plan t%pe or a project to determine
whether %ou can enter cost impacts onl%, revenue impacts onl%, or both cost and revenue impacts.
Beore %ou can enter nancial impact amounts or a change document, a current wor'ing plan version must e)ist
or the approved budget plan t%pe or the project. In addition, once a nancial impact has been dened or a
change document, %ou must have at least one current wor'ing plan version or the approved budget plan t%pe.
-hen the Baseline "unding -ithout Budget option is enabled or a project, Oracle Projects automaticall% creates an
approved revenue budget when %ou create the project unding baseline. -hen dening the nancial impact o a
change order on a project with this option enabled, %ou must select the agreement name rom which the project
unding was created. I %ou want to increase the total amount or the agreement b% the amount o the change order
nancial impact, select the 3pdate Agreement Amount option on the Impact 1etails page.
Editing Planning Options or "inancial Impact in !hange 1ocuments
Planning options control the level, currencies, time phase, and planning elements 0tas's and resources2, or which
nancial amounts can be planned. Oracle Projects denes deault planning options or the nancial impact o achange document based on the planning options or the current wor'ing plan version o the approved budget plan
t%pe. Cou can optionall% edit the deault planning options o a change document rom the pages used to edit the
cost and revenue amounts.
!reating and Assigning Actions to !hange 1ocuments
An action is an assigned Guestion or unit o wor' related to the change document. (he action consists o the reGuest
and related inormation, and all responses to the reGuest. Actions enable project team members and other
interested parties to collaborate on a change document, and can help in the resolution o the change document.
Cou can create actions or a change document that is in either 1rat or -or'ing status, and assign these actions to
an% person. (hese actions are visible to the assignees onl% when the change document is in wor'ing status. Cou can
create two t%pes o actions4 $eview or 3pdate. A review action allows the assignee to review the change document
and enter a response. An update action allows the assignee to update the change document or as long as theaction is open. Onl% the change document owner or project manager can create update actions. Persons assigned
to open review and update actions can create new review actions or other people.
-hen %ou dene an action, %ou can speci% a due date or the response in the $eGuired b% 1ate eld. (his date
assists the change document owner in managing outstanding actions on the change document. Cou can also
reGuest sign o+ rom the action assignee in order to conrm the action response. (he change document owner can
submit the change document or approval onl% ater all the actions are closed.
-
8/15/2019 Oracle Projects Basics
27/62
Including and Fiewing !hange 1ocuments
Cou can automaticall% implement the nancial impact o an approved change order in a current wor'ing plan
version that is designated as an approved cost budget or an approved revenue budget.
Cou can include the nancial impact o a change document o an% status in an% plan version that is not designated
as an approved cost budget or an approved revenue budget. Cou can include the nancial impact o a change
document in a plan version onl% once.
#anuall% Including the Impact o a !hange 1ocument
Oracle Projects cannot automaticall% include the nancial impact o a change document in a plan version i an% o
the ollowing conditions are true4
(he planning level o the plan version is at a more detailed level than the planning level o the change document.
(he time phase o the plan version and the change document di+er, and the time phase o the plan version is not
one.
(he resource list o the plan version and the change document di+er, and the resource list o the plan version is not
one.
-hen the s%stem cannot automaticall% include the nancial impact o a change document in a plan version, the
s%stem will displa% the Fiew Plan page or the change document. (o manuall% include the nancial impact o the
change document, choose Printable Page on the Fiew Plan page to print the document inormation and use the
inormation to manuall% update the plan version.
I %ou manuall% update a plan version to include the nancial impact o a change document, then use the #ar' asIncluded option on the Fiew Plan page. (his prevents the change document rom being included in a plan version
more than once, and enables the change document to be displa%ed in the Fiew Included !hange 1ocuments page
or a plan version.
Fiewing Included !hange 1ocuments
(o view a list o change documents that are included in a plan version, navigate to the Fiew Included !hange
1ocuments page
Oracle Projects 7e$ Features in Release 1*.1.,
!o lets loo4 at some of the ne$'enhance) features of oracle #rojects in R1*.1.,
5. Enhanced Project *ist Page wherein users can create/edit/delete their own report views. Save search as areport.
6. One o the major improvements in this release is the improvement in the project perormance reportingprocesses. ow the PP$ processes comes with a parameter &project status& which the users can select whilesubmitting the processes. Am sure this will help in improving the long running PP$ processes.
7. ow onshared (as' Based #apping Structures and Partiall% Shared Structures are supported or #SPintegrations 0 I would sa% better integration than beore2 in $elease 56.5.7
-
8/15/2019 Oracle Projects Basics
28/62
8. Enhanced $etention Invoice Processing4 ow %ou can process the project deductions beore the releasingthe retention and hence ma'ing sure that the deductions are processed beore the invoice is processed. An%unapproved deductions i e)ist, the retention invoice will be put on hold.
9. !ost Issue Planning now can consider the estimated changes in direct or supplier costs. !onsolidatemultiple change reGuests into a change order to impact the budget.
:. Improved Oracle Projects 1iagnostics
Project !tatuses
024 Projects Implementation Super 3ser $esp Setup S%stem Statuses
-hen %ou implement Oracle Projects, %our s%stem is seeded with predened statuses. Cou can also modi% thedeault status controls or e)isting user statuses. Cou dene additional project statuses to meet %our businessneeds. Cou can create new user statuses based on the available s%stem statuses.Ever% project must have a valid status. (he predened Project Statuses are4 3napproved, Submitted, Approved,$ejected, Pending !losed, and !losed.Each project status must be associated with a s%stem status. (he predened s%stem statuses or project statusesare4 3napproved, Submitted, Approved, Pending !lose, !losed, Pending Purge, Partiall% Purged, and Purged.
Cou can optionall% include project status as a level o securit% in which %ou create separate menus or each projectstatus value and then associate the menu set to a role. (his additional securit% la%er enables %ou to use the statuso the project as another wa% o determining access to specic unctions related to that project. "or e)ample, %oucan give project managers the abilit% to update assignment rate inormation or projects while the% are in the salespipeline with a HsubmittedH status, and then prevent them rom updating that inormation ater those projects areapproved.
Dening Project !tatus Wor4Jo$
-
8/15/2019 Oracle Projects Basics
29/62
3se the wor'ow tab to enable wor'ow or a status and to associate the status with a wor'ow item t%pe andprocess.I a status is enabled or wor'ow, and the project t%pe or the project is enabled or the use wor'ow orproject status changes, when %ou update a project to that status the s%stem will initiate the associated wor'owprocess.-hen %ou enable a status or wor'ow, %ou will then enter inormation or the ollowing elds4
Item (%peProcessSuccess Status"ailure Status
Oracle Projects provides a deault project wor'ow process to use in association with project statuses. (he process is named the PA Project -or'ow. I %ou enable a status or wor'ow and then associate the deaultprocess with the status, the deault process will route the approval o a project status change to the immediatesupervisor o the person who submitted the status change. 3sing the Oracle -or'ow Builder, %ou ma% customizethe process or create new one.
Dening !tatus Controls Cou use the Status !ontrols region o the Statuses window to dene actions that are allowed or restricted oreach project status. I %ou want to change the status controls rom the deault settings, %ou can select or clear theAllow bo).
(he status controls or project statuses are4!reate ew (ransactionsProject Status $eport oticationsAdjust (ransactions
-
8/15/2019 Oracle Projects Basics
30/62
Submitted ApprovedSubmitted $ejected"our option buttons control the ne)t allowable statuses %ou can enter4All4 (he current status can be changed to an% status. (his is the deault value.one4 (he current status cannot be changed.S%stem Status4 (he e)t Allowable Statuses are all s%stem statuses.Status4 (he e)t Allowable Statuses are all userdened statuses.
Oracle Projects Classications
Project !lassications Project classications are used to group the projects.
A project classication includes a class categor% and a class code.!lass categories and codes are shared acrossoperating units. "or e)ample, i %ou want to 'now the Product to which a project belongs, %ou can dene a classcategor% with a name such as Industr% Sector.
Cou can dene class codes or this categor% such as i(ech,Proessional Services, "ederal,ER! etc.!lassicationscan be used or Guer%ing projects, reporting, and AutoAccounting.
-
8/15/2019 Oracle Projects Basics
31/62
A classication can be mar'ed as mandator% or all projects or or projects with a particular project t%pe.(heollowing options are available when %ou dene Project !lassications4
Man)ator Classications
Cou can speci% whether a class categor% is mandator% or ever% project %ou dene. Select this option i all projectsmust have a code assigned to this class categor%.!lassications and Project (%pesOn the Project (%pes tab, %ou canselect each project t%pe that %ou would li'e to associate with this class categor%. Enable the #andator% chec' bo)or a project t%pe i %ou want the s%stem to reGuire all projects o the project t%pe to be associated with theselected class categor%.
+uto+ccounting
I this option is chec'ed, %ou can use the class categor% in the auto accounting rules.
+llo$ 1 co)e onl
Speci% whether %ou want to allow entr% o onl% one class code with this class categor% or a project.
+llo$ #ercent entr
(his controls the abilit% to associate percentages with classication codes. (he s%stem reGuires class codepercentages or the categor% regardless o the project t%pe.
%otal #ercent eGual 133
I this option is chec'ed, the sum o all class code percentages should be eGual to 5?? or the selected classcategor%. (his option can be disabled at an%time.
-
8/15/2019 Oracle Projects Basics
32/62
Oracle Projects Data Mo)el
(his topic covers the Oracle Projects 1ata model.
Projects are created rom the Projects (emplates / other Projects .
Base %a&le: P+EIMP69M97%+%IO7!E+66
(his table contains a row or each projects implementation, i.e one per operating unit. (his table contains the setupinormation specic to the operating unit.
(he table data corresponds to the ront end4 Projects implementation super user resp SetupS%stemImplementation options.
Base %a&le: P+EPROK9C%!E+66
Important !olumns4
Project I14 uniGuel% identies a project
ame4 ame o the Project
Segment54 Project umber
(his project number can be automatic/ #anual depending upon the S%stem Implementation Option Setups, i.e., ithe setting is automatic, there is no need o giving a project number when creating a project. I it is manual, then aproject number should be provided while creating the project.
!arr%ing@out@organization@id 4 (his is the project owning organization.
Pm@product@code4 (his identies the source o the project, generall% used whenever a project is created rom athird part% product.
Project@Status@code4 Indicates the project status whether active, approved, closed, rejected etc.
Start@1ate 4 (ransaction start date o the Project.
!ompletion@1ate4 (ransaction End 1ate o the project.
0(here are di+erent dates or a project each having its own signicance, we will see those in a di+erent topic.2
%as4s:Base %a&le: P+E%+!!
Im#ortant Columns:
(as'@id 4 uniGuel% identies a tas'.
Project@id 4 "rom the pa@projects@all table .
!arr%ing@out@organization@id 4 (his is the tas' owning organization.
0(as' owning organization can be di+erent rom Project owning organization2.
Start@date 4 (ransaction Start 1ate o the (as'
!ompletion@1ate4 (ransaction End 1ate o the (as'
-bs@level 4Indicates the level o the (as' in the -BS hierarch%.
0-BS -or' Brea' down Structure indicates the structure o the Project2
Parent@(as'@id 4 uniGuel% identies the Parent (as'
(op@(as'@id 4 uniGuel% identies the (op (as'.
Pm@product@code 4 Indicates the source o the tas'0used in conversion projects2.
Pm@tas'@reerence4 uniGuel% identies the corresponding tas' in the source s%stem 0used in conversion projects2.
Base %a&le: P+E+0R99M97%!E+66
-
8/15/2019 Oracle Projects Basics
33/62
(his is the table which stores the Agreement inormation.
Agreement@id 4 uniGuel% identies the agreement.
!ustomer@id 4 Agreement_s customer id.
Agreement@num 4 Agreement umber
E)piration@1ate 4 E)piration 1ate o the Agreement
$evenue@*imit@"lag4 "lag which indicates whether the revenue can e)ceed the allocated unding amount.
Invoice@*imit@"lag4 "lag which indicates whether invoice can e)ceed the allocated unding amount.
Amount4 Agreement Amount.
Base %a&le: P+EPROK9C%EF"7DI70!
Project@"unding@id 4 uniGuel% identies the "unding
Project@id 4 id o Project to which the unding is allocated
(as'@id 4 id o (op (as' to which the unding is allocated
Budget@t%pe@code 4 Status o the budget whether baselined or not.
Allocated@amount4 the amount o unding allocated to the project or top tas'.
(o be continued...
Reconciling P+ an) other mo)ules = Part I
(he most challenging part is reconciling the cost and revenue in PA with other modules.Below is a ow chartshowing the data ow between the modules PA, AP, PO and
-
8/15/2019 Oracle Projects Basics
34/62
ere in this Part5 iam giving %ou the basic Gueries that will be helpul to reconcile the cost between these modules.In Part6 I will be giving the basic Gueries or revenue reconciliation. In Part7, i will be giving the 3B$ and 3E$reconcilation.
7O%9: %hese Gueries are just #rotot#es; ou ma hae to mo)if it accor)ing to our accountingsetu#. +ll the Gueries are for a #articular #erio) since $e are concerne) a&out reconcilingcost'reenue for that #articular #erio) onl.
-
8/15/2019 Oracle Projects Basics
35/62
(he above Guer% will give %ou the cost that is interaced rom AP to PA or 3?= period. (he !ost in Quer% Q6 orthe transaction source &Pa%ables& should match the cost in Q7.I these two are not matching then it might be that!ost is adjusted in Projects/Pa%ables but posted to the other module.
Case1: Inoice from +P is a)juste) in P+.
Case*: Inoice is a)juste) in +P after it is interface) to P+.
"or !ase5, Interace the uninteraced Supplier invoice adjustment records in Oracle Projects.
"or !ase64Interace the Adjusted AP invoice to Oracle Projects.
(hen rerun the Gueries Q6 and Q7 and chec'.
-
8/15/2019 Oracle Projects Basics
36/62
Y[Ji [vmlNY[JendiN
-
8/15/2019 Oracle Projects Basics
37/62
Y[Ji [vmlNY[JendiN
-
8/15/2019 Oracle Projects Basics
38/62
Y[Ji [vmlNY[JendiN Y[Ji [vmlNY[JendiN
Y[Ji [vmlNY[JendiN
Y[Ji [vmlNY[JendiN
!earch for a Construction Project:
-
8/15/2019 Oracle Projects Basics
39/62
avigate to the Setup o the Project. -e can see the !ost !enter Inormation *in' at the bottom o the Page.
avigate to the !ost !enter Inormation Page, we can see the Attribute item we have created. -e can ll in thevalue o the cost center here and it is stored in the P+EPROK9C%!E9RPE9A%EB and P+EPROK9C%!E9RPE9A%E%6
(ables.
Role Base) Costing in Oracle Projects
One o the scenario that i came across is client wanted to have the cost rates assigned at the role level. -ith thestandard unctionalit% this is not possible.
So we decided to create a orm to assign the rates to the project roles. But i would preer enabling the e)eld inthe Project $oles denition orm and then assigning rates in one o the segments.
(he rst step here is enabling the e)eld in the Project $oles orms.
1. 9na&le DFF segments for the Project Role %#e DFF.
-
8/15/2019 Oracle Projects Basics
40/62
*. +)) the Cost Rate !egment = Which ma#s to the +ttri&ute1 of the P+EPROK9C%ERO69E%LP9!EBta&le.
,. In the P+ Im#lementation !" res#; !etu#=>Projects=> Roles;assign the cost rate to the res#ectieroles.
-
8/15/2019 Oracle Projects Basics
41/62
-
8/15/2019 Oracle Projects Basics
42/62
8. ow we have to modi% the *abor costing client e)tension provided b% Oracle . Below is an e)ample o how toobtain the cost rate and calculate the cost.
6a&or Costing 95tension Pac4age: PA@!lient@E)tn@!osting
under patch/559/PA!!E!B.pls
procedure !alc@$aw@!ost0 )@transaction@t%pe in varchar6 deault &A!(3A*&, )@e)penditure@item@id in number, )@s%s@lin'age@unction in varchar6, )@denom@raw@cost in out number, )@status in out number 2
is l@cost@rate umberU l@Guantit% umberU begin $eset the output parameters. )@denom@raw@cost 4K 3**U )@status 4K ?U i 0 )@transaction@t%pe K &A!(3A*&2 then i 0)@s%s@lin'age@unction K &S(&2 then &egin select toEnum&errolt#.attri&ute1 into lEcostErate; lEGuantit from #aE#rojectEroleEt#esEl rolt#;#aEe5#en)itureEitemsEall ei; #aE#rojectE#laers ###; #aEe5#en)ituresEall e5# $here rolt#.#rojectEroleEt#e ###.#rojectEroleEt#e an) ###.#rojectEi) ei.#rojectEi) an) ei.e5#en)itureEi) e5#.e5#en)itureEi)
an) ###.#ersonEi) e5#.incurre)E&E#ersonEi) an) ei.e5#en)itureEitemEi) 5Ee5#en)itureEitemEi)
5E)enomEra$Ecost : lEcostErate N lEGuantit
95ce#tion When noE)ataEfoun) then 7ull 9n) nullU else
-
8/15/2019 Oracle Projects Basics
43/62
Add %our calculation o overtime e)penditure item. nullU end iU elsi 0 )@transaction@t%pe K &"O$E!AS(&2 then Add %our calculation or orecast nullU end iU e)ception
when others then Add %our e)ception handler here. (o raise an application error, assign a positive number to )@status. (o raise an O$A!*E error, assign SQ*!O1E to )@status.
nullU
end !alc@$aw@!ostU
+ssum#tion: ere we are assuming that all emplo%ees who enter e)penditures or the project are assigned $oles.
Custom Project 7um&ering in Oracle Projects
Some o the companies the% want to customize the wa% automatic project numbering is wor'ing in projects. Onesuch reGuirement is to have di+erent project number seGuences or di+erent O3s.
Since the projects numbering is based on a seGuence i the automatic project numbering is on and is common orall the O3s, there is not a wa% to have a di+erent seGuence or di+erent O3.
ere is a wa% where %ou can customize it4
3sing customization we can achieve it.
5. Set the project numbering to be manual.
6. !reate one seGuence or each O3.
7. !ustomize the projects creation page to automaticall% populate the project number to a pre) ` seGuencenumber corresponding to the O3.
*ets sa% the pre)4 AB! or O3 AB! Inc
then the project number is AB!5
and pre) 4 CZ or CZ inc
then the project number is CZ5.
(his wa% we can acheive uniGue numbering across the O3s and at the same time di+erent seGuencing or di+erentO3
9nhancements in Oracle Projects
Some o the enhancements to Projects can be 4
5. Adding/3pdating a single (as' Across multiple project.
6. Adding multiple tas's to multiple projects at a time.
7. Adding /3pdating a 'e% member across a project.
8. Publishing #ultiple Projects at a time.
(hese enhancements will save more time to an% organization.
All these can be achieved using Oracle Projects A#< API and private APIs.
-e will see how we can achieve this in the coming articles
-
8/15/2019 Oracle Projects Basics
44/62
Oracle Projects= +ccounts Paa&les Integration
P+ = +P Flo$:
ere iam considering the AP invoice integration with Oracle Projects. I will e)plain about the E)pense $eports owin another topic.
(his integration involves 6 sub processes given below4
• Interacing Supplier Invoice "rom Oracle Pa%ables (o Oracle Projects
• Interacing Supplier Invoice Adjustments "rom Oracle Projects (o Oracle Pa%ables
Interfacing !u##lier Inoice From Oracle Paa&les %o Oracle Projects:
(his process involves 4
5. !reating the invoice.
6. Approve the invoice.
7. Account or the invoice in pa%ables.
8. $un the &Interace Supplier !osts& process in Oracle Projects which interaces the invoices rom AP to PA.
Interfacing !u##lier Inoice +)justments From Oracle Projects %o Oracle Paa&les4
(his process involves4
5. Adjust the supplier invoice interaced to Oracle Projects b% either splitting the Guantit% or transerring aninvoice rom one project/tas' to another.
6. E)ecute the P$!4 1istribute Supplier Invoice Adjustment !osts process in Oracle Projects.
7. $un the P$!4 Interace Supplier Invoice Adjustment !osts to Pa%ables process in Oracle Projects.
Im#ortant Project Relate) Fiel)s in +P:
• Project 7ame Project ame to which the Invoice is accounted in Pa%ables.
• %as4 7um&er (as' umber o the Project to which the invoice is accounted. 7ote: I the (as' is notchargeable, the s%stem displa%s the ollowing error message4 APPPA5>6;? (he (as' is ot !hargeable. (he sameerror will be received i the !hargeable "lag is not chec'ed while dening (as's in Projects Setup or i the tas' is aParent (as'. E)penditures cannot be created at the Parent (as' level.
• 95#en)iture %#es E)penditure (%pe o the invoice. (his is based on the projects e)penditure t%pes0pa@e)penditure@t%pes table2
• 95#en)iture Item Date (he date o the invoice e)penditure item to be created in Projects.
• 95#en)iture Organi@ation Active Project E)penditure/Event Organization against which the invoice hasto be mapped.
(he E)penditure Org can be nd in PA@A**@Organizations table with pa@org@use@t%pe K &EPE1I(3$ES&. "or an%organization to be a E)penditure Organization, it has to be classied in $ as &E)penditure/Event Organization&.
•
-
8/15/2019 Oracle Projects Basics
45/62
Once all the reGuisite inormation has been entered and the invoice distribution saved, the s%stem chec's whetherthe values given in the Project, (as', E)penditure (%pe and E)penditure Organization elds are active as o theE)penditure Item 1ate.
(he ollowing columns in the +PEI7(OIC9EDI!%RIB"%IO7!E+66 table are relevant or projectrelated supplierinvoices4
5. PROK9C%E+CCO"7%I70ECO7%9A% (his column is set to Ces i the Project I1 column is lled.
5. +!!9%E+DDI%IO7EF6+0 I the projectrelated invoice distribution is charged to a !apital Project, thenthe ASSE(@A11I(IO@"*A< is set to P when the PA@A11I(IO@"*A< is set to C, Z or (.
(o avoid the same invoice distribution being interaced to both Projects and "i)ed Assets, %ou must interace an%projectrelated invoice distribution to Oracle Projects beore %ou interace it to Oracle Assets.
5. P+E+DDI%IO7EF6+0 (he PA@A11I(IO@"*A< trac's the status o projectrelated supplier invoicedistribution lines and e)pense report distribution lines. "or supplier invoice distributions entered via OraclePa%ables, the PA@A11I(IO@"*A< is set to i the distribution is projectrelated, otherwise it is set to E and it isupdated b% Oracle Projects when the distribution is processed b% the Oracle Projects Interace Supplier Invoiceprocess. Oracle Projects sets the PA@A11I(IO@"*A< to C or Z ater the item is successull% processed, or ma% beset to a rejection code i the line is rejected during transer to Projects. "or supplier invoice adjustment linesinteraced rom Projects to Pa%ables 0which must net to zero with another line2, the value or thePA@A11I(IO@"*A< is set to (. *isted below are the Quic' !odes available or the PA@A11I(IO@"*A
-
8/15/2019 Oracle Projects Basics
46/62
+PEI7(OIC9!E+66 P+E9AP97DI%"R9!E+66 P+ECO!%EDI!%RIB"%IO7E6I79!E+66
IFOI!E@3# O$I
-
8/15/2019 Oracle Projects Basics
47/62
5. In the e)eld &AP E)pense $eport *ine& add the ollowing segments4
5. Segment4 Project umber, Falueset 4 PA@S$S@Project@I1
6. Segment4 (as' umber , Falueset4 PA@S$S@(as'@I1
7. Segment4 E)penditure@(%pe,Faluset4 PA@S$S@E)penditure@(%pe
8. Segment4 E)penditure@Organization,Falueset4 PA@S$S@E)penditure@Organization
So whenever an AP e)pense report is entered, these elds are captured in the &AP@E)pense@$eports@lines&attributes.
ow the e)pense report is converted into AP invoices using &AP invoice import process&. (hese invoices an%wa% willnot have the projects inormation. So we need to loo' bac' into the attributes captured in the E)pense report linesand update the ap@invoice@distributions@all table.
So write a concurrent program or acheiving the same. (he update statement should update the below elds4
ap@invoice@d [email protected]@id
ap@invoice@[email protected]'@id
ap@invoice@[email protected])penditure@t%pe
ap@invoice@[email protected])penditure@item@1ate
ap@invoice@[email protected])penditure@organization@id
ap@invoice@[email protected]@accounting@conte)t this should be set to &Ces& to interace the invoices toProjects.
ap@invoice@[email protected]@addition@ag this should be set to && to set the lines eligible or interace toProjects.
Once the above update is done, the invoice can be interaced to projects b% running the &P$!4Interace Supplier!osts& process rom PA
Oracle Projects information in O%6
ow to capture e)tra inormation in Project related (imecards in O(*
ere i will discuss about how to capture e)tra inormation in the O(* timecards and transer it to the E)penditure
items table 1"" attributes.
ere are the steps.
5. Enable the &E)penditure Items& 1escriptive "le)eld in the Application 1eveloper and enter the segments.
3nreeze the e)eld rst and then ma'e the changes.
in the &
-
8/15/2019 Oracle Projects Basics
48/62
7ote: Please ma4e sure ou hae ena&le) the segment an) ma4e it isi&le. +lso the reGuire) chec4&o5 shoul) &e OFF ; unless ou $ant to ma4e this segment man)ator.
6. Enable the 1"" conte)t &
-
8/15/2019 Oracle Projects Basics
49/62
7. In O(* Application 1eveloper $esponsibilit%, run the &
-
8/15/2019 Oracle Projects Basics
50/62
-
8/15/2019 Oracle Projects Basics
51/62
9. ow goto Selservice time responsibilit% and enter a timecard and clic' on 1etails. Cou will now see the 1""segment &-or' (%pe& being shown or each da% entr%.
Cou can even attach an Falueset to the segment in the E)penditure Items 1"" and %ou will see an *OF here.
+lso 7ote: +n change to the DFF has to &e ma)e in 95#en)iture Items DFF an) then the 0eneratema##ing #rocess $ill #ull the changes into P+9API%DFF=06OB+6. Lou cannot manuall )o the changesin segments in the P+9API%DFF=06OB+6 conte5t.
-
8/15/2019 Oracle Projects Basics
52/62
Oracle Projects = Fi5e) +ssets Integration
In this article, i will e)plain the steps involved in the interace o !apital Projects Assets to "i)ed Assets.
5. Enter the cost that %ou want to capitalize either in the Preapproved e)penditure entr% or through transactionimport or rom Pa%ables or other modules.
6. $un the distribute process or the t%pe o cost that %ou are dealing with. 0i.e labor, usage, and miscellaneous
cost. 2
7. I the item is rom Pa%ables, %ou need to run the &P$!4 Interace Supplier !osts& process.
8. Interace $aw !ost and Burden !ost to . $un the /PRC:0enerate +sset 6ines/ process to generate Asset *ines in PA.
5?. $un /PRC: Interface +ssets/ process to interace Asset *ines to "A.
55. In "i)ed Assets post the Asset *ines %ou have interaced rom PA to "A.
%hings ou ma hae to chec4 &efore generating asset lines:
5. !hec' all the costs have been cost distributed0 Cou need to run the appropriate cost distribution processlabor, e)pense, miscellaneous etc depending upon %our e)penditure t%pe2.
6. !hec' the project t%pe or the project. In the capitalization inormation, alternate region it indicates whether rawor burden costs are being capitalized. I burden costs are used, then nothing will get pic'ed up unless 1istributetotal Burden costs has been run.
7. #a'e sure that the assets have an inservice date and that the report parameter 1ate Placed In Service (hrough
includes this date.
8. !hec' the PA 1ate (hrough parameter used. ote that this must be at least the last da% o the period whichincludes the PA 1ate o the cost distribution lines o the e)penditure.
I this date is not the last da% o a period, the process will select the rst date which is a last da% o a period prior tothe date entered.*ets sa% %our PA periods are li'e below4
A?> ?5A?> to 75A?> "EB?> ?5"EB?> to 6="EB?>
I %ou have !1*&s with a PA date o 59"EB?>, and %ou enter a PA date through 69"EB?>, these !1*&s will not bepic'ed up because the process will not actuall% use the date 69"EB?>, but rather the rst period ending date priorto that date, or 75A?>.
9. !hec' the project status. In SetupProjectsStatus, ma'e sure that the project&s current status has the !apitalizeAssets action allowed.
Cost Collector %rou&leshooting
In case the transactions are not interaced rom Project Inventor% to Oracle Projects. Cou need to ma'e sure theollowing setups.
5. !hec' the Project reerences bo).-hen %ou chec' this bo), the organization is Project $eerences enabled.Project number and, optionall%, tas' numbers can be associated with the transactions.
-
8/15/2019 Oracle Projects Basics
53/62
6. Select a !ommon Project. Selecting a common project enables %ou to trac' the cost o manuacturingtransactions that have not been associated with a specic project. Cou can set up a di+erent common project oreach inventor% organization.
7. 3nder Project, setup, P# parameters, !ost
-
8/15/2019 Oracle Projects Basics
54/62
55. Is the item an Asset Item. Is the Subinventor% an asset subinventor%. E)cept or some transactions in PO amil%, onl% asset subinventories and asset items are transerredother scenarios are not supported, chec' the user&s guide or eligibilit%, there is a section on that.
57. Oracle Project #anuacturing&s !ost !ollector allows %ou to transer manuacturing costs to OracleProject. owever, the manuacturing cost here means the cost o -or' Order, inventor% transactions and labor
cost related to the -O.
Sales Order is not considering as manuacturing cost, it goes to
-
8/15/2019 Oracle Projects Basics
55/62
!ompan% &CZ& is using a Project #anagement and Accounting Sotware or %ears long. (he #anagement hasdecided to move rom their e)isting s%stem to Oracle Projects module because o its vast unctionalit% andintegration with Other nancial modules.8o$ to )eal $ith it ?
ow the Guestion arises4 What data to migrate from the legacy system to Oracle Projects?. -ell, it dependsupon the t%pe o projects.I the Projects are used or Internal Administration and trac'ing o costs, %ou ma% want to migrate the e)istingprojects, tas's0the wor' brea' down structure2, !ost Budgets, !ost 0(imecards, Emplo%ee E)penses, #iscellaneous
E)penses2 etc.I the Projects are used or billing the !lients or the wor' done 0(%pical !ontract Projects2, then %ou ma% want to$evenue, Agreements0!ontracts2, $evenue budgets and Invoices in addition to the above data.Once the decision is made to which data to migrate, then the ne)t step would be setting up the Oracle Projects orthe conversion purpose, which we will see in detail sooner. Once the S%stem has been setup, the technicalelements0programs, concurrent processes etc2 have to be created in order to migrate the data rom *egac% S%stemto Oracle Projects.
!tages in Oracle Projects Conersion
;. (he First !tage is to obtain the data rom the *egac% S%stem which needs to be migrated to OracleProjects.
=. (he !econ) !tage will be most crucial step in the process which is to massage the data according to theOracle Projects !onversion Interace0Programs built using A#< APIs2. (his Step is indeed time consuming, manuallabor intensive to massage and recti% the errors etc. But completing this step successull% pa%s dividends in theconsecutive processes / Stages.
(he %hir) !tage is uploading the data obtained rom legac% s%stems into the Staging Area0Staging (ables createdto hold the data temporaril% till it gets migrated into Oracle Projects2. Once the data is uploaded to the Stagingtables, the programs built or migration0-e will see how to build these programs in detail2 will validate the Staging
(able data to conrm that it is in compliance with the Projects !onversion Program0 (he A#< APIs used in theprograms indeed needs data in certain ormat, also the data should be validated against the Oracle Projects Setup."or instance, when migrating the cost or hours rom legac% to Projects, we might need to validate i the e)pendituret%pe is alread% setup in Oracle Projects, i the e)penditure t%pe is not setup, the program/APIs will throw an error. Soit is alwa%s better to capture these 'ind o scenarios in the Falidation Step o the #igration.
(he Second Stage and (hird Stages are repetitive until %ou get the Falid data rom the legac% s%stem which can be
migrated into Oracle Projects without an% errors or issues.
5. (he Fourth !tage is the actual migration process which will migrate the data rom the Staging (ables to
the Oracle Projects Base tables. Once this step is done, the projects, tas's and other data are available in OracleProjects or use.
Beore going through the stages, we will loo' at some o the basic setups that needs to be done in Oracle
Projects.
Oracle Projects !etu# For Conersion
Y[Ji [support*istsN\ Y[JendiNProduct !ode4 (he Product !ode needs to be setup in Oracle Projects in the A#<
-
8/15/2019 Oracle Projects Basics
56/62
In order to pass the project number to the #igration program, this implementation option needs to be setup toanual&. Once the migration is done, this setup can be reverted bac' to &Automatic&.
Y[Ji [support*istsN\ Y[JendiNSetup (ransaction Source4 (he (ransaction Source needs to be setup in Oracle Projects in the (ransaction Sources orm in Oracle Projects
Implementation Super 3ser $esponsibilit%. (his is a mandator% setup or the !osts/hours migration rom the legac%s%stem to Oracle Projects. -e need to tell the migration API&s what is the source s%stem and how the data ishandled when it is imported to Oracle Projects.
Y[Ji [support*istsN\ Y[JendiNSetup E)penditure (%pes4
E)penditure (%pes are needed to categorize the cost/hours when it is imported to Oracle Projects. (his is amandator% setup or !ost/hours migration. -e need to tell the s%stem which e)penditure t%pe the cost/hourbelongs to.
Y[Ji [support*istsN\ Y[JendiNSetup Emplo%ee !ost $ates4 Setting up cost rates or emplo%ees is not mandator%. But i %ou need to cost the hours that are migrated in
the s%stem, the labor cost distribution process in Oracle Projects do need the rates setup in order to calculate thecosts.
But i %ou are migrating the costs directl% rom the legac% instead o hours then this step is not needed.But ideall% the cost rates are reGuired in a general production scenario wherein the emplo%ees/contractors entertheir timecards.
Cou can setup job rate schedule, emplo%ee level rate schedule or emplo%ee level overrides. Alternativel%, thecosting client e)tension can be setup to calculate the cost according to the business scenario.$eer to the Oracle Projects 3ser
-
8/15/2019 Oracle Projects Basics
57/62
Project Publish
-or'plan
Ces
Project Baseline
-or'plan
Ces
!ost Budget Baseline Ces
$evenue
Budget
Baseline Ces
(his control table is loo'ed upon b% the migration program. So whenever there is a change in the templates,e)penditure t%pes it is eas% to change this control table instead o the code. So the advise is never hard code an%values in the code, alwa%s handle it using the control table. Also it will be better to have a orm based on this table, so that this table data can be changed rom the ront end.
Second Stage R (hird Stage4 Falidate and "ormat the 1ata Iam coupling the second and third stage because both are interdependent. Falidating data is ver% important
and it prevents some o the time consuming tas's in actual migration such as trouble shooting the errors due to theinvalid data.Below are some o the 'e% validations that need to be done beore doing the actual migration.
Projects'%as4s Migration:
(hough the projects and tas's are in di+erent staging tables, the migration o projects/tas's are doingusing a single program. -e can alwa%s migrate projects and tas's separatel%, but the issue is with the perormancewhen adding tas' b% tas' to each project. So it alwa%s better to create projects and tas's together because o thebul' loading o tas's.
Project'%as4 = !etu# (ali)ations:
Y[Ji [support*istsN\ Y[JendiNFalidate the Product code is setup.Y[Ji [support*istsN\ Y[JendiNFalidate i the reGuired Project (emplates are setup.
Y[Ji [support*istsN\ Y[JendiNFalidate i the Project umbering is set to anual& or creating projects withthe predened project numbers.
Project'%as4 Data (ali)ations:
Y[Ji [support*istsN\ Y[JendiNFalidate i the project name is uniGue. Project with the same name should note)ist in Oracle Projects.
Y[Ji [support*istsN\ Y[JendiNFalidate i the project number is uniGue. Project with the same number shouldnot e)ist in Oracle Projects.
Y[Ji [support*istsN\ Y[JendiNFalidate i the project long name is uniGue. Project with the same long nameshould not e)ist in Oracle.
Y[Ji [support*istsN\ Y[JendiNFalidate the project reerence0this eld is mandator% in the projects le, it canbe the projects identier o the source project or project number o the source project, but it has to be uniGue in thesource s%stem as well. (his eld needs to be populated in all the converted projects in order to trac' bac' andidenti% the project in the source s%stem2
Y[Ji [support*istsN\ Y[JendiNProject name and project number should be 7? chars in length. Project longname should be 68? chars in length. Project 1escription should be 69? chars in length. Project description is not amandator% eld when creating project.
Y[Ji [support*istsN\ Y[JendiN!hec' i the project has a project manager and the project manager is activein Oracle $ and has an assignment and a ob assigned. Also the project manager has to be active rom the projectstart date, else %ou cannot create a project with that project manager.
Y[Ji [support*istsN\ Y[JendiNIn case o contract projects, chec' i the customer o the project is a validcustomer dened and with a valid Bill (o site assigned.
Y[Ji [support*istsN\ Y[JendiN!hec' i the (as's in the (as' le has a project in the Projects le.
Apart rom the above necessar% validations, %ou ma% have to validate the additional data such as Projects 1"" 1ata
%ou ma% want to populate with %our custom eld values. "or e)ample %ou ma% want to populate the Project cost
center value in the Segment5 o the Project 1"". In such case %ou have to validate i the cost center value is a valid
-
8/15/2019 Oracle Projects Basics
58/62
value or that Segment50sometimes %ou ma% have attached an *OF to that segment5, so in that case, the cost
center has to be validated against that *OF Falues2.
"or tas's, values or tas' t%pes, wor' t%pe, tas' manager has to be validated. (as' t%pes and wor' t%pes have to be
dened in Oracle Projects beore the tas' with those values are migrated, else the tas' will not be created.
Cost'hours ali)ation
Setup Falidations4Y[Ji [support*istsN\ Y[JendiNFalidate i the (ransaction source is setup.Y[Ji [support*istsN\ Y[JendiNFalidate i the E)penditure t%pe is setup.1ata Falidations4Y[Ji [support*istsN\ Y[JendiN!hec' i the hours value is greater than zero.Y[Ji [support*istsN\ Y[JendiN!hec' i the emplo%ee number is valid in $ and is active on the timecard
date.Y[Ji [support*istsN\ Y[JendiNI the transaction source is setup as costed, then the cost has provided
while migrating the transactions. I the transaction source is setup as accounted, then the code combination idsneed to be provided when migrating transactions.
Apart rom the above validations, %ou ma% want to validate the additional 1"" segments that %ou are going topopulate or that e)penditure item.
Budgets FalidationSetup Falidations4Y[Ji [support*istsN\ Y[JendiNFalidate the project template has the reGuired nancial plan t%pe attached.
"inancial plans are the project management versions o the Budget t%pes in the "orms applications.
Y[Ji [support*istsN\ Y[JendiNBudget amount has to be greater than zero.Y[Ji [support*istsN\ Y[JendiN(here is no need to create revenue budgets i the &Baseline unding withoutbudget& option is chec'ed at the project or project t%pe level. -henever the unding is created or the contractproject and is baselined, the revenue budget is automaticall% created and baselined. I that option is not chec'ed, itis necessar% that a revenue budget with the same amount as the unding amount needs to be created andbaselined in order to baseline the unding.
Data (ali)ations:
(he cost budget or the project can be rom the source s%stem&s budgeting s%stem. I there is no budgeting in thesource s%stem, a cost budget with the total cost o the project can be created in Oracle Projects."or revenue budgets, it has to be eGual to the unding amount o the project. I there is no unding amount in thesource s%stem, the sum o the revenue amount can be the unding amount and it is the revenue budget amount aswell.
+greements an) Fun)ing (ali)ation
Data (ali)ations:
Y[Ji [support*istsN\ Y[JendiNAgreement t%pe should be valid.Y[Ji [support*istsN\ Y[JendiNAgreement Amount should be greater than zero.Y[Ji [support*istsN\ Y[JendiNard *imits can be setup according to business rules. I the hard limits are
setup or revenue and invoice then the revenue and invoice has to be within the unding limits or that project.Y[Ji [support*istsN\ Y[JendiN"unding amount has to be within the Agreement amount.Y[Ji [support*istsN\ Y[JendiNI the unding at the top tas' level, then the &!ustomer at top tas'& has to
be enabled and the customer should have been assigned at the top tas'.Y[Ji [support*istsN\ Y[JendiN"unding amount should be same as the $evenue budget amount which in
general will be same as the total revenue amount or that project. I there are no hard limits then the revenue orinvoice can e)ceed the unding amounts.
$ecords which ail the above validations have to be rectied beore doing the actual migration.$evenue and Invoice Falidations41ata Falidations4Y[Ji [support*istsN\ Y[JendiNProject / (as' should alread% been converted to Oracle.Y[Ji [support*istsN\ Y[JendiNEvent amount should be non zero.Y[Ji [support*istsN\ Y[JendiN"or revenue event revenue amount should be populated.Y[Ji [support*istsN\ Y[JendiN"or invoice event invoice amount should be populated.
-
8/15/2019 Oracle Projects Basics
59/62
Oracle projects. (his will turn the ags in the revenue records as accepted in
-
8/15/2019 Oracle Projects Basics
60/62
Y[Ji [support*istsN\ Y[JendiN"or (ransactions migration, the custom program written to populate the
interace table can 'ic' o+ the P$!4(ransaction Import process and wait or its completion. Once the
transaction import completes, the custom process can print the invalid records rom the interace table to the
output le.
Y[Ji [support*istsN\ Y[JendiN(here are APIs to publish and baseline the wor'plans created as a part
o projects migration. But these APIs need to be used with care. (here are lot o perormance issues and bugs
when using these APIs.
Conclusion:
I hope this article would have provided %ou an insight o Oracle Projects 1ata #igration. "or more
inormation or i %ou need an% other inormation related to Projects migration, %ou are welcome to create a topic in
m% orum http4//www.projectsaccounting.com/projectsorum.html .
Im#ort legac %imesheets to Oracle Projects
(his article gives %ou a brie understanding and sample code snippet o how to import legac% timesheets into oracleprojects.
!te#s:
5. Populate the transaction interace table pa@transaction@interace@all.
6. $un the P$!4 (ransaction Import process or the (ransaction Source/ batch name.7. $un the 1istribute *abor !osts process i the transactions are not costed.
Populating the (ransaction Interace (able4
Below is a code snippet o how to populate the interace table4
7O%9: (his code populates the interace table with the uncosted transactions, so there is no need o populating thecost columns.
I %ou are importing costed transactions, then %ou have to suppl% the denom@raw@cost,acct@raw@cost,burdened@cost, denom@currenc%@code and other burden cost columns i %ou are importing theburden amounts as well.
Also i %ou are importing the
-
8/15/2019 Oracle Projects Basics
61/62
A1 pap.project@id K pat.tas'@id A1 pat.pm@tas'@reerence K t)n.tas'@id A1 hrorg.organization@id K pap.carr%ing@out@organization@id A1 t)n.valid@ag K &C& A1 t)n.converted@ag K &&U
Begin
"or t)n@rec in t)n@cur *oop
Insert into pa@transaction@interace 0 transaction@source , batch@name , e)penditure@ending@date , organization@name , e)penditure@item@date , project@number , tas'@number , e)penditure@t%pe , Guantit% ,
e)penditure@comment , transaction@status@code , orig@transaction@reerence ,
unmatched@negative@t)n@ag , billable@ag , org@id ,
emplo%ee@number , attribute@categor% , attribute5 , created@b% , creation@date , last@updated@b% , last@update@date
2 FA*3ES 0
t)[email protected]@source, t)[email protected]@name, t)[email protected])penditure@ending@date, t)[email protected]@name,
t)[email protected])penditure@item@date, t)[email protected]@number, t)[email protected]'@number, t)[email protected])penditure@t%pe, t)[email protected]@hours, t)[email protected])penditure@comment, t)[email protected]@status@code, t)[email protected])n@reerence, t)[email protected]@negative@t)n@ag, t)[email protected]@ag, t)[email protected]@id, t)[email protected]%ee@number, &
-
8/15/2019 Oracle Projects Basics
62/62
$AISEU E1U
6. $un the P$!4 (ransaction Import Process , or the source &AB!& and batch name &AB!BA(!&.7. $un the 1istribute *abor !osts since these transactions are not costed