Cost Management provides a template package and function for account generation type extensions. The name of the template package is CSTPACHK.
Print the following files before you begin writing Accounting Generation type extensions. The files are located in the Cost Management plsql/115/sql directory.
CSTACHKS.pls - Accounting Generation Type Extension Pack-age Specification Template. If you create func-tions outside the predefined function within the CSTPACHK package, you must also modify this file to include those new func-tions.
CSTACHKB.pls - Accounting Generation Type Extension Pack-age Body Template. This file contains the function that you can modify to implement the Account Generation type extension.
Suggestion: After you write the function, do not forget to compile it and store it in the database. See: Writing PL/SQL Functions/Procedures.
get_account_id
The following table lists the parameters for Account Generation type extensions that provide alternate material transaction accounts in Average/FIFO/LIFO costing organizations.
| Parameter | Usage | Type | Description |
|---|---|---|---|
| i_org_id | IN | NUMBER | The organization that the actual cost worker is running in |
| i_txn__id | IN | NUMBER | Transaction identifier |
| i_debit_credit | IN | NUMBER | Transaction type; debit or credit |
| i_acct_line_type | IN | NUMBER | Accounting line type |
| i_cost_element_id | IN | NUMBER | Cost element Identifier |
| i_resource_id | IN | NUMBER | Resource identifier |
| i_subinv | IN | VARCHAR2 | Subinventory involved (optional) |
| i_exp | IN | NUMBER | Expense or asset account identifier |
| i_snd_rcv_org | IN | NUMBER | Sending or receiving organization identifier |
| i_txn_type_id | IN | NUMBER | Transaction type identifier |
| i_txn_type_id | IN | NUMBER | Transaction action identifier |
| i_txn_src_type_id | IN | NUMBER | Transaction source type identifier |
| i_item_id | IN | NUMBER | Item identifier |
| i_cg_id | IN | NUMBER | Cost group identifier |
| o_err_code | OUT | VARCHAR2 | Output error code. Can be any SQL code. |
| o_err_nun | OUT | NUMBER | Output error number |
| o_err_msg | OUT | VARCHAR2 | Error message |
Debit/Credit
The valid values of i_debit_credit are as follows and indicate whether the transaction is a debit or a credit:
i_debit_credit = 1 - Indicates a debit.
i_debit_credit = - 1 - Indicates a credit.
Expense Account Identifier
The valid values of i_exp are:
i_exp = 0 - The transaction is an asset transaction.
i_exp <> 0 - The transaction is an expense transaction.
Sending/Receiving Organization
The valid values of i_snd_rcvg_org are:
i_snd_rcvg_org = 1 - The organization (i_org_id) is a sending orga-nization.
i_snd_rcvg_org = 2 - The organization (i_org_id) is a receiving or-ganization.
o_err_num
This parameter indicates the processing status of your extension as follows:
o_err_num = 0 - The extension executed successfully.
o_err_num <> 0 - An error condition has occurred and the ex-tension did not process successfully.
o_err_code and o_err_msg
Values for error_code, o_err_code, and error_explanation, o_err_msg, are stored in the MTL_MATERIAL_TRANSACTIONS table.
Other Sources
Oracle Bills of Material Technical Reference Manual, Release 12