![Page 1: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/1.jpg)
Easy migration to a new Chart of Accounts
Chitra Kanakaraj
![Page 2: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/2.jpg)
Agenda
• The University of Waikato• Easy migration to a new Chart of Accounts
without affecting the subsystems that uses the COA
• Oracle 11g feature Rules Manager and Expression Filter
• Oracle Business Rules
![Page 3: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/3.jpg)
![Page 4: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/4.jpg)
![Page 5: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/5.jpg)
![Page 6: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/6.jpg)
![Page 7: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/7.jpg)
![Page 8: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/8.jpg)
![Page 9: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/9.jpg)
The University of Waikato
• About Me• What was the need to migrate to New COA• Impact of the change• How to ...• Wondered how to modify and manage
business logic easily
![Page 10: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/10.jpg)
Uow Transactions per YearSystems Transactions per year
Receivables 21,000
Payables 66,000
PCard 32,000
Journals 1,000
Anfield Transactions are included in Payables stats
Assets 160,000
Payroll 1,100,000 distribution lines
JadeSMS 82,000
Printcost 5,000
![Page 11: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/11.jpg)
UOW COA StructureCOA Structure
Segment1 Segment2 Segment3 Segment4 Segment5 Segment6
OLD 99 A9 AA99 AA AA99 A999
NEW 99 A9 AA99 99 9999 A999
![Page 12: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/12.jpg)
Modify and Manage Business logic
• Oracle 11g feature Rules Manager and Expression Filter
• What is this?• How it works?• Skills Needed• Practical Implementation
![Page 13: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/13.jpg)
Rules Manager
• Rules manager API - Defines, manage and enforce complex rules in Oracle Database
• This API can be used across multisession and environment
• Rules manager can model any event-condition-action(ECA)-based system.
• Applications for Rules Manager are ...
![Page 14: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/14.jpg)
What is a Rule?
• Typically, rules follow Event-Condition-Action (ECA)
• The ECA components are defined as:• Event -- the state information for the process• Condition -- the Boolean condition that
evaluates to true or false for the event• Action -- the action to be carried out if the
rule condition evaluates to true for the event.
![Page 15: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/15.jpg)
Rules Manager Implementation Process
![Page 16: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/16.jpg)
What is My ECA
![Page 17: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/17.jpg)
Create Event Structure
![Page 18: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/18.jpg)
PL/SQL Code to Create Event Structure
• CREATE TYPE validCOA AS OBJECT (Seg1 VARCHAR2(2), Seg2 VARCHAR2(2),Seg3 VARCHAR2(4),Seg4 VARCHAR2(2),Seg5 VARCHAR2(4),Seg6 VARCHAR2(4));
![Page 19: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/19.jpg)
Toad image of Event Structure
![Page 20: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/20.jpg)
Create the rule class for the event structure.
![Page 21: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/21.jpg)
PL/SQL Code to Create Rule Class
• BEGIN dbms_rlmgr.create_rule_class ( rule_class => 'COARules', event_struct => 'validCOA', action_cbk => 'getGatePass', actprf_spec => 'SubSystemName
VARCHAR2(50)'); END;
![Page 22: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/22.jpg)
TOAD Image of Create Rule Class
![Page 23: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/23.jpg)
Toad Image of the Rules Table
![Page 24: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/24.jpg)
Toad Image of the Callback Procedure
![Page 25: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/25.jpg)
Modify the Procedure getGatePass
If rlm$rule.subsystemname = 'UniMarket' then dbms_output.put_line ('This is a valid COA
code for the UniMarket Sub System');end if;If rlm$rule.subsystemname = 'StaffClaim' then dbms_output.put_line ('This is a valid COA
code for the StaffClaim Sub System');end if;
![Page 26: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/26.jpg)
Toad Image of the Modified Procedure
![Page 27: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/27.jpg)
Insert Row in the Rules Class Table
• Each row inserted typically contains a rule identifier, a condition, and values for action preferences.
• Adding rules consists of using the SQL INSERT statement to add a row for each rule.
![Page 28: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/28.jpg)
PL/SQL Code to Insert Rows in the Rules Class Table
• --COA Rules for the UniMarket subsystemINSERT INTO COARules (rlm$ruleid,
SUBSYSTEMNAME, rlm$rulecond)VALUES ('987', 'UniMarket','REGEXP_INSTR(Seg5, ''^8[4-5][0-9][0-9]$'') > 0
and REGEXP_INSTR(Seg4, ''^[2,4,6,9]0$'') > 0');
![Page 29: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/29.jpg)
PL/SQL Code to Insert Rows in the Rules Class Table
--COA Rules for the StaffClaim subsystemINSERT INTO COARules (rlm$ruleid,
SUBSYSTEMNAME, rlm$rulecond)VALUES('973', 'StaffClaim','REGEXP_INSTR(Seg5, ''^2[0-6][0-9][0-9]$'') > 0
and REGEXP_INSTR(Seg4, ''^[2,4,6,8]0$'') > 0');
![Page 30: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/30.jpg)
Toad Image of the Insert Rows in the Rules Class Table
![Page 31: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/31.jpg)
Toad Image of the Rules Table after inserting two rows
![Page 32: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/32.jpg)
Process the rules for an event
• Use the dbms_rlmgr.process_rules( ) procedure to process the rules in a rule class for an event instance.
• Processing the rules consists of passing in an event instance as a string of name-value pairs (generated using the getVarchar( ) procedure)
![Page 33: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/33.jpg)
PL/SQL Code to Process the Rules
• BEGIN• dbms_rlmgr.process_rules (• rule_class => 'COARULES',• event_inst => VALIDCOA.getVarchar('XX', 'XX',
'xxxx', '60','8573', 'zzzz'));• END;
![Page 34: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/34.jpg)
Toad Image of Processing the Rules
![Page 35: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/35.jpg)
Toad Image of the Process Output
![Page 36: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/36.jpg)
Shocking News
![Page 37: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/37.jpg)
Oracle Issued an Obsolescence Notice
• Obsolescence Notice: Rules Manager and Expression Filter features of Oracle Database are obsolete in the next major release after Oracle Database 11g Release 2 (11.2).
• Support will only be available for the life of Oracle Database Release11g Release 2.
See My Oracle Support Note ID 1244535.1 for more information.
![Page 38: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/38.jpg)
Replacement ProductOracle Business Rules
![Page 39: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/39.jpg)
Basic Oracle Business Rule Concepts
![Page 40: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/40.jpg)
Overview of the Business Rules Component
![Page 41: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/41.jpg)
Creating a Business Rule Component
1
2
Input...Output....
Define initial XML Facts
Define initial XML Facts
Define Decision Service name in Advanced tabDefine Decision Service name in Advanced tab
3
5
4
Tick to expose Tick to expose
![Page 42: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/42.jpg)
Input XML Schema
![Page 43: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/43.jpg)
Rules Editor in Jdeveloper - Facts
Facts TypeFacts Type
Element attributes derived from the input schema
Element attributes derived from the input schema
Bucketset Attached with Attributes
Bucketset Attached with Attributes
![Page 44: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/44.jpg)
Rules Editor in Jdeveloper - Bucketsets
Constraints for Seg5
Constraints for Seg5
Range or LOVRange or LOV
![Page 45: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/45.jpg)
Rules Editor in Jdeveloper - Rulesets
RuleSetRuleSetIF/THEN
ConditionIF/THEN
Condition
ConditionIf Seg5 is between 8400 to 8599 and Seg4 is
any value in (20, 40, 60, 80)
ConditionIf Seg5 is between 8400 to 8599 and Seg4 is
any value in (20, 40, 60, 80)
ActionModify the systemName value to “UNIMARKET”
ActionModify the systemName value to “UNIMARKET”
RuleRule
![Page 46: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/46.jpg)
Rules Editor in Jdeveloper – Decision Functions
Web Service for executing exposed decision functions for underlying
Oracle Business Rules
Web Service for executing exposed decision functions for underlying
Oracle Business Rules
![Page 47: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/47.jpg)
Deploy Web Service
• Business rules created in an SOA application are deployed as part of the SOA composite when you create a deployment profile in Oracle JDeveloper.
• The SOA composite application ‘COA_RULES_CHITRA’ is deployed to Oracle Enterprise Manager 11g.
• Test the Decision Service in the Oracle Enterprise Manager.
![Page 48: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/48.jpg)
Testing the Web Service
Input values for Seg4, Seg5,SystemName
Input values for Seg4, Seg5,SystemName
![Page 49: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/49.jpg)
Testing Web Service
Out Put Modified value for the SystemName
Out Put Modified value for the SystemName
![Page 50: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/50.jpg)
Summary
• Yes you can easily migrate to a new Chart of Accounts in eBusiness Suite, without affecting the subsystems that uses the Chat of Accounts.
• How :- By having the business logic as rules or expressions in an Oracle 11g table or exposing the business logic as a Decision Service.
• Products :- Oracle 11g Rules Manager and Expression Filter OR Oracle Business Rules
![Page 51: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/51.jpg)
Questions and Answers
![Page 52: Easy migration to a new Chart of Accounts Chitra Kanakaraj](https://reader038.vdocuments.net/reader038/viewer/2022110210/56649e6c5503460f94b6be70/html5/thumbnails/52.jpg)