Академический Документы
Профессиональный Документы
Культура Документы
ORACLEAPPLICATIONS
1. INTRODUCTION
ERP:ResourcePlanningwithinanEnterprise.ERPisatermthatcoverswholeProduct line
n of different module. Any business will greatly benefits by adapting this featur
n customize it or integrate it with other Packages tosatisfyuniquerequire
ectively 2).MaintainingStandardizations
leisDataIntegration. Master data is Integrated: All the application share co
ers, suppliers, employee, items and other entities that are used by multiple appl
ansactiondataisIntegrated:Oracleautomaticallybridgetransactionsfromone systemtoan
cial data is integrated: Financial data is carried in a common format, and finan
ittedfromoneapplicationtoanother.
2
2.
ORACLEAPPLICATIONS
3
3.
PRODUCTDIRECTORYSTRUCTURE
WhenOracleApplicationsinstallsinamachineitcreatesabasedirectorywiththe nameO
toryforaccessingtheapplication.
OracleApplicationssuppliedinthreeflavors
1. ProductionOracleApplications:usedforimplementinginanyorganization. 2. VisionOrac
ations:usedforDemonstrationorTrainingpurpose. 3. TestOracleApplications:usedforR&
ProductDirectoryStructureofOracleApplications
VISDB: ConsistsofOracle8i/Oracle9i/Oracle10gDatabaseexecutablefiles. V
iddlewareDatabaseexecutablefiles. VISCOMM:Captures Control Script files, which a
rt or Stop the ApplicationServices. VISDATA: Capturesall.DBFfiles. VISAPPL:
ificDirectoriesandSomeSpecialDirectories.
4
APPL_TOP(i.e.VISAPPL)DirectoryStructure
5 GL_TOP:(APPL_TOP/GL/11.5.0)isoneoftheModuleDirectoryofOracleApplications. Itcon
edirectory(i.e.11.5.0)underwhichForms,Reports,BIN,LIB,SQL, etc., GL_TOP/11.5.0
rectorytostoreall.FMX(Compiled)Formfilesofa specificmodule. GL_TOP/11.5.0/Repor
ts directory to capture all the .RDF (Compiled) Reportfilesofaspecificmoduledir
gespecificdirectory. GL_TOP/11.5.0/BINwillcapturetheC,C++,PRO*C,SQL*LOADERetc.,
1.5.0/LIBwillcaptureall.OBJfilesofC,C++orJAVACLASSfiles. GL_TOP/11.5.0/Message
ssagebodyfiles. GL_TOP/11.5.0/LOGwillcaptureall.LOGfiles. GL_TOP/11.5.0/OUTwill
iles. GL_TOP/11.5.0/SQLwillcaptureall.SQLscriptfiles. GL_TOP/11.5.0/HTMLwillcap
HTMwebfiles. GL_TOP/11.5.0/FNDisaSpecialDirectoryknownasApplicationObjectLibrar
y.ItisusedtocaptureallModulesApplicationExecutableFiles. GL_TOP/11.5.0/AUisan
AU)Directory.Itconsistsofaapplication release SubDirectory, which consists of Fo
e directories. It is used to storeall.FMBand.PLLandPL/SQLLibraryfiles. GL_TO
Forms/USwillcapture.FMBFormfilesofallModules. GL_TOP/11.5.0//AU/11.5.0/Resource i
ore .PLL and .PL/SQL Library files of OracleApplications.
6
4.
DATAMODEL
APPSSchema:ItisPublicSchema.Itconsistsofacollectionofpublicsynonymofall
theobjectsofalltheschemasintheApplicationdatabase.AlltheProcedures,Functions an
stbestoredinthisSchema.
APPLSYS Schema: This is a special Schema consists of the files starts with FND,
ALR,WFandAD.
8
5. RESPONSIBILITIESANDUSER
RequestGroup(RG):ItisacollectionofconcurrentPrograms.Itisusedtorequest program
ty. Data Group (DG): It is a collection of Modules used to integrate one or
Modules for cross application transfer of data, cross application reporting and cr
ationreference.IfwewanttogetdatafromotherModulesweneedtodefinethose modulesi
Functions:Afunctionisapartofanapplicationsfunctionalitythatisregisteredunder
auniquenameforthepurposeofassigningitto,orexcludingitfrom,amenu(andby exten
racle Applications feature that lets you control user access to certain functions
fault,accesstofunctionalityisnotrestricted;yoursystem administrator customizes eac
bility at your site by including or excluding functions and menus in the Respons
ow. There are several types of functions:formfunctions,subfunctions,andnonformf
Thesearetwotypesoffunctions
1 FormFunctions:areusedtosecureFormsfromtheresponsibilities. 2 NonFormFunctions:
youtItemswithintheForm.
AdvantagesofFormFunctions
IfyouwanttoopentheFormindifferentmodeswithoutcreatingthecopies,we can create
the parameters based on the requirement. The parameter, which is passed in the f
ust be already defined in the form whiledesigningtheForm. Amenucanbeassignedt
ity.Ifyouwanttorestrict some of the Forms from a particular responsibility, we
nction of thoseFormsinMenuExclusionsoftheResponsibility.
PreDefinedResponsibilities
S.No 1 2 3 4 5 6 Module ApplicationObjectlibrary SystemAdministration OracleGen
ublicSectorPayables OracleReceivables OracleAlerts Responsibility ApplicationDevelop
temAdministrator GeneralLedgerSuperUser PayablesManager ReceivablesManager AlertsM
HowtoCreateaResponsibility?
Step1:ConnecttoOracleApplicationwithAPPSADMIN/APPSADMINUser. Step2:GotoApplicati
r. Step3:GotoSecuritythenResponsibilitythenDefine Step4:EntertheDataintheope
Note:AboveInformationofResponsibilityisstoredinFND_RESPONSIBILITYTable.
10
HowtoCreateaUser?
Step1:ConnecttoOracleApplicationwithAPPSADMIN/APPSADMINUser. Step2:GotoApplicati
r. Step3:GotoSecuritythenUserthenDefine Step4:EntertheDataintheopenedWindow
Note:AboveInformationofUserisstoredinFND_USERTable. UserResponsibilitiesst
ROUPSTable.
11
6.
NEWMODULEDEVELOPMENT
StepsrequiredfordevelopingaNewModule?
1. RegistertheNewModulewithAOLmodule.
SavetheEntries. 2.CreateaSchema/UserfortheNewModuleandGrantRollstoitfrom
s. SQL>CREATEUSERPPRSIDENTIFIDBYPPRS; SQL>GRANTCONNECT,RESOURCETOPPRS; SQL> 3.
toryStructuretotheNewModuleatServerend. \\Orafin8\d$\appl\pprs\11.5.0\forms\us \\
$\appl\pprs\11.5.0\reports\us \\Orafin8\d$\appl\pprs\11.5.0\bin \\Orafin8\d$\appl\
pprs\11.5.0\sqletc., 4. Create the Form Using Form Builder with all the coding
ed accordingtoOracleApplications. 5. CompiletheFormandCopy.FMXfileinModuleS
. Copysome.fmxFormfilesfromanyexistingmodulestonewmoduledirectoryfor registra
ormwithApplicationObjectLibrary(AOL)Module. ConnecttoAPPSTECH/APPSTECH GotoApplic
er
12 Application Form
Save&Close 8.CreateFormFunctionforalltheForm,whichareregisteredwithour
ECH GotoApplicationDeveloper Application Function
11.DefineDataGroup(DG)usingSystemAdministrationModule. SystemAdministrator
14
15
13.SetupthebasepathoftheNewModuleattheServerend. PPRS_TOPisthebasepath
16
7.
TABLEREGISTRATION
Q:WhywehavetoregisteraTable?
Ans:TodefinetheSpecialObjectsatthetimeofdefinitionofaBusinessApplications. S
ields(KFF)andDescriptiveFlexFields(DFF)
InApplicationsTablesareclassifiedintothreecategories
1 TransactionDataTables:arenormaltables,whichareusedtostorethedata inallthemo
nyDMLoperations. 2 SeedDataTables:Thedataforthesetablescreatedatthetimeofinst
esentinthesetablesarereadonly. 3 InterimDataTables:arethetemporarytables,which
purpose. These tables are used when we are transferring the data from externalap
ystemtables.
StepsRequiredforregisteringaTable
1.CreateaTableinModuleSpecificSchema. ConnectasPPRS/PPRS@VIS SQL>CREATETABLEPP
MBER(5), PART_NO VARCHAR2(50), PART_NAMEVARCHAR2(100), QPS NUMBER(3),
)); 2.CreateaPublicSynonyminAPPSSchema. ConnecttoAPPS/APPS@VIS SQL>CREATEPUBL
ORPPRS_PARTS; Note:PublicSynonymNameshouldbesameasTableName; 3.RegistertheTa
cttoAPPSTECH/APPSTECH ApplicationDeveloper Functions Application Dat
17
TableRegistrationwithApplicationInterface(API)
WecanalsoregistertheTableusingApplicationDBADataDefinitions(AD_DD) Packagefromt
setheAD_DDAPItodeletetheregistrations of tables and columns from Oracle Applica
ry tables. To alter a registration you should first delete the registration, and
er the table or column.Youshoulddeletethecolumnregistrationfirst,thenthetabler
dureregister_table(p_appl_short_nameinvarchar2, p_tab_nameinvarchar2,p_tab_typeinva
p_next_extentinnumberdefault512,p_pct_freeinnumberdefault10, p_pct_usedinnumberd
edureregister_column(p_appl_short_nameinvarchar2, p_tab_nameinvarchar2,p_col_namein
2, p_col_seqinnumber,p_col_typeinvarchar2, p_col_widthinnumber,p_nullableinvarcha
ateinvarchar2,p_precisioninnumberdefaultnull, p_scaleinnumberdefaultnull); pro
le(p_appl_short_nameinvarchar2,p_tab_nameinvarchar2); proceduredelete_column(p_ap
nameinvarchar2, p_tab_nameinvarchar2,p_col_nameinvarchar2);
TypeofTableSuffixesandtheirmeaning
_TL NoSuffix _V _VL _All Translation Tables, Used to Store the Information o
AreNormalTables AreViews AreViewsbasedonTranslationTables IndicatesMultiOrganiza
19
ApplicationsStoragesTables
TableName FND_APPLICATION FND_FORM FND_FORM_FUNCTIONS FND_MENU FND_MENU_ENTRIES Stor
urpose NewModuleInformation FormsInformation InformationofFunctionsofaForm MenuI
t of Functions Assigned to the Menu Information FND_DATAGROUP DataGroupInformation
ROUP_UNIT ListofModulesAssignedtotheDataGroup FND_RESPONSIBILITY AllResponsibility
n FND_RESP_GROUPS Allresponsibilitygroupsinformation FND_TABLES AllTablesInformation
OLUMNS AllTableColumnsInformation FND_USER AllUsersInformation FND_USER_RESP_GROUPS
sResponsibilityInformation FND_ID_FLEXS AllKeyFlexFieldsInformation FND_ID_FLEX_STRU
S AllStructuresInformation FND_ID_FLEX_SEGMENTS AlltheSegmentsInformation FND_FLEX_V
SETS EachSegmentsValueSetInformation FND_FLEX_VALUES EachValueCodesofaValueSet
VALUE_TL Each Value Description of a Value Set of a Segment
20
8.
FLEXFIELDS
KEYFLEXFIELDS(KFF)
KFF are used to capture mandatory or Key Business information of the Organizati
ldishavingitswonbaseTable.
GGC
GM
GSS
Seg1
Seg2
Seg3
Seg1
Seg2
Seg3
Seg4
Seg4
Company
Department
Accounts
Company
Production
Location
Department
Accounts
VS1
VS2
VS3
VS4
VS5
VS6
VS7
VS8
1. Trucks 2. Cars
1. Sales 2. Finance 3.
1. 2. 3. 4. 5.
Cash Bank Rent X Y
22 Value Set: is a collection of properties like Length, Data Type, Minimum Val
e,AlignmentandValueValidationetc. FlexfieldsconsistsofStructures Structurescon
SegmentsconsistsofValueSet ValueSetconsistsofParameters. FND_ID_FLEXSTable
onofalltheKeyFlexFields. APPL_ID ColumnconsistsofApplicationID ID_FLE
:AR,AP,GLetc. ID_FLEX_CODE:AR#,AP#,GL#,etc.
STRUCTURES
ACCOUNTING
GL#
RECEIVABLE
AP#
101
TM
102
TTS
103
TTC
101
TMAP
101
APTC
201
S1
202
S2
203
S3
301
S1
302
S2
301
S1
302
S2
Code Descr
Code Descr
Code Descr
Code Descr
Code Descr
Code Descr
Code Descr
FND_ID_FLEX_STRUCTURESTablecapturestheinformationofallthestructures. EachStruct
dentifiedby APPLICATION_ID(ModuleCode), ID_FLEX_CODE(CodeofKFF) ID_FLEX_NUM(Number
) FND_ID_FLEX_SEGMENTSTablecapturestheinformationofSegments. EachSegmentisUnique
y APPL_ID ID_FLEX_CODE ID_FLEX_NUM SEG_NUM FLEX_VALUE_SET_ID
FormtoAcceptKFF
Responsibility:R1(TM)/R2(TCS) JournalForm Journal:
tailsTable) This Code is generated by SN Date Debt Credit . CCID DataBase 1 1 1
24
StepsrequiredtoregistrationofNewKeyFlexfield(KFF)
1. CreateaKFFTableinModuleSpecificSchema. ConnecttoPPRS/PPRS@VIS
25
26
27
28
DESCRIPTIVEFLEXFIELDS(DFF)
DFF are used to capture the additional or extra Business information of the or
sedtoaddextraaccounts,thesearevarryfromonebusinessto anotherbusiness.AllDFFco
uteColumns.Allthesecolumns aredefinedinthetransactiontableitself.Therearearound
ththe package. DFFhavetwodifferenttypesofSegments 1. GlobalDFF 2. ContextSensi
ataformishavingDFF? Ans:GotoHelpinMenuBar Diagnostic Examine
exfields(Changethefieldlikethis)) Field:PPRSFLEX IftheFormhavingthebutton with
aythatthe formishavingDFF.AformcanhavemultipleDFFbutaBlockcanhaveonlyone
DFF_Name.
Q:HowtoenableaDFF?
ToenableDFFswitchresponsibilityto ApplicationDeveloper FlexField Des
gmentButtonatthebottomofthePopUpWindow.
30
StepsrequiredforregisteringaDFF
1. CreateaDFFTableinModuleSpecificSchema. ConnecttoPPRS/PPRS@VIS SQL>ALTERTAB
ibute1 Varchar2(150), Attribute2 Varchar2(150), Attribute3 Varchar2(150), Attribute4 V
rchar2(150), Context Varchar2(25)); 2. CreateaPublicSynonyminAPPSSchema. Connect
IS SQL>CREATEPUBLICSYNONYMPPRS_PARTSFORPPRS_PARTS; 3. RegistertheTablewithAOL
ablealreadyregistered. 6. RegistertheKFFwithAOLModule. ConnecttoAPPSTECH/APPSTE
iptive Register
31
32
9.
NEWFORMDEVELOPMENT
FORMTEMPLATE:ItisusedtodevelopthenewFormofaBusinessApplication.
1. 2. 3. 4. TEMPLATE.fmbinheritsalltheObjectGroupsofAPPSTAND.fmb. Attache
hesStandardMenucalledFNDMENU.mmb. CreatesFormlevelTriggers.SomeoftheseTriggersar
eread and write. Read only triggers are marked with RED Colour and Read and Wr
dwithBLUEColour.
34
Example:Ifwewanttoopenawindowinthefollowingstructure.
FORM
BLOCK-1
ITEM-1 WHEN-NEW-ITEM-INSTANCE ITEM-2 ITEM-3 WHEN-VALIDATE-ITEM KEY-NEXT-ITEM KEY
-LIST-VALUE
BLOCK-2
ITEM-1 ITEM-2
BLOCK-3
Write the following code in the OPEN_WINDOW Procedure of the APP_CUSTOM Package
ionofthefirstwindowandsubsequentwindows,which iscalledbythePREFORMtrigger.
nt2; ELSIF(WND=W2)THEN Statement1; Statement2; ELSIF(WND=
CANVAS with the Name Block Name and Dummy WINDOW with the name Block Name. Purp
nlytounderstandthecreationofBlocks,Canvasesand WindowsinaForm.
35
NamingConventionstobefollowedintheFormsDevelopment
1. 2. 3. 4. 5. 6. 7. 8. NameoftheFormModuleshouldbesameas.fmb. NameoftheDataB
ableName. NameoftheCanvasandWindowissameasBlockname. NameoftheLOVshouldbes
ouldbesameasBlockName. NameoftheProcedureshouldbesameasItemName. Nameofthe
QF. NameoftheFND_WINDOWshouldbesameasBlock_Name_QF.
StepsRequiredtoDevelopingaNewForm
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Open the TEMPLATE.fmb Form from Form Builder and S
as with Module specificformname. Delete the default Blocks with names BLOCK_NAME
OCK, CanvaswithnameBLOCK_NAMEandWindowwithnameBLOCK_NAME. CreateanewWindowanda
lasstoit. CreateCanvasandassignCanvaspropertyclasstoit. AssignCanvastoWindowa
e Data Block using wizard and name it as Table Name. Assign Text Item Property
ataBlock. ModifyPreFormTriggeratFormLevel. ModifyAPP_CUSTOMPackage. ChangeFormM
ies. Save and Compile the Form and copy the .FMX file in the Module specific d
ltheprerequisitestoregistertheForm. a. RegistertheformwithAOLmodule. b. Define
ignformfunctiontotheMenu. d. AssignthemenutotheResponsibility. e. AssignResponsi
Note:CheckthefollowingattachmentswhenyouopentheTEMPLATE.fmbForm. 1. Checkther
achedornot. 2. ChecktherequiredObjectGroupsattachedornot. 3. ChecktherequiredVi
achedornot. 4. ChecktherequiredPropertyClassesattachedornot. 5. Checktherequired
screatedornot.
36
10. DEFININGCALENDARS
Calendars are special objects are used to select the date value in userfriendl
igatetoadatefielditdisplaysanLOVicon. TheCalendarletsyousatisfythefollowing
tesandtimegraphicallysothatyoucanmakeaquickdateandtime selectionwithoutadditi
hosedatesordaterangesthatareappropriateforthecurrentfield.
YoucanusetheCalendarwindow,asshowninFigure31,tohelpyouenteradate.
CalendarforDateSelection CalendarforDateandtimeSelection
StepsrequiredtodefiningtheCalendar
1. Changethefollowingpropertiesofthedateitem a. ChangetheSubClasstoText_Item_Dat
b. LOVEnableListLamp c. ValidatefromlistpropertysettoNO. Note: Enable List La
ch is going to come with TEMPLATE.fmb. The record Group associated with this LOV
ROM DUAL; we can use this LOV whenever we want to define someSpecialObjectson
38
11. WHOCOLUMNS
WHOcolumnsareusedtotracktheinformationupdatedorinsertedbytheusers against th
D package is used for this purpose. FND_STANDARD.SET_WHOProcedureisusedtoupdatet
le whenaDMLoperations(i.e.INSERT,UPDATE)performed.
StepsrequiredtoTrackWHOInformationinourform
1. 2. 3. 4. 5. 6. 7. ALTERthetablebyaddingWHOcolumnsinthetable. OpenTEMPLATE.fmbi
Performalltheprerequisitestodevelopaform. IncludealltheWHOcolumnsintheDataBl
_STAND.SET_WHOprocedureinPreInsertandPreUpdatetriggers atBlockLevel. SaveandCom
rmalltheprerequisitestoregistertheform 2.TableregistrationwillbedoneonlyforK
velopmenttableregistrationsnotrequired. ToShowtheModuleFormDirectoryPath 1. In
gethemodulenamefromFNDtospecificmodule shortname(i.e.EX,INC,PPR,etc.,). 2. Sa
Note:1.WHOColumnsneednotregisterwiththetableregistrationoption.
39
12. NONFORMFUNCTIONS
Nonformfunctions(subfunctions)arealsoknownasLayoutItems.Nonformfunctions al
bsetofformfunctionalityfromthismenu.
Q:
Howthefunctionsecurityworks?
StepsRequiredForCodingNonFormfunctions
1. OpenTEMPLATE.fmbinFormBuilder. 2. PerformalltheprerequisitestodevelopaForm.
TTONinthedataBlockandchangethefollowing properties. Name : BOOK SubClass :
: CanvasName 4. CreateaNonFormFunctionforthisLayoutIteminAOLModule. 5. Assig
enuleavingthepromptempty. 6. ModifyPREFORMTriggeratFormLevel. IFFND_FUNCTION.TES
CTION_NAME)THEN /*RetrievesFunctionID*/ APP_ITEM_PROPERTY.SET_PROPERTY(EX_
ON); ELSE APP_ITEM_PROPERTY.SET_PROPERTY(EX_ORDERS.BOOK, ENABLED,PROPERTY_OFF);
eandCompiletheForm. 8. Performalltheprerequisitestoregistertheform.
41
13. SEARCHMETHODS
TherearetwosearchmethodsavailablewithAPPSPackage 1. ROWLOVTypeSearchMethod. 2
chMethod. ToOpenaSearchWindow GotoMenuBar View
1.
ROWLOV
ItisusedtosearcharecordbasedonPrimaryKeyColumn.
StepsRequiredtoImplementROWLOV
1. OpenForminFormBuilder. 2. Performalltheprerequisitestodeveloptheform 3. Creat
Parameter and change the Data Type and width of the column,sameasPrimaryKeyCol
using wizard and assign the return value of the LOV to the Parameter. 5. ROWLOV
. 6. SELECTOrder_No,CustomerFROMEx_Orders; P_Order_No(Parameter_Name)
7. CreateQUERY_FINDuserdefinedTriggeratBlockLevel. Note:LOVNameshouldbeBlock_Nam
ERY_FIND(UserDefinedTrigger) APPS_FIND.QUERY_FIND(LOV); IFQUERY_FINDISNOTNULLTHEN
ETHEN 8.CreatePRE_QUERYTriggeratBlockLevel. Execute_Query; ENDIF;
42 IFPARAMETER.G_QUERY_FIND=TRUETHEN :EX_ORDERS.ORDER_NO:=:PARAMETER.P_ORDER_N
ND:=FALSE; ENDIF; Note: In latest versions of Applications Parameter_Query_Fin
ly assignedbythecompilerafterQueryExecute.Weneednotassignit
le in to module specific forms directory.
2.
FINDWINDOWS
StepsRequiredToCreateaFINDWINDOW
43 1 2 3 4 5 OpenTEMPLATE.fmbforminFormBuilder. Performalltheprerequisitestodevelo
enAPPSTAND.fmbforminFormBuilder. OpenQUERY_FINDObjectGroupfromAPPSTAND.fmbtoTEMP
meQUERY_FINDWindow,CanvasandBlocknameswiththenameofthe ResultsBlockname(i.e.E
Note:NameoftheQUERY_FINDlookslikeEX_ORDERS_QF. 6 7 8 9 ModifytheFIND_BLOCKbyaddin
ertherequirement. ModifythecodinginKEYNXTBLKtriggeratBlockLevel. APP_FIND.FIND(
me); Modify the coding in the WHENBUTTONPRESSED Trigger associated with theNEW
APP_FIND.FIND(Results_Block_Name); 10 Modify the coding in the WHENBUTTONPRESSED
ciated with theFINDButton.
APP_FIND.FIND(Results_Block_Name); 11 CreateQUERY_FINDuserdefinedtriggeratResultsB
44 Note:APP_FIND.QUERY_RANGE(:Query_Find_Block_Name.START_DATE, :Query_Find_Block_N
ame.END_DATE,Results_Block_Name.Order_Date); This code is to be written in PREQUE
Results Block Level and is usedtosearchthevaluesbasedontherangeofvalues. 1
oduleSpecificSchema. CreateaPublicSynonyminAPPSSchema. RegistertheTablewithAOL
ithAOLModule. OpenTEMPLATE.fmbForminFormBuilder. Performalltheprerequisitestode
udealltheDFFcolumnsinDataBlockwithNULLCanvas. CreateaTextItemintheDataBlock
ies. Name : DFF SubClass : Text_Item_Desc_Felx DatabaseItem : NO LOV :
romList : NO Canvas : Canvas_Name CreateaPackageSpecificationinProgramUnit
eofthepackageissameasBlockName. PROCEDUREDFF(EVENTINVARCHAR2); CreatePackageB
DUREDFF(EVENTINVARCHAR2)IS BEGIN IFEVENT=WHWNNEWFORMINSTANCETHEN FIND_DESC
X,EXDFF); FIND_DESCR_FLEX.DEFINE(Block_Name,Item_Name, Application_Short_N
ll the DFF procedure in WHWNNEWFORMINSTANCE Trigger at Form Levelandpassingthe
NCE. Call FND_FLEX.EVENT in WHENNEWITEMINSTANCE Trigger at form level.
StepsRequiredToInvokeDescriptiveFlexFields(DFF)
9
10
11 12
StepsRequiredInvokeKeyFlexFieldsfromtheForm
CreateaKFFTableinModuleSpecificSchema. CreateaPublicSynonyminAPPSSchema. Regis
le. RegisterKFFwithAOLModule. Note:WheneverweregisteraKFF,Systeminternallygene
hesamenameasTitleoftheKFFandtheStructure_ID. CreatetheStructureofKFF. Associa
e. DefineValueSets. AssignValueSetstoSegments. DefineValuestoeachSegmentbasedo
ATE.fmbForminFormBuilder. Performalltheprerequisitestodeveloptheform. Includeal
lockwithNULLCanvas. CreateaTextItemintheDataBlockandchangethefollowingpropert
Text_Item DatabaseItem : NO LOV : Enable_List_Lamp ValidateFromList : NO Ca
ateaPackageSpecificationinProgramUnitwithaKFFProcedureandthe nameofthepackage
UREKFF(EVENTINVARCHAR2);
5 6 7 8 9 10 11 12 13
14
16 17
18 19
47
14. PROFILES
Profiles are used to determine the behavior of Oracle Application Forms and Progr
stration information of all the users will be stored in FND_PROFILES_OPTIONtable.
yofalltheProfileOptionsismaintained byAOLmodule.TosetthevaluesoftheProfileO
ator Module. Profile Options are used to pass the values to the variables declar
nd programs, by which we can determine the behavior of Oracle Application Forms.
16typesofprofilesoptionsaregoingtocomewiththepackage. EachProfileOptionhasa
ssLevel. 2 ProgramAccessLevel. 3 SystemAdministratorLevel USER LEVEL: If the Pr
access at this level any front end login user can changethevaluesoftheProfile
dit References Profiles PROGRAM LEVEL: If the Profile is having access at Pr
n we can use theminourPrograms. SYSTEMADMINISTRATORLEVEL:IftheProfileishavin
anuseProfileOptionsatthefollowingfoursublevels. 1 SITELevel 2 APPLICATIONLevel
YLevel 4 USERLevel SITELEVEL:SiteisacollectionofModules.AModuleisacollectio
ponsibilityisassignedtodifferentusers.
48 If we set the Profile Options at Site level then these Profile Options get a
Forms and Programs of all the Modules, which are accessedfromoursite. APPLICAT
t the Profile Options at this level then the Profile Optionsgetaffectedtoallth
ule. RESPONSIBILITY LEVEL: If we set the Profile Options at this level then the
etaffectedtoalltheFormsandPrograms,whichareassignedtoa particularResponsibility
ttheProfileOptionsatthislevelthentheProfileOptionsget affectedtoalltheFormsa
bilities,whichare assignedtoaparticularUser.
WhenwesettheProfileOptionsatallthe4levelthen
1. UserLevelwilloverwriteResponsibilityLevel 2. ResponsibilityLevelwilloverwritethe
ionLevel 3. ApplicationLevelwilloverwritetheSiteLevel The BuiltIn that is use
he Profile Option is FND_PROFILE.GET,whichtakestwoargumentsi.e.NameoftheProfile
tVariable.ThisBuiltInfirstsearchesforthevalueatUserLevelanditwillgetthe USE
nd APPLICATION_ID of Form where the Form is called.
Site Site Level
GL
AR
AP
Application Level
R1
R2
R3
R4
R5
R6
R7
Responsibility Level
User-1
User-2
User Level
49
WhenwecalltheBuiltIn,itwillfirstsearchesatUserLevel
1 2 3 IfthevalueisnotfoundatUserLevelthenitwillsearchatResponsibilityLevel.
sibilityLevelthenitwillsearchatApplication Level. IfthevalueisnotfoundatAppl
chatSiteLevel.This isthedefaultlevelofProfileOption.
Q: HowtosetthevaluesforexistingProfileOptions?
Sys.Admin Security User Define Password Length can be changed by Profile Option.
BuiltIntochangethelengthofthepasswordiscalledSIGNONPasswordLength. Note:
le Option at Site Level, we have to relogin into Applications.
ThedifferentSignonAuditAccountsare
NONE USER RESPONSIBILITYand FORM.
Q: How to know the WHO the users are currently connected to the ServerforAudi
Sys.Admin Security Monitor
FORM
Query the Form and Select the Signon Audit Account LOVbasedonRecordGroup,RecordGroup
edonSelectStatement.
51
15. CUSTOMIZATIONOFFORMS
CUSTOM.PLL is used to customize the forms with out modifying the code of Oracl
here is only one CUSTOM.PLL exists for all the Forms in Oracle Applications. CUS
g to be in use when ever we start Form Server Service.InCUSTOM.PLLwehaveaPac
ackagewe havethebuiltinsasZOOMAVAILABLE,EVENTandSTYLE. ZOOM AVAILABLE: is th
ns a BOOLEAN value (TRUE or FALSE).BydefaultitreturnsFALSE.Ifthisfunctionisgo
enu Item from the main menu is enabled. The ZOOM menu item is used to call on
VENT:isaprocedurewhichisusedtohandlespecificeventsinwhichwearegoingto addou
ecanhandlewiththisprocedureare WHENNEWFORMINSTANCETrigger WHENNEWBLOCKINSTANC
STANCETrigger WHENNEWITEMINSTANCETrigger WHENVALIDATERECORDTrigger PREFORMTrigge
r Allthesetriggers,whicharecreatedatformlevel,whichareidentifiedwithblue col
aultperformsNULL. STYLE:isafunction.Itreturnsanintegerrangingfrom1to4 1 i
R 3 indicate OVERWRITE 4 indicate STANDARD TheseareModuleSpecificevents.Thebui
ecalledbythe builtins of APPCORE.PLL in all the form level triggers which are
PLATE.fmbform. CUSTOM.PLL(LibraryName) CUSTOM(PackageName) EVENT(ProcedureN
ateordevelopaforminapplicationsthesearesomeformlevel triggers, which will be
form level triggers builtins of
52 APPCORE.PLLarecalled.ThebuiltinsofAPPCORE.PLLaregoingtocallthebuiltins ofC
RestrictionsinCUSTOM.PLL
1. WeshouldnotattachandcallanybuiltinsofAPPCORE.PLLinCUSTOM.PLLto avoidrecursi
ORE2.PLLinCUSTOM.PLL. 2. APPCORE2.PLLisaduplicateofAPPCORE.PLL.Allthebuiltinsof
xedwith2. 3. We cant use SQL statements directly in CUSTOM.PLL. In order to us
akeuseofPackagesandProcedures. Note:1.Togettheinformationaboutcurrentformnam
plications 2.TogettheBlockNameandItemNameofthecurrentform Gotohelp
HowtoImplementZOOMAvailability?
1. Firstidentifycallingformandcalledformdetails. 2. Opencalledforminformbuilder.
eter. 4. ModifyWHENNEWINSTANCEtriggeratformlevel. IF:Parameter.P_Vendor_NameISN
OCK(VNDR); DO_KEY(EXECUTE_QUERY): :Parameter.P_Vendor_Name:=NULL; ELSE /*Exi
ENDIF; 5. ModifyPREQUERYtriggeratBlocklevel. 6. SaveandCompiletheformandcopy.
irectory. Note:BydefaultZOOMoptionintheMenubarisdisabledforalltheForms. 7. Op
nOracleFormBuilder. 8. ModifythecodeinZOOM_AVAILABLEFunction.
53 FORM_NAME:=NAME_IN(SYSTEM.CURRENT_FORM); BLOCK_NAME:=NAME_IN(SYSTEM.CURSOR_BLOCK
NAME=POXPOEPOAND BLOCK_NAME=PO_HEADERS)THEN RETURNTRUE; ELSE RETU
TOM.PLL. Builtins of calling or Opened Form are CALL_FORM, OPEN_FORM and NEW_FORM
ON.EXECUTE(FUNCTION_NAME=, OPEN_FORM=Y, SESSION_FLAG=N, OTHER_PARAMETERS
54
16. CONCURRENTPROCESSING(CP)
ConcurrentProgrammingisaprocessingrequestssimultaneouslyandproducing differentr
renttypesofprogramssupportedbyoracleapplicationsareOracle Reports,PL/SQL,JAVA,JA
cess,SQLScripts,SQL*Loader,PRO*C, C,C++,HOSTetc. To process all the Concurr
ions is Application User ConcurrentManagerServer.Inapplicationswecanrunonlythose
assignedtotheRequestGroupofourResponsibility.TorunanyConcurrentProgramin applic
ardRequestSubmission)Form.Actualexecutablenameof the SRS Form is FNDRSRUN.fmb. W
RS From directly from the main menu or we can create a form function for this
o our Menu Responsibility. Based on the executable name CP identifies the actual
me, executable methodsandforwhichmoduleitisassigned. ReportsServerstoresOracle
rverstoresJAVA,C,etc. ConcurrentManagerServerStoresPro*C,Pro*Cobol,etc. Th
urrent Programs are stored in FND_CONCURRENT_PROCESSEStable. Columnsofthistablea
User Program Executable Arguments Phase Pending,Runnin
s (or) Normal,Paused,WarningsNormal Whenever we submit a program
ion goes to InternalConcurrentManager. InternalConcurrentManagerhastwocomponent
ponent 2. IdentificationComponent ResponsecomponentgeneratesauniqueRequest_IDfor
bmittedfor SRS form and updates the request information in FND_CONCURRENT_REQUEST
forwardstherequest toIdentification component. Identification Component
55 searchesfortheprograminFND_CONCURRENT_REQUESTtableandexecutesoutput formatando
edontheexecutablenameitidentifiestheactualexecutable name,executionmethodandmod
dulenameandexecutable methodapplicationidentifiestheexecutableinModulespecificdir
he parametervaluestotheexecutablefromFND_CONCURRENT_REQUESTandupdates the program
n in FND_CONCURRENT_PROCESSES. Once the process is completeditgeneratesthe.logand
lespecificdirectory. Note:InFormsFormFunctionsareusedtopasstheparametersatr
gramsareusedtosetthedifferentoutputformats.
StepsRequiredforRegisteringaSimpleReport
1. 2. 3. 4. 5. 6. 7. 8. CreateaReportusingReportBuilder. Compileandcopy.RDFfilein
icdirectory. RegistertheexecutablewithSystemAdministratorModule. DefinetheConcurre
AssigntheexecutabletoConcurrentProgram. AssigntheConcurrentProgramtoRequestGroup.
estGrouptotheResponsibility. AssigntheResponsibilitytotheUser.
FND_EXECUTABLES Table captures the information of all the executables, which are
. FND_CONCURRENT_PROGRAMS Table stores the information of Concurrent Programs.
Q:
HowtoRuntheReportfromOracleApplications?
Q:WhatarethedifferenttypesofparametersavailableinReports?
Ans: Therearetwotypesofparameters 1. BINDPARAMETERS 2. LEXICALPARAMETERS. The
eateatdesigntime,arecalledActualParameters.The parameters defined at concurrent
re called Formal Parameters. Validationofaparameteristobedonetotheformalparame
56
RegisteringParametricReports
1. CreateaReportusingReportBuilderwithparameters. 2. Compileandcopy.RDFfileinmo
tory. 3. RegistertheexecutablewithSystemAdministratorModule. 4. DefinetheValueset
arameters. 5. DefinetheConcurrentProgram. 6. AssigntheexecutabletoConcurrentProgram
ineParameters. 8. AssignValueSettotheParameters. 9. Assignbindparameterofyoursto
oken is used to map bind parameters with the formal parameters of the Concurrent
signtheConcurrentProgramtoRequestGroup. 11. AssigntheRequestGrouptotheResponsibi
gntheResponsibilitytotheUser. ToreferencethevaluesofPriorParametersofapartic
sof other parameter is based on the Value Set. The value of the 1st parameter
ereclauseofthe2ndParameter. WHEREDeptno=:$FLEX$.First_Parameter Note:1.Toca
isterSRSForm(FNDRSRUN)in ourModule. To run the programs of the Request
ity it is not compulsory to assign the Request Group to the Responsibility. We
orm function to the Menu it is defined on FNDRSRUN with Request Group code, Req
ionshortnameandTitleasparameters. 2.WecanassignonlyoneRequestGroupforaResp
he programs of multiple Request Groups from a Request Group. 4.ForeachRequestGr
ion.
57
17. FLEXFIELDFEPORTS
USEREXITS:Thesearethe3rdpartyprograms(i.e.Java,Pro*C,etc.)thatwecanlink w
lar task.Wecanlink3rdpartyprogramswithour reports with SRW.USER_EXIT(Name_of_the
can reference the input parametersinuserexitswithSRW.REFERENCE(:input_parameters).
IT: ThisUserExitisusedtoinitializethereportinthememory. FNDSRWEXIT: This U
he memory occupied by the program. ThisUserExitisusedtotailortheSELECTstatem
SQL: astring.ItisaconcatenationoftheSegmentcolumnsofaparticularstructure. Pa
hortName:SQLGL Code: GL# Number: P_STRUCTURE_ID Output: P_FLEXDATA Not
only one column where as Lexical Parametersisaplaceholdercolumnwhichcanbeusedt
e parameter. Example: SELECTP_FlexDataCflexData,Journal_Name,,, FROMKFF,TRANS WH
ANS.CCID ANDSTRUCT_ID=:P_STRUCT_ID; FND FLEXID_VAR: is user to retrieve Value_Se
he Segments based on a parameterStructureandalsoretrievesvaluesanddescriptionsba
d Value_Set_IDs. ApplicationShortName : SQLGL Code : GL# Number : P_ST
iption : :C_DESC ItconcatenatestheValueSetIDsofSegments.
58
StepsRequiredtocreateaSimpleFlexFieldReport
1. 2. OpentheReportinReportBuilder. CreateUserdefinedparametersasperourrequireme
Initial Notes Type Value F_CONC_REQUEST_ID Number 15 0 AlwaysCreate P_FLEXDATA Char
00 Long Cumulativewidthmore String thanexpectedwidth requiredtoholdthe data(i.e.
lueofSegments1..n) P_STRUCT_NUM Character 15 101 ContainsStructure Number 3. Call
erExitinBeforeReportTrigger. BEGIN SRW.USER_EXIT(FNDSRWINIT); RETURN(TRUE);
rExitinAfterReporttrigger. BEGIN SRW.USER_EXIT(FNDSRWEXIT); RETURN(TRUE); E
itinBeforeReportTrigger. BEGIN SRW.USER_EXIT(FNDSRWEXIT); BEGIN SRW.REFER
ER_EXIT(FNDFLEXSQL APPL_SHORT_NAME=SQLGL CODE=GL# NUM=:P_S
RN(TRUE); Name
4.
5.
59 END; Note: When we are calling multiple user exits in a trigger we should
nseparateBlocks(i.e.BEGIN..END). CreateareportqueryintheDataModel. SELECT&
L_CODE_COMBINATION WHERECHART_OF_ACCOUNT_ID=&P_STRUCT_NUM; CreatetwoFormulaColumns
ndC_DESC_ALL. CallFNDFLEXIDVALinthePL/SQLformulaofCVALUEtoreferenceValue Code
eve the concatenated flexfield segment values and description you incorporatetheAO
hesecolumns BEGIN SRW.REFERENCE(:C_FLEXDATA); SRW.FND(:P_STRUCT_NUM); SRW.USER
ID_VAL APPL_SHORT_NAME=SQLGL CODE=GL# NUM=:P_STRUCT_NUM
VALUE); END; Call FND FLEXIDVAL in the PL/SQL formula of C_DESC_ALL to retrie
eCombination. BEGIN SRW.REFERENCE(:C_FLEXDATA); SRW.FND(:P_STRUCT_NUM); SRW.US
X_ID_VAL APPL_SHORT_NAME=SQLGL CODE=GL# NUM=:P_STRUCT_NUM
AY=ALL); RETURN(:C_DESC_ALL); END;
6.
7. 8.
9.
61
18. QUALIFIERS
QualifiersareusedtoidentifytheSegmentswithspecificPropertyandthevalueofthe S
hereports.Qualifiersareclassifiedintotwocategories. 1. FlexFieldQualifiers(FFQs)
lifiers(SQs)
FlexFieldQualifiers(FFQs):areusedtoassignaspecificpropertytotheSegment
Qualifier. These are based on Key Flex Fields (KFF). FFQs are varry from one KF
snotcompulsorythatalltheKFFshouldhaveFFQs.
19.INTERFACES
Interfaces are the Tables, which are act as a medium to transfer the data fro
er module or to transfer the data from legacy system into Oracle Applications. T
les provided by the Oracle Package. Each module is havingitsownInterfaceTables.
Interfacing:
Itistheprocessofconvertingtherecordsfromoneformattoanotherformat. Themaincom
re TransferProgram InterfaceTableand ImportProgram
TransferProgram:
If the source modules data are implemented in Oracle Applications then the Transf
egoingtocomewiththePackage.Ifthesourcemodulesareimplementedin external system
le Applications) then we have to develop our own Transfer Programs. Generally the
rograms are developed using PL/SQL, JAVAorSQLLoader. TheLogicoftheTransferPro
nsofsourcetablewiththecolumnsofInterfaceTables. ItperformsRowLevelandColumnLe
sfersthedatafromSourcetotheInterfaceTable.
63
InterfaceTables:
Thecolumnsofthesetablesareclassifiedinto4types. 1. MandatoryColumns. 2. Condition
olumns. 3. OptionalColumns. 4. InternalProcessingColumns.
MandatoryColumns:
ThesearetheNormalcolumnsintheInterfaceTables.Thesearethemaincolumnswhich arer
ntables(i.e.OracleApplicationModuleTables). Note: With the help of mandatory c
port Program will converts the recordsfromsourcetodestination.
ConditionallyRequiredColumns:
ThevaluesforthesecolumnsarebasedonthevaluesofMandatorycolumns. Example: When
ign currency transactions to INR then it as compulsory to provide conditionally r
mns like Currency conversionrate,ConversionTimeandConversionDate.
OptionalColumns:
These are used when a client wanted to transfer some additional information from
ation.Thesearebasedonclientsrequirement.
InternalProcessingColumns:
Status and Error Message columns are called Internal Processing Columns. These are
nly to Interface Table. These columns are going to be used by the Import Progra
us and errormessage, ifthe record fails itsvalidation while importingfromInterfa
nationTable.
ImportProgram:
For all Interface Tables, Oracle Application Package is going to provide Import P
se are generally registered with destination modules. These Import Programsaredesi
/SQL,JAVA,C,C++,etc. ThelogicoftheImportProgramis It maps the columns of
or more columns in the destinationtable.
Ans: InterfacesareusedtotransferthedatafromlegacysystemtoOracleApplication sy
nvertthedatafromoneform toanother form withintheOracleApplicationModule. Exa
Transfer Program
Transfer Program 1
Import Program
Transfer Program
GL
Daily Transactions
Transfer Program
Journal
Interface Table
Weekly Transactions
FA
Ledger
Legacy
Transfer Program
Balance
65
Scenario1: Interface Tables are provided and the integrating modules are
implemented in Oracle Applications. In this scenario the package itself is going
aratetransferprogramforeachintegratingmodule.Seefigurefordetails. Indent:isspeci
ke,thelistofmaterialsrequired,howmuchquantityis required,whenthematerialisrequ
ms. Interface AP GL
Scenario2:InterfaceTablesareprovidedandtheintegratedmodulesareimplemented
inexternalsystemwiththesamedatabaseasOracleApplications.Inthisscenariofront end
aseissame. Takeforexamplethereare40columnsaccordingtotransactiontableofclien
ycolumnsand17areoptionalcolumns.Butasperapplications interface table is having
ns. While transferring the data from existing system to applications we have to
hing columns in transaction tablewiththeinterfacemandatorycolumns.Matchingcolumns
ryor optional columns of transaction table of client. Assume that there are 17
atchingcolumnsoutof20mandatorycolumns.Ifwewanttoinserttherecord intointerface
lumnscompulsorily.Inthisexamplesince thereare17matchingcolumnsoutof20columnswe
luesto the nonmatching (i.e. 3) columns with the authentication of the client.
vingmandatorycolumnsofhisown,whicharenotmandatoryininterfacetable,then wemapt
nalcolumnsofinterfacetable. LogicoftheTransferPrograminthisscenario 1. Create
eenthetwodatabases. 2. Search for the matching columns of the interface table wi
s or externaltables. 3. Provide default values for the mandatory columns of inter
r the columnswherethematchingcolumnsarenotfoundinsourcetable. 4. Performrowlev
ations. 5. Incase if the clients requirement is to transfer all the mandatory co
rce to the destination, we can map the remaining mandatory columns of the client
ithoptionalcolumnsoftheinterfacetable. 6. CreateaPL/SQLprocedureandmapthecolumn
lumns. 7. TransferthedatafromsourcetabletotheInterfaceTable.
66
Scenario3: Interface Tables are provided and the integrating modules are
implemented in external system with different database (i.e. Sybase, DB2, SQL Serv
nthisscenariowehavetoconvertthedataintoflatfile(i.e..dat).Thenwewrite thetr
ipt. Scenario-3: Transfer the Data from Legacy System to Oracle Apps. SYBASE INTE
RFACE Import DB2 TABLE Program SQL SERVER Using PL/SQL Transfer Data To Temp. Or
acle Table Applications Database Convert Load SQL Flat File Data To Data To Load
er Convert Data UTL Load Using PL/SQL Data To FILE GL_DAILY_RATES_INTEAFACE Tabl
is used to store the conversion rates on daily basis.Itconsistsofthefollowingf
_ To_ User_ Conversion_ Mode_ Currency currency Conversion_ Conversion_ Conversion_ R
ate Flag Date Date Type USD INR 01SEP2006 30SEP2006 Corporate 44 I ASD INR
is Interface table consists of Database Trigger, which fires the input program wh
ert the record in this. This will create no of records into GL_DAILY_RATES Table
ed on the From_Conversion_Date and To_Conversion_Dateperiod. Example: Intheabovet
aysinthefirstrecord. ThisDBTriggerupdatestotal60recordsinGL_DAILY_RATESi.e. 3
omUSDtoINRand 30recordsforconversionfromINRtoUSD.
67 ValidationsRequiredaccordingtothisinterfacetableare 1. Fromcurrencyshouldexists
CYTableanditshouldbeactive. 2. TocurrencyshouldalsoexistsinGL_CURRENCYTableand
romConversionDate:Alldatevalidationsappliedforthisdate. 4. ToConversionDate:Same
iredasfromcurrencybutitshouldbe greaterorequaltoFromConversionDate. 5. Convers
ontypeshouldexistinGL_CONVERSION_TYPE. 6. ConversionRate:Itshouldbeanumber. 7. M
tuscolumninGL_DAILY_RATESinterfacetable. I stand forInsert U stands for
omCurrency,ToCurrencyandConversionTypeareCasesensitive. Stepsrequiredfortransf
cysystemtooracleapplications 1. Create daily.dat flat file and save it in server
racle\Visdb\plsql\temp(thisisthedefaultdirectoryforUTLscriptfiles.To knowthepath
entheinitvis.orafile.
From_ To_ Currency currency USD ASD INR INR From_ Conversion_ Date 01SEP2006 01
ion_ Date 30SEP2006 15Sep2006 User_ Conversion_ Type Corporate Spot Conversion_
Flag I I
2. Create Transfer program using SQL and PL/SQL to upload data from flat file
le.
WritethecodeatSQL*PLUSprompt(i.e.SQL>)
DECLARE Fp UTL_FILE.FILE_TYPE; F_Curr Varchar2(10); T_Curr Varchar2(10);
r2(9); C_Rate Varchar2(2); M_Flag Varchar2(1); My_Line Varchar2(100); BEG
sdb\9.2.0\plsql\temp,daily.dat,r); UTL_FILE.GET.LINE(Fp,My_Line);
20. BISINESSCOMPONENTS
The main components that are required to any business transaction are DATE, CUR
ndENTITIES. DATES:Tovalidatethesedatecomponentsweneedtodefinecalendarbasedon
od type is to specify how many number of periods required for maintainingthebal
tion(i.e.daily,weekly,monthly,quarterly,etc.). This period types are stored in G
S table. Based on these period types we define calendars. These calendars informa
d in GL_CALENDARS table. Foreachcalendarwedefineperiodsdependinguponthenumberof
eriod types. This periods information is stored in GL_PERIODS table. By default
l these periods is closed. This period statuses are stored in GL_PERIOD_STATUSESt
TS: To define accounting structure in General Ledger or in Finance Module we use
ctures. The structures defined using accounting KFF are called as ChartOfAccounts
tsIDuniquelyidentifieseachStructure. ENTITIES:entityisnothingbutamodule.Suppli
merEntity(AR), EmployeeEntity(HR),etc.,aresomeexamples.
69 CURRENCY:Thereare200typesofcurrenciescomewiththepackage.Allthecurrency inf
nGL_CURRENCIEStable.Thecurrency,whichisassignedto ourSetOfBooks,iscalledFuncti
ainingallthecurrenciesare calledasForeignCurrencies. Thereare3typesofcurrenc
ency 2. ForeignCurrency 3. StaticCurrency FunctionalCurrency:inwhichwearegoingt
nces. ForeignCurrency:Allthecurrenciesotherthanfunctionalcurrenciesarecalledfore
tatistical Currency: This is used to record the usage factor for various measurem
mple:If3departmentsaregoingtosharethesamepremisesandrentforthe premises is 2
shared proportionally to all the departments dependingupontheirusagefactor. CHA
estructuredefinedonaccountingKeyFlexField. SETOFBOOKS(SOB):Theseareusedtos
faparticular companyandareacollectionofcomponentsCalendar,CurrencyandChartOfAc
e SOB to a responsibility to the GL_RESPONSIBILITY using GL_SET_OF_BOOKS profile o
n we open the Journal from the responsibility thedefaultstatusofthisperiodiscl
tionfromourresponsibility we have to open the periods. Depending upon the first
ystem assigns never open status to its prior period and future entry status peri
ds dependinguponthenumberoffutureperiodsetsinourSetsOfBooks. PeriodStatus J
s/ Entry Posting Reports NeverOpen NO NO NO Open YES YES YES Closed NO NO YES
rmanentlyClosed YES NO YES Set Of Books information stored in GL_DETS_OF_BOOKS
of_Books_ID uniquelyidentifieseachsetofbook.
70 Q: How do we can find the Set Of Books, Flex Fields, Open/Close Periods, Ca
OLModule InAOLModule Setup Setup Financials FlexFields Books
InAOLModule Setup Journal Sources
GL_INTERFACE:ItisusedtoconvertthetransactionsofsubledgerintoJournals.
ValidationsrequiredforGL_INTERFACEtableare
1. STATUS: should be always new when we are transferring the data from sub ledge
ralledger.Importprogramchangesthestatustohold iftherecordisnotvalidatedsuccess
dbeinsentencecase. 2. SET_OF_BOOKS_ID:thisshouldexistinGL_SETS_OF_BOOKStable. DEC
; BEGIN SELECT X INTOCHKFROMAPPS.GL_SETS_OF_BOOKS WHERESET_OF_BOOKS_ID=&
DYOUCANPROCEED ); EXCEPTIONWHENNO_DATA_FOUNDTHEN DBMS_OUTPUT.PUT_LINE( THISSOB
COUNTING_DATE:isthedatewhenexactlywecanpostthejournals.Tables required to valid
g date are GL_SETS_OF_BOOKS, GL_PERIOD_TYPES, GL_PERIOD_SETS, GL_PERIODS and GL_PERIO
TATUSES. 4. CURRENCY_CODE: This code should be same as the currency assigned to t
ks. This code should exist in GL_CURRENCY table. If the currency
71 codeisdifferentfromSetsofBooksthenitismandatoryforustoprovidevalues for t
ike USER_CURRENCY, USER_TYPE, CURRENCY_CONCERSION_RATEandCURRENCY_CONVERSION_DATE. Not
e: 5. DATE_CREDITED:isthetransactiondateorJournaldate.Thisdateshouldbein open
etablesaffectedforthissameasaccountingdate. Herewehavetogivetheconditionforo
ouldbe between starting date of latest open period and ending date of future en
EATED_BY:ThisisfrontendloginUSER_IDshouldexistinFND_USERtable andthisusershoul
ilitytorecordtheJournals. 7. ACTUAL_FLAG:ingeneralledgerwearegoingtomaintain3t
ctualBalances(flagisA) b. BudgetBalances(flagisB) c. EncumbranceBalances(flagis
lancesthegeneralhastobecreatedasactualjournal.Budget journals are going to aff
. Encumbrance journals are going to affectencumbrancebalances. 8. USER_JE_CATEGORY_N
t is usedtodescribe the purpose of thejournal entry.Thiscategoryisgoingtobes
. 9. USER_JE_SOURCE_NAME:itisusedtostoretheoriginofthejournalentry.This source
CES. 10. BUDGET_VERSION_ID: This column is required when we are going to record B
s.ThisinformationisstoredinGL_BUDGET_ENTITIES. 11. ENCUBRANCE_TYPE_ID: This is requ
n we are going to required EncumbranceJournals. 12. SEGMENT_COLUMNS:Wehavetoprovi
hesegmentcolumns depending upon howmany number of segment columns associated with
f_Accounts_IDorStructure_IDassociatedwithourSet_Of_Books. Thetablesusedtovalidate
ND_ID_FLEXES, FND_ID_FLEXE_STRUCTURES, FND_ID_FLEXE_SEGMENTS, FND_ID_FLEXE_VALUE_SETS
, FND_ID_FLEXE_VALUES, FND_ID_FLEXE_VALUE_TL.
72 13. ENTER_DR and ENTER_CR: Columns are used to enter the debit amount ar Credi
leCodeRequiredtoUploadtheDatafromLegacySystem
LOADDATA INFILE* INTOTABLEGL.GL_INTERFACE FIELDSTERMINATEDBY,OPTIONALLY
ING_DATE, CURRENCY_CODE, DATE_CREATED, ACTUAL_FLAG, USER_JE_CATEGORY_NAME, USER_JE_SO
URCE_NAME, SEGMENT1, SEGMENT2, SEGMENT3,SEGMENT4,SEGMENT5,ENTER_DR,ENTER_CR) BEGINDAT
5MAY2001, USD, 25MAY2001, 1001239,A,Sales Invoice, Receivables, 03, 1
1239,A,Sales Invoice, Receivables, 03, 110, 6160, 1100,120,,1947
Save the above code with the file name GLINT.CTL in the path Oracle\visdb\8.1.6\b
ThenrunthefollowingcommandatcommandpromptatServerendtouploadthedata intovario
DRAPPS/APPS@VIScontrol=glint.ctl Journalsaregoingtobemaintainedin3levels 1. Batc
tion of Headers. This information will be stored in GL_JE_BATCHEStable. 2. Headers
ction of Lines. Headers are based on Category and Currency. Thisinformationwillb
EADERStable. 3. Lines:ThisinformationwillbestoredinGL_JE_LINEStable.
73
21. MULTIORGANIZATION
The ability to define multiple organizations and the relationships among them with
installation of Oracle Applications is called multi organization. Multi Organization
future used to store the data of multiple organizations in a single Database.
StructureofMultiOrganization
GL: Set Of Books Name (SOB1) MO: Operation Unit
Group) TRUCKS_AR GL: Set Of Books Name (SOB1) MO: Operation Units (Cars) HR: Bu
siness Group (Tata Group) CARS_AR Trucks Cars Develop Consulting Training SOB1 S
OB2 SOB3 SOB4 TM TCS TTS TS Nth Org Tata Groups
76
22. ALERTS
OracleAlertfacilitatestheflowofinformationwithinyourorganizationbylettingyou cre
edalerts.OracleAlertwillsendmessagesorperformpredefined actionsinanactionsetwh
ur. Alertisamechanismthatchecksyourdatabaseforaspecificexceptioncondition. Al
urbusinessinformationandtonotifyyouoftheinformation youwant. Therearetwotyp
2. Aperiodicalert.
Aneventalerts:Eventalertsimmediatelynotifiestheactivity(i.e.aninsertoran
updatetoatable)inthedatabaseasithappens/occurs. Tocreateaneventalert,youpe
derlisted: Definethedatabaseeventsthatwilltriggeryouralert Specifythedetails
ionsforyouralert Createactionsetscontainingtheactionsyouwantyouralerttoperfo
:Selectstatementthatreportsthecreationofnewusers: SELECTuser_name,:MAILIDINTO&N
nd_user WHERErowid=:ROWID;
Aperiodicalerts:Periodicalertsperiodicallyreportkeyinformationaccordingtoa
scheduleyoudefine. For example, you can define a periodic alert for Oracle Purc
a messagetothePurchasingManagerlistingthenumberofapprovedrequisitionlinesthat e
ent placed on purchase orders. You can define this alert to run weekly,andprovi
urementonaconsistentandtimelybasis. Tocreateaperiodicalert,youperformthefoll
ed: Define your periodic alert and specify its frequency Specify the details for
your alert Defineactionsforyouralert Createactionsetscontainingtheactionsyouw
rm
77 Exampleofaperiodicalert:Selectstatementthatlooksforuserswhohavenotchanged t
in the number of days specified by the value in :THRESHOLD_DAYS.: SELECTuser_na
te,:THRESHOLD_DAYS INTO&USER,&LASTDATE,&NUMDAYS FROMfnd_user WHEREsysdate=NVL(pas
ysdate)+:THRESHOLD_DAYS ORDERBYuser_name; AlertAction:Anactionyouwantyouralert
ioncandependon theoutputfromthealert.Anactioncanincludesendinganelectronicmai
ing an Oracle Applications program, running a program or script from youroperatin
ingaSQLscripttomodifyinformationinyourdatabase. Youcanhavemorethanoneactionf
rporatetheoutput ofthealert. Action Set: A sequence of alert actions that are
ular alert. You can assignasequencenumbertoeachactionyouincludeinanactionset
eactionsareperformed.
78
80
23. DISCOVERER
Oracle Discoverer is a decision support product that enables you to perform ad h
atabase, analyze and format the results of the query, prepare the resultsforpres
agedatainawaythatismeaningfulforyourbusiness situation.Itseparatesthemorediff
rationtasksfromthesimpler queryingandreportingtaskssothatanalysts,managers,ando
rkers caneasilygettheirworkdonewithouthavingtoknowabouteitherdatabasesorSQL.
eeparts: 1. AdministrationEditionenablesyoutocreatealayerofmetadata,calledthe
ecomplexityofthedatabasefromusersandreflectsthe businessareasspecifictoyourcom
erer Plus enables you to easily query a database, save query results in workb
ts,andformatareport. 3. Discoverer Viewer enables you to view workbooks create
us usingnothingmorethanawebbrowser. Business Intelligence: is software it is
ons, Business Solutions and predictfuturetrends. Discoverer: is one of the busine
nce tool used to answer business queries by creatingadhocquerieswithoutdependin
e.Developers).Theother BusinessIntelligencetoolsareCagnos,Informatica,etc.
erver Different Databases Oracle Discoverer Static Databases Reporting Tools
Data Warehousing
Cagnoes
Informedia