Oracle R12 SLA Customizations - Challenges and Opportunities
Oracle R12 SLA Customizations - Challenges and Opportunities
Challenges!
INTRODUCTION
With the Release 12 of Oracle Applications, Subledger Accounting (SLA) has been introduced. This
is a Rule-based accounting engine, toolset & repository supporting Oracle E-Business Suite
modules (also called as subledgers). The main idea behind this introduction is to have an option of
allowing multiple accounting representations for a single business event, resolving conflicts between
corporate and local fiscal accounting requirements.
Also, this introduces a common data model and user interface (UI) across subledgers, replaces
various disparate 11i setups, providing single source of truth for financial and management analysis.
Due to SLA, there are some changes in the functionalities of General Ledger. There are also certain
setups that need to be done in General Ledger for SLA.
OVERVIEW
For understanding the Impact of SLA on General Ledger, let’s delve into three main
components:
Drilldown – This will deal with the change in the Drilldown data, which appears now. Also, the
setups, which decide what data, can be viewed and how data can be secured.
Journal Import – This will deal with the transfer of data from Subledgers to General Ledger. This will
also explain the various setups that are done for the Ledger which govern the import for various
applications.
Technical Reference – This will give the technical references, for journal import and drilldown
functionalities, which will help in understanding the architecture and will also help in troubleshooting.
The SLA Page for Drilldown shows the following:
GL Journal Line information
Subledger Journal Line information
There are two Options available on this SLA page:
View Transaction
View Journal Entry
‘View Transaction’ will take us to the Subledger Transaction form. E.g. for the current journal line,
since the Source was Payables, it opens Invoice Workbench.
‘View Journal Entry’ will take to the Subledger Journal Entry details
This is the ‘Transaction Information’ section of Subledger Journal Entry page.
The fields here will change based on the transaction and the subledger in which the transaction was
entered.
Since the example transaction is entered in Payables, it is showing the details of the invoice and the
supplier.
This is the ‘Additional Information’ section of Subledger Transaction Entry page.
This section shows the details of
Event
General Ledger
Sequences
Application Accounting Definition
Note that Event and Application Accounting Definition are important from SLA side. However,
from GL perspective the relevant details are Period, Transfer to GL Date and Transfer to GL
status.
This is the last section, ‘Lines’ of the Subledger Journal Entry page.
The important details in this section are:
Code Combination
Currency
Entered Debits and Credits
Accounted Debits and Credits
Select the link ‘Show’ for any of the lines to view additional details for the transaction line
This page gives various details for transaction line from the subledgers side.
Thus, the Drilldown from General Ledger, takes us to the Subledger Journal Entry which shows the
details of the Subledger journal. From here we can further drilldown to the Subledger Transaction.
Profile Options related to Drilldown:
SLA: Enable Subledger Transaction Security in GL
This profile option controls whether the drilldown to SLA will enforce the transaction security of the
application owning the Transaction. For example, if one drills down to Payables, he will only be able
to see Journals for transactions belonging to operating units to which he has access (based on your
MO: Security Profile.) Thus, drilldown can be restricted to the Operating Units to which the
responsibility has access. In case the GL responsibility does not have access to a particular
Operating Unit, the Drilldown will not show any data.
(2) Prior to Release 12, it was needed that the Journal Import should be run in the same language
as the language, which was used to transfer data to GL_INTERFACE. Though this is not much
relevant now (the transfer and journal import are triggered together); still Journal Import can be
made independent of the language. This can be achieved by running journal import using the Source
and Category Key. Generally, the columns user_je_source_name and user_je_category_name in
gl_interface, correspond to the columns GL_JE_SOURCES.user_je_source_name and
GL_JE_CATEGORIES.user_je_category_name respectively. These values change for the different
language and thus making journal import language-dependent. However, while defining the sources
(General Ledger Responsibility: Setup -> Journal -> Source), if the option “Import Using Key” is
selected, then import refers to GL_JE_SOURCES.je_source_key and
GL_JE_CATEGORIES.je_category_key. These being the Key values are common across
languages and hence journal import becomes language independent.
(3) While running Journal Import from General Ledger responsibility, the LOV of Ledger provided
there is taken from the ledgers in table GL_INTERFACE and the Data Access Set attached to the
responsibility has either Full or Read/Write access to the Ledger.
Journal -> Import -> Run
In case a different Interface table is being used, the LOV will check for the data in
GL_INTERFACE_CONTROL instead of GL_INTERFACE.
(4) Data Access Sets do apply to Journal Import too. To be able to import data, one should have
either Full or Read/Write Access to the ledger and all the Balancing Segment Values for which data
is populated in GL_INTERFACE. In case one does not have access to the Ledger at all, the LOV for
Ledger will not appear in Journal -> Import -> Run screen and hence he will not be able to submit
Journal Import.
If there are multiple balancing segments in the data in GL_INTERFACE, and the responsibility has
access to a few and not to others, then you will be able to run Journal Import but it will complete in
Warning and data will not be imported. Error shown in the Journal Import Execution report would be:
– EM29: You do not have access to this ledger and account combination.
Challenges
R12.0.5 and R12.0.6 Regression
A regression was introduced in R12.0.5 and R12.0.6. As a result of this regression, any customer
who has upgraded may not be able to run the SLA hot patch, later. Apply the pre-install
critical Patch 8234812 to correct the problem.
SLA Hot Patch
Cannot run the SLA HOT Patch after upgrading from 11i to R12.0 or R12.1 because the
LAST_UPDATED_BY field in the GL_PERIOD_STATUSES table has a -601 or -602. This is related
to Bug 11829821. This patch is an upgrade patch and is only applicable to users who have not
already upgraded from 11i to R12.0 or R12.1. A data fix is required to correct the data in the
GL_PERIOD_STATUSES table. Please log a service request with Oracle Support to request the
data fix.
Receivables
Customers get an error while running the SLA Hot patch. The adpatch log shows that ar120girpu.sql
failed. Customers who encounter this issue should log a service request with the Receivables team
and request a datafix. Ref. Bug 9071674.
Project Accounting
PA customers get ORA-20500: There are periods pending upgrade for Application ID 8721 even
though the customer has not enabled Enhanced Period Processing (EPP). The problem is that the
SLA post upgrade cannot be run when attempting to run the SLA Hot patch. Customers who
encounter this issue, should log a service request with the Project Costing team to request a datafix.
Ref. Bug 8582427
TROUBLESHOOTING THE SLA PRE-UPGRADE PROGRAM
How to troubleshoot issues with the SLA PRE-UPGRADE PROGRAM?
First, run the following SQL script against the gl_period_statuses table to show the Apps ID, Ledger,
start date, and end date.This information will help you determine what periods the SLA Pre-Upgrade
program has selected for upgrading.
select application_id, set_of_books_id,
min(start_date), max(end_date)
from gl_period_statuses
where migration_status_code = ‘U’
and adjustment_period_flag = ‘N’
group by application_id, set_of_books_id;
SAMPLE OUTPUT
|—————————————————————————|
| APP ID | BOOKS | MIN(START_DATE) |MAX(END_DATE) | Legend for App ID:
| 101 | 1 | 01-APR-10 | 28-FEB-11 | – Fixed Assets
| 200 | 1 | 01-APR-10 | 28-FEB-11 | – Payables
| 201 | 1 | 01-APR-10 | 28-FEB-11 | – Purchasing
| 222 | 1 | 01-APR-10 | 28-FEB-11 | – Receivables
| 275 | 1 | 01-APR-10 | 31-MAR-11 | – Project Accounting
| 401 | 1 | 01-APR-10 | 31-MAR-17 | – Inventory/Costing
|—————————————————————————|
How does the SLA Pre-Upgrade program determine what is the START DATE and END DATE?
In our example above, the SLA Pre-upgrade picked 01-APR-2010 as its start date when the client
expected
01-SEP-2010, which is 6 months prior to 28-FEB-2011 (which was when the upgrade was run).
START DATE
The SLA pre-upgrade program selects the first date of the current fiscal year as its START DATE.
If there are not enough periods to make up 6 months, then the system will look at the periods in the
prior fiscal year.
In the above example, the client’s fiscal period began on 01-APR-2010, so the system selected that
date.
If the client’s fiscal period began on 01-JAN-2011 and the SLA Pre-upgrade was run on 28-FEB-
2011, then the program would have chosen 01-SEP-2011 as its start date.
END DATE
The END DATE is the last open period. If you have opened the periods for some products and not
others, then the end date would differ for each product. In the SAMPLE OUTPUT (10a), the products
for Application IDs 401 and 275 had open periods through 31-MAR-2017 and 31-MAR-2011,
respectively. The SLA Pre-Upgrade select all open periods in case there are transactions created for
future periods.
In the diagram above, data from Jan 2008 to current has been upgraded. To upgrade data from Jan
2004 to current, then do the following:
Change the SLA: Initial Date for Historical Upgrade profileto 01-Jul-2007
b. Then run the Hot Patch
c. Repeat the above steps for 6-month increments until all the data from Jan 2004 has been
upgraded. The 6-month increment is not a rule because it really depends of the amount of
history that is available to be upgraded.
Note: Running the Hot Patch could take several minutes or several hours to complete
depending on the date range you specify and the amount of data to be upgraded.
Should you get the following message when you attempt to run the hotpatch, you can continue:
“This Patch seems to have been applied already. Continue Anyway?”
Restrictions when running the SLA Hot Patch?
Yes, there are some restrictions. They are as follows:
(a) You cannot run the SLA Hot Patch for a period that is included in the range already upgraded.
For example, in the diagram shown below, where it is assumed that the data for Jan 2008 up to the
current accounting period has been upgraded, you cannot enter a date of Sep 2008 to rerun the
upgrade.
(b) You cannot run the SLA Hot Patch if any period is pending upgrade, even if it only affects one of
many applications. See Ques 4 above for an explanation on the different status codes.
(c) You cannot run the Hot Patch for one ledger or one application (i.e., AP or AR).
(d) You cannot run the Hot Patch for open transactions only. The upgrade looks at the start and end
period, and it upgrades ALL transactions within the date range. The GL Headers that are created for
these transactions are tagged as Upgraded and so are the periods.
Pre-cautionary steps should be taken “BEFORE” performing the R12 SLA Upgrade?
(a) It is good practice to transfer or post all 11i data from your respective subledgers (i.e., AP, AR,
FA, etc.,) to the General Ledger before running the Downtime upgrade.
(b) You can post data after going live; however, you should avoid, if possible, having 11i accounted
data that has not been transferred prior to upgrading. If for some reason this situation cannot be
avoided, please refer to Doc Id 1092913.1.
Note: Please review the Upgrade Advisor for more pre-upgrade steps and patches. To find the
Upgrade Advisor applicable to your upgrade, please click on the E-Business Suite link in the
Lifecycle Advisor Doc Id 250.2
Verification from an SLA Upgrade standpoint after the downtime R12 upgrade and/or SLA Hot
Patch is run?
Verify that there are no periods pending upgrade in the GL_PERIOD_STATUSES table, after
the R12 upgrade or SLA Hot patch is run. See Note 747216.1R12 SLA Upgrade: Check that
the SLA Pre-Upgrade Completed Successfully.
Compare the AP Trial Balance outputs from 11i to that in R12. You only need to check this after
the downtime R12 upgrade and NOT after any SLA Hot Patch execution. Technical tips can be
found in Note: 605707.1SLA: Troubleshooting the AP to GL Reconciliation, see Questions QR1
through QR12.
Note: Please review the Upgrade Advisor for more post-upgrade steps and patches. To find the
Upgrade Advisor applicable to your upgrade, please click on the E-Business Suite link in the
Lifecycle Advisor Doc Id 250.2
Precautionary steps should be performed “BEFORE” running the SLA Hot Patch?
Run this SQL script:
select * from gl_period_statuses where migration_status_code=’P’
this script should return zero rows, only then should you consider running the SLA Hot Patch.
Take a backup of the xla_upgrade_dates table before running the SLA Hot Patch
Set a realistic date for the SLA: Initial Date for Historical Upgrade profile. Do not set a date
like 1-Jan 1900 or 1-Jan-1000.