Data flow between AR and SLA
Queries to retrieve data from XLA tables for a given AR transaction
Q1) Get the customer_trx_id for the transaction number
SELECT *
FROM ra_customer_trx_all
WHERE trx_number = &trx_number;
FROM ra_customer_trx_all
WHERE trx_number = &trx_number;
Q2) Get the entity_id of the transaction
SELECT *
FROM xla_transaction_entities_upg
WHERE application_id = 222
AND ledger_id = 62
AND source_id_int_1 = &customer_trx_id_from_Q1;
FROM xla_transaction_entities_upg
WHERE application_id = 222
AND ledger_id = 62
AND source_id_int_1 = &customer_trx_id_from_Q1;
Q3) Get the events associated to the entity
SELECT *
FROM xla_events
WHERE application_id = 222
AND entity_id = &entity_id_from_Q2;
FROM xla_events
WHERE application_id = 222
AND entity_id = &entity_id_from_Q2;
Q4) Get the headers associated to the event
SELECT *
FROM xla_ae_headers
WHERE application_id = 222
AND event_id in (&event_id_from_Q3);
FROM xla_ae_headers
WHERE application_id = 222
AND event_id in (&event_id_from_Q3);
Q5) Get the lines associated to the headers
SELECT *
FROM xla_ae_lines
WHERE application_id = 222
AND ae_header_id in (&ae_header_id_from_Q4);
FROM xla_ae_lines
WHERE application_id = 222
AND ae_header_id in (&ae_header_id_from_Q4);
Q6) Get the distributions associated to the headers
SELECT *
FROM xla_distribution_links
WHERE application_id = 222
AND ae_header_id in (&ae_header_id_from_Q4);
FROM xla_distribution_links
WHERE application_id = 222
AND ae_header_id in (&ae_header_id_from_Q4);
Data flow during Accounting:
Step 1) Create a Transaction in AR and save it. Data gets populated in xla_transaction_entities and xla_events. Review the data in xla_events and check the event_status_code for the event_id.
Step 2) Complete the Transaction in AR. Event_status_code in xla_events table moves from status ‘I’ (Incomplete) to ‘U'(Unprocessed). Process_status_code column remains ‘U’
ACTION: COMPLETE TRANSACTION:
RA_CUSTOMER_TRX_ALL.CUSTOMER_TRX_ID = RA_CUST_TRX_LINE_GL_DIST_ALL.CUSTOMER_TRX_ID
RA_CUSTOMER_TRX_ALL.CUSTOMER_TRX_ID = XLA_TRANSACTION_ENTITIES.SOURCE_ID_INT_1
XLA_TRANSACTION_ENTITIES.ENTITY_ID = XLA_EVENTS.ENTITY_ID
RA_CUSTOMER_TRX_ALL.CUSTOMER_TRX_ID = XLA_TRANSACTION_ENTITIES.SOURCE_ID_INT_1
XLA_TRANSACTION_ENTITIES.ENTITY_ID = XLA_EVENTS.ENTITY_ID
Step 3) Create Accounting for the Transaction in ‘Draft’ mode. Data would now be populated in xla_ae_headers, xla_ae_lines and xla_distribution_links. Review the data in all the xla tables. xla_events.process_status_code and xla_ae_headers.accounting_entry_status_code are both ‘D'(‘Draft’) at this stage. xla_events.event_status_code remains ‘U’ and is eligible to be accounted again.
Step 4) Create accounting in ‘Final’ mode with ‘Transfer to GL’ option. Review the data in XLA tables.
xla_events.event_Status_code –> ‘P'(Processed)
xla_events.process_status_code –> ‘P'(Processed)
xla_ae_headers.accounting_entry_status_code –> ‘F’ (Final)
xla_ae_headers.gl_transfer_status_code –> ‘Y’ (Transferred to GL)
xla_ae_lines.gl_sl_link_id –> Populated (gets populated during final accounting)
xla_events.event_Status_code –> ‘P'(Processed)
xla_events.process_status_code –> ‘P'(Processed)
xla_ae_headers.accounting_entry_status_code –> ‘F’ (Final)
xla_ae_headers.gl_transfer_status_code –> ‘Y’ (Transferred to GL)
xla_ae_lines.gl_sl_link_id –> Populated (gets populated during final accounting)
ACTION: RUN CREATE ACCOUNTING:
RA_CUST_TRX_LINE_GL_DIST_ALL.CUST_TRX_LINE_GL_DIST_ID = XLA_DISTRIBUTION_LINKS.SOURCE_DISTRIBUTION_ID_NUM_1
XLA_AE_LINES.AE_HEADER_ID = XLA_DISTRIBUTION_LINKS.AE_HEADER_ID
XLA_AE_HEADERS.AE_HEADER_ID = XLA_DISTRIBUTION_LINKS.AE_HEADER_ID
XLA_AE_LINES.AE_HEADER_ID = XLA_DISTRIBUTION_LINKS.AE_HEADER_ID
XLA_AE_HEADERS.AE_HEADER_ID = XLA_DISTRIBUTION_LINKS.AE_HEADER_ID
ACTION: RUN TRANSFER TO GL:
XLA_AE_LINES.GL_SL_LINK_ID = GL_JE_LINES.GL_SL_LINK_ID
XLA_AE_LINES.GL_SL_LINK_ID = GL_IMPORT_REFERENCES.GL_SL_LINK_ID
GL_IMPORT_REFERENCES.JE_HEADER_ID = GL_JE_LINES.JE_HEADER_ID
GL_IMPORT_REFERENCES.JE_HEADER_ID = GL_JE_HEADERS.JE_HEADER_ID
XLA_AE_LINES.GL_SL_LINK_ID = GL_IMPORT_REFERENCES.GL_SL_LINK_ID
GL_IMPORT_REFERENCES.JE_HEADER_ID = GL_JE_LINES.JE_HEADER_ID
GL_IMPORT_REFERENCES.JE_HEADER_ID = GL_JE_HEADERS.JE_HEADER_ID
The data that actually posts to the GL comes from the XLA tables and not AR. Depending on the Application Accounting Definition (AAD) rules you have defined, one row that appears in AR could become 10 rows in XLA_DISTRIBUTION_LINKS, but when the data is posted into the GL, the accounts of the same type and ccid are merged to a single entry.
For example, a transaction could have 34 gl_dist rows, but 201 rows in ar_distribution_links, but when it actually posts, consolidates to 9 rows in gl_import_references.
The main link to bind information together is the GL_SL_LINK_ID. This field exists in GL_JE_LINES, GL_IMPORT_REFERENCES and XLA_AE_LINES tables.
Also, the XLA_DISTRIBUTION_LINKS table contains the application_id, event_id, ae_header_id, ae_line_num from the XLA Tables and source_distribution_id_num_1 will be the cust_trx_line_gl_dist_id in the case of a transaction.
Ref: Doc ID 1614389.1 & 879072.1
No comments:
Post a Comment
Please review my topic and update your comments
Note: only a member of this blog may post a comment.