69
I have around 4 years of experience in Oracle Apps (11i) Technical Consultant I involved projects like Implementation Support and maintained and migration In that I involved module like PO, AP, GL, OM, INV NOW I am familiar in PO, AP, INV technical as well as functional Here I developed Reports, forms, interfaces as well as customizations of reports and interfaces STERIS is the world’s pre-eminent infection prevention, decontamination and critical and surgical care company, with thousands of customers in more than 60 countries. While the corporation was founded in 1987, our history dates back to the founding of The American Sterilizer Company in 1894, a long-time, globally leading innovator of sterilization products. Today, through a series of strategic acquisitions and continual innovation of new products, STERIS holds one of the broadest portfolios of products in the industry. It stands at the forefront of efforts to prevent infection and contamination in healthcare and pharmaceutical environments, and is broadening its reach with products to meet the needs of defense, and industrial markets. AIM Mythologies Get the MD50 from the reporting person or functional consultant Read the documentation and raise the Issues, if I am not able to understand some where , once the issues are clear then go for developing of components, once the development is over we will be sending this one to reviewer He will check the coding standards and he will mention defaults Once the code is over we will be sending the object to the testing these will do the testing and once it is passed they will send to production instance 35) Sys Admin Module? a) Define Custom Users, b) Define Login Users, c) Register oracle DB users, d) Define Concurrent Programs, e) Register Concurrent Executables, f) Setting Profile Option Values, g) Define Request Types. 36) AOL? a) Registering tables. b) Registering views c) Registering db sequences

Oracle Apps Interview

Embed Size (px)

DESCRIPTION

Oracle Apps Interview Questions

Citation preview

Page 1: Oracle Apps Interview

I have around 4 years of experience in Oracle Apps (11i) Technical ConsultantI involved projects like Implementation Support and maintained and migration In that I involved module like PO, AP, GL, OM, INV NOW I am familiar in PO, AP, INV technical as well as functionalHere I developed Reports, forms, interfaces as well as customizations of reports and interfaces

STERIS is the world’s pre-eminent infection prevention, decontamination and critical and surgical care company, with thousands of customers in more than 60 countries. While the corporation was founded in 1987, our history dates back to the founding of The American Sterilizer Company in 1894, a long-time, globally leading innovator of sterilization products.

Today, through a series of strategic acquisitions and continual innovation of new products, STERIS holds one of the broadest portfolios of products in the industry. It stands at the forefront of efforts to prevent infection and contamination in healthcare and pharmaceutical environments, and is broadening its reach with products to meet the needs of defense, and industrial markets.

AIM MythologiesGet the MD50 from the reporting person or functional consultant Read the documentation and raise the Issues, if I am not able to understand some where , once the issues are clear then go for developing of components, once the development is over we will be sending this one to reviewer He will check the coding standards and he will mention defaultsOnce the code is over we will be sending the object to the testing these will do the testing and once it is passed they will send to production instance

35) Sys Admin Module?a) Define Custom Users, b) Define Login Users, c) Register oracle DB users,d) Define Concurrent Programs, e) Register Concurrent Executables, f) Setting Profile Option Values, g)Define Request Types.36) AOL?a) Registering tables. b) Registering views c) Registering db sequencesd) Registering profile options e) Registering lookups and lookup codesf) Registering forms g) Registering Form and Non-Form functions i) registeringMenus and sub-menus. j) Registering DFF and KFF. k) Libraries

Q)Master Details Triggers1.Form level triggers-On_clear_details2.Black level triggersOn_populate_details, on_check_delete_master3.Item level triggers

Q)Wt r the triggers fire when u open FormPre_formPre_blackPre_recordPre_textitemWhen_newform_instanceWhen_newblack_instance

Page 2: Oracle Apps Interview

When_new record_instanceWhen_new_item_instanceQ)wt r the triggers fire when close a FormPost_textitemPost_recordPost_blackPost_form

1)Wr r the DDL statements1)Create 2)alter 3)Drop 4)Truncate 5)RenameCreate:-Create Oracle Database Object such as Tables,Viewes,Synonyms,Index,ClusterCreate Table <TableName>Colums<Datatype)Alter table <TableName>ADD Colums<Datatype)Alter table <TableName>Modify Colums<Datatype)Alter table <TableName>Drop ColumsNameDrop Table <TableName>Truncate Table <TableName>Reanme<OldTablename>to<NewtableName>Explain:-It generate access path for the query Optimization level2)Wt r the DML StatementsIt’s used to feed values modify values in database Objects1)Select 2)Insert 3)Update 4)Delete 5)MergeSelect *from EmpInsert into<TableName>(ColimnList)Values(ValuesList)Insert into <TableName>Valuies<ValuesList>Insert into <TableName>Values(&Columns)Update<TableName> Set ColumnName=ValuesDelete from <TableName> where Condition3)wt r the DCL Statements1)Granr 2)RevokeGrant is one of the permission access to UserRevoke is used to cancel the Privilleges on Database object to other usersGrant<Privillage>on <TableName>to UserRevoke<Privillage>on <TableName> From User4 )Wt r the TCL statements1)Commit:-To make the changes Permanent2)Rollback:-To cancel the changes3)SavePoint:-To set margin for commit or rollbackTransaction:- A transaction is a logic unit of workWT IS Constraints:-CONSTRAINTS are a set of predefined rules which can be defined on table and activated automatically when ever DML statements are performed1)NOT NULL:-Used to suppress Null values2)Check:-used to suppress supplicate values 3)Primary key:-Primary key column can’t contain Null values and duplicate values only once it can be used

Page 3: Oracle Apps Interview

4)Unique:-used to suppress duplicate values 5)Foreign key:-reference the primary key6)Referience key:-it’s used to define relationship between tablesSET OPERATORS:-combine the result of two queries in to single oneUnion:-rows of first query plus rows of second query less duplicate rowsUnionAll:- rows of first query plus rows of second query with duplicate rowsMinus:-rows unique to the first queryIntersect:-Common rows from all the queries JOINS:-used to retrive date from more than one table1)Equaljoin:-Based on equaty condition tables are joinedSelect dname,loc,ename ,job,sal from emp, dept where enp.deptno=dept.deptnoNonEqualjoin:-if we just remove the where statement then it’s non-equal joinOuter Join:-it’s used to retrive the missing rows, Extend the result of simple join as well as those records which r not match another tableSelect dname,loc,ename ,job,sal from emp, dept where enp.deptno(+)=dept.deptnoSelfjoin:-joining the table to it self similier column must be repeted in the sameCartesion:- with out any joining condition Having class:-it’s used to filter the grouped records Distanct :-used to suppers duplicate values in specific columnGroup by clause:-it’s used to devide the rows onto smaller groups in a table Where clause:-used to filter the records in for the specified conditions Order by clause:-to list the details in accending order decending orderSubquery:-query with a quey is nothing but subquery is used to find out unknown valueSelect avg(sal) ,deptno, fom emp having avg(sal)>(select avg(sal) from emp where deptno=20) group by deptno;Select *from emp e where sal>&n(select count(*) from emp where sal>e.salCorrelated Query:-Database Objects:- permanently registered in oracle serverTables:-used to store information and manipulate basic storage unitView:-combination of one or more tables with select statements it’s used to reduce redundancy and fast retrival of the dataProvide security while sharing data with other usersCreate View<viewname> as select statement In line View:-Materialize view:-Force View:-Synonum:- are alies name it’s used to hide original name and owner of the database object 2 type private:-created by user Public:-created by DBACreate synonym <synonymname> for <objectname>Synonym is useful for administrator more than other usersSequence:- used to to generate Uniq numbers, it’s not rela’ed to any table,it’s a sharable object, it’has 2seudo columns Nextval:-holds the next value of sequenceCurrval:-holds the previous value of the sequenceInitially it will zero

Page 4: Oracle Apps Interview

Create sequence <sequencename>increment by 1 start with 1;Index:-is a fast retrival of the record, it’s pointer locates the address of dataCreate index <indexname> on emp(sal)Clusters:-used to improve performance of oraclePsudo Column:-it’s additional function that can called from only select statement they r treated like colums in a table that is not stored in a tableSysdate, seq.nextval,seq.currvalRowid:-it returns the row identifier of that particular row the extranal format of Row id is character string RowNum:-will return the current row number in a queryDecode:-converts the values of the given columns to other given mapping values excutes as in If else loop or For loopNVL:-Convert Null to specified valuesSelect Sal+NVL(comm.,0) from dualDynamic SQL:-Dynamic sql in PL/SQL support DDL for this we use DBMS sql package Excute immediately to run dyanamic SQLPL/Sql Table:-holds a list of elements under a name which are similar datatype similar C Arry, it will not hold any dataType<Tablename> is table of <datatype>Index by binary Integer PL/SQL Records:- holds a list of ements under a name which are deferent datatype similar C Structure, it will not hold any dataType<Recordname>is recordNested Table:-Nested table is nothing database which have two columns KEY and VALUE. It allow DML statementsType <TableName> is table of <Tableatype>(NOTNULL)VARRAY:-Varray is nothing but PL/SQL Table but it has fixed upper bound on it size. It not allowed DML statements Type <Typename> is (Varray)Collections Methods:-Count, Exit, first, last, Next Variable Attribute:-%Type:-used to declare column type vendor, it represent only one column structurev.ename emp.ename%type%RowTye:- used to declare row type vendor, it’s represent entire table structureIemp%rowtypeAnonymous Black:-which has no name it’s used in D2kNamed Black:-it’s PL/SQL black which has given name, Procedure,function,Package,trigger

EXCEPTIONS :-Exceptions are errors run time errors we can catch by using exception they are 2 types 1)Predefined Exception:-Automatically recognized and raised by Oracle NO_DATA_FOUND, TOO_MANY_ROWS, VALUE_ERROR, OTHERS, PRAGMA_ERROR,VALUE_ERROR, INVALID_NUMBER, CURSOR_ALREADY_OPENED, INVALID_CURSOR2)User defined Exceptions:-User defined exceptions are errors that is defined by the programmer

Page 5: Oracle Apps Interview

PRAGMA:-pragma is directive of compiler to give the instruction to the compilier at compiler time Pragrama Exceptions_Init:-This is a named exception with a particular error we trap this error specifically rather than via other handlerPragma Exception_Init (errorname, Oracle errorcode) Raise_Application_error:- to create your own error message this is user defined exceptionRaise_applicatio_error(errornumber,errormessage)SQLERROR:-it’s return the current error messageSQLCODE:-it’s return the current error codeCURSOR:-a cursor is handle, or pointer to the context area or logical memory structure or A private Sql/Buffer or memory2 type of cursers1)Implicit Cursor:-created by oracle where DML is performed 2)Explicit Cursor:-created by programmer valid in pl/sql scriptCursor cur1 is select *from empCursor name must be UniqueDeclare Cursor, Open cursor, fetch cursor name in to variables, close cursorCURSOR ATTRIBUTE:-Give the state of the cursor% FOUND:-return true fetch is Successful %NOT FOUND:-return true fetch is NOT Successful %ISOPEN:-return true if cursor is opened %ROWCOUNT:-give no of records fetched from the cursorCONSTRAINED CURSOR:-this is a return type of cursorUNCONSTRAINED CURSOR:-this is not a turn type of cursorREF CURSOR:-Ref cursor is used to change the SQL query Dynamically or we can pass different values at run time Cursor C1 is select *from emp for update of empno,ename

DATABASE TRIGGERS:-A set of PL/SQL statements Automatically executed when ever an event is fired Trigger Events:-Before, after, insert, update, delete, row level, statement levelTigger Type:Row Level:-it will fired only once for one DML statementMax 12 Triggers can be created on a table DML trigger are defined on DML statements it will be fired before, afterCreate or replace trigger<triggerName>before/after insert/update.delete(Columns) on <TableName> for each row when (condition) Trigger Body End;INSTEAD OF TRIGGERS:-INSTEAD OF TRIGGERS CAN BE DEFINED ON VIEWSInstead of trigger fired by instead of DML statements, it must be Row level trigger, Max 6 triggers can be created on a table bCreate or replace View Trigger<TriggerName> Instead of Delete on view for each row begin….End;System Triggers:-fires on two different kinds of events 1)DDL Events 2)Database EventsTrigger Predicatefor :-Inserting, Updating, Deleteing

Page 6: Oracle Apps Interview

:OLD:-it’s undefined for Insert statement :NEW:-it’s undefined for Delete statementPROCEDURE:-A set of PL/SQL statement Perform a task it may or may not return value but Procedure are not used in SQLCreate or replace procedure<proName>(argementMode)<datatype> is variable declarations begin<excutable statements>exceptions, handle exceptions END ProName;FUNCTION:- A set of PL/SQL statement Perform a task it Must return single valueWe can use function in SQL and PL/SQLCreate or replace Function<FunName>(argementMode)<datatype> return datatype IS variable declarations begin<excutable statements> END FunName;PACKAGE:-It’s collection of related variables Cursors and Subprograms, it consist of 2 part1)Package Specifications:-holds the declaration of variables cursors and subprograms2)Package Body:-holds a body of procedures and functionsOverLoading:-Oracle permits to call the same procedure name in a package with different arguments this is known as OverloadingNOCOPY:-It’s compiler hint for the parameter to pass the value as reference it used only OUT and INOUT parameters it don’t used IN parameterParameters Mode:-IN ,OUT, INOUTAUTONOMOUS TRANSACTION:-we can’t use TCL(Commit,Rollback) in Trigger we can use this pragma at best in the triggerA transaction with in the transaction is called autonomous transaction it’s Parent transaction but it’s independent with out commit or rollback we can’t perform AutonomousCreate or replace Procedure ProName as pragma Autonomous_transaction Oracle 9i having the extended futures as compare to oracle 8i they are Native compilation, Case statement, Date and timestamp type, Pipelined and table FunctionForward Declararion:-it’s used when you want to call procedure with in another procedure ;KINTANA:-IS BASICALLY TOOL TO MIGRATE THE CONCURENT PROGRAMS,EXECUTABLES,RESPONSIBILITIES, VALUESETS FROM OLD VERSION TO NEW VERSION

REPORTS:-The process of the data extraction and its display is called ReportCOMPONENTS OF REPORT:-1)Data model 2)Layout Model 3)parameter form 4)Report triggers REPORT STYLES:-1)Tabular Formate2)Group left3) Group Above4)Form like5)Form letter 6)Matrix7)Matrix with group8)Mailing label

Page 7: Oracle Apps Interview

REPORTS TRIGGERS:-1)Before parameters form2)After parameters form 3)Before Report 4)Between Report5)After ReportFORMULA COLUMN:-It’s user defined calculation on that columnSUMMARY COLUMN:-It’s pre-defined aggregate functionPLACE HOLDER COLUMN:-It’s holds a calculated value at specified place HIDDEN COLUMN:-It’s used to ware a column as to be embedded in a boiler plate text FOTMATE TRIGGER:-It’s PL/SQL Function executed before object is formatted dynamically changedVALIDATION TRIGGER:-It’s PL/SQL Function, it’s Boolean value it will check true or falseACTION TRIGGER:-Action trigger are PL/SQL procedures when you press the button that can be executed dynamically to call another reportSRW Package:-This package consist of PL/SQL includes functions, procedures, Exceptions we can refer this package in our Reports or library (pre-defined package)DATA LINK:-Data link are used to establish parent-child relationship between Query and Groups Via column matches CONFINE MODE:- If confine mode is ON child objects can’t moved from parent objectFLEX MODE:-If flex mode is OFF child objects can moved from the parent objectANCHOR:-Anchor fasten an edge of one object to another object ensuring that there maintain their relative positions.FRAME:- A frame is collection of FieldsREPETING FRAME:-It’s used to display multiple recordsFIELD:- Field act as a placeholder for textBIND PARAMETERS:-It’s used to replace single value in PL/SQL statementsLEXICAL PARAMETERS:-It’s place holder for text, it replace string, It’s used to accept more than one value based on condition at run time. SYSTEM PARAMETERS:-These parameters are used to send output report any flat fileBackground, Copies, Currency, Decimal, Desformate, Desname, Destype, Mode, Orientations, Print job, Thousand USER EXIT:-Control transfer from the report to 3rd generation language and back to oracle reportDATA MODEL:- To specifies the data for the report from select statementLAYOUT MODEL:-It’s designed system automatically for the every report generated which can do be design manuallyBEFORE PARAMETER FORM:-To display an error message and then returns to place from which you ran the reportAFTER PARAMETER FORM:- Return to the runtime parameter form

FORM:-A form is powerful development tool for the building a client server application or a form is collection of objects and codeFORM COMPONENTS:-Form Builder, Form compiler, Form Runtime

Page 8: Oracle Apps Interview

PROPERTY CLAUSE:- A property clause is named object that contain a list of object and there values once the property is created other object can be usedVISULA ATTRIBUTE:-are colour and pattern properties and font properties , it will change dynamically at runtimeQ)Master Details Triggers1.Form level triggers-On_clear_details2.Black level triggersOn_populate_details, on_check_delete_master3.Item level triggers

Q)Wt r the triggers fire when u open FormPre_formPre_blackPre_recordPre_textitemWhen_newform_instanceWhen_newblack_instanceWhen_new record_instanceWhen_new_item_instanceQ)wt r the triggers fire when close a FormPost_textitemPost_recordPost_blackPost_form

OBJECT GROUPS:- It’s a logical container which is used to keep object LIBRARIES:- PL/SQL library is collection of program units including usednamed , procedures, functions and packages they are 3 library formate PLL.PLX,PLDLOV:-List of values

RECORD GROUPS:-COLLECTION OF RECORDS

ERPDifferent Projects that are in ERP1)Implementation :-New project starting from crunch2) Customization :-Extend the functionality(editing or modifying)3)upgrading & Migration:-version change from lower version to higher version4)Support & maintainVersions are:-10.7, 11.0.3, 11.5.9, 11.5.10

Page 9: Oracle Apps Interview

Architecture of Apps package 1)Financial 2)manufacturing 3)HRMS 4)CRMAP,AR, GL,FA,CM these are the Financial ModulesINV, OM, PO,WIP,BOM these are Manufacturing ModulesOracle Apps file ArchitectureOracle/prodappl/GL/Reports/US/filename.rdfAisin/Oracle/prodappl/XXCUS/forms/US/filename.fmbAisin/Oracle/prodappl/XXCUS/reports/US/filename.rdfAisin/Oracle/prodappl/XXCUS/bin/filename.ctlAisin/Oracle/prodappl/XXCUS/sql/filename.sqlAisin/Oracle/prodappl/XXCUS/pl/sql/filename.pkb or pksEvery module consists of Tables, sequences, indexes, viewsApps database does not contain any table of any module, It’s contains only synonym of all modulesOracle Apps Schema consists only synonymsSQL>connect appa/apps/prodUse of Apps:-Security, Data integrity, modularity, multi-org, flex fieldsInterface::-Interfaces are used to transfer data from flat file to oracle tables or vice versa (flat file Oracle tables)There are 2 types of interfaces 1)Inbound 2)out bondFlat filestaging tableInterface tablesBase tablesOpen interface:- when oracle provide concurrent program then it’s know as Open interfaceIf oracle do not provide concurrent program & when we create a concurrent program by programmer it self it’s know as Custom interface.

SQL*loder:-Flat file:-.txt, .dat, .csvControl file:-.ctl(coding) Load dataInfile *D;\Insert into table aaaField terminated by “’”(No,Name,Age)There are 4 control types in control file1)Insert 2)Replace 3)Append 4)TruncateDiscord file:-using conditional like where or whenBad file:-using any syntax error or declarations errorLog file:-Summary Information

Executables:-there are 11 types of executable methods1)Unix shell script(Host)2)C programming3)Java concurrent programs4)Java stored procedures5)Oracle Reports

Page 10: Oracle Apps Interview

6)pl/sql stored procedures7)sql*plus8)sql*loder9)multi language function10)Immediate11)request setReport registration steps1)Develop a Report as per client requirements using Report 6i2)we will transfer .rdf into Respective folder in server Aisin/Oracle/prodappl/XXCUS/reports/US/filename.rdf3)loin to Oracle Appellations a)create Executable b)where is the report c)what type of executable method d)Name of the Executable4)Create Concurrent program add executable and add any parameters & incompatibility5)attach this concurrent programs to Request group6)attach this Request group to Responsibility7)attach this Responsibility to particular UserWhat is Concurrent Program:- A concurrent program is nothing but an instance of execution file along with parametersWhat are the mandatory parameters in AppsERROR BUF:-It return the error message to the log fileRETCODE:-return the states of the request warning or error 0,1,2DBMS_OUTPUT.PUT_LINE(‘FND_FILE.log’, Message’)DBMS_OUTPUT.PUT_LINE(‘FND_FILE.output’, Message’)Value Sets:List of values and validationsis know as value setsValidation Types:-1)None:-not validate at all, allow the user to enter any value2)Independent:-its not depend any other value sets3)Dependent:-Based independent values, Dependent value will set and it will depend on Independent value set4)Table:-It will come from database by select statements5)Translated Independent:-6) Translated Independent:-both are multi language 7)Special:-8)Pair:-both are used to display flex field dataProfile:-A Profile is set of changeable options that effect way our applications runs1)User level:-Only for specific users2)Responsibility level:-who are having responsibility3)Applications level:-it will applicable to particular Applications like PO,AP,OM,INV4)Site level:-it will work for all usersProfile Options:-1)MO Operating Unit 2)Set of book id 3)Business Groups 4)Application to HTML 5)Application to PDF 6)Application to ExcelFND_PROFILES or USER PROFILE APT’s1)Fnd_profile.get(‘User_id’,user_id):-It will get the current value of the specified user profile options it’s procedure2)Fnd_profile.value(profileNumber,x):-It return the value of the specified user profile option it’s function

Page 11: Oracle Apps Interview

3)Fnd_profile.put(profileName,profileValue):-put the value to specified user profile option it’s functionFnd_program.executable()Fnd_program.register()Fnd_program.parameter()Fnd_program.request_group()Fnd_program.delete_program()Fnd_program.submit_request()What is responsibility:-A Responsibility is authorization states one of the user can restrict or collection of Data groups, requests and menusWhat is data group:-collection of Oracle usersWhat is Request group:-Collection of concurrent programs and Oracle Reports, it can submit request indusialWhat is request SET:- Collection of concurrent programs and Oracle Reports, it can submit request Simultaneously What is Menu:-Collections of Forms and FunctionsWhat is token:-A token is gateway in between Apps and Reports, it pass the parameters from Apps to ReportDefault parameters in APPS:-1)Constant:-The default value can be any literal value2)Profile:-The default value is the value , It’s current value in the user profile option3)SQL Statement:-The default value is determined by the Sql statement4)Segments:-The default value is a value entered in a prior segment of the parameter windowNLS Complaint:-It support multi language and tertiaryRun alone:-Request for system failure:-Use in SRS:-Different types of output formats:-HTML, PCL, PDF, PS, TEXTUser_Exits in Oracle Reports OR Apps Standards in Report1)Need to create Bind variable P_CONC_REQUEST_ID It’s used to get request ID2)Need to raise User Exit on Before Report TriggerSRW.USER_EXIT(‘FND SRWINIT’) It’s used to get profile of the user3) Need to raise User Exit on After Report TriggerSRW.USER_EXIT(‘FND SREXIT’) It’s used to freeze the memory which will occupied4) SRW.USER_EXIT(‘FND FLEXSQL’)5) SRW.USER_EXIT(‘FND IDVAL’)6)FND FORMATE_CURRENCY:- print the currency in varies formats by using formula column$FLEX$:-It’s special bind variable we used in Where clause 1)Table Value set(Where clause Box)2)Parameter Window(Default value set Box)MULTI ORG:-Under one Implementation to maintain Multiple Organizations and Multiple Set of books, every multi org table end with _ALL and every multi org table will have ORG_ID columnBusiness Group:-Always on top level, Business group_Id

Page 12: Oracle Apps Interview

Set of Books:- 3 c’s Currency, Calender, Chart of AccountLegal Entity:-Here we are going to tax to the GOVTOperating UnitOrg_Id)we will doing all operations like AP,AR,GL Inventory Organization:-(Organization_Id):- It’s just like Ware houseSub InventoryStock LocationItemOrg_id can retrive the Organization_id of particular Organization, every user having one profile option called MO:Operating unitOrganization_id comes under Inventory Organization But Org_Id comes under MO:operating unitWe can find out all Organization in Org_organization_definitionsSelect Multi_org_flag from Fnd_product_groups it returns ‘Y’ Success ‘N’ Not successSelect Release_name from Fnd_product_groups we can find Version Clint-info is RDBMS variable it contains the Org_IdHRMS contains Businessgroup_IdHow to implement WHO ColumnsHow to update Who Columns:-Fnd_Standard.Set_Who()How to print the message in Apps:-Fnd_Message.show()FlexField:-A Flexfield is made up of segments each segment has a nameDFF:-with out changing the program code to extend the form functionality , Add, Modify DFF will be stored in AttributeKFF:-Key flex field is nothing but an Intelligent code which stores valid code combinations KFF is a one of the Future in Accounting Purpose KFF stores in Segments, there is no KFF for PO,AP,OMNew Form Registration Steps:-1)Download the TEMPLE.fmb from AU_TOP Resource , template contain all menu and libraries and controls2)we will rename the form name in local machine3)change the code in following areas a)PRE_FORM Triggerb)WHEN_NEWFORM_INSTANCEc)Apps_Custom Package4)Assign Property clauses to our Items5)Develop the Report as per Client Requirement Transfer the .fmb in to server6)Generate Executables .fmx using the command >F60 gen Module=filename.fmb UserName and Password Aisin/Oracle/prodappl/XXCUS/forms/US/filename.fmb7)Long in to Oracle Apps and go to Application Responsibility a)Create Form b)Create Function c)Attach Form to Function d)attach Function to Menu e)attach Menu to Responsibility f)attach Responsibility to UserPO FLOWPO is one of the Module we debt with 3 persons 1)Preparer 2)Buyer 3)RequesterBefore going to raise Requisition we need to SETUP BuyerRequisition:-one of the document raising here 2 types of requisitions 1)Internal and 2)PurchasingInternal:-They own’t be invoice and SupplierPurchasing:-there will be a supplier

Page 13: Oracle Apps Interview

If you have more lines in requisition we go for AUTO CreateRQF:-Request for Quatation 1)Bid 2)Catelog 3)standard :-for any item can be baseQuatation:- )Bid 2)Catelog 3)standard :-for any item can be base

For catalog, standard level Quotations we can also specify effective dates and for individual Price breaks for Bid level we can’t specify effective dates at shipment levelPO:-out of all quotations one quotation will short listed that can be converted in to PO Standard PO:-we purchase Items only one not for the oftenPlanned PO:-This is long term agreement committing to buy itemsBlanket PO:-we know the details of good but we don’t know the delivery details and Every Blancket PO there will be a Releases Contract Aggrement:- Supplier to agree on specific terms and conditions Receipt:-Receipt is nothing but Slip and total number of Items to be received from all receiptsReceiving:-Deference between ordered items and supplied ItemsAfter that goods are going to the Inventory and Payments are going to AP Interface

Payments:-after receiving goods how your paying the moneyFright terms:-for transportation who will payCarrier:-goods are coming what transport using(shiping)Free on board:-if some thing happened while transaction who will responsible

Match approval:-How ur going to retrive goods2 way:- PO-Invoice3why:- PO-Receipt-Invoice4why:- POReceiptInspectionInvoice

ACCOUNT PAYABLESBefore going to AP you must know the Supplier or Po numberThumb Rules:-with out supplier they won’t be any Invoice(Bill), with out invoice they won’t be any PaymentInvoices:-there are different types of Invoices most some of Important invoice types areSTANDARD:-standard invoice contain two things 1)invoice and Distribution PREPAYMENT:-we are going to pay advance to the supplierCREDIT MEMO,DEBITMEMO:- these invoices must be Negative amount Company going to ask discount to the supplier and supplier is going to give discount to the companyWITHHOLDING TAX:-this invoice is raised when we want to deals with Unregistered suppliersPO DEFAULT:-we have po number we can match with invoice QUICK MATCHES:-based on match approval these invoice are generated

PAYMENT TYPES:-QUICK , MAUAL, REFUNDPayment Methods:-Check, EDI, Cash

Page 14: Oracle Apps Interview

Inventory1. Item Master Maintenance

• Creating Items in Master Organization • Copy the Templates• Assigning Categories to Items• Assigning Item to Child Organization• Modifying Master Item Attribute• Modifying Child Item Attribute

2. Kits Maintenance• Creating Bill of Materials for Kits• Creating Common Bill

3. Supply Base Maintenance• Approved Supplier List Creation (ASL)• Sourcing Rules Creation• Assignment Set Creation

4. PO Documents Maintenance• Blanket Agreement Creation & Maintenance• Requisition Creation & Maintenance• Standard PO Creation & Maintenance• Creating Purchase Orders from Requisitions using Auto Create• Purchasing Document Controls

5. Material Receipt Process• Direct Receiving• Performing Inspections • Returning Material to Vendors• Making Corrections in Receipt• Viewing Receiving Transactions• Drop Ship Receipts

6. Viewing On Hand Availability• On Hand Availability• Item Supply Demand• Lot Genealogy

7. Viewing Material Transactions• Material Transactions• Sub inventory Transaction• Inter organization Transaction • Account Alies Issues• Account Alies Receipt• Mislenious Transaction • Material Transactions• Material Distributions

8. Min Max Planning• Running Min Max Plan• Reviewing Min Max Plan Output

Page 15: Oracle Apps Interview

OMOrderEntryOrderBookingPickReleasePickConformTripShip ConformOrder line closedOrder closed

Registering Discoverer Report in Oracle Applications

The following are the setups required for registering the report in Oracle Applications:

Admin Edition SetUps In the Discoverer Admin Edition a Business Area corresponding to the report is

created. The folders for the said report are pulled into the Business area either from the Database or from the sql query defined on a custom folder. The Folders are based on the tables and views of the Oracle Applications data and items are based on the columns in these tables and views.

Page 16: Oracle Apps Interview

The Privileges in the Admin Edition are set to define what a user can do / access in the user Edition/Admin Edition for a defined Business Area.

The last mandatory step in Business Area creation is to administer security. From the Tools|Security menu in the Administration edition invoke the Discoverer security manager. From here you can grant access to Business Areas to different Applications responsibilities. A common approach is to create a new set of Applications responsibilities (i.e. discoverer_gl, discoverer_po) and grant business area access to each of these responsibilities. When you create these new responsibilities, ensure that the Applications security profile options for that responsibility is set. Next, from within the Discoverer Administration edition, check that these new responsibilities also have the privilege to use the Discoverer User Edition. To check this, use the Tools|Privileges menu and ensure that the given responsibilities have the User Edition privilege checked off.

Page 17: Oracle Apps Interview

Desktop Edition Setups In the Discoverer Desktop Edition the user creates a workbook from the Business

Area after defining the required folders and items within them. The conditions and formatting options are set to create the report in the workbook. One workbook may consist of multiple worksheets each defining different aspects of a particular report.

The workbook is now saved to the Database.

Page 18: Oracle Apps Interview

The workbook is shared to the users to whom it is to be made available.

A unique identifier is defined for this workbook and this is the identifier for configuring the report in Oracle Applications.

Page 19: Oracle Apps Interview

Oracle Applications SetUps

Go to the System Administrator/Application Developer responsibility in Oracle Applications. In case of Application Developer the menu to which the function should be added should be known.

Create a Function for executing the report. Select the type of function as SSWA PL SQL function.

Page 20: Oracle Apps Interview

The parameter for the function is selected as workbook= <Name of Identifier in Discoverer>.

In the Web HTML tab enter the HTML Call as OracleOasis.RunDiscoverer against the respective Function name.

Page 21: Oracle Apps Interview

Add the Function to a menu that has to SSWA responsibility. Now use the apps url for home page and there under the SSWA Menu the link

for the registered Discoverer report can be seen. On clicking the Discoverer report link the browser opens a new window for Oracle Viewer where the report parameters can be entered in textboxes. On the left side, the navigation bar displays all the sheets in the workbook of the said Discoverer report. On entering the parameters and submitting it the specified report is displayed based on the entered parameters.

Registering Discoverer Report in Oracle Applications

The following are the setups required for registering the report in Oracle Applications:

Admin Edition SetUps In the Discoverer Admin Edition a Business Area corresponding to the report is

created. The folders for the said report are pulled into the Business area either from the Database or from the sql query defined on a custom folder. The Folders are based on the tables and views of the Oracle Applications data and items are based on the columns in these tables and views.

Page 22: Oracle Apps Interview

The Privileges in the Admin Edition are set to define what a user can do / access in the user Edition/Admin Edition for a defined Business Area.

Page 23: Oracle Apps Interview

The last mandatory step in Business Area creation is to administer security. From the Tools|Security menu in the Administration edition invoke the Discoverer security manager. From here you can grant access to Business Areas to different Applications responsibilities. A common approach is to create a new set of Applications responsibilities (i.e. discoverer_gl, discoverer_po) and grant business area access to each of these responsibilities. When you create these new responsibilities, ensure that the Applications security profile options for that responsibility is set. Next, from within the Discoverer Administration edition, check that these new responsibilities also have the privilege to use the Discoverer User Edition. To check this, use the Tools|Privileges menu and ensure that the given responsibilities have the User Edition privilege checked off.

Desktop Edition Setups In the Discoverer Desktop Edition the user creates a workbook from the Business

Area after defining the required folders and items within them. The conditions

Page 24: Oracle Apps Interview

and formatting options are set to create the report in the workbook. One workbook may consist of multiple worksheets each defining different aspects of a particular report.

The workbook is now saved to the Database.

The workbook is shared to the users to whom it is to be made available.

Page 25: Oracle Apps Interview

A unique identifier is defined for this workbook and this is the identifier for configuring the report in Oracle Applications.

Oracle Applications SetUps

Go to the System Administrator/Application Developer responsibility in Oracle Applications. In case of Application Developer the menu to which the function should be added should be known.

Page 26: Oracle Apps Interview

Create a Function for executing the report. Select the type of function as SSWA PL SQL function.

The parameter for the function is selected as workbook= <Name of Identifier in Discoverer>.

Page 27: Oracle Apps Interview

In the Web HTML tab enter the HTML Call as OracleOasis.RunDiscoverer against the respective Function name.

Add the Function to a menu that has to SSWA responsibility. Now use the apps url for home page and there under the SSWA Menu the link

for the registered Discoverer report can be seen. On clicking the Discoverer report link the browser opens a new window for Oracle Viewer where the report parameters can be entered in textboxes. On the left side, the navigation bar displays all the sheets in the workbook of the said Discoverer report. On entering the parameters and submitting it the specified report is displayed based on the entered parameters.

Page 28: Oracle Apps Interview

Oracle app’s technical document

1. What is ERP? Architecture of apps?

A packaged business software system that lets a company automate and

integrate the majority of its business processes; share common data and

practices across the enterprise; [and] produce and access information in a real-

time environment.

2. Tell me some thing about SQL-LOADER.

Sql * loader is a bulk loader utility used for moving data from external files

into the oracle database.

Sql * loader supports various load formats, selective loading, and multi-tables

loads.

1) Conventional

The conventional path loader essentially loads the data by using standard ‘insert’ statement.

2) Direct

The direct path loader (direct = true) by possesses of logic involved with that, and loads directly in to the oracle data files.

EX: -

My data.csv file

1001, “scott tiger”,1000,40

1002,”gvreddy”,2345,50

Load data

Infile ‘c:\data\mydata.csv’

Into table emp

Fields terminated by “,” optionally enclosed by ‘”’

(empno, empname,sal,deptno)

>sqlldr scott/tiger@vis

control=loader.ctl log= gvlog.log bad=gvbad.bad discard=gvdis.dsc .

3. How do u dump data from pl/sql block to flat files?

Using utl_file package, we can dump data from pl/sql block to flat file.PRE-REQUIREMENTS for UTL_FILE is specify the accessible directories for the UTL_FILE function in the initialization file (INIT.ORA) Using the UTL_FILE_DIR parameters.Ex: UTL_FILE_DIR = <Directory name>

EX:---remember to update INITSID.ORA,

--utl_file_dir = ‘c:\oradata’

Declare

Page 29: Oracle Apps Interview

Fp utl_file.file_type;

Begin

Fp := utl_file.fopen(c:\oradata’,tab1.txt’,’w’);

Utl_file.putf(fp,’%s %s \n ‘text field’, 55);

Utl_file.fclose(fp);

End;

4. What is SET-OF-BOOKS?

Collection of Chat of Accounts and Currency and Calendars is called SOB

5. What is the interface table?

Interface Table is a table, which is used as medium for transfer of data

between two systems.

6. What is invoice?

Send you a request for payment

7. What is INBOUND and OUT BOUND? (Different types of interfaces)

Inbound Interface:

For inbound interfaces, where these products are the destination, interface tables as

well as supporting validation, processing, and maintenance programs are provided.

Outbound Interface:

For outbound interfaces, where these products are the source, database views are

provided and the destination application should provide the validation, processing,

and maintenance programs

8. Tell me what r the Base tables in the AR?

HZ_PARTIES (PARTY_ID) HZ_PARTIES stores information about parties such as organizations, people, and groups, including the identifying address information for the party.

HZ_CUST_ACCOUNTS (CUST_ACCOUNT_ID)HZ_CUST_ACCOUNTS stores information about customer relationships. If a party becomes a customer, information about the customer account is stored in this table. You can establish multiple customer relationships with a single party, so each party can have multiple customer account records in this table.

HZ_CUST_ACCT_SITES_ALL (CUST_ACCT_SITE_ID)HZ_CUST_ACCT_SITES_ALL stores information about customer sites. One customer account can have multiple sites. The address is maintained in HZ_LOCATIONS.

Page 30: Oracle Apps Interview

HZ_CUST_SITE_USES_ALL (SITE_USE_ID)HZ_CUST_SITE_USES_ALL stores information about site uses or business purposes. A single customer site can have multiple site uses, such as bill to or ship to, and each site use is stored as a record in this table.

HZ_PARTY_SITES (PARTY_SITE_ID)HZ_PARTY_SITES stores information about the relationship between Parties and Locations. The same party can have multiple party sites. Physical addresses are stored in HZ_LOCATIONS.

HZ_LOCATIONS (LOCATION_ID)HZ_LOCATIONS stores information about physical locations.

HZ_PERSON_PROFILES (PERSON_PROFILE_ID)HZ_PERSON_PROFILES stores detail information about people.

HZ_ORGANIZATION_PROFILES (ORGANIZATION_PROFILE_ID)HZ_ORGANIZATION_PROFILES stores credit rating, financial statistics, socioeconomic and corporate linkage information for business sites. The primary key for this table is ORGANIZATION_PROFILE_ID.

9. What r the table’s interface tables in the customer interface tables?

1) Ra_customers_interface_all

This table stores customer, address, and business purpose information. You do not have to enter values in this table if you do not want to import customers, addresses, or business purposes.

ADDRESS1 through 4 Enter the address for your customer in these four columns. You can enter up to four lines of an address.

Validation: If you enter a value in ORIG_SYSTEM_ADDRESS_REF, you must enter a value in ADDRESS1. For multiple rows with the same address reference, insert values in address 1–4.

Destination: HZ_LOCATIONS.ADDRESS1, HZ_LOCATIONS.ADDRESS2, HZ_LOCATIONS.ADDRESS3, HZ_LOCATIONS.ADDRESS4

2) Ra_customer_profile_int_all

A customer level profile must exist in A_CUSTOMER_PROFILES_INTERFACE for new customers and each bill–to business purpose. 3) Ra_contact_phones_int_all

This table stores telephone numbers for customers, addresses and contacts as well as contacts for customers and addresses.

Page 31: Oracle Apps Interview

4) Ra_customer_banks_int_all

This table stores bank information for a customer or for a specific Bill–To address, you must enter a bank account for this customer, 5) Ra_cust_paymethod_int_all

To import payment methods for customers and bill–to business purposes,

10.What r the staging tables in the customer interface?

Ra_customers_stg

Ra_customers_address_stg

Ra_customers_point_stg

Ra_customers_contact points_stg

Ra_customers_relate_stg

Ra_customer_error.

11.Tell me some mandatory columns in the customer interface tables?

a) Ra_customers_interface_all

1) Orig_system_customer_ref

2) insert_update_flag

3) customer_number

4) customer_status

5)last_updated_by 6) last_updated_date

7)created_by

8) creation_date. b) Ra_customer_profile_int_all

1) customer_profile_class_name

c) Ra_contact_phones_int_all

1)orig_system_telephone_ref

2)telephone

3) telephone_type

d) Ra_customer_banks_int_all

1) bank_a/c_name

2)bank_a/c_no

3)bank_a/c_currency_code

e) Ra_cust_paymethod_int_all

1) payment_method_name

12.Tell me the Navigation for customer interface?

Page 32: Oracle Apps Interview

Receivables Interface Customers

1. What tables cannot be updated through customer interface?

No updates will be allowed to be made through customer interface for 

Following tables

RA_SITE_USES_ALL

RA_CUSTOMER_RELATIONSHIPS_ALL

RA_CUST_RECEIPT_METHODS

AP_BANK_BRANCHES

AP_BANK_ACCOUNTS_ALL

AP_BANK_ACCOUNT_USES_ALL

2. How to send additional customer and address information through customer interafce 

Here is where attribute columns are used.

* Additional Customer data can be populated in 

RA_CUSTOMERS_INTERFACE_ALL.customer_attribute1 to 15

This will go into RA_CUSTOMERS.attribute1 to 15

* Additional address information can be populated in 

RA_CUSTOMERS_INTERFACE_ALL.address_attribute1 to 15

This will go into RA_ADDRESSES_ALL.attribute1 to 15

And so on.

5. What should be the batch size (number of customer records) general guidelines for optimal performance

About 10,000 records per bacth is ideal, it is suggested to keep the batch

size small.

Page 33: Oracle Apps Interview

   6. Why does customer interface error out if there is mismatch in address information?

Because the code validates against these mismatches. 

arplscin.sql and arplbcin.sql 

It validates the address being inserted or updated with respect to the tax 

location flexfield structure.  For each row being inserted or updated in 

RA_CUSTOMERS_INTERFACE, and that has not already been marked in error, 

the set_location_ccid function is called to return either an existing ccid 

for the address entered or to create a new entry in AR_LOCATION_VALUES for 

this new address.  The RA_CUSTOMERS_INTERFACE record is then updated with the 

value of the ccid returned.                                

7. How do you send records at customer level profile and address/site level profile?

For every customer record in RA_CUSTOMERS_INTERFACE_ALL, insert two records  in table RA_CUSTOMER_PROFILES_INT_ALL.    (Refer Note: 1070800.6 )

9. Does Customer Interface import salesperson data? 

No, Refer Enhancement Bug: 147495 

11. Customer Interface process can be used for updating the customer information How does the UPDATE work?

Current functionality of Customer Interface is to update all the data.  You cannot run Customer Interface to update only changed data. (Refer Bug: 879121 for the intended functinality)

12. What are some of the important fields that Customer Interface does not load?

Not all fields in RA_CUSTOMERS are being loaded by the interface. 

SIC_CODE                

GSA_INDICATOR                

Page 34: Oracle Apps Interview

FOB_POINT                

SALES_CHANNEL_CODE                

FREIGHT_TERM                

WAREHOUSE_ID                

PRICE LIST     

SHIP_PARTIAL                               

PAYMENT_TERM_ID   in RA_SITE_USES.PAYMENT_TERM_ID 

(Refer Enhancement Request Bug: 245300)

13. New TCA/Customer Model, how to load customer as PERSON or ORGANIZATION through Customer Interface?

a) Populate ra_customers_interface_all . person_flag = 'Y'

   Run Customer Interface process will load this record as PERSON

b) Populate ra_customers_interface_all . person_flag = 'N' ( or NULL ) 

   Run Customer Interface process will load this record as ORGANIZATION

5) Tell me what is the procedure to develop an interface?

a. First we will get the Requirement document.

b. We will create control file based on that plot file.

c. Then the control files which loads the data into staging tables.

d. Through pl/sql programs we will mapping and validate the data and then

dump into the interface tables.

e. Through the standard programs we will push the data from interface

tables to Base tables.

6) What validations u did in the customer interface?

a. customer name : the same customer reference can’t have different

customer names with in this table

HZ_PARTIES.PARTY_NAME

b. customer number : must be null if your r using automatic customer

numbering, must exit if you are not using automatic customer

numbering. This value much be unique with in HZ_PARTIES

c. customer status : must be ‘A’ for active or ‘I’ for inactive

Page 35: Oracle Apps Interview

HZ_PARTIES_STATUS

d. bank account num or bank account currency code :

if the bank a/c already exist do not enter a value

if the bank a/c does not exist you must enter a value

e. bank a/c name : it must exist in AP_BANK_ACCOUNTS or if it does not

exist values must exist for BANK_A/C_CURRENCY_CODE

BANK_A/C_NUM

BANK_NAME

BANK_BRANCH_NAME

Note : every interface table has two error msg

1) Error code.

2) Error msg.

7) How can u call a standard interface program from sql or pl/sql code?

FND_REQUEST.SUBMIT_REQUEST (‘PO’,’EXECUTABLE NAME’,,,,PARAMETERS)

8) API’s FOR CUSTOMER INTERFACE?

HZ_CUST_A/C_VZPUB.UPDATE_CUST_A/C

HZ_CUST_A/C_VZPUB.CREATE_CUST_A/C

FND_PROFILES

FND_APPLICATIONS

FND_GLOBAL

FND-FILE

FND_CONCSUB(can submit conc program in host invironment)

9) Tell me some API?

FND_FILE.PUTLINE(FND_FILE.LOG)

FND_FILE.PUTLINE(FND_FILE.OUTPUT)

Is the Program exits, delete conc program and its executables.

IF FND_PROGRAM.PROGRAM_EXITS(‘EMP’,APPLICATION_NAME_IN) THEN

FND_PROGRAM.DELETE_PROGRAM(‘EMP’,APPLICATION_NAME_IN)

FND_PROGRAM.DELETE_EXECUTABLE(‘EMP’,APPLICATION_NAME_IN)

END;

10) What are profile options?

Is the Functional and Technical behavior of Oracle Applications Package.

EX: - I want to assign the user3 responsibility to p4 printer then

System Administrator Profile System

(FND_PROFILE_OPTIONS)

11) Oracle E-Business suite?

Page 36: Oracle Apps Interview

Oracle apps + analytical components software.

(Oracle discover)

(Oracle sales analyzer)

(Oracle financial analyzer)

(Oracle marketing analyzer)

24) What is multi org?

“Legal entity has more than one operating unit is called as multi org”

a) Business group --- Human resources information is secured by

Business group

b) Legal entity. --- inter-company and fiscal/tax reporting.

Security responsibility operating unit.

c) Operating unit --- secures AR, OE, AP, PA and PO Information.

d) Organizations --- is a specialize unit of work at particular locations

25) What are the User PARAMETERS in the Reports?

P_CONC_REQUEST_ID

P_FLEX_VALUE

26) FND USER EXITS:-

FND SRWINIT sets your profile option values, multiple organizations and allows

Oracle Application Object Library user exits to detect that they have been called by

an Oracle Reports program.

FND SRWEXIT ensures that all the memory allocated for AOL user exits have been

freed up properly.

FND FLEXIDVAL are used to display flex field information like prompt, value etc

FND FLEXSQL these user exits allow you to use flex fields in your reports

FND FORMAT_CURRENCY is used to print currency in various formats by using

formula column

26) PL/SQL stored procedure parameters? or what are the two parameters that are mandatory for pl/sql type concurrent program? Procedure/function (ERRBUF OUT

RETCODE OUT

………………….)

ERRBUF :- Used to write the error message to log or request file.

RETCODE :- Populate log request file with program submission details info.

Page 37: Oracle Apps Interview

27) What is Value Set?

--The value set is a collection (or) container of values.

--When ever the value set associated with any report parameters. It provides list

of values to the end user to accept one of the values as report parameter value.

-- If the list of values needed to be dynamic and ever changing and define a table

based values set.

27) What r the validation types?

1) None -------- validation is minimal.

2) Independent ------input must exist on previously defined list of values

3) Dependent ------input is checked against a subset of values based on a

prior value.

3) Table ----- input is checked against values in an application table

4) Special ------values set uses a flex field itself.

5) Pair ------ two flex fields together specify a range of valid values.

6) Translatable independent ----- input must exist on previously defined list

of values; translated values can be used.

7) Translatable dependent ------- input is checked against a subset of values

based on a prior values; translated value can be used.

28) Form development process?

a) open template form

b) Save as <your form>.fmb

c) Change the form module name as form name.

d) Delete the default blocks, window, and canvas

e) Create a window.

f) Assign the window property class to window

g) Create a canvas (subclass info)

h) Assign canvas property class to the canvas

I) assign the window to the canvas and canvas to the window

j) Create a data block

k) Modify the form level properties. (sub class item Text item)

l) Modify the app_cusom package. In the program unit.

m) Modify the pre-form trigger (form level)

n) Modify the module level properties ((console window, First navigation

p) Save and compile the form.

Place the .fmx in the server directory.

Page 38: Oracle Apps Interview

Q) Register in the AOL

APPLICATION FORM

APPLICATION FUNCTION

APPLICATION MENU

29) How do u customize the Reports?

a. Identify the Short name of the standard report in which module we

have to customize

Ex: - if u want to customize in the AR module path is

Appl top\ar\11.5.0\reports\US\ .rdf

b. Open the .rdf file in Report builder and change the name of the

module.

c. Open the data module and modify the query (what is client

requirements) assign the columns to the attributes.

d. Go to report wizard and select, what r the newly created columns.

e. Then Compile it. Then u will get a .rep file in the specified module. If it

is not in the specified directory then we have to put in the server

directory.

f. Then Register in the AOL Concurrent executable.

Concurrent program.

g. go to system administrator SecurityResponsibilityrequest

h) Add and assign a concurrent program to a request group

30) Registering parametric report?

Any applications will have two parameters,

1) from-period 2) to-period

a) Go to object navigator and create the parameters.

User parameters from_no, to_no (data type char and width 30)

b) Open the report layout and write the query(we have to reg the table in AOL)

Select empno,ename,from g_emp where empno between :from_no and to_no

c) Compile and put the .RDP file in the server directory.

d) Registering in AOL.

Concurrent executable

Concurrent program then go to “PARAMETERS”

e) Go to Application validation set. then go to “EDIT INTO”

After entering the VALUE SETS (1) And TOKENS (2)

f) Go to Administrations

Sequrity responsibility Request

h) Add and assign a concurrent program to a request group

Page 39: Oracle Apps Interview

31) Tell me some report names and their table names in GL, AP, AR, and

PO?

1) ra_customer_trx_all customer_trx_id trx_number (invoice no, debit memo no, credit memo no) cust_trx_type_id

2) ra_customer_lines_all (details of invoice) cutomer_trx_id

3) ar_payment_schdules_all check_id

This table stores all transactions except adjustments and miscellaneous cash receipts. Oracle Receivables updates this table when activity occurs against an invoice, debit memo, chargeback, credit memo, on account credit, or receipt.

4) ra_cust_trx_types_all (invoice types) cust_trx_type_id

5) ra_batches_all Batch_id This table stores information about each receipt batch that you create inOracle Receivables. Each row includes information about a specific batch such as batch source, status, batch type, control count, and control amount

6) ra_receivable_application_all

7) ra_adjustments_all This table stores information about your invoice adjustments. Each row includes general information about the adjustment you are making such as activity name, amount, accounting information, reason, and type of adjustment. You need one row for each adjustment you are making to an invoice.

8) ra_cash_receiots_all Cash_receipt_id

This table stores one record for each receipt that you enter. Oracle Receivables creates records concurrently in the AR_CASH_RECEIPT_HISTORY_ALL, AR_PAYMENT_SCHEDULES_ALL, and AR_RECEIVABLE_APPLICATIONS tables for invoice–related receipts.

1) ap_invoice_all invoice_amount, base_amount, payment_status_flag(‘y’ –fully paid ‘n’—unpaid ‘p’ –partially paid)2) ap_invoice_payments_all invoice_id,3) ap_invoice_distibutions_All

Page 40: Oracle Apps Interview

amount, base_amount, dist_code_combination_id, line_type_lookup_code4) ap_payment_schdules payment_status_flag(“ ‘’’’’”)5) ap_payment_dustributions_all6) ap_checks_all check_id,

AP_CHECKS_ALL stores information about payments issued to suppliers or refunds received from suppliers. You need one row for each payment you issue to a supplier or refund received from a supplier. Your Oracle Payables application uses this information to record payments you make to suppliers or refunds you receive from suppliers.

7) ap_accounting_events_all

8) ap_bank_accounts_all AP_BANK_ACCOUNTS_ALL contains information about your bank accounts. You need one row for each bank account you define. Each bank account must be affiliated with one bank branch. When you initiate an automatic payment batch, enter a manual check, or create a Quick payment, you can select a bank account that you define in this table.

9) ap_bank_accounts_uses_all AP_BANK_ACCOUNT_USES_ALL stores information for the internal and external bank accounts you define in Oracle Payables and OracleReceivables applications.

1) po_vendors_all2) po_vendors_sites_all3) po_headers_all po_header_id4) po_lines_all po_line_id5) po_line_locations_All6) po_distributions_all po_distribution_id,

1) Gl_code_combinations

GL_CODE_COMBINATIONS stores valid account combinations for each Accounting Flexfield structure within your Oracle General Ledger application. Associated with each account are certain codes and flags, including whether the account is enabled, whether detail posting or detail budgeting is allowed, and others.

2) Gl_je_batches. GL_JE_BATCHES stores journal entry batches.

3) Gl_je_headers GL_JE_HEADERS stores journal entries. There is a one–to–many relationship between journal entry batches and journal entries. Each row in this table includes the associated batch ID, the journal entry name and description, and other information about the journal entry. This table corresponds to the Journals window of the Enter Journals form. STATUS is ’U’ for unposted, ’P’ for posted. Other statuses indicate that an error condition was found. A complete list is below.

Page 41: Oracle Apps Interview

4) Gl_je_lines. GL_JE_LINES stores the journal entry lines that you enter in the Enter Journals form. There is a one–to–many relationship between journal entries and journal entry lines. Each row in this table stores the associated journal entry header ID, the line number, the associated code combination ID, and the debits or credits associated with the journal line. STATUS is ’U’ for unposted or ’P’ for posted

5) Gl_set of books GL_SETS_OF_BOOKS stores information about the sets of books you define in your Oracle General Ledger application. Each row includes the set of books name, description, functional currency, and other information. This table corresponds to the Set of Books form.

6) Gl_periods GL_PERIODS stores information about the accounting periods you define using the Accounting Calendar form. Each row includes the start date and end date of the period, the period type, the fiscal year, the period number, and other information. There is a one–to–many relationship between a row in the GL_PERIOD_SETS table and rows in this table.

1) OPEN-DEBIT MEMO REPORT? This report shows all the open-debit memo transactions, based on customer number and dates. Columns :- type, customer_no, trx_no, amt_due, remaining. Parameter :- type, customer, from_date, to_date.2) GENERATING POSITIVE PAY FILE FOR BANK REPORT?

Basically this report generates a flat file of all the payments in order to send in to the bank.

3) UPDATE POSITIVEPAY CHECKS REPORT?This report which updates the data into the (AP) account payables system from the plot file, the file which is sent by bank

4) UPDATE POSITIVEPAY OUT STANDING CHECKS?This report which shows the out standing checks

5) CUSTOMER PAYMENT DETAILS REPORT?Which shows each customer original amount, amount pay and due amount based on transaction type (books, pens)

Transaction types in AR Credit memo transaction typesInvoice, debit memo, and charge back transaction typesCommitment transaction types

Q) HOW DO YOU RECTIFY THE ERRORS IN INTERFACE TABLES?Depending on the naming convention used, errors appear in either alphabetical order or by error code number.

31) How do u identity its name of report?

System administrator concurrent program define

System administrator concurrent program executable

32) Who information’s?

Page 42: Oracle Apps Interview

1) Created by

2) Creation date

3) Last _updated by

4) last_update_date

5) last_update_value

33) FLEX FIELDS?

Used to capture the additional business information.

DFF KFF

Additional Unique Info, Mandatory

Captured in attribute prefixed columns Segment prefixed

Not reported on standard reports Is reported on standard reports

To provide expansion space on your form With the help of []. [] Represents descriptive Flex field.

FLEX FILED : DESCRIPTIVE : REGIGSTER

Used for entering and displaying key informationFor example Oracle General uses a key Flex field called Accounting Flex field to uniquely identifies a general account.

FLEX FILED : KEY : REGIGSTER

Oracle Applications KEY FLEX FIELDS

1) GL :- ACCOUNTING

2) AR :- SALES TAX LOCATION, TERRITORY,

3) AP :- BANK DETAILS, COST ALLOCATION, PEOPLE GROUP

Oracle Applications DESCRIPTIVE FLEX FIELDS (Partial)

1) GL :- daily rates

2) AR :- credit history, information

3) PA :- bank branch, payment terms, site address,

34) What are the requests groups?

a) Single request: - this allows you to submit an individual request.

b) Request set : - this allows you to submit a pre-defined set of requests.

35) Sys Admin Module?

a) Define Custom Users, b) Define Login Users, c) Register oracle DB users,

d) Define Concurrent Programs, e) Register Concurrent Executables, f) Setting Profile

Option Values, g) Define Request Types.

Page 43: Oracle Apps Interview

36) AOL?

a) Registering tables. b) Registering views c) Registering db sequences

d) Registering profile options e) Registering lookups and lookup codes

f) Registering forms g) Registering Form and Non-Form functions i) registering

Menus and sub-menus. j) Registering DFF and KFF. k) Libraries

37) What r the type Models in the system parameters of the report?

1) Bit map 2) Character mode

38) .What is SRW Package? (Sql Report Writer) The Report builder Built in package know as SRW Package This package extends reports ,Control report execution, output message at runtime, Initialize layout fields, Perform DDL statements used to create or Drop temporary table, Call User Exist, to format width of the columns, to page break the column, to set the colorsEx: SRW.DO_SQL, It’s like DDL command, we can create table, views , etc., SRW.SET_FIELD_NUM

SRW. SET_FILED_CHARSRW. SET FILED _DATE

37) Difference between Bind and Lexical parameters?BIND VARIABLE : -- are used to replace a single value in sql, pl/sql-- bind variable may be used to replace expressions in select, where, group, order by, having, connect by, start with cause of queries.-- bind reference may not be referenced in FROM clause (or) in place of reserved words or clauses.LEXICAL REFERENCE:-- you can use lexical reference to replace the clauses appearing AFTER select, from, group by, having, connect by, start with.-- you can’t make lexical reference in a pl/sql statmetns.

38) Matrix Report: Simple, Group above, Nested Simple Matrix Report : 4 groups 1.Cross Product Group

2. Row and Column Group3. Cell Group4. Cell column is the source of a cross product summary that

becomes the cell content. Frames: 1.Repeating frame for rows(down direction)

2.Repeating frame for columns(Across ) 3.Matrix object the intersection of the two repeating frames

39) what is Flex mode and Confine mode?Confine mode

On: child objects cannot be moved outside their enclosing parent objects.Off: child objects can be moved outside their enclosing parent objects.

Flex mode:On: parent borders "stretch" when child objects are moved against them.Off: parent borders remain fixed when child objects are moved against

them.

Page 44: Oracle Apps Interview

40) What is Place holder Columns? A placeholder is a column is an empty container at design time. The placeholder can hold a value at run time has been calculated and placed in to It by pl/sql code from anther object.You can set the value of a placeholder column is in a Before Report trigger. Store a Temporary value for future reference. EX. Store the current max salary as records are retrieved.

23) What is Formula Column? A formula column performs a user-defined computation on another column(s) data, including placeholder columns.

24) What is Summary columns? A summary column performs a computation on another column's data. Using the Report Wizard or Data Wizard, you can create the following summaries: sum, average, count, minimum, maximum, % total. You can also create a summary column manually in the Data Model view, and use the Property Palette to create the following additional summaries: first, last, standard deviation, variance.

50) What is cursor?

A Cursor is a pointer, which works on active set, I.e. which points to only one row

at a time in the context area’s ACTIVE SET. A cursor is a construct of pl/sql, used to

process multiple rows using a pl/sql block.

28) Types of cursors? 1) Implicit: declared for all DML and pl/sql statements. By default it selects one row only. 2) Explicit: Declared and named by the programmer. Use explicit cursor to individually process each row returned by a Multiple statements, is called ACTIVE SET. Allows the programmer to manually control explicit cursor in the Pl/sql block

a)declare: create a named sql areab)Open: identify the active set.c) Fetch: load the current row in to variables.d)Close: release the active set.

CURSOR ATTRIBUTES

a) %is open: evaluates to true if the cursor is open.b) %not found: evaluates to true if the most recent fetch does not return a rowc) %found: evaluates to true if the most recent fetch returns a row.d) %row count: evaluates to the total number of rows returned to far.

Example for cursor:1) Declare Vno emp.empno%type; Vname emp.ename %type; Cursor emp_cursor is Select empno,ename From emp; Begin Open cursor;

Page 45: Oracle Apps Interview

For I in 1..10 loop Fetch emp_cursor into vno,vname; Dbms_output.putline(to_char(vno) ||’ ‘||vname); End if; E nd; 2) Begin Open emp_cursor; Loop Fetch when emp_cursor % rowcount >10 or Emp_curor % not found; Bdms_output_put_line(to_char(vno)||’ ‘|| vname); End loop; Close emp_cursor; End;

CURSOR FOR LOOPA) cursor for loop is a short cut to process explicit cursorsB) it has higher performanceC) cursor for loop requires only the declaration of the cursor, remaining things

like opening, fetching and close are automatically take by the cursor for loop Example: 1) Declare Cursor emp_cursor is Select empno,ename From emp; Begin For emp_record in emp_cursor loop Dbms_output.putline(emp_record.empno); Dbms_output.putline(emp_record.ename) End loop End;

Can we create a cursor without declaring it?

Yes – by using cursor for loop using subqueries.

BEGIN FOR emp_record IN ( SELECT empno, ename

FROM emp) LOOP -- implicit open and implicit fetch occur IF emp_record.empno = 7839 THEN ... END LOOP; -- implicit close occursEND;

a) for update clause: 1) use explicit locking to deny access for the duration of a transaction 2) lock the rows before update or delete Ex : select ……. From…….

Page 46: Oracle Apps Interview

For update[ of column ref] [no_wait] b) where current of clause? 1) use cursor to update or delete the current row Where current of < column ref>

29) Attribute data types? 1) %type 2) %row type.

30) Exception Handilings? Is a mechanism provided by pl/sql to detect runtime errors and process them with out halting the program abnormally

1) pre-defined2) user-defined.

PRE-DEFINED: 1) cursor_already_open--------attempted to open an already open cursor.2) Dup_val_on_index --------attempted to insert a duplicate values.3) Invalid_cursor -------- illegal cursor operation occurred.4) Invalid_number -------- conversion of character string to number fails.5) Login_denied ---------loging on to oracle with an invalid user name and password.6) program_error -------- pl/sql has an internal problem.7) storage_error -------- pl/sql ran out of memory or memory is corrupted.8) to_many_row ---------single row select returned more than one row.9) value_error -------- arithmetic,conversion,truncation or size constraint error occurred.10) zero_devided -------- attempted to divided by zero.

USER-DEFINED: Declare : name the exception Raise : explicitly raise the exception by using the raise statements Reference: exception handing section.

The Raise_Application_Error_Procedure: You can use this procedure to issue user-defined error messages from stored

sub programs. You can report errors to your applications and avoid returning unhandled

exceptions. Raise_Application_Error(error_number,message[,{true/false}] Error number è between -20000 to -20999

pragma exception_init? It tells the compiler to associate an exception with an oracle error. To get an error message of a specific oracle error. Ex: pragma exception_init(exception name, oracle error number)

Example for Exceptions? 1) Check the record is exist or not? Declare E emp% rowtype Begin e.empno := &empno; select * into e from emp where empno =e.empno;

Page 47: Oracle Apps Interview

Dbms_output.putline(‘empno’ || e.empno); Exception When no_data_found then Dbms_output.putline(e.empno ||’doest exist’); End;

2) User defined exceptions? Define p_dept_desc =’gvreddy’ Define p_dept_number =1236

Declare E_invalid_dept exception; Begin Update departments Set dept_name=’&p_dept_desc’ Where dept_id =’&p_dept_number’; If sql% not found then Raise e_invalid_departments; End if; Commit; Exception When e_invalid_departments then Dbms_output.putline(‘no such dept’); End; 52) what is REF Cursor?

To execute a multi-row query, oracle opens an unnamed work area that stores

processing information, to access the information, an explicit, which names the work

area or, a cursor variable, which points to the work area.

where as a cursor always refers to the same query work area, a cursor variable can

refer to a different work areas, cursor variable area like ‘c’ or ‘pascal’ pointers, which

hold the memory location(address) of some object instead of the object itself.

So, declaring a cursor variable creates a pointers, not an object.

32) Can u define exceptions twice in same block? No33) Can you have two functions with the same name in a pl/sql block? Yes34) Can you have two stored functions with in the same name? Yes35) Can function be overload? Yes36) What is the maximum number of statements that can be specified in a

trigger statement?One.

32) Stored procedure? Stored procedure is a sequence of statements that perform specific function.

53) What is procedure?

---- is a named pl/sql block to perform a specific task.

---- A procedure may have DML statements.

Page 48: Oracle Apps Interview

---- It may or may not return a value.

---- Procedure can return more than one value.

Example for procedure

1) To accept the year as a parameter and list emp belong to the year?

Create or replace Procedure empy(y number) is

Cursor emp_cursor is Select * from emp where to_char(hiredate,’yyyy’)=’y’; Emp_record emp%rowtype; Begin For emp_record in emp_cursor loop Print (emp_record.empno); Print (emp_record.ename); Print (emp_record.sal); End loop; End;Output : var empx number; Begin :empx := ‘1234’; End; Exec empy(:empx); Print empy;54) What is function?

---- is a named pl/sql block to perform a specific task, is mainly used for calculation

purpose.

---- A function is called as part of an exception.

---- Every function should return a value

Example for function

Create or replace Function get_sal(p_id in emp.emp_no% type) Return number Is

v_sal emp.sal%type :=0; Begin Select salary into v_salary From emp Where emp_no = p_id; Return v_salary End get_sal; End;

Output : var g_sal number; Exec :g_sal := get_sal(99); Print g_salary;

Page 49: Oracle Apps Interview

9.Can functions be overloaded ?

Yes.

10.Can 2 functions have same name & input parameters but differ only by return datatype

No.

55) What is the package?

---- Group logically related pl/sql types, items and subprograms.

1) package specification

2) package body

Advantages of a package:

Modularity Easier Application Design Information Hiding Overloading

You cannot overload:•Two subprograms if their formal parameters differ only in name or parameter mode. (datatype and their total number is same).•Two subprograms if their formal parameters differ only in datatype and the different datatypes are in the same family (number and decimal belong to the same family)•Two subprograms if their formal parameters differ only in subtype and the different subtypes are based on types in the same family (VARCHAR and STRING are subtypes of VARCHAR2)

•Two functions that differ only in return type, even if the types are in different

families.

56) What is FORWARD DECLARATION in Packages?

PL/SQL allows for a special subprogram declaration called a forward declaration. It consists of the subprogram specification in the package body terminated by a semicolon. You can use forward declarations to do the following:• Define subprograms in logical or alphabetical order.• Define mutually recursive subprograms.(both calling each other).• Group subprograms in a package

Example of forward Declaration:

CREATE OR REPLACE PACKAGE BODY forward_pack ISPROCEDURE calc_rating(. . .); -- forward declaration PROCEDURE award_bonus(. . .) IS -- subprograms defined BEGIN -- in alphabetical order calc_rating(. . .);

Page 50: Oracle Apps Interview

. . . END; PROCEDURE calc_rating(. . .) IS BEGIN . . . END; END forward_pack;

56) What are triggers?

---- triggers are similar to procedures, in that they are the named pl/sql blocks with

declarative, executable and exception-handling sections, how ever a procedure is

executed explicitly from another block via a procedure call, which can also pass

arguments.

---- A trigger is executed implicitly when ever a particular event task places. And is

nothing but a event.

---- The triggering event is a DML (insert, update, delete) operations on a data base

table

----- fires whenever a data event(such as DML) or system event(such as

login or shutdown) occurs on a schema or database

Trigger timing : 1) before

2) after

3) instead of ( this is used for views)

Triggering events : 1) insert

2)update

3) delete

Trigger type : 1) statement level

2) row level.

Firing sequence of database triggers

1) before statement trigger

2) before row trigger

3) after row trigger

4) after statement trigger

Ex:

1) Create or replace trigger secure_emp

Before Insert on emp Begin

Page 51: Oracle Apps Interview

If (to_char(sysdate,’dy’) in(‘sat’,’sun’)) or To_char(sysdate,’hh24:mi’) Not between ’08:00’ and ’18:00’)Then raise_application_error(-20500,’u can insert in the office timings’)End if;End;Ex :- 2) write a program to all transitions with name smith?

Create or replace

Trigger trigger_name

Before insert or update or delete

On emp

For each row

When (old.ename =’smith’ or

New.ename =’smith’)

Begin

Raise_application_error(-20003,’smith’);

End;

57) Difference between triggers and procedures?

Defined with create trigger Defined with create procedure

The data dictionary contains source

code in the user_triggers.

Data dictionary contains source code in

user_source

Implicitly invoked Explicitly invoked

Commit, save point and rollback are not

allowed(TCL)

Those are allowed

58) LOCKS?

-- Is to reduce concurrency

1) share lock

---it allows the other users for only reading not to insert or update or

delete.

2) exclusive lock

--- only one user can have the privileges of insert or update and delete of

particular object

--- others can only read.

3) update lock

----multiple user can read, update delete

Lock levels :

Page 52: Oracle Apps Interview

1) table level 2) table space 3) data base level.

58) What is template?

a) The TEMPLATE form is the required starting point for all development of new Forms. b) The TEMPLATE form includes platform–independent attachments of several Libraries. APPSCORE :- It contains package and procedures that are required of all forms to support the MENUS ,TOOLBARS. APPSDAYPK :- It contains packages that control the oracle applications CALENDER FEATURES. FNDSQF :- it contains packages and procedures for MESSAGE DICTONARY, FLEX FIELDS, PROFILES AND CONCURRENT PROCESSING. CUSTOM :- it allows extension of oracle applications forms with out modification of oracle application code, you can use the custom library for customization such as zoom ( such as moving to another form and querying up specific records)

59) What are ad-hoc reports?Ans.: Ad-hoc Report is made to meet one-time reporting needs. Concerned with or formed for a particular purpose. For example, ad hoc tax codes or an ad hoc database query

60) What is responsibility? Is collection of menus, request security groups and data groups Menus: collection of forms is nothing but menus Request security groups: collection of programs. Data groups: is a group of modules to be made accessible by the user through Responsibility System adminsecuritydefine Securityuserdefine

61) What are different execution methods of executabls? FlexRpt The execution file is wrnitten using the FlexReport API.FlexSql The execution file is written using the FlexSql API.Host The execution file is a host script.Oracle Reports The execution file is an Oracle Reports file.PL/SQL Stored Procedure The execution file is a stored procedure.SQL*Loader The execution file is a SQL script.SQL*Plus The execution file is a SQL*Plus script.SQL*Report The execution file is a SQL*Report script.Spawned The execution file is a C or Pro*C program.Immediate The execution file is a program written to run as a

subroutine of the concurrent manager. We recommend against defining new immediate concurrent programs, and suggest you use either a PL/SQL Stored Procedure or a Spawned C Program instead.

Composite Datatypes :– PL/SQL TABLES– PL/SQL RECORDS

- Nested TABLE

Page 53: Oracle Apps Interview

- VARRAY

What is the sequence of functions – group by,having,orderby in a select statements ?

Select…..Group by…Having…Orderby..

Difference between User and Super User?User : login user or front end userSuper user : it has full access of particular module

Overview of Oracle Application Development FrameworkThe Oracle Application Development Framework builds on J2EE standards and open-source technologies to implementing service-oriented applications.If you develop enterprise solutions that search, display, create, modify, and validate data using web Oracle ADF can simplify your job. Used in tandem, Oracle JDeveloper 10g and Oracle ADF give you an environment that covers the full development lifecycle from design to deployment.

Framework Architecture and Supported Technologiesmodel, view, controller architecture

Model LayerThe core module in the framework is Oracle ADF Model, The Oracle ADF Model layer enables a unified approach to bind any user interface to any business service with no code.View LayerIn the view layer of your application, where you design the web user interface, you can develop using either classic JavaServer Pages (JSP) or the latest JavaServer Faces (JSF) standard.Controller LayerIn the controller layer, where handling page flow of your web applications. JDeveloper offers visual page flow diagrammers to design your page flow, and the ADF Controller module provides appropriate plug-ins to integrate the ADF Model data binding facility with the controller layer’s page processing lifecycle.

Page 54: Oracle Apps Interview