Able to XOG write Labor type transaction against an Expense type resource

Document ID : KB000021132
Last Modified Date : 14/02/2018
Show Technical Document Details

Problem:

When creating a transaction from the Transaction Entry page, users must choose between "Voucher Other" for Labor, Material and Equipment type transactions; and "Voucher Expense" for expense type transactions. Resources of those types will be available for choosing based on the voucher type chosen. This ensures users cannot create a Labor type transaction on an Expense type resource.  If an incorrect Transaction Classification type is selected and does not match the same type as the Resource selected, the application will generate an error message.  ( REVMGR-20952: Invalid transaction class )

XML Open Gateway (XOG) write action of a transaction does not provide the same safeguarding of type mismatch. This action allows users to XOG write a Labor type transaction (using a Labor Transaction Class) against an Expense type resource (or mismatch combination). XOG should prevent the creation of such transaction with a failure error, however it successfully creates such transaction into the IMP_TRANSACTIONIMPORT table waiting for further processing into the Financial Module.  The successful creation of this transaction can cause issues in other areas of the application.

Steps to Reproduce:

  1. Create an Expense type resource, on the financial properties page enter Expense type Resource Class as well as Expense type Transaction Class
  2. Create a project, staff this resource to a task on this project
  3. Financially enable the project by filling out the financial properties page
  4. XOG write a transaction using transaction type "L", a Labor type Transaction Class, and the Expense Resource created above

Example: (snippet of XOG input file)

-----  snippet -----  
<Transaction actualCostRate="120" actualCostRateCurrency="USD" billRate="120" billRateCurrency="USD" chargeable="1" chargeCode="cc2" externalID="E37289-8" importStatus="N" projectID="MYTESTPROJ" resourceID="EXPENSE101" transactionDate="2015-04-11" transactionType="L" units="1" taskID="5000009" inputTypeCode="chargeitc" groupId="123" voucherNumber="ABCVDD" transactionClass="TCLabor"/> ----- snippet -----  

Expected Result: XOG results in an error indicating a labor type transaction must be created on a labor type resource, or it must not be created on an expense resource
Actual Result: XOG is successful, a transaction is created in Clarity and can be posted to WIP when it should not

Environment:

Applies to all supported PAS environments for specified releases.

Cause:

Caused by CLRT-71718

Resolution/Workaround:

Resolved in Clarity 13.3
When the Resource type and the Transaction Class (transaction type) do not match, the XOG output will generate an error message preventing the record from being inserted.  For example, if the same XOG input file is now used in the new release, the XOG will generate a message such as :  java.lang.Exception: The transaction type and resource type mismatch. The transaction type is Labor whereas resource is Expense

Workaround: Although the XOG allowed the transaction to be created with the mismatch, there will be issues with this transaction for WIP Adjustments and for posting the data back to the Project.  

To REMOVE this transaction with mismatch types:

  1. Navigate to Administration, Invalid Transactions List
  2. Locate the specific 'New' transactions
  3. Select and delete these transactions before posting into the financial module 

To CORRECT this transaction with mismatch types:

  1. Execute the 'Post Transactions to Financials' job
  2. Post to WIP
  3. Create a WIP adjustment to change the Resource or the Transaction Class so that both match to the same type ('Labor to Labor' or 'Expense to Expense')
  4. Execute the 'Import Financial Actuals' job 

Additional Information:

Reference CA PPM 13.3 Resolved Defects documentation