Monday 27 January 2014

A brief note about GL interface- PL/SQL procedure

The main use of an PLSQL interface program is to move the data from staging table to the interface table in oracle apps. A staging table in an Oracle apps is a table which is created manually to store data temporarily for validating before moving them to interface table.

Prerequisites:
==================
Before Going to develop the GL interface we should check the following
functional setups has completed or not.

1)Source and category Creation (Setup=>Journal=>Sources)
2)Period are defined and Open status(Setup=>open\Close)
3)Accounting structuere should be validated
4)Set of Books should be defined 1)currency 2)Calendar3)Chart of Accounts
5)Currency Conversion Rates should be defined.

Below steps are performed in GL interface.

1)We need to get the flat file from the client containing data (a flat file is a file which is in raw excel format containing data). 

2)We are then required to create Staging table as per flat file structure.

3)Once we create the Staging table as per the flat file structure, then we need to create Control file and uploaded data to the staging table through the SQL*LOADER.

4)Once we get the data into the stage(staging) table we have to transfer from stage table into
 Interface table by using PL/SQL Program.

Generally, inside this plsql program we write
a)Cursor   (A Cursor is a pointer used to fetch rows from a result set) Here by using cursor we select data from stage table and move them to interface table. Thus cursor acts as a temporary storage medium.

b)Validate Data  (The data need to be validate before moving to the interface table) 

c)Insert Statement (To Insert Into Interface table from temporary cursor variables)


Note:1) If Record is valid record then we will insert into interface table other wise
         we will insert into Error tables.
        2)Before Inserting the Data into Interface tables first we have to understand the
        Interface table structure and we should know what data is valid and what data
        is not valid for the all Mandatroy columns.

2)Once the data is Inserted into the Interface table . Then we will submit concurrent
  program to transfer the data from interface table to Base Tables.

In this Interface table is GL_INTERFACE
Some of the Mandatroy Columns:
==================
1)STATUS
2)ACCOUNTING_DATE
3)CURRENCY_CODE
4)CREATED_BY
5)CREATION_DATE
6)USER_JE_SOURCE_NAME
7)USER_JE_CATEGORY_NAME
8)ACTUAL_FLAG
9)ENTERED_DR
10)ENTERED_CR
11)GROUP_ID
12)PERIOD_NAME
13)SET_OF_BOOKS_ID


1)Status: Column will accept any Data. but we will insert always standard string called
         "NEW". It means that we are bringing new data into Oracle Applications.
2)ACCOUNTING_DATE  : Column will accept valid acc_date as per the accounting Periods
3)CURRENCY_CODE    : from FND_CURRENCIES table we can find out wether CUrrency Code is
            valid or Not if Currecny code is available in the Table and enabled it is
            valid.otherwise Invalid
4)CREATED_BY  : IS nothing but UserID we have to find wether  USerID is valid or not
               By using FND_USER table we can find out wether it is valid or not.
5)CREATION_DATE : Should be valid date
                   date should be <= SYSDATE
6)USER_JE_SOURCE_NAME: Valid Source name
                 By using GL_JE_SOURCES table  we can find wether valid source or not.
7)USER_JE_CATEGORY_NAME : Will accept valid cvategory name
        By using GL_JE_CATEGORIES table we can find out wether valid category or Not.
8)ACTUL_FLAG    : This Column will accept single Character
                  Either 'A' 'B' 'E'
                  A=Actuval Amounts
                  B=Budeget Amounts
                  E=Encumbrance Amounts
9)ENTERED_DR
10)ENTERED_CR : Both Columns we accept Numbers Only but same number we have to insert
                into both the columns.
           Always    ENTERED_CR = ENTERED_DR . Otherwise Suspense Account will be
               Created.
11)GROUP_ID   : Will accept any Number
12)period_name : Will Accept valid period and that period should be in the Open status
                By using GL_PERIODS we can find wether Period is there or not
                         GL_PERIOD_STATUSES table we can find wether it is in "Open"
                status or Not.
13)SET_OF_BOOKS_ID  : This column will accept valid set of Books ID. By using
              GL_SETS_OF_BOOKS table we can fnd out wether valuid set_of_books_id or
              not.

No comments:

Post a Comment