Technical Interview Questions in Oracle Apps Saturday, 16 September 2006 20:18 Anil Passi E-mail Print PDF Please find

a list of possible technical interview questions in Oracle Apps. All the contents on this website are Copyright protected. I will try to keep this upto date with any new questions that I come accross. Ne w apps questions will be added to the top of this post. Most of the Oracle apps interview questions listed here are technical in natue. These interview questions span various Oracle Apps modules plus FND & OA Framewo rk. For Oracle HRMS and Payroll interview questions visit HRMS Interview Questio ns For Oracle iProcurement interview questions, kindly visit iProc Interview Questi ons . Question: How will you migrate Oracle General Ledger Currencies and Sets of Book s Definitions fromone environment to another without reKeying? Will you use FNDL OAD? Answer: FNDLOAD can not be used in the scenario. You can use migrator available in "Oracle iSetup" Responsibility Question: This is a very tough one, almost impossible to answer, but yet I will ask. Which Form in Oracle Applications has most number of Form Functions? Answer: "Run Reports". And why not, the Form Function for this screen has a para meter to which we pass name of the "Request Group", hence securing the list of C oncurrent Programs that are visible in "Run Request" Form. Just so that you know , there are over 600 form functions for "Run Reports" Question: Which responsibility do you need to extract Self Service Personalizati ons? Answer:Functional Administrator Question: Can you list any one single limitation of Forms Personalization featur e that was delivered with 11.5.10 Answer:You can not implement interactive messages, i.e. a message will give mult iple options for Response. The best you can get from Forms Personalization to do is popup up Message with OK option. Question: You have just created two concurrent programs namely "XX PO Prog1" & " XX PO Prog2". Now you wish to create a menu for Concurrent Request submission su ch that only these two Concurrent Programs are visible from that Run Request men u. Please explain the steps to implement this? Answer: a) Define a request group, lets say with name "XX_PO_PROGS" b) Add these two concurrent programs to the request group "XX_PO_PROGS" c) Define a new Form Function that is attached to Form "Run Reports" d) In the parameter field of Form Function screen, enter REQUEST_GROUP_CODE="XX_PO_PROGS" REQUEST_GROUP_APPL_SHORT_NAME="XXPO" TITLE="XXP O:XX_PO_PROGS" e) Attach this form function to the desired menu. Question: Does Oracle 10g support rule based optimization? Answer: The official stance is that RBO is no longer supported by 10g. Question: Does oracle support partitioning of tables in Oracle Apps? Answer: Yes, Oracle does support partitioning of tables in Oracle Applications.

such that historical records can be archived. Please use dbms_job. This can be done by exec dbms_stats. you must set profile option “Responsibility Trust Level” at responsibility level to “E xternal”. You can then decide to partition on period_na me. you must clear down t he archive table GL_ARCHIVE_BALANCES (don’t forget to export archive data to a tap e). You can schedule a dbms_job for running stats for SYS schema. Alternately using command dbms_stats.deg ree=>20). or on the status of the GL Period. Question: Can you use concurrent program "Gather Schema Statistics" to gather st ats on sys schema in oracle apps? Answer: No. The idea behind this profile option is to flag such middle-tier so that specia l restrictions can be applied against its security. "Gather Schema Statistics" has no parameters for SYS schema. or period ranges. However your cl ient must buy licenses to if they desire to partition tables. If you wish to delete the stats for SYS use exec dbms_stats. Answer: In order to make a responsibility accessible from an external web tier. Answer: If this profile option is set to a value of external against a server. Only those responsibilities that have this profile option against them w ill be accessible from External Middle tiers. Question: What is the significance of profile option “Responsibility Trust Level”. t hen it signifies that the specific mid-tier is External i. it will be exposed to the www. which means a very restricte d set of responsibilities will be available from such Middle-Tier. Question: What will be your partitioning strategy on GL_BALANCES? Your views ple ase? Answer: This really depends upon how many periods are regularly reported upon. Question: Which table is used to provide drill down from Oracle GL into sub-ledg er? Answer: GL_IMPORT_REFERENCES Question: What is the significance of profile option “Node Trust Level” in Oracle Ap ps. Note: Before running the archival process the second time. Question: Does Oracle support running of gather stats on SYS schema in Oracle Ap ps? Answer: If your Oracle Applications instance is on 10g.             .gather_schema_stats ( SYS ).gather_schema_stats( SYS . h ow many periods are left open etc.There are several implementations that partition on GL_BALANCES.delete_schema_stats( SYS ). In other words this server is not within the firewall of your client . Question: What else can you suggest to restrict the access to screens from exter nal web tiers? Answer: You may use URL filtering within Apache. To avoid the cost of licensing you may suggest the clients may decide to permanently close their o lder GL Periods.cascade=>TRUE.e. then you can decide to r un stats for SYS schema. I will prefer the former with default values.

xml with each bc4j package.Go to Mid Tier. you can remove the tab from self service page. Bounce the Document Managers STEP 3. STEP 4. you wish to disable a tab. the tabs on a OA Framework page are nothing but the SubMenus. Question: In self service. you wish to change the background color and the foreg round text of the OA Framework screens to meet your corporate standards. You want to modify the CLASSPATH such that new class CLASSPATH is effective just for this p rogram. Set profile option "Concurrent:Debug Flags" to TCTM1 This profile should only generate debugs when set at Site level(I think. This is a mandatory step when building Extensions to framework. Question: You have written a Java Concurrent Program in Oracle Apps. STEP 2. Set the debugging on by using profile option STEP 1. Answer: In the options field of the concurrent program you can enter something s imilar to below. have a look at debug information in table fnd_concurrent_debug_info 2.xss b…Enter below text( change colours as needed) <style name="DarkBackground"> <property name="background-color">#000066</property> </style> <style name="TextForeground"> <property name="color">#0000FF</property> </style> . AM. EO’s. How wil l you do it? Answer: You will need to do the below steps a…. By entering menu exclusion against the responsibility. and open $OA_HTML/cabo/styles/custom. How wi ll you do it? Answer: Generally speaking. Question: In OA Framework Self-Service screen. When an application uses a Document Manager. Retry the Workflow to generate debugs. as I ha ve only tried site). Opening the server. There are two mechanisms by which to trace the document manager 1.xml will load the complete package starting from AM(applicati on module). level 12. Classes etc). Question: How to debug a document manager in Oracle Apps? Answer: Document manger runs within the concurrent manager in Oracle Application s. it sends a pipe signal which is picked up by the document manager. It receives pipe signal from the application when a request is made for approval/reservations/receipts. You will ne ed to ftp that file alongside other bc4j objects(VO’s. because Document Manager runs in a different session. The value of this profile will be set so as to enable trace using event 10046. Reset profile option "Concurrent:Debug Flags" to blank STEP 5. -cp <your custom lib pathused by Java Conc Prog> :/home/xxvisiondev/XXDEVDB/comn /java/ Question: How will you open a bc4j package in jdeveloper? Answer: Oracle ships a file named server. Enable tracing for the document managers This can be done by setting profile option “Initialization SQL Statement – Custom” aga inst your username before reproducing the issue.Question: What is the role of Document Manager in Oracle Purchasing? Answer: POXCON is an immediate concurrent program.

format = wl. e…Delete all the files of following pattern oracle-desktop*. RESULT . NORESULT ) = RESULT .NAME AND wma.notification_id AND wn. FETCH c_get_response_for_new_vendor INTO l_activity_result_code.NAME = wma.wf_message_attributes_vl wma . you have a free text response field where the user enters the Vendor Number for the new vendor.RESULT IN OUT VARCHAR2 ) IS l_nid NUMBER.9).itemkey IN VARCHAR2 .funcmode IN VARCHAR2 .lookup_code FROM wf_notification_attributes wna .getattrtext(l_nid.lookup_code AND wma. The PL/SQL code will look similar to below:The below code will display an error in the notification when user attempts to c reate a Duplicate Vendor Number. Answer: You can extend the AM in jDeveloper.message_name AND wn. v_newly_entered_vendor_num VARCHAR2(50).wf_lookups wl WHERE wna. I am hopeful that Oracle will deliver a solution to this in th e future.                                 .context_nid. Question: In a workflow notification. NEWLY_ENTERED_V ENDOR_NUM_4_PO ).TYPE = LOOKUP AND decode(wma. l_activity_result_code VARCHAR2(200). Question: Can you extend and substitue a root AM ( Application Module) in OA Fra mework using JDeveloper.message_type = wma.text_value = wl.5. the Framework will rebuild the css file if found missing for your br owser.SUBTYPE = RESPOND AND wma.css The idea here is to delete the cache. How will you do it? Answer: You will need to attach a post notification function to the Workflow Not ification.wf_notifications wn . CLOSE c_get_response_for_new_vendor.message_type AND wna. PROCEDURE validate_response_from_notif ( itemtype IN VARCHAR2 .lookup_type AND wna.notification_id = wn. OPEN c_get_response_for_new_vendor.NAME.notification_id = l_nid AND wna. v_newly_entered_vendor_num := wf_notification. but it doesn’t work( at least it didn’t work in 11. RESULT .message_name = wma. You want to validate the v alue entered in the notification response field upon the submission of a respons e.actid IN NUMBER .c… cd $OA_HTML/cabo/styles/cache d…Take a backup of all the css files. CURSOR c_get_response_for_new_vendor IS SELECT wl. BEGIN IF (funcmode IN ( RESPOND )) THEN l_nid := wf_engine. Next time when you logon to Oracle Apps Se lf Service.

l_itemkey) --B) When initiating the workflow process through an event subscription. Question: How do you link a Host type concurrent program to Concurrent Manager? Answer: Assuming your executable script is LOADPO. set the Execution Condition Phase to be equal to or above 100 for it to be executed by background process.                     .ad_bugs WHERE bug_number = TRIM( &bug_number ) . in which column bug_number is the patch number.start_process or you can attach a runnable p rocess such ghat it subscribes to a workflow event.to_char(creation_date. SELECT bug_number . Question: How do you send a particular Oracle Apps Workflow Activity/Function wi thin a workflow process into background mode.threshold := -1.prog.l_itemkey . wf_engine. lRC. //get handle on request completion object for reporting status lRC = pCpContext.IF l_activity_result_code = NEW_VENDOR AND does_vendor_exist(p_vendor => v_newly_entered_vendor_num) THEN RESULT := ERROR: VendorNumber you entered already exists . RETURN.setCompletion(ReqCompletion.getReqCompletion().WARNING. END IF. END IF. wf_engine. Question: What are the various ways to kick-off a workflow Answer: You can eiter use wf_engine. <YOUR PROCESS NAME> ). For a Java Concurrent program. DD-MON-YYYY HH24:MI:SS ) dated FROM apps. and it won’t be processed in on line mode.createprocess(l_itemtype . use the code similar to below ReqCompletion lRC. Answer: If cost of the workflow activity is greater than 50. Question: When starting (kicking off) an oracle workflow process. then use the commands be low cd $XXPO_TOP/bin ln -s $FND_TOP/bin/fndcpesr $XXPO_TOP/bin/LOADPO Question: How do you know if a specific Oracle patch has been applied in apps to your environment.startprocess(l_itemtype. then the workflow a ctivity will be processed in background mode only. Question: How to make concurrent program end with warning? Answer: If the concurrent program is of type PL/SQL. "WARNING"). you can assign a value of 1 to the “retcode” OUT Parameter. Answer: Use table ad_bugs. how do you ens ure that it happens in a background mode? --a)if initiating the process using start_process. END validate_response_from_notif. do the below wf_engine. EXCEPTION WHEN OTHERS THEN RESULT := SQLERRM.

by using jpximport [ similar to as explained in Link ] c) Personalize the LOV Region.PROG_APPL_ID => NULL .10).RESP_ID => <You may use Examine from the screen PROFILE/RESP_ID> . specifically usef ull when debugging iProcurement ( prior to 11.log DebugLevel=5 DebugSwitch=ON vi $ORACLE_HOME/. initialize DECLARE v_session_id INTEGER := userenv( sessionid ) ./iAS/Apache/Jserv/etc/jserv.CONC_PROGRAM_ID => NULL .sql Question : How will you configure Apache to run in Debug mode.LOGIN_ID => 3115003--Any number here ..5. Answer: After 11. These are both the same scripts.SECURITY_GROUP_ID => 0 .txt DebugOutput=/home/<<SID>>/ora9/iAS/Apache/Apache/logs/debug. Question: Can you do fnd_request.     .USER_ID => <your user id from log=true Question: How will you add a new column to a List Of Values ( LOV ) in Oracle Ap plications Framework? Can this be done without customization? Answer: Yes./iAS/Apache/Jserv/etc/ssp_init. by clicking on Add New Item..initialize ( SESSION_ID => v_session_id ..user_id> . this can be done without customization. While adding the new Item.e. how will you use awr? Answer: By running below scripts.10 ----STEPS IN A NUTSHELL----cd $ORACLE_HOME/. Implement the following Steps :a) Extend the VO ( View Object ). to implement the new SQL required to support t he LOV. b) Substitute the base VO.10.5.RESP_APPL_ID => <You may use Examine from the screen PROFILE/RESP_APPL_ID> . you will cross reference the newly added column to VO.submit_request from SQL Plus in Oracle? Answer: You will need to initialize the global variables first using fnd_global. $ORACLE_HOME/rdbms/admin/awrrpt. by using OA Framework Extension coupled with Personalization. Prior to 11../iAS/Apache/Jserv/etc/jserv. FND Logging can be used for debugging Oracle iProcurement .Question: On 10g. BEGIN fnd_global.CONC_REQUEST_ID => NULL .CONC_PRIORITY_REQUEST => NULL ) ./iAS/Apache vi $ORACLE_HOME/.sql $ORACLE_HOME/rdbms/admin/awrrpti.conf ApJServLogLevel debug vi $ORACLE_HOME/.5.CONC_LOGIN_ID => NULL .SITE_ID => NULL . but with diff ering parameters. i.

How do you go about it. Answer: First thing to do is to enable trace. resp_appl_id => :resp_appl_id. server_id => :server_id).apps_initialize.commit . your global variables upon which Concurrent Managers depend upon will be populated. Catalogs don’t need to be loaded loc ally saves space on your system. level 12 . By doing the above. resp_id => :resp_id. Preferably. Enable Trace with Bind Variables in Apps Enable Trace with Bind Variables in Apps This will enable the trace with Bind Variable values being shown in the trace fi le. The screen in Oracle Apps will also provide the name of the trace file which is located in directly identified by select value from v$parameter where name like %us%r%dump% Doing a tkprof with explain plan option. but its not taking any effect? What may be the reason? Answer: Depending upon which procedure in POR_CUSTOM_PKG has been programmed. But “Program – Optimizer [RGOPTM]” can create indexes on GL_CODE_COMBINATIONS. provided accounting segment has the indexed flag enabled. Question: You are told that the certain steps in the Oracle Apps Form/Screen are running slow. You can get up-to-date list of catalogs by punc hing out and also you get the benefit of up-to-date pricing information on vendo r items. indexes etc. This will be equivalent to logging into Oracle Apps and submitting the concurrent request from a responsibility. reviewing plans and stats in trace file can help identify the slow performing SQL. END . security_id => :security_id. enable the trace with Bind Variables.apps_initialize(user_id => :user_id. which internally calls fnd_gl obal. However Gather Stats does not create any new indexes. / Optionally you may use fnd_global. This can be done by selecting menu Help/Diagnostics/Trace/”Trace W ith Binds and Wait” Internally Oracle Forms issues a statement similar to below:alter session set events= 10046 trace name context forever. Question: You have written a piece of code in POR_CUSTOM_PKG for Oracle iProcure ment. Question: What is the difference between running Gather Stats and “Program – Optimiz er[RGOPTM]” in Oracle General Ledger? Answer: “Gather Stats” will simply gather the stats against existing tables. on e or more of the below profile options must be set to Yes POR: Enable Req Header Customization POR: Enable Requisition Line Customization POR: Enable Req Distribution Customization Question: What is the key benefit of punching out to suppliers catalogs rather t han loading their catalogs locally in Oracle iProcurement? Answer: Punchout has several advantages like. and you are asked to tune it.         .initialize fnd_global.

string . use SQL similar to below in the report select a chr(9) b from dual.ppd For details. refer to Metalink Note 189708. Question: How to make an Oracle Report Type concurrent program produce an excel friendly output? Answer: Comma can be concatenated between the column values. as it takes care of commas within the stri ng. PA_EXPENDITURE_TYPES etc. Behind the scenes Oracles FND Log ging uses autonomous transaction to insert records in a table named fnd_log_mess ages. however a better op tion is to create tab delimited file.e. In order to take an action when these events occur.STRING(log_level => => xxxx pkg/procedurename .Question: Does oracle have a test environment on exchange? Answer: http://testexchange.e. For this.level_statement . Question: What is the best way to add debugging to the code in apps? Answer: Use fnd_log. Question: What are the settings needed for printing bitmap reports? Answer: Get your DBA to configure two files i. TCA was Oracle’s first initiative towards a fully API based approach. the def ault database setting enforces a commit at the end of each session. uiprint. PA_EXPENDITURE_ITE MS_ALL. which means the screen and the processes all use the same set of APIs for doing same task. i. END . FND Logging. Three profile options effecting FND Logging are FND: Debug Log Mode FND: Debug Log Enabled FND: Debug Log Module Question: If you wish to trigger of an update or insert in bespoke table or take some action in response to a TCA record being created or modified.e.1 Question: For a PL/SQL based concurrent program do you have to issue a commit at the end? Answer: The concurrent program runs within its own new session. it reuses many of th e tables with in Oracle Projects Schema like PA_PROJECTS_ALL. you can subscribe a custom P L/SQL procedure or a Custom Workflow to these Question: Does Oracle Grants use its own schema or does it uses Oracle Project A ccounting schema? Answer: Although Oracle Grants has its own schema i.txt & default. Some of the important TCA                     . For example DECLARE BEGIN fnd_log.message => your debug message here ). In APPS. how would yo u do it? Will you write a database triggers on TCA Tables? Answer: There are various pre-defined Events that are invoked from the Oracle TC A API’s. Hence no exp licit COMMIT is required. GMS.

hz.Person.update oracle.hz.e.update Question: In Oracle OA Framework. Question: How can you import invoices into Oracle Receivables? Answer: You can either use AutoInvoice by populating tables RA_INTERFACE_LINES_A .create oracle.create oracle.hz. MDS defines the con text of the logged in user.PartySite.create oracle. Question: In OA Framework.CustAcctSiteUse.Organization. once your application has been extended by substituti ons. is it possible to revert back to remove those substitutions? Answer: you have a “data link” between two Given that substitutions are loaded as site le vel This is of great help during Upgrades.hz.PartySiteUse.hz. I think Root AM’s can’t be substitute d given that substitution kicks off after Root AM gets MDS applies the substituted BC4J objects along with the pe rsonalizations.apps.PartySiteUse.apps.create oracle.create oracle.update oracle.apps.update oracle. all applicable pe rsonalization are applied by MDS. is the MDS page/document definition stored in database or in the file system? Answer: The MDS document details are loaded into How do you ensure that the data link is made Outer Joined? Answer: The data link is an Outer Join by default.hz.create in the following sets of are listed below:oracle.update oracle. JDR_ATTRIBUTES JDR_ATTRIBUTES_TRANS JDR_COMPONENTS JDR_PATHS The Document is loaded via By disabling the personalization via profil e. Entity Obje cts and Validation Objects can be substituted. as detailed in XMLImporter Article Question: In a Oracle Report data group.update oracle.apps.Person.create keep ing in mind that all your personalizations will get disabled by this profile opt ion.apps.create The above listed steps occur as soon as Root Application module has been loaded. Question: How does substitution work in OA Framework? What are the benefits of using Substitution in OA Framework? Answer: Based on the user that has logged into OA Framework.apps.apps.PartySite. The benefit of using Substitution is to extend the OA Framework without customiz ation of the underlying oracle.hz. is being caused by your extension/substitutio n code or by Oracle’s standard functionality.hz.apps. Based upon this logged in context. you can isolate the error.hz.hz.apps. This profile is also very useful when debugging your OA Framework based app lication in the event of some error. i.apps.hz. by setting profile option “Disable Self-Service Personal%” to

10). iProcurement uses the same set of requisition tables as are used by Core Purchasing. -->Provides more visibility on customizations to the screen.sender_message_id AND eog. Release 12 will be merging Suppliers int o TCA.pll? Answer: -->Can t create record group queries. Failure ) AS status .10.             .decode(eol.LL. hence can’t implement LOV Query changes. Question: Tell me some limitations of forms personalization when compared to CUS TOM. not sure about 11.document_number .out_msgid = edoc. For examples visit FNDLOAD Article Question: What are the key benefits of forms personalization over custom.5.result_text FROM ecx_oxta_logmsg eol .result_code. Answer: The XML delivery status can be found from a table named ecx_oxta_logmsg. However. looking at the tables.eol.pll? Answer: -->Multiple users can develop forms personalization at any given point in time. Alternately you may decide to use API ar_invoice_api_pub. But for the purpose of your interview. Success . Question: What is the link between order management and purchasing Answer: Internal Requisitions get translated into Internal Sales Orders.5.document_number Question: You have done forms personalization. b) Use that reference field in “Context Field” section of DFF Segment screen c) For each possible value of the context field. Question: What is the name of the schema for tables in tca Answer: AR (at least till 11. -->Can t make things interactive. -->A programmer is not required to do simple things such as hide/disable fields or buttons. -->It is fairly easy to enable and disable forms personalizations. RA_INTERFACE_DISTRIBUTIONS_ALL & RA_INTERFACE_SALESCREDITS_ALL. 1000.ecx_doclogs edoc . now how will you move it from one environment to another? Answer: Use FNDLOAD. can’t have a message box that gives multipl e choices for example Proceed or Stop etc. Question: Are suppliers a part of TCA? Answer: Unfortunately not yet. Question: How do you setup a context sensitive flexfield Answer: Note: I will publish a white paper to sho step by step approach. Question: Does Oracle iProcurement use same tables as Oracle Purchasing? Answer: Yes.ecx_outbound_logs eog WHERE edoc.e. Use the query below SELECT edoc.msgid = eol. you will need to create one re cord in section “Context Field Value” ( beneath the global data elements). Question: How would you know if the purchase order XML has been transmitted to v endor.msgid ORDER BY edoc.create_single_invoice f or Receivables Invoice Import. a brief explanation is…a)Create a reference field. i.

Question: Can you send blob attachments via workflow notifications? Answer: Yes. Security Attribute ICX_P OR_REALM_ID can be used. Answer: You can define Realm to bundle suppliers into a Category. refer to link for BLOG atachments to notification s . Such realm can then be assigned to the User using Define User Screen. For details on how to do this. By doing so. you can send BLOB Attachments. the user will only be made visible those P unchout suppliers that belong to the realm against their securing attributes.Question: Give me one example where apps uses partitioning? Answer: WF_LOCAL_ROLES Question: Give me one example of securing attributes in iProcurement.

Sign up to vote on this title
UsefulNot useful