Q. What is wdbsvr.app file used for? What's full path of this file?

What's significance of this file ? I'll again suggest you don't just remember answer & try to solve mystery behind this file. First where this file exists ? You can find this file under $IAS_ORACLE_HOME/Apache/modplsql/cfg Based on file location I am sure you can say this is related to Apache, & looking into modplsql/cfg , I am sure you will say its related to mod_pls (mod plsql component of Apache/Oracle 11i WebServer) configuration file. This file is used by mod_plsql component of Apache to connect to database. So when you type url http://hostname:port/pls/SID , whenever Apache(11i Web Server) finds that request is for /pls/ then Apache delegates this request to mod_pls component which in turn pick this file & check if there is any DAD with name SID (in our example its VISION11I) & Sample entry in wdbsvr.app [DAD_VISION11I] connect_string = VISION11I password = apps username = APPS default_page = fnd_web.ping On typing http://hostname:port/pls/VISION11I , it will connect to database using apps schema & will return you page fnd_web.ping ( where fnd_web is package & ping is procedure or vise versa). So story about this file doesn't stop here , this url which I mentioned about is quite useful in troubleshooting so you can check if database connection is working fine or not. Another thing you want to check about this file is since it stores APPS password you need to change here whenever you change apps password . Q. Explain Architecture of Oracle Apps 11i. Apps 11i is Mutli Tier architecture with Desktop(Client Tier), Middle Tier (Application Tier) and Database Tier. For detailed explanation Click Here

The Desktop Tier
The client interface is provided through HTML for the newer HTML-based applications, and via a Java applet in a Web browser for the traditional Forms-based interface.

The Application Tier
The application tier has a dual role: hosting the various servers that process the business logic, and managing communication between the desktop tier and the database tier. This tier is sometimes referred to as the middle tier. Oracle9i Application Server (9iAS) provides the technology used on the application tier. Six servers comprise the application tier for Oracle Applications: • Web server • Forms server • Reports server • Discoverer server (optional) • Concurrent Processing server • Admin server Web Server The Oracle HTTP server (powered by Apache) acts as the Web server. It processes the requests received over the network from the desktop clients, and includes additional components such as: • Web Listener • Java Servlet Engine • Java Server Pages (JSP) The Web listener component of the Oracle HTTP server accepts incoming HTTP requests (for particular URLs) from client browsers. If possible, the Web server services the requests itself, for example by returning the HTML to construct a simple Web page. If the page referenced by the URL needs advanced processing, the listener passes the request on to the servlet engine, which contacts the database server as needed. Forms Server The Forms server hosts the Oracle Applications forms and associated runtime engine that support the professional interface. It is an Oracle Developer 6i component that mediates the communication between the desktop client and the Oracle database server, displaying client screens and initiating changes in the database according to user actions. The Forms server caches data and provides it to the client as needed, for example when scrolling through multiple order lines that exceed the limitations of a single screen. The Forms server communicates with the desktop client using these protocols: • Standard HTTP network connection • Secure HTTPS network connection • TCP/IP connection

Reports Server The Reports server is automatically installed on the same node as the Concurrent Processing server, and its reports are contained in the same directory as the concurrent processing reports. However, reports generated by the Reports server are monitored and administered separately from concurrent processing reports. The Reports server dynamically selects the report language at runtime, so users see their reports in their preferred language. Discoverer Server The Discoverer server comprises Oracle Discoverer 10g, a key component of the Oracle 10g Application Server. Discoverer is an ad hoc query, reporting, analysis, and publishing tool that allows business users at all levels of an organization to gain immediate access to information from data marts, data warehouses, and online transaction processing (OLTP) systems. Concurrent Processing Server As described previously, user interactions with Oracle Applications data can be conducted via HTML-based Applications or the more traditional Forms-based Applications. However, there are also reporting programs and data updating programs that need to run either periodically, or on an ad hoc basis. These programs, which run in the background while users continue to work on other tasks, may require a large number of data-intensive computations, and are run using the Concurrent Processing architecture. Admin Server The Admin (Administration) server is located on the node where you maintain the data model and data in your Oracle Applications database. • Upgrading Oracle Applications • Applying database patches to Oracle Applications

The Database Tier
The database tier contains the Oracle database server, which stores all the data maintained by Oracle Applications. The database also stores the Oracle Applications online help information. More specifically, the database tier contains the Oracle data server files and Oracle Applications database executables that physically store the tables, indexes, and other database objects for your system. In general, the database server does not communicate directly with the desktop clients, but rather with the servers on the application tier, which mediate the communications between the database server and the clients. Q. What are various components in Application/Middle Tier? In Application Tier various components are Web Server, Forms Server, Reports Server, Concurrent Manager, Admin Server & Discoverer Server.

Q. What is APPL_TOP, COMN_TOP, ORA_TOP..... XXX_TOP is top level directory in Oracle Application 11i for respective Component. To know more about various TOP's Click Here

• The <dbname>DATA or DATA_TOP directory is located on the database server machine, and contains the system tablespaces, redo log files, data tablespaces, index tablespaces, and database files. • The <dbname>DB directory is located on the database server machine, and contains the ORACLE_HOME for the Oracle9i database. • The <dbname>APPL or APPL_TOP directory contains the product directories and files for Oracle Applications.

• The <dbname>ORA directory contains the ORACLE_HOMEs for the Applications technology stack components. • The <dbname>COMN or COMN_TOP (or COMMON_TOP) directory contains directories and files used across products.

Q. What are issues you encountered during Oracle Applications 11i? Answer to this question will depend on issues you encountered. Don't lie infront of Interviewer. If you have not installed applications 11i accept it. Q. What’s US directory in $AD_TOP or under various product TOP's . US directory is default language directory in Oracle Applications. If you have multiple languages Installed in your Applications then you will see other languages directories besides US, that directory will contain reports, fmx and other code in that respective directory like FR for France, AR for arabic, simplifies chinese or spanish. Q. Whats main concurrent Manager types.  ICM - Internal Concurrent Manager which manages concurrent Managers The Internal Concurrent Manager (ICM) controls all other concurrent managers. It administers the startup and shutdown of managers as defined by their work shift, monitors for process failure, and cleans up if a failure occurs. The ICM does not process concurrent requests itself (except for queue control requests, such as ACTIVATE, DEACTIVATE, or ABORT).

 Standard Managers - Which Manage processesing of requests. The Standard Manager as shipped with Oracle Applications will accept and run any concurrent requests, as it has no specialization rules that would restrict its activities.  CRM - Conflict Resolution Managers , resolve conflicts in case of incompatibility. The Conflict Resolution Manager (CRM) enforces rules designed to ensure that incompatible concurrent requests do not run in the same conflict domain (an abstract representation of the groupings used to partition data). Q. Where is Concurrent Manager log file location. By default standard location is $APPLCSF/$APPLLOG , in some cases it can go to $FND_TOP/log as well. A concurrent request has a life cycle, which consists of three or possibly four phases: Phase Activity Pending The request is waiting to be run Running The request is running Completed The request has finished Inactive T he request cannot be run A concurrent program library contains concurrent programs that can be called by a concurrent manager. An important example is the Oracle Application Object Library program library (FNDLIBR), which contains Oracle Applications immediate concurrent programs, and is assigned to the standard concurrent manager. Table 1-2 Concurrent Processing Database Tables Table FND_CONCURRENT_REQUESTS FND_CONCURRENT_PROGRAMS FND_CONCURRENT_PROCESSES FND_CONCURRENT_QUEUES Content Details of user requests, including status, start date, and completion date Details of concurrent programs, including execution method, whether the program is constrained, and whether it must be run alone. Cross-references between concurrent requests and queues, and a history of concurrent manager processes Information about each of the concurrent manager queues

Concurrent manager processes on a specific node can be seen by running the UNIX commands: ps –ef | grep FNDLIBR ps –ef | grep FNDSM The ICM can be activated and deactivated from the operating system prompt, or Oracle Applications Manager. It can also be deactivated (but not activated) from the Administer Concurrent Managers form. When the ICM is initiated on UNIX, the $FND_TOP/bin/startmgr program is invoked. This calls $FND_TOP/bin/batchmgr, which then: 1. Starts a shell process 2. Starts the ICM process using the command FNDLIBR, with startup parameters FND, CPMGR, and FNDCPMBR 3. Creates log files (std.mgr and wnnn.mgr) in $APPLCSF/$APPLLOG Q. Where would i find .rf9 file, and what execatly it dose ? These files are used during restart of patch in case of patch failure because of some reason. Q. Where is appsweb.cfg or appsweb_$CONTEXT.cfg stored & why its used ? This file is defined by environment variable FORMS60_WEB_CONFIG_FILE This is usually in directory $OA_HTML/bin on forms tier. This file is used by any forms client session. When a user try to access forms , f60webmx picks up this file and based on this configuration file creates a forms session to user/client. Q. What is multi node system ? Multi Node System in Oracle Applications 11i means you have Applications 11i Component on more than one system. Typical example is Database, Concurrent Manager on one machine and forms, Web Server on second machine is example of Two Node System. Q. Can you clone from multi node system to single node system & vice versa ? Yes , this is now supported via Rapid Clone, Check if your system has all prereq. patches for Rapid Clone and you are on latest rapid clone patch. Q. Does rapid clone takes care of Updating Global oraInventory or you have to register manually in Global OraInventory after clone ? Rapid Clone will automatically Update Global oraInventory during configuration phase. You don't have to do any thing manually for Global oraInventory. Q. What is .dbc file , where its stored , whats use of .dbc file ? dbc as name says is database connect descriptor file which stores database connection information used by application tier to connect to database. This file is in directory $FND_TOP/secure also called as FND_SECURE Q. What is GWYUID ? GWYUID , stands for Gateway User ID and password. Usually like APPLSYSPUB/PUB The public ORACLE username and password that grants access to the Oracle Applications initial sign-on form. The default is APPLSYSPUB/PUB.

Q. Where GWYUID defined & what is its used in Oracle Applications ? GWYUID is defined in dbc i.e. Database Connect Descriptor file . It is used to connect to database by thick clients. Q. Whats things you do to reduce patch timing ? You can take advantage of following  Merging patches via admrgpch  Use various adpatch options like nocompiledb or nocompilejsp  Use defaults file  Staged APPL_TOP during upgrades  Increase batch size (Might result into negative )

Q. How you put Applications 11i in Maintenance mode ? Use adadmin to change Maintenance mode is Oracle Apps. With AD.I you need to enable maintenance mode in order to apply apps patch via adpatch utility. If you don't want to put apps in maintenance mode you can use adpatch options=hotpatch feature. Q. Can you apply patch without putting Applications 11i in Maintenance mode ? Yes, use options=hotpatch as mentioned above with adpatch. Q. What are various options available with adpatch ? Various options available with adpatch depending on your AD version are autoconfig, check_exclusive, checkfile, compiledb, compilejsp, copyportion, databaseprtion, generateportion, hotpatch, integrity, maintainmrc, parallel, prereq, validate Q. adident utility is used for what ? adident utility in oracle apps is used to find version of any file . AD Identification. for ex. "adident Header <filename> Q. What is adsplice utility ? adsplice in oracle apps is utility to add a new product. Q. How can you licence a product after installation ? You can use ad utility adlicmgr to licence product in Oracle Apps. Q. What is MRC ? What you do as Apps DBA for MRC ? MRC also called as Multiple Reporting Currency in oracle Apps. Default you have currency in US Dollars but if your organization operating books are in other currency then you as apps dba need to enable MRC in Apps. How to enable MRC coming soon... Q. Whats is JVM(Java Virtual Machine ) and which component uses JVM ?

JVM stands for Java Virtual Machine, JVM ? JVM acronym for Java Virtual Machine which executes instructions generated by Java compiler. So user click on any Self Service Request or any program which uses Java, then Apache forwards this request to mod_jserv (mod_oc4j in 10g AS) & mod_jserv caters this request with help of JVM. Q. What is access_log in apache , what entries are recored in access_log ? Where is default location of this file ? access_log in Oracle Application Server records all users accessing oracle applications 11i. This file location is defined in httpd.conf with default location at $IAS_ORACLE_HOME/Apache/Apache/logs. Entries in this file is defined by directive LogFormat in httpd.conf Typical entry in access_log is - - [10/Sep/2006:18:37:17 +0100] "POST /OA_HTML/OA.jsp?.... HTTP/1.1" 200 28035 where 200 is HTTP status code & last digits 28035 is bytes dowloaded as this page(Size of page) Q. Where is Jserv configuration files stored ? Jserv configuration files are stored in $IAS_ORACLE_HOME/Apache/Jserv/etc Q. What is session time out parameter & where all you define these values ? To know about session time out parameter & location where its defined Click Here Q. Where is applications start/stop scripts stored ? (adstrtal.sh and adstpall.sh) applications start/stop scripts are in directory $COMMON_TOP/admin/scripts/$CONTEXT_NAME Q. What are main configuration files in Web Server (Apache) ? Main configuration files in Oracle Apps Web Server are  httpd.conf, apps.conf, oracle_apache.conf, httpd_pls.conf  jserv.conf, ssp_init.txt, jserv.properties, zone.properties  plsql.conf, wdbsvr.app, plsql.conf Q. How to check if Apps 11i System is Autoconfig enabled ? Under $AD_TOP/bin check for file adcfginfo.sh & if this exists use adcfginfo.sh contextfile=<CONTEXT> show=enabled If this file is not there , look for any configuration file under APPL_TOP if system is Autoconfig enabled then you will see entry like # AutoConfig automatically generates this file. It will be read and ....... Q. How to check if Oracle Apps 11i System is Rapid Clone enabled ? For system to be Rapid Clone enabled , it should be Autoconfig enabled (Check above How to confirm if Apps 11i is Autoconfig enabled). You should have Rapid Clone Patches applied , Rapid Clone is part of Rapid Install Product whose Family Pack Name is ADX. By default all Apps 11i Instances 11.5.9 and above are Autoconfig & Rapid Clone enabled. Q. Whats is difference between two env files in <CONTEXT>.env and APPS<CONTEXT>.env under $APPL_TOP ? APPS<CONTEXT>.env is main environment file which inturn calls other environment files like <CONTEXT>.env under $APPL_TOP, <CONTEXT>.env under 806 ORACLE_HOME and custom<CONTEXT>.env for any Customized environment files.

Q. What is access_log in Apache ? access_log file keeps record of users accessing Oracle Apps 11i Webserver. Typical entry in access_log is like - - [25/Aug/2006 :03:15:13 +0100] "GET /OA_JAVA /oracle /forms /registry/Registry.dat HTTP/1.1" 200 4117 Which means client with IP requested for file mentioned above on 25 Aug 2006 at 03:15 AM , 200 is status code returned by Apache which means page returned successfully (Status Code 302 means page redirected , 404 page not found, 500+ Internal Server error) last digit 4117 in above entry of access_log means file size which is 4117 bytes. This file is quite useful in monitoring your Web Server. Please note above format might defer on your system as this is dependent log_format in Apache configuration file ( httpd.conf) Q. Whats is location of access_log file ? access_log file by default is located in $IAS_ORACLE_HOME/ Apache/Apache/logs. Location of this file is defined in httpd.conf by patameter CustomLog or TransferLog Q. What is your Oracle Apps 11i Webserver Version and how to find it ? From 11.5.8 to 11.5.10 Webserver version is iAS, In order to find version under $IAS_ORACLE_HOME/Apache/Apache/bin execute ./httpd -version ./httpd -version Server version: Oracle HTTP Server Powered by Apache/1.3.19 Server built: Dec 6 2005 14:59:13 (iAS rollup 5)
P.S. You can configure 10g Application Server as well with Oracle Apps 11i.

Q. What is Location of Jserv configuration files ? Jserv configuration files are located in $IAS_ORACLE_HOME /Apache/Jserv/etc . Q. What is plssql/database cache ? In order to improve performance mod_pls (Apache component) caches some database content to file. This database/plssql cache is usually of type session & plsql cache  session cache is used to store session information.  plsql cache is used to store plsql cache i.e. used by mod_pls Q. Where is database/plssql cache stored ? plssql & session cache are stored under $IAS_ORACLE_HOME/ Apache/modplsql/cache directory. Q. How to determine Oracle Apps 11i Version ? select RELEASE_NAME from fnd_product_groups; You should see output like RELEASE_NAME ----------------------11.5.9 or

Q. What is *.dbc file & whats is location of dbc file ? Dbc as name says is database connect descriptor file which stores database connection information used by application tier to connect to database.. This file by default located in $FND_TOP/secure directory also called as $FND_SECURE directory. Q. What is content of dbc file & why its important ? DBC file is quite important as whenever Java or any other program like forms want to connect to database it uses dbc file. Typical entry in dbc file is GUEST_USER_PWD APPS_JDBC_URL DB_HOST ...., I will explain these parameters in other questions else in my BLOG Q. There are lot of dbc file under $FND_SECURE, How its determined that which dbc file to use from $FND_SECURE ? This value is determined from profile option "Applications Database ID" Q. What is RRA/FNDFS ? Report Review Agent(RRA) also referred by executable FNDFS is default text viewer in Oracle Applications 11i for viewing output files & log files. As most of apps dba's are not clear about Report Server & RRA, I'll discuss one on my blog and update link here . Q. What is PCP is Oracle Applications 11i ? PCP is acronym for Parallel Concurrurent processing. Usually you have one Concurrent Manager executing your requests but if you can configure Concurrent Manager running on two machines (Yes you need to do some additional steps in order to configure Parallel Concurrent Processing) . So for some of your requests primary CM Node is on machine1 and secondary CM node on machine2 and for some requests primary CM is on machine2 & secondary CM on machine1. Q. Why I need two Concurrent Processing Nodes or in what scenarios PCP is Used ? To check answer click Next. Q. Why I need two Concurrent Processing Nodes or in what scenarios PCP is Used ? Well If you are running GL Month end reports or taxation reports annually these reposrts might take couple of days. Some of these requests are very resource intensive so you can have one node running long running , resource intensive requests while other processing your day to day short running requets. another scenario is when your requests are very critical and you want high resilience for your Concurrent Processing Node , you can configure PCP. So if node1 goes down you still have CM node available processing your requests. Q. Output & Logfiles for requests executed on source Instance not working on cloned Instance Here is exact problem description - You cloned an Oracle Apps Instance from PRODBOX to another box with Instance name say CLONEBOX on 1st of August. You can any CM logs/output files after 1st of August only because these all are generated on CLONEBOX itself, But unable to view the logs/output files which are prior to 1st August. What will you do & where to check?

Log, Output file path & location is stored in table FND_CONCURRENT_REQUESTS. Check select logfile_name, logfile_node_name, outfile_name, outfile_node_name from fnd_concurrent_requests where request_id=&requestid; where requestid is id of request for which you are not able to see log or out files. You should see output like /u01/PRODBOX/log/l123456.req, host1,/u01/PRODBOX/out/o123456.out, host1 Update it according to your cloned Instance Variables. Q. How to confirm if Report Server is Up & Running ? Report Server is started by executable rwmts60 on concurrent manager Node & this file is under $ORACLE_HOME/bin .execute command on your server like ps -ef | grep rwmts60 You should get output like applmgr ....... rwmts60 name=REP60_VISION where VISION is your Instance name. Else you can submit a request like "Active Users" with display set to PDF, check output & log file to see if report server can display PDF files. Q. What is difference between ICM, Standard Managers & CRM in Concurrent Manager ?  ICM stand for Internal Concurrent Manager, which controls other managers. If it finds other managers down , it checks & try to restart them. You can say it as administrator to other concurrent managers. It has other tasks as well.  Standard Manager These are normal managers which control/action on the requests & does batch or single request processing.  CRM acronym for Conflict Resolution Manager is used to resolve conflicts between managers & request. If a request is submitted whose execution is clashing or it is defined not to run while a particular type of request is running then such requests are actioned/assigned to CRM for Incompatibilities & Conflict resolution. Q. What is use of Apps listener ? Apps Listener usually running on All Oracle Applications 11i Nodes with listener alias as APPS_$SID is mainly used for listening requests for services like FNDFS & FNDSM. Q. How to start Apps listener ? In Oracle 11i, you have script adalnctl.sh which will start your apps listener. You can also start it by command lsnrctl start APPS_$SID (Replace sid by your Instance SID Name) Q. How to confirm if Apps Listener is Up & Running ? execute below command lsnrctl status APPS_$SID (replcae SID with your Instance Name) so If your SID is VISION then use lsnrctl status APPS_VISION out put should be like Services Summary... FNDFS has 1 service handler(s) FNDSM has 1 service handler(s) The command completed successfully Q. What is Web Listener ?

Web Listener is Web Server listener which is listening for web Services(HTTP) request. This listener is started by adapcctl.sh & defined by directive (Listen, Port) in httpd.conf for Web Server. When you initially type request like http://becomeappsdba.blogspot.com:80 to access application here port number 80 is Web Listener port. Q. How will you find Invalid Objects in database ? using query SQLPLUS> select count(*) from dba_objects where status like 'INVALID'; Q. How to compile Invalid Objects in database ? You can use adadmin utility to compile or you can use utlrp.sql script shipped with Oracle Database to compile Invalid Database Objects. Q. How to compile JSP in Oracle Apps ? You can use ojspCompile.pl perl script shipped with Oracle apps to compile JSP files. This script is under $JTF_TOP/admin/scripts. Sample compilation method is perl ojspCompile.pl --compile --quiet Q. What is difference between adpatch & opatch?  adpatch is utility to apply oracle apps Patches whereas  opatch is utility to apply database patches Q. Can you use both adpatch & opatch in Apps? Yes you have to use both in apps , for apps patches you will use adpatch utility and for applying database patch in apps you will opatch utility. Q. Where will you find forms configuration details apart from xml file ? Forms configuration at time of startup is in script adfrmctl.sh and appsweb_$CONTEXT_NAME.cfg (defined by environment variable FORMS60_WEB_CONFIG_FILE) for forms client connection used each time a user initiates forms connection. Q. What is forms server executable Name ? f60srvm Q. What are different modes of forms in which you can start Forms Server and which one is default ? You can start forms server in SOCKET or SERVLET by defualt Forms are configured to start in socket mode. Q. How you will start Discoverer in Oracle Apps 11i ? In order to start dicoverer you can use script addisctl.sh under $OAD_TOP/admin/scripts/ $CONTEXT_NAME or startall.sh under $ORACLE_HOME/discwb4/util (under Middle/Application Tier) Q. How many ORACLE HOME are Oracle Apps and whats significance of each ?

There are three $ORACLE_HOME in Oracle Apps, Two for Application Tier (Middle Tier) and One in Database Tier.  ORACLE_HOME 1 : On Application Tier used to store 8.0.6 techstack software . This is used by forms, reports & discoverer. ORACLE_HOME should point to this ORACLE_HOME which applying Apps Patch.  ORACLE_HOME 2: On Application Tier used by iAS (Web Server) techstack software. This is used by Web Listener & contains Apache.  ORACLE_HOME 3: On Database Tier used by Database Software usually 8i,9i or 10g database. Q. Where is HTML Cache stored in Oracle Apps Server ? Oracle HTML Cache is available at $COMMON_TOP/_pages for some previous versions you might find it in $OA_HTML/_pages Q. Where is plssql cache stored in Oracle Apps ? Usually two type of cache session & plssql stored under $IAS_ORACLE_HOME/Apache/modplsql/cache Q. What happens if you don't give cache size while defining Concurrent Manager ? Lets first understand what is cache size in Concurrent Manager. When Manager picks request from FND CONCURRENT REQUESTS Queues, it will pick up number of requests defined by cache size in one shot & will work on them before going to sleep. So in my views if you don't define cache size while defining CM then it will take default value 1, i.e. picking up one request per cycle.
Thanks to vish for pointing out that answer to above Q's copied from pervious Q's. If you find any disperancy do mail me.

Q. What are few profile options which you update after cloning ? Rapid clone updates profile options specific to site level . If you have any profile option set at other levels like server, responsibility, user....level then reset them. Q. How to retrieve SYSADMIN password ? If forgot password link is enabled and sysadmin account is configured with mail id user forget password link else you can reset sysadmin password via FNDCPASS. Q. If you have done two node Installation, First machine : Database and concurrent processing server. 2nd machine: form,web Which machine have admin server/node? Admin Server will be on First machine with concurrent processing server. More on Admin Server coming soon.. Q. Whats is TWO_TASK in Oracle Database ? TWO_TASK mocks your tns alias which you are going to use to connect to database. Lets assume you have database client with tns alias defined as PROD to connect to Database PROD on machine teachmeoracle.com listening on port 1521. Then usual way to connect is sqlplus username/passwd@PROD ; now if you don't want to use @PROD then you set TWO_TASK=PROD and then can simply use sqlplus username/passwd then sql will check that it has to connect to tnsalias define by value PROD i.e. TWO_TASK

Q. What is GWYUID ? GWYUID , stands for Gateway User ID and password. Usually like APPLSYSPUB/PUB Q. Where GWYUID defined & what is its used in Oracle Applications ? GWYUID is defined in dbc i.e. Database Connect Descriptor file . It is used to connect to database by thick clients. Q. What is difference between GUEST_USER_PWD (GUEST/ORACLE) & GWYUID ? GUEST_USER_PWD(Guest/Oracle) is used by JDBC Thin Client where as GWYUID is used by Thick Clients like via Forms Connections. Q. How to check number of forms users at any time ? Forms Connections initiate f60webmx connections so you can use ps -ef | grep f60webmx | wc -l Q. What is 0 & Y in FNDCPASS, FNDLOAD or WFLOAD ? 0 & Y are flags for FND Executable like FNDCPASS & FNDLOAD where 0 is request id (request ID 0 is assigned to request ID's which are not submitted via Submit Concurrent Request Form. 'Y' indicates the method of invocation. i.e. it is directly invoked from the command-line not from the Submit Request Form.
* Corrected by anonymous User (You will see lot of other info from him soon)

Q. In a Multi Node Installation, How will you find which node is running what SErvices ? You can query for table FND_NODES and check for column , SUPPORT_CP ( for Concurrent Manager) SUPPORT_FORMS ( for forms server) , SUPPPORT_WEB (Web Server), SUPPORT_ADMIN( Admin Server), and SUPPORT_DB for database tier. You can also check same from CONTEXT File (xml file under APPL_TOP/admin) Q. If your system has more than one Jinitiator, how will the system know, which one to pick. ? When client makes a forms connection in Oracle Applications, forms client session uses configuration file defined by environment variable FORMS60_WEB_CONFIG_FILE also called as appsweb config file. These days this file is of format appsweb_$CONTEXT.cfg The initiator version number defined by parameter jinit_ver_name in this file will be used . Q. While applying Apps patch using adpatch, if you want to hide the apps password, how will that be possible ? Use adpatch flags=hidepw while applying patches in apps to hide apps or system password being displayed on Users Screen. Q. What is importance of IMAP Server in Java Notification Mailer ? IMAP stands for Internet Message Access Protocol and Java Notification mailer require IMAP server for Inbound Processing of Notification Mails. Q. What is difference between Socket & Servlet Mode in Apps Forms ?

When forms run SOCKET Mode these are dedicated connection between Client Machine & Form Server (Started by adfrmctl.sh). When Forms run in servlet mode the forms requests are fulfilled by Jserv in Apache . There will be additional JVM for Forms Request in that case and you won't start form via adfrmctl.sh. Q. How to find OUI version ? OUI stands for Oracle Universal Installer. In order to find how to check OUI version Click Here on my "How to find Version in Oracle" Page. Q. What is make program in Unix ? make is utility in Unix/Linux to maintain , update & generate an file mainly executable. Q. If by mistake you/someone deleted FNDLIBR can this executable be restored if Yes, How & if no, what will you do ? Yes, you can restore FNDLIBR executables run adadmin on concurrent manager node select option 2. Maintain Applications Files menu then select 1. Relink Applications programs when prompts for Enter list of products to link ('all' for all products) [all] select FND when prompt for Generate specific executables for each selected product [No] ? YES select YES & from list of executables select FNDLIBR This will create new FNDLIBR executables. Q. What is .pls files which you see with apps ? .pls file stands for plsql files. In apps patch these files contain code to create package spec or package body or both. Q. What are .ldt & .lct files which you see in apps patch or with FNDLOAD ? .ldt & .lct stands for Loader datafile & Loader configuration files, used frequently in migrating customization, profile options, configuration data, etc.. across Instances. Q. What are .odf file in apps patch ? odf stands for Object Description Files used to create tables & other database objects. Q. What to find Form Server log files in forms ? Form Server Start up log file default location is $OAD_TOP/admin/log/$CONTEXT_NAME/f60svrm.txt Forms Run Time Diagnostics default location is $ORACLE_HOME/forms60/log/$CONTEXT_NAME Q. How to convert pll to pld file or pld file to pll ? Pll->Pld f60gen module=MSCOSCW3.pll module_type=library userid=apps/<passwd> module_access=file output_file=MSCOSCW1.pld script=yes

Pld -> pll f60gen module=MSCOSCW3.pld userid=apps/<passwd> module_type=library module_access=file output_file=MSCOSCW1.pll parse=y batch=yes compile_all=special Q. Is APPS_MRC Schema exists for MRC in 11.5.10 and higher ? No , apps_mrc schema is dropped with 11.5.10 Upgrade & 11.5.10 new Install. This is replaced by more Integrated Architecture. Q. If APPS_MRC schema is not used in 11.5.10 and higher then How MRC is working ? For products like Payable, Recievables which uses MRC and if MRC is enabled then each transaction table in base schema related to currency now has an assoicated MRC Subtables. Q. When you apply C driver patch does it require database to be Up & Why ? Yes , database & db listener should be Up when you apply any driver patch in apps. even if driver is not updating any database object connection is required to validate apps & other schema and to upload patch history information in database tables. Q. Can C driver in apps patch create Invalid Object in database ? No , C driver only copies files in File System. Database Object might be invalidated during D driver when these objects are created/dropped/modified. Q. What is dev60cgi & f60cgi ? cgi stands for Common Gateway Interface and these are Script Alias in Oracle Apps used to access forms server . Usually Form Server access directly via http://hostname:port/dev60cgi/f60cgi Q. Why does a worker fails in Oracle Apps Patch and few scenarios in which it failed for you ? This question sounds stupid but this is asked quite often in Apps DBA Interview. Apps Patch worker can fail in case it doesn't find expected data, object, files or any thing which driver is trying to update/edit/modify. Possible symptoms may be underlying tables/objects are invalid, a prereq patch is missing , login information is incorrect, inconsistency in seeded data... Q. What is difference between mod_osso & mod_ose in Oracle HTTP Server ? mod_osso is Oracle Single Sign-On Module where as mod_ose is module for Oracle Servlet Engine. mod_osso is module in Oracle's HTTP Server serves as Conduit between Oracle Apache Server & Singl SignOn Server where as mod_ose is also another module in Oracle's HTTP Server serves as conduit between Oracle Apache & Oracle Servlet Engine. Q. What is difference between COMPILE_ALL=SPECIAL and COMPILE=ALL while compiling Forms ? Both the options will compile all the PL/SQL in the resultant .FMX, .PLX, or .MMX file but COMPILE_ALL=YES also changes the cached version in the source .FMB, .PLL, or .MMB file. This confuses version control and build tools (CVS, Subversion, make, scons); they believe you've made significant changes to the source. COMPILE_ALL=SPECIAL does not do this. Q. What is ps -ef or ps command in Unix ? for work ex < 1 yr

ps is unix/linux utility or executable to find status of process. Used mainly to find if services/process is running or not. Q. What is GSM in Oracle application E-Business Suite ? GSM stands for Generic Service Management Framework. Oracle E-Business Suite consist of various compoennts like Forms, Reports, Web Server, Workflow, Concurrent Manager .. Earlier each service used to start at their own but managing these services (given that) they can be on various machines distributed across network. So Generic Service Management is extension of Concurrent Processing which manages all your services , provide fault tolerance (If some service is down ICM through FNDSM & other processes will try to start it even on remote server) With GSM all services are centrally managed via this Framework. Q. What is FNDSM ? FNDSM is executable & core component in GSM ( Generic Service Management Framework discussed above). You start FNDSM services via APPS listener on all Nodes in Application Tier in E-Business Suite. Q. What is iAS Patch ? iAS Patch are patches released to fix bugs associated with IAS_ORACLE_HOME (Web Server Component) Usually these are shiiped as Shell scripts & you apply iAS patches by executing Shell script. Note that by default ORACLE_HOME is pointing to 8.0.6 ORACLE_HOME and if you are applying iAS patch export ORACLE_HOME to iAS . You can do same by executing environment file under $IAS_ORACLE_HOME Q. If we run autoconfig which files will get effected ? In order to check list of files changes during Autoconfig , you can run adchkcfg utility which will generate HTML report. This report will list all files & profile options going to change when you run AutoConfig. Q. What is difference between .xml file & AutoConfig ? Autoconfig is Utility to configure your Oracle Application environment. .xml file is repository of all configuration from which AutoConfig picks configuration and polulates related files. Q. What is .lgi files ? lgi files are created with patching along with .log files . .lgi files are informative log files containing information related to patch. You can check .lgi files to see what activities patch has done. Usually informative logs. Q. How will you skip worker during patch ? If in your adctrl there are six option shown then seventh is hidden option.(If there are seven options visible then 8th option is to Skip worker depending on ad version). Q. Which two tables created at start of Apps Patch & drops at end of Patch ? FND_INSTALLED_PROCESSES &AD_DEFFERED_JOBS are the tables that get updated while applying a patch mainly d or unified driver. Q. How to compile an Oracle Reports file ? Utility adrepgen is used to compile Reports. Synatx is given below

adrepgen userid=apps\<psswd> source = $PRODUCT_TOP\srw\filename.rdf dest=$PRODUCT_TOP\srw\filename.rdf stype=rdffile dtype=rdffile logfile=x.log overwrite=yes batch=yes dunit=character Q. What is difference between AD_BUGS & AD_APPLID_PATCHES ? AD_BUGS holds information about the various Oracle Applications bugs whose fixes have been applied (ie. patched) in the Oracle Applications installation. AD_APPLIED_PATCHES holds information about the "distinct" Oracle Applications patches that have been applied. If 2 patches happen to have the same name but are different in content (eg. "merged" patches), then they are considered distinct and this table will therefore hold 2 records.
Thanks to Vikram Das for sharing below Q's/A's with readers.

Q. What exactly happens when you put an Oracle Apps instance in maintenance mode ? Maintenance mode provides a clear separation between normal runtime operation of Oracle Applications and system downtime for maintenance. Enabling the maintenance mode feature a) shuts down the Workflow Business Events System and b) sets up function security so that no Oracle Applications functions are available to users. Used only during AutoPatch sessions, maintenance mode ensures optimal performance and reduces downtime when applying a patch. (Source Metalink Note: 233044.1)

Concurrent Manager as name suggest is Manager which manages your concurrent requests in
Oracle Apps 11i

. You can assign single request or batch job & let concurrent manager manage these request. Without going to technical definition & explanation about them I will go straight to the point which you might be interested in looking as Sysadmin or Oracle Apps DBA i.e. from startup/shutdown to configuration then finally to tuning. So tie up your belt & get ready for ride to CM. How to Start/Stop Concurrent Manager ? In Oracle Applications 11i as you might already be aware that all startup shutdown scripts in 11i(11.5.10) are in $OAD_TOP/admin/script/$CONTEXT_NAME where $OAD_TOP is also called as $COMMON_TOP and $CONTEXT_NAME is your SID_hostname , lets say your SID or Instance Name is VISION and its on machine with name machine1 so your CONTEXT_NAME will be VISION_machine1. So script to start/stop concurrent manager is adcmctl.sh where ad (In my view) is application dba , cm is concurrent manager & ctl means control. Well if you really want to explore more I'll suggest you open this file & go through it . If you open this script you will see syntax to run it in start or stop mode so I am not going to spoon feed you by giving syntax. When you run adcmctl.sh it records execution of this command in text file with name adcmctl.txt at directory $COMMON_TOP/admin/log/$CONTEXT_NAME. adcmctl.sh called another script startmgr which in turn calls batchmgr in $FND_TOP/bin and this is actual file which fire up Internal Concurrent Manager Process (Open these two files as they are text file and read content in these files. Lets check important parameter in this file

 DISPLAY Set it to some valid XServer , if this is not set properly your reports display will fail (specially one with PDF or Bar code dislay)  DIAG_PARAM Diagnosis parameter it will take value Y or N with default N, If you encounter some error while starting Concurrent Manager you change this to Y and then extra logging will be enabled then check Concurrent Manager log file.  CONCSUB stands for CONC(Concurrent) SUB(Submit) , used to submit concurrent request like shut down concurrent manager.  SLEEP holds the number of seconds that the manager should wait between checks for new requests.  MGRNAME is the name of the manager for locking and log purposes. So you can find if this is icm(Internal Concurrent Manager), sm(Service Manager)  RESTART is set to N if the manager should not restart itself after a crash. Otherwise, it is an integer number of minutes. The manager will attempt a restart after an abnormal termination if the past invocation lasted for at least RESTART minutes.  PMON is the duration of time between process monitor checks (checks for failed workers). The unit of time is concurrent manager iterations (request table checks). Default Value is 20 .  QUESIZ is the duration of time between worker quantity checks (checks for number of active workers). The unit of time is process monitor checks. Please pay attention to PMON, QUESIZ and SLEEP as these will be used during Concurrent Manager Tuning. Where is Concurrent Manager Node ? If you don't know where is your CM here are few ways to find your it .  SQLPLUS> select node_name from apps.fnd_nodes where support_cp='Y';  In context file (SID_hostname.xml ) under $APPL_TOP/admin , check for variable < TIER_NODE oa_var="s_isConc" >YES< / TIER_NODE>, YES means this is Concurrent Manager Node.  Check for Administer Concurrent Manager request under SYSADMIN responsibility.  "ps -ef | grep FNDLIBR" under application User on all nodes where FND(Foundation) LIBR(Library) is executable. How to troubleshoot Concurrent Manager ? If as an Oracle Apps DBA or Sysadmin you started concurrent manager and encountered any error message, first place to start looking is log file of Internal Concurrent Manager . Log files are very critical in understanding or finding any problem. but where is my concurrent manager log file ? Default log file location for Apps Concurrent Manager is $APPLCSF/$APPLLOG/ and file name format is SID_MMDD.mgr (This is specific to 11i 11.5.10 and may very depedning on your Apps Version) where APPLCSF & APPLLOG are environment variables (If APPLCSF is not set while starting Concurrent Manager , logs will go to $FND_TOP/$APPLLOG), log file name format is your SID_ MM (Month on which CM last started) DD (Date on which CM last started) .mgr (Manager) From where its ICM ( Internal Concurrent Manager) picking SID_MMDD.mgr file name to record logs , to find this open file adcmctl.sh , you will see entry like dd=`date '+%m%d'`; MGR_NAME=$DB_NAME_$dd This has set Concurrent Manager name variable $mgrname

Now open file batchmgr here you will variable logfile= this is how application set Concurrent Manager log file name. Now depending on error message you have to troubleshoot & find solution to your problem. Serch it in Metalink or Oracle Apps Forums. Very common mistake which you often encounter when you view output of your concurrent request whose display is PDF or any format which require XServer to run is REP-3000 oracle toolkit this can be because of number of reasons but most common is that XServer is not running on Server & Screen which is defined in your display variable. Make sure you have Xvfb or Xvnc running on server where display is set. Check metalink note # 181244.1 Configuring VNC Or XVFB As The X Server For Applications 11i If you are on solaris & even after after installing Xvfb/Xvnc cannot access report Mail Me

Technical Interview Questions in E| Print | Oracle Apps mail Written by Anil Passi Sunday, 17 September 2006 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. New 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 Framework. For Oracle HRMS and Payroll interview questions visit HRMS Interview Questions For Oracle iProcurement interview questions, kindly visit iProc Interview Questions . Question: How will you migrate Oracle General Ledger Currencies and Sets of Books Definitions fromone environment to another without reKeying? Will you use FNDLOAD? 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 parameter to which we pass name of the "Request Group", hence securing the list of Concurrent 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 Personalizations? Answer:Functional Administrator Question: Can you list any one single limitation of Forms Personalization feature that was delivered with 11.5.10 Answer:You can not implement interactive messages, i.e. a message will give multiple 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 such that only these two Concurrent Programs are visible from that Run Request menu. 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="XXPO: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. There are several implementations that partition on GL_BALANCES. However your client must buy licenses to if they desire to partition tables. To avoid the cost of licensing you may suggest the clients may decide to permanently close their older GL Periods, such that historical records can be archived. Note: Before running the archival process the second time, you must clear down the archive table GL_ARCHIVE_BALANCES (don’t forget to export archive data to a tape). Question: What will be your partitioning strategy on GL_BALANCES? Your views please? Answer: This really depends upon how many periods are regularly reported upon, how many periods are left open etc. You can then decide to partition on period_name, or period ranges, or on the status of the GL Period. Question: Does Oracle support running of gather stats on SYS schema in Oracle Apps? Answer: If your Oracle Applications instance is on 10g, then you can decide to run stats for SYS schema. This can be done by exec dbms_stats.gather_schema_stats('SYS');

Alternately using command dbms_stats.gather_schema_stats('SYS',cascade=>TRUE,degree=>20); I will prefer the former with default values. If you wish to delete the stats for SYS use exec dbms_stats.delete_schema_stats('SYS'); You can schedule a dbms_job for running stats for SYS schema. Question: Can you use concurrent program "Gather Schema Statistics" to gather stats on sys schema in oracle apps? Answer: No, "Gather Schema Statistics" has no parameters for SYS schema. Please use dbms_job. Question: Which table is used to provide drill down from Oracle GL into sub-ledger? Answer: GL_IMPORT_REFERENCES Question: What is the significance of profile option “Node Trust Level” in Oracle Apps. Answer: If this profile option is set to a value of external against a server, then it signifies that the specific mid-tier is External i.e. it will be exposed to the www. In other words this server is not within the firewall of your client. The idea behind this profile option is to flag such middletier so that special restrictions can be applied against its security, which means a very restricted set of responsibilities will be available from such Middle-Tier. Question: What is the significance of profile option “Responsibility Trust Level”. Answer: In order to make a responsibility accessible from an external web tier, you must set profile option “Responsibility Trust Level” at responsibility level to “External”. Only those responsibilities that have this profile option against them will be accessible from External Middle tiers. Question: What else can you suggest to restrict the access to screens from external web tiers? Answer: You may use URL filtering within Apache. Question: What is the role of Document Manager in Oracle Purchasing? Answer: POXCON is an immediate concurrent program. It receives pipe signal from the application when a request is made for approval/reservations/receipts. Question: How to debug a document manager in Oracle Apps? Answer: Document manger runs within the concurrent manager in Oracle Applications. When an application uses a Document Manager, it sends a pipe signal which is picked up by the document manager.

There are two mechanisms by which to trace the document manager 1. Set the debugging on by using profile option STEP 1. Set profile option "Concurrent:Debug Flags" to TCTM1 This profile should only generate debugs when set at Site level(I think, as I have only tried site), because Document Manager runs in a different session. STEP 2. Bounce the Document Managers STEP 3. Retry the Workflow to generate debugs. STEP 4. Reset profile option "Concurrent:Debug Flags" to blank STEP 5. have a look at debug information in table fnd_concurrent_debug_info 2. Enable tracing for the document managers This can be done by setting profile option “Initialization SQL Statement – Custom” against your username before reproducing the issue. The value of this profile will be set so as to enable trace using event 10046, level 12. Question: You have written a Java Concurrent Program in Oracle Apps. You want to modify the CLASSPATH such that new class CLASSPATH is effective just for this program. Answer: In the options field of the concurrent program you can enter something similar to below. -cp <your custom lib pathused by Java Conc Prog> :/home/xxvisiondev/XXDEVDB/comn/java/appsborg.zip:/home/xxvisiondev/XXDEVDB/comn/j ava Question: How will you open a bc4j package in jdeveloper? Answer: Oracle ships a file named server.xml with each bc4j package. You will need to ftp that file alongside other bc4j objects(VO’s, EO’s, AM, Classes etc). Opening the server.xml will load the complete package starting from AM(application module). This is a mandatory step when building Extensions to framework. Question: In OA Framework Self-Service screen, you wish to disable a tab. How will you do it? Answer: Generally speaking, the tabs on a OA Framework page are nothing but the SubMenus. By entering menu exclusion against the responsibility, you can remove the tab from self service page. Question: In self service, you wish to change the background color and the foreground text of the OA Framework screens to meet your corporate standards. How will you do it? Answer: You will need to do the below steps a….Go to Mid Tier, and open $OA_HTML/cabo/styles/custom.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> c… cd $OA_HTML/cabo/styles/cache d…Take a backup of all the css files. e…Delete all the files of following pattern oracle-desktop*.css The idea here is to delete the cache. Next time when you logon to Oracle Apps Self Service, the Framework will rebuild the css file if found missing for your browser. Question: Can you extend and substitue a root AM ( Application Module) in OA Framework using JDeveloper. Answer: You can extend the AM in jDeveloper, but it doesn’t work( at least it didn’t work in 11.5.9). I am hopeful that Oracle will deliver a solution to this in the future. Question: In a workflow notification, you have a free text response field where the user enters the Vendor Number for the new vendor. You want to validate the value entered in the notification response field upon the submission of a response. How will you do it? Answer: You will need to attach a post notification function to the Workflow Notification. The PL/SQL code will look similar to below:The below code will display an error in the notification when user attempts to create a Duplicate Vendor Number. PROCEDURE validate_response_from_notif ( itemtype IN VARCHAR2 ,itemkey IN VARCHAR2 ,actid IN NUMBER ,funcmode IN VARCHAR2 ,RESULT IN OUT VARCHAR2 ) IS l_nid NUMBER; l_activity_result_code VARCHAR2(200); v_newly_entered_vendor_num VARCHAR2(50); CURSOR c_get_response_for_new_vendor IS SELECT wl.lookup_code FROM wf_notification_attributes wna ,wf_notifications wn ,wf_message_attributes_vl wma ,wf_lookups wl WHERE wna.notification_id = l_nid AND wna.notification_id = wn.notification_id AND wn.message_name = wma.message_name AND wn.message_type = wma.message_type AND wna.NAME = wma.NAME AND wma.SUBTYPE = 'RESPOND' AND wma.format = wl.lookup_type AND wna.text_value = wl.lookup_code

AND wma.TYPE = 'LOOKUP' AND decode(wma.NAME, 'RESULT', 'RESULT', 'NORESULT') = 'RESULT'; BEGIN IF (funcmode IN ('RESPOND')) THEN l_nid := wf_engine.context_nid; OPEN c_get_response_for_new_vendor; FETCH c_get_response_for_new_vendor INTO l_activity_result_code; CLOSE c_get_response_for_new_vendor; v_newly_entered_vendor_num := wf_notification.getattrtext(l_nid,'NEWLY_ENTERED_VENDOR_NUM_4_PO'); 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; END IF; END IF; EXCEPTION WHEN OTHERS THEN RESULT := SQLERRM; END validate_response_from_notif; Question: How to make concurrent program end with warning? Answer: If the concurrent program is of type PL/SQL, you can assign a value of 1 to the “retcode” OUT Parameter. For a Java Concurrent program, use the code similar to below ReqCompletion lRC; //get handle on request completion object for reporting status lRC = pCpContext.getReqCompletion(); lRC.setCompletion(ReqCompletion.WARNING, "WARNING"); Question: How do you link a Host type concurrent program to Concurrent Manager? Answer: Assuming your executable script is LOADPO.prog, then use the commands below 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. Answer: Use table ad_bugs, in which column bug_number is the patch number. SELECT bug_number

,to_char(creation_date, 'DD-MON-YYYY HH24:MI:SS') dated FROM apps.ad_bugs WHERE bug_number = TRIM('&bug_number') ; Question: How do you send a particular Oracle Apps Workflow Activity/Function within a workflow process into background mode. Answer: If cost of the workflow activity is greater than 50, then the workflow activity will be processed in background mode only, and it won’t be processed in online mode. Question: What are the various ways to kick-off a workflow Answer: You can eiter use wf_engine.start_process or you can attach a runnable process such ghat it subscribes to a workflow event. Question: When starting (kicking off) an oracle workflow process, how do you ensure that it happens in a background mode? --a)if initiating the process using start_process, do the below wf_engine.threshold := -1; wf_engine.createprocess(l_itemtype ,l_itemkey ,'<YOUR PROCESS NAME>'); wf_engine.startprocess(l_itemtype, l_itemkey) --B) When initiating the workflow process through an event subscription, set the Execution Condition Phase to be equal to or above 100 for it to be executed by background process. Question: On 10g, how will you use awr? Answer: By running below scripts. These are both the same scripts, but with differing parameters. $ORACLE_HOME/rdbms/admin/awrrpt.sql $ORACLE_HOME/rdbms/admin/awrrpti.sql Question : How will you configure Apache to run in Debug mode, specifically usefull when debugging iProcurement ( prior to 11.5.10). Answer: After 11.5.10, FND Logging can be used for debugging Oracle iProcurement. Prior to 11.5.10 ----STEPS IN A NUTSHELL----cd $ORACLE_HOME/../iAS/Apache vi $ORACLE_HOME/../iAS/Apache/Jserv/etc/ssp_init.txt DebugOutput=/home/<<SID>>/ora9/iAS/Apache/Apache/logs/debug.log DebugLevel=5 DebugSwitch=ON vi $ORACLE_HOME/../iAS/Apache/Jserv/etc/jserv.conf ApJServLogLevel debug

vi $ORACLE_HOME/../iAS/Apache/Jserv/etc/jserv.properties log=true Question: How will you add a new column to a List Of Values ( LOV ) in Oracle Applications Framework? Can this be done without customization? Answer: Yes, this can be done without customization, i.e. by using OA Framework Extension coupled with Personalization. Implement the following Steps :a) Extend the VO ( View Object ), to implement the new SQL required to support the LOV. b) Substitute the base VO, by using jpximport [ similar to as explained in Link ] c) Personalize the LOV Region, by clicking on Add New Item. While adding the new Item, you will cross reference the newly added column to VO. Question: Can you do fnd_request.submit_request from SQL Plus in Oracle? Answer: You will need to initialize the global variables first using fnd_global.initialize DECLARE v_session_id INTEGER := userenv('sessionid') ; BEGIN fnd_global.initialize ( SESSION_ID => v_session_id ,USER_ID => <your user id from fnd_user.user_id> ,RESP_ID => <You may use Examine from the screen PROFILE/RESP_ID> ,RESP_APPL_ID => <You may use Examine from the screen PROFILE/RESP_APPL_ID> ,SECURITY_GROUP_ID => 0 ,SITE_ID => NULL ,LOGIN_ID => 3115003--Any number here ,CONC_LOGIN_ID => NULL ,PROG_APPL_ID => NULL ,CONC_PROGRAM_ID => NULL ,CONC_REQUEST_ID => NULL ,CONC_PRIORITY_REQUEST => NULL ); commit ; END ; / Optionally you may use fnd_global.apps_initialize, which internally calls fnd_global.initialize fnd_global.apps_initialize(user_id => :user_id, resp_id => :resp_id, resp_appl_id => :resp_appl_id, security_group_id => :security_group_id, server_id => :server_id);

By doing the above, your global variables upon which Concurrent Managers depend upon will be populated. This will be equivalent to logging into Oracle Apps and submitting the concurrent request from a responsibility. Question: You are told that the certain steps in the Oracle Apps Form/Screen are running slow, and you are asked to tune it. How do you go about it. Answer: First thing to do is to enable trace. Preferably, enable the trace with Bind Variables. This can be done by selecting menu Help/Diagnostics/Trace/”Trace With Binds and Wait” Internally Oracle Forms issues a statement similar to below:alter session set events='10046 trace name context forever, level 12' ;

Enable Trace with Bind Variables in Apps This will enable the trace with Bind Variable values being shown in the trace file. 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, reviewing plans and stats in trace file can help identify the slow performing SQL.

Question: What is the difference between running Gather Stats and “Program – Optimizer[RGOPTM]” in Oracle General Ledger? Answer: “Gather Stats” will simply gather the stats against existing tables, indexes etc. However Gather Stats does not create any new indexes. But “Program – Optimizer[RGOPTM]” can create indexes on GL_CODE_COMBINATIONS, provided accounting segment has the indexed flag enabled,

Question: You have written a piece of code in POR_CUSTOM_PKG for Oracle iProcurement, but its not taking any effect? What may be the reason? Answer: Depending upon which procedure in POR_CUSTOM_PKG has been programmed, one 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 than loading their catalogs locally in Oracle iProcurement? Answer: Punchout has several advantages like, Catalogs don’t need to be loaded locally saves space on your system. You can get up-to-date list of catalogs by punching out and also you get the benefit of up-to-date pricing information on vendor items. Question: Does oracle have a test environment on exchange? Answer: http://testexchange.oracle.com Question: Does Oracle Grants use its own schema or does it uses Oracle Project Accounting schema? Answer: Although Oracle Grants has its own schema i.e. GMS, it reuses many of the tables with in Oracle Projects Schema like PA_PROJECTS_ALL, PA_EXPENDITURE_ITEMS_ALL, PA_EXPENDITURE_TYPES etc. Question: How to make an Oracle Report Type concurrent program produce an excel friendly output? Answer: Comma can be concatenated between the column values, however a better option is to create tab delimited file, as it takes care of commas within the string. For this, use SQL similar to below in the report select 'a' || chr(9) || 'b' from dual; Question: What are the settings needed for printing bitmap reports? Answer: Get your DBA to configure two files i.e. uiprint.txt & default.ppd For details, refer to Metalink Note 189708.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. In APPS, the default database setting enforces a commit at the end of each session. Hence no explicit COMMIT is required.

Question: What is the best way to add debugging to the code in apps? Answer: Use fnd_log.string , i.e. FND Logging. Behind the scenes Oracles FND Logging uses autonomous transaction to insert records in a table named fnd_log_messages. For example DECLARE BEGIN fnd_log.STRING(log_level => fnd_log.level_statement ,module => 'xxxx ' || 'pkg/procedurename ' ,message => 'your debug message here'); END ; 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, how would you do it? Will you write a database triggers on TCA Tables? Answer: There are various pre-defined Events that are invoked from the Oracle TCA API’s. TCA was Oracle’s first initiative towards a fully API based approach, which means the screen and the processes all use the same set of APIs for doing same task. In order to take an action when these events occur, you can subscribe a custom PL/SQL procedure or a Custom Workflow to these events. Some of the important TCA events are listed below:oracle.apps.ar.hz.ContactPoint.update oracle.apps.ar.hz.CustAccount.create oracle.apps.ar.hz.CustAccount.update oracle.apps.ar.hz.CustAcctSite.create oracle.apps.ar.hz.CustAcctSite.update oracle.apps.ar.hz.CustAcctSiteUse.create oracle.apps.ar.hz.CustAcctSiteUse.update oracle.apps.ar.hz.Location.create oracle.apps.ar.hz.Location.update oracle.apps.ar.hz.Organization.create oracle.apps.ar.hz.Organization.update oracle.apps.ar.hz.PartySite.create oracle.apps.ar.hz.PartySite.update oracle.apps.ar.hz.PartySiteUse.create oracle.apps.ar.hz.PartySiteUse.update oracle.apps.ar.hz.Person.create oracle.apps.ar.hz.Person.update Question: In Oracle OA Framework, is the MDS page/document definition stored in database or

in the file system? Answer: The MDS document details are loaded into database, in the following sets of tables. JDR_ATTRIBUTES JDR_ATTRIBUTES_TRANS JDR_COMPONENTS JDR_PATHS The Document is loaded via XMLImporter, as detailed in XMLImporter Article Question: In a Oracle Report data group, you have a “data link” between two queries. How do you ensure that the data link is made Outer Joined? Answer: The data link is an Outer Join by default. 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, MDS defines the context of the logged in user. Based upon this logged in context, all applicable personalization are applied by MDS. Given that substitutions are loaded as site level personalizations, MDS applies the substituted BC4J objects along with the personalizations. The above listed steps occur as soon as Root Application module has been loaded. The benefit of using Substitution is to extend the OA Framework without customization of the underlying code. This is of great help during Upgrades. Entity Objects and Validation Objects can be substituted. I think Root AM’s can’t be substituted given that substitution kicks off after Root AM gets loaded. Question: In OA Framework, once your application has been extended by substitutions, is it possible to revert back to remove those substitutions? Answer: yes, by setting profile option “Disable Self-Service Personal%” to Yes, keeping in mind that all your personalizations will get disabled by this profile option. This profile is also very useful when debugging your OA Framework based application in the event of some error. By disabling the personalization via profile, you can isolate the error, i.e. is being caused by your extension/substitution code or by Oracle’s standard functionality. Question: How can you import invoices into Oracle Receivables? Answer: You can either use AutoInvoice by populating tables RA_INTERFACE_LINES_ALL, RA_INTERFACE_DISTRIBUTIONS_ALL & RA_INTERFACE_SALESCREDITS_ALL. Alternately you may decide to use API ar_invoice_api_pub.create_single_invoice for Receivables Invoice Import. Question: How do you setup a context sensitive flexfield Answer: Note: I will publish a white paper to sho step by step approach. But for the purpose of your interview, a brief explanation is…a)Create a reference field, b) Use that reference field in “Context Field” section of DFF Segment screen c) For each possible value of the context field, you will need to create one record in section “Context Field Value” ( beneath

the global data elements). Question: Does Oracle iProcurement use same tables as Oracle Purchasing? Answer: Yes, iProcurement uses the same set of requisition tables as are used by Core Purchasing. Question: What is the name of the schema for tables in tca Answer: AR (at least till 11.5.10, not sure about 11.5.10). Question: Are suppliers a part of TCA? Answer: Unfortunately not yet. However, Release 12 will be merging Suppliers into TCA. Question: What is the link between order management and purchasing Answer: Internal Requisitions get translated into Internal Sales Orders. Question: How would you know if the purchase order XML has been transmitted to vendor, looking at the tables. Answer: The XML delivery status can be found from a table named ecx_oxta_logmsg. Use the query below SELECT edoc.document_number ,decode(eol.result_code, 1000, 'Success', 'Failure') AS status ,eol.result_text FROM ecx_oxta_logmsg eol ,ecx_doclogs edoc ,ecx_outbound_logs eog WHERE edoc.msgid = eol.sender_message_id AND eog.out_msgid = edoc.msgid ORDER BY edoc.document_number Question: You have done forms personalization, now how will you move it from one environment to another? Answer: Use FNDLOAD. For examples visit FNDLOAD Article Question: What are the key benefits of forms personalization over custom.pll? Answer: -->Multiple users can develop forms personalization at any given point in time. -->It is fairly easy to enable and disable forms personalizations. -->A programmer is not required to do simple things such as hide/disable fields or buttons. -->Provides more visibility on customizations to the screen. Question: Tell me some limitations of forms personalization when compared to CUSTOM.pll? Answer: -->Can't create record group queries, hence can’t implement LOV Query changes. -->Can't make things interactive, i.e. can’t have a message box that gives multiple choices for

example Proceed or Stop etc. Question: Give me one example where apps uses partitioning? Answer: WF_LOCAL_ROLES Question: Give me one example of securing attributes in iProcurement. Answer: You can define Realm to bundle suppliers into a Category. Such realm can then be assigned to the User using Define User Screen. Security Attribute ICX_POR_REALM_ID can be used. By doing so, the user will only be made visible those Punchout suppliers that belong to the realm against their securing attributes. Question: Can you send blob attachments via workflow notifications? Answer: Yes, you can send BLOB Attachments.

Restart or Bounce Apache in Oracle Apps 11i
I find this script very handy for bouncing the Apache, specially when working on Self Service Applications. Please find the two commands that I use for bouncing the Apache $COMMON_TOP/admin/scripts/$TWO_TASK*/adapcctl.sh stop $COMMON_TOP/admin/scripts/$TWO_TASK*/adapcctl.sh start Of course this needs to be done in Middle Tier of Oracle Applications. In case you have modified any java or class file in OAF ( Oracle Applications Framework ), then Apache bounce becomes mandatory for those changes to take effect. In case you modify and load the XML Document in Oracle Framework, then it is noticed, for those XML changes to take effect, complete bounce of Middle Tier is required in Oracle Apps. If your client is still stuck with AK Developer, then Apache bounce will be required after akload has been executed. 1. What happens if the ICM goes down? All the other managers will keep working. ICM only takes care of the queue control requests, which means starting up and shutting down other concurrent managers. 2. How will you speed up the patching process? You can merge multiple patches.

You can create a response file for non-interactive patching. You can apply patches with options (nocompiledb, nomaintainmrc, nocompilejsp) and run these once after applying all the patches. 3. How will you handle an error during patching? Look at the log of the failed worker, identify and rectify the error and restart the worker using adctrl utility. 4. Provide a high-level overview of the cloning process and post-clone manual steps. Run pre-clone on the source (all tiers), duplicate the DB using RMAN (or restore the DB from a hot or cold backup), copy the file systems and then run post-clone on the target (all tiers). Manual steps (there can be many more): 1. Change all non-site profile option values (RapidClone only changes site-level profile options). 2. Modify workflow and concurrent manager tables. 3. Change printers. 5. Provide an introduction to AutoConfig. How does AutoConfig know which value from the XML file needs to be put in which file? AutoConfig uses a context file to maintain key configuration files. A context file is an XML file in the $APPL_TOP/admin directory and is the centralized repository. When you run AutoConfig it reads the XML files and creates all the AutoConfig managed configuration files. For each configuration file maintained by AutoConfig, there exists a template file which determines which values to pick from the XML file. 6. Can you tell me a few tests you will do to troubleshoot self-service login problems? Which profile options and files will you check? 1. Check guest user/password in the DBC file, profile option guest user/password, the DB. 2. Check whether apache/jserv is up. 3. Run IsItWorking, FND_WEB.PING, aoljtest, etc. 7. What could be wrong if you are unable to view concurrent manager log and output files? Most likely the FNDFS listener is down. Look at the value of OUTFILE_NODE_NAME and LOGFILE_NODE_NAME in the FND_CONCURRENT_REQUESTS table. Look at the FND_NODES table. Look at the FNDFS_ entry in tnsnames.ora. 8. How will you change the location of concurrent manager log and output files? The location of log files is determined by parameter $APPLCSF/$APPLLOG and that of output files by $APPLCSF/$APPLOUT. 9. If the user is experiencing performance issues, how will you go about finding the cause?

1. Trace his session (with waits) and use tkprof to analyze the trace file. 2. Take a statspack report and analyze it. 3. O/s monitoring using top/iostat/sar/vmstat. 4. Check for any network bottleneck by using basic tests like ping results. 10. How will you change the apps password? 1. 2. Use FNDCPASS to change APPS password. 3. Manually modify wdbsvr.app/cgiCMD.dat files. 4. Change any DB links pointing from other instances. 11. Provide the location of the DBC file and explain its significance and how applications know the name of the DBC file. 1. Location: $FND_TOP/secure directory. 2. Significance: Points to the DB server amongst other things. 3. The application knows the name of the DBC file by using profile option "Applications Database Id." Set # 1 : Compatibility On which databases can Oracle Applications be installed on (i.e. Oracle, SQL Server, Informix, etc.) ? Answer :Oracle database only. Set # 2 : FND vs. AOL What is the difference between “FND” and “AOL” ? What are they ?What do they mean ? Answer:- FND is the system name of core Application Object Library(AOL).AOL consists of the entire schema which forms the base layer for Functioning of Oracle Applications(without which the Apps can not work). Set # 3 : Schemas What is the difference between the following schemas and when are they being Used by the system : 1) Apps 2) Applsys 3) Applsyspub Answer :Apps is the database schema which used for connecting applications(front end) user It internally uses the Applsyspub user for connecting .It comprises synonyms for all the individual module’s objects. Concurrent Requests also use the apps db schema for executing the requests. Applsys is a schema in oracle applications which contains the information about the FND or Foundation Tables. Applsyspub is the schema which used internally in Oracle Applications (Gateway User) by application Users. Set # 4 : Techstack What do we mean by Techstack ? What comprises the Techstack ? Answer:-

In Oracle Applications the Technical Software Components which comprises of the entire Applications is called Techstack. They are 1. Db Techstack.—(Database (Oracle RDBMS ) Software. 2. Applications Techstack.(in 11i the 8.06 (i.e. for forms ,reports and for PL/SQL and other libraries) and 8.1.7 for Application Server).(in R12 the releases 10.1.2 and 10.1.3). Set # 5 : “GL” Database User When does the system logs in as Database user “gl” and why ? Answer:When using the General Ledger Module Responsibilities the system logs in as Database user gl and this is done for database security. Set # 6 : Password Change

Before changing password for “apps”, what would you say are the top three Precautions to be taken (before doing in Production) ? Can we change the password for user “guest” ? Why ? Answer:Ensure that downtime is taken for changing the apps password. Ensure that no application users are connected Ensure that no concurrent requests are running . And make the application tier down and change the apps user password. This is best approach. We can change the Guest user’s password. This is done for advanced security. Set # 7 : “xml” vs. “dbc” files What’s the difference between the “xml” file and the “dbc” file ? How are they Being used by the system ? Answer :Xml file in oracle Applications is the context file which is maintained by Autoconfig to maintain the Applications configuration in a centralized manner. Dbc file is the file used to connect the application user to the database. Set # 8 : TWO_TASK What is the “TWO_TASK” variable ? How does Oracle Applications uses it ? Answer:Oracle Applications System maintains TWO_TASK variable for the applications to work properly. It will be common for database tier and application tier. So that from applications tier users can connect to the database without issues. Set # 9 : $AD_TOP What is $AD_TOP ? What does “AD” stand for ?

Which type of user mostly uses this directory ? Answer :AD_TOP is the TOP for Application DBA Module which contains all the essential utilities and files used for maintaining the Oracle Applications System. AD stand for Applications DBA. Application DBA’s mostly use this directory. Set # 10: Workflows What is a workflow? How does Oracle Applications uses workflows? What would be the top three things to monitor for workflows ? What would be the top three typical questions to ask about workflows ? Does a Workflow have a version ? If so, how can we find out ? Answer :Workflow is a module in Oracle Applications .It is also a Standalone Product. Normally workflow is used to carry out the flow of work by approving system and this is mostly used in Order Management. The top three things to monitor workflow would be. 1.Login as Sysadmin and by using the workflow Administrator web applications monitor for any pending or errored out workflows and correct it. 2.Make sure the “Synch workflow tables” concurrent program is running properly without errors and monitoring the Workflow Managers. 3.Monitor the health of Workflow Notification Mailers . The Top three typical questions to ask about workflows are. 1.How will you configure a workflow Notification Mailers. 2.How will you navigate and troubleshoot for finding out errored workflow notifications. 3.How will you troubleshoot that if workflow notification mailer is not working properly(not sending e-mails). Workflow has a Version, by executing the wfver.sql in FND_TOP/sql we can find this component’s version. How will you find the pending and running concurrent requests from SQL prompt? after logging as apps user in sqlplus run this sql $FND_TOP/sql/afrqrun.sql This will show the pending and running concurrent requests in the instance Newly Added What is Transaction Manager(Concurrent Manager) and its purpose? Ans:Transaction Manager is defined so that it has a special pool of database resource to execute concurrent requests. Its not like other concurrent managers and its not dependent on any concurrent queue tables. i.e when a client submits concurrent request which is assigned to the Transaction Manager then it

immediately executes that conc request. This manager is used to run high priority concurrent requests. How can you restrict application access to only certain users? Ans :- By editing the apps.conf configuration file in Apache/conf directory and adding the directive and by giving Allow and bouncing the apache. Other users will get 403 forbidden error. You can also customize the error message in httpd.conf. Question :- What are the different options in adpatch and explain about those. adpatch apply=no This is done for testing the patch with the instance.This will not apply the patch but generate a logfile which we can check. adpatch preinstall=y mostly used in upgrades or specifically when told in a patch readme,This option applies ad updates first then do the rest nocompiledb nocompilejsp nodatabaseportion nocopyportion nogenerateportion nojcopy nogenform nolink adpatch option=hotpatch(for hot mode)–not adivisable for some patches(especially hr global like that).. How will you increase workers during patching in apps? Although there is noway to increase the workers dynamically in adpatch,what you can do is fail all the workers using adcontroller and came out of the adpatch session and restart the patching using adpatch,now the second time increase the workers. How will you reduce downtime in patching(adpatch) during upgrade or normally? you can apply the copyportion and compile portion in a test system to application tier and when doing the production upgrade just apply the database portion and copy the application filesystem,also you use nocompiledb in many of the patches and finally compile the apps schema.

RapidClone for Mission Critical Apps Systems
Generally the Rapid Clone Procedure always talks about cloning with Cold Backups. But question arises as how to clone mission critical apps environments. Preclone procedure is the same for mission critical systems — as you can execute preclone when the system is online.

you can use the hotbackups either manual or by RMAN to restore the apps database. after copying the db stack in the target system run adcfgclone.pl dbTechstack to make the target dbms_oraclehome ok, then use the standard recovery procedures either manually or using RMAN to recover the database. You can very well copy the apps filesystem while the system is up as this will not cause any issues. and you can finish the clone by running adcfgclone.pl appsTier. So It is always possible to clone mission critical environments with hotbackup and RMAN backups.

Oracle Apps R12 adcfgclone.pl prompts(rapid clone r12)
In this post I have given the actual prompts in the stage adcfgclone.pl(prompts).It is very useful for those who have not used R12 rapid clone. [applvis@r12apps bin]$ perl adcfgclone.pl appsTier Using Java from /u02/oracle/apps/apps_st/comn/clone/bin/../jre Enter the APPS user password: JDBCCLASSES = /u02/oracle/apps/apps_st/comn/clone/jlib/ojdbc14.jar XMLPCLASSES = /u02/oracle/apps/apps_st/comn/clone/jlib/xmlparserv2.jar LOCAL_CPATH = / u02/oracle/apps/apps_st/comn/clone/jlib/java:/u02/oracle/apps/apps_st/comn/clone/jlib/xmlparser v2.jar:/u02/oracle/apps/apps_st/comn/clone/ jlib/ojdbc14.jar First Creating a new context file for the cloned system. The program is going to ask you for information about the new system: applvis = applvis dba = dba Running:

/u02/oracle/apps/apps_st/comn/clone/bin/../jre/bin/java -Xmx600M -cp / u02/oracle/apps/apps_st/comn/clone/jlib/java:/u02/oracle/apps/apps_st/comn/clone/jlib/xmlparser v2.jar:/u02/oracle/apps/apps_st/comn/clone/ jlib/ojdbc14.jar oracle.apps.ad.context.CloneContext -e /u02/oracle/apps/apps_st/comn/clone/bin/../context/apps/CTXORIG.xml -validate -pairsfile /tmp/adpairsfile.lst -stage /u02/oracle/apps/apps_st/comn/clone 2> /tmp/adcfgclone.err; echo $? > /tmp/adcfgclone.res Enter the APPS password : apps Log file located at /u02/oracle/apps/apps_st/comn/clone/bin/CloneContext_06291504.log Provide the values required for creation of the new APPL_TOP Context file. Target hostname (virtual or normal) [r12apps]: Target system database SID:vis Target system database server node [r12apps]: Target system base directory for source homes:/u02/oracle Target system base directory for instance homes [/u02/oracle/inst]: Do you want to preserve the Display set to sourcehost:0.0 (y/n) [y] ?:n Target system Display [r12apps:0.0]: Do you want the the target system to have the same port values as the source system (y/n) [y] ?:n Clone Context uses the same port pool mechanism as the Rapid Install. Once you choose a port pool, Clone Context will validate the port availability. Enter the port pool to be used for the target system node [0-99]: 55 Checking the port pool 55 done: Port Pool 55 is free Report file located at /u02/oracle/inst/apps/vis_r12apps/admin/out/portpool.lst Complete port information available at /u02/oracle/inst/apps/vis_r12apps/admin/out/portpool.lst

UTL_FILE_DIR on database tier consists of the following directories. 1. /usr/tmp 2. /u02/oracle/db/tech_st/10.2.0/admin/vis_r12apps/udump 3. /u02/oracle/db/tech_st/10.2.0/appsutil/outbound/vis_r12apps 4. /usr/tmp Choose a value which will be set as APPLPTMP value on the target node [1]:3 Creating the new APPL_TOP Context file from : /u02/oracle/apps/apps_st/comn/clone/context/apps/adxmlctx.tmp The new APPL_TOP context file has been created : /u02/oracle/inst/apps/vis_r12apps/appl/admin/vis_r12apps.xml Log file located at /u02/oracle/apps/apps_st/comn/clone/bin/CloneContext_06291504.log Check logfile /u02/oracle/apps/apps_st/comn/clone/bin/CloneContext_06291504.log for details. Running Rapid Clone with command: perl /u02/oracle/apps/apps_st/comn/clone/bin/adclone.pl java=/u02/oracle/apps/apps_st/comn/clone/bin/../jre mode=apply stage=/u02/oracle/apps/apps_st/comn/clone component=appsTier method=CUSTOM appctxtg=/u02/oracle/inst/apps/vis_r12apps/appl/admin/vis_r12apps.xml showProgress contextValidated=true Running: perl /u02/oracle/apps/apps_st/comn/clone/bin/adclone.pl java=/u02/oracle/apps/apps_st/comn/clone/bin/../jre mode=apply stage=/u02/oracle/apps/apps_st/comn/clone component=appsTier method=CUSTOM appctxtg=/u02/oracle/inst/apps/vis_r12apps/appl/admin/vis_r12apps.xml showProgress contextValidated=true XMLPARSER: /u02/oracle/apps/apps_st/comn/clone/jlib/xmlparserv2.jar JDBC: /u02/oracle/apps/apps_st/comn/clone/jlib/ojdbc14.jar CLASSPATH: / u02/oracle/apps/apps_st/comn/clone/jlib/xmlparserv2.jar:/u02/oracle/apps/apps_st/comn/clone/jli b/ojdbc14.jar:/u02/oracle/apps/apps_st/comn / clone/jlib/java:/u02/oracle/apps/apps_st/comn/clone/jlib/oui/OraInstaller.jar:/u02/oracle/apps/app

s_st/comn/clone/jlib/oui/ewt3.jar:/u02/o racle/apps/apps_st/comn/clone/jlib/oui/share.jar:/u02/oracle/apps/apps_st/comn/clone/jlib/oui/srv m.jar:/u02/oracle/apps/apps_st/comn/clone/ jlib/ojmisc.jar OUI CLASSPATH: / u02/oracle/apps/apps_st/comn/clone/jlib/oui/OraInstaller.jar:/u02/oracle/apps/apps_st/comn/clone /jlib/oui/ewt3.jar:/u02/oracle/apps/apps_s t/comn/clone/jlib/oui/xmlparserv2.jar:/u02/oracle/apps/apps_st/comn/clone/jlib/oui/share.jar:/u02 /oracle/apps/apps_st/comn/clone/jlib/oui/s rvm.jar:/u02/oracle/apps/apps_st/comn/clone/jlib/ojmisc.jar:/u02/oracle/apps/apps_st/comn/clone /jlib/xmlparserv2.jar:/u02/oracle/apps/apps_ st/comn/clone/jlib/ojdbc14.jar:/u02/oracle/apps/apps_st/comn/clone/jlib/java Setting LD_LIBRARY_PATH to /u02/oracle/apps/apps_st/comn/clone/oui/lib/linux Beginning application tier Apply – Mon Jun 29 15:05:14 2009 /u02/oracle/apps/apps_st/comn/clone/bin/../jre/bin/java -Xmx600M -DCONTEXT_VALIDATED=true -Doracle.installer.oui_loc=/oui -classpath / u02/oracle/apps/apps_st/comn/clone/jlib/xmlparserv2.jar:/u02/oracle/apps/apps_st/comn/clone/jli b/ojdbc14.jar:/u02/oracle/apps/apps_st/comn / clone/jlib/java:/u02/oracle/apps/apps_st/comn/clone/jlib/oui/OraInstaller.jar:/u02/oracle/apps/app s_st/comn/clone/jlib/oui/ewt3.jar:/u02/o racle/apps/apps_st/comn/clone/jlib/oui/share.jar:/u02/oracle/apps/apps_st/comn/clone/jlib/oui/srv m.jar:/u02/oracle/apps/apps_st/comn/clone/ jlib/ojmisc.jar oracle.apps.ad.clone.ApplyAppsTier -e /u02/oracle/inst/apps/vis_r12apps/appl/admin/vis_r12apps.xml -stage /u02/oracle/apps/apps_st/comn/clone -showProgress APPS Password : Log file located at /u02/oracle/inst/apps/vis_r12apps/admin/log/ApplyAppsTier_06291505.log – 3% completed

What is FNDLOAD in Detail

FNDLOAD is used generally to download and upload from/into the apps database –the definitions of responsibilites , concurrent Programs,Menus,etc. As an Apps DBA if you are given an ldt file and told to apply that in production then do the following grep lct the ldt file you will get the lct name (which is used as config file to upload the ldt file) then use FNDLOAD giving the parameters here an example is given downloading(mostly tech consultants does this).. FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct XXSC_POS_ORDER_EXTRACT.ldt PROGRAM APPLICATION_SHORT_NAME=”PO” CONCURRENT_PROGRAM_NAME=”XXSC_POS_ORDER_EXTRACT” Uploading(Apps DBA job) 1.given ldt here is XXCF_WH_HAT02_OPR_HANDLING.ldt 2.$grep lct XXCF_WH_HAT02_OPR_HANDLING.ldt 3.you get the lct name “afcpprog.lct” as result(which is control file for concurrent programs). 4.now give the following syntax(11i) FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afcpprog.lct XXCF_WH_HAT02_OPR_HANDLING.ldt for R12 replace the corresponding patch for $FND_TOP/patch/import/ and execute.. FNDLOAD is a very useful tool provided by oracle which eases the hectic work in sysadmin and it is very usefull when you port developed large concurrent programs from dev to prod.

Concurrent Manager Internals
A basic understanding like what is a concurrent manager and its responsiblity is required before

reading further. When submitting a concurrent request either Standard Manager or other Type of Managers will process the request. Concurrent Manager is controlled by three tables in database called FND_CONCURRENT_REQUESTS,FND_CONCURRENT_QUEUES and FND_CONCURRENT_PROGRAMS . When we submit any request a plsql routine using CONCSUB binary is called which queries the FND_CONCURRENT_REQUESTS and FND_CONCURRENT_PROGRAMS for request and program definiton and the concurrent manager queries and maintains the status codes in the table FND_CONCURRENT_QUEUES ,all the statuses of the requests like pending,submitted,running,on hold ,ready are maintained as short codes in this table. Concurrent Manager uses the CONCSUB utility using pl/sql routines for quering this table and if it finds that the status of any submitted program is READY (to run) then it executes the submitted request For Submitting Concurrent Programs You can also use CONCSUB Utility from the command line or shell prompt instead of front end forms. an example is shown below Active Users(request) CONCSUB apps/[apps_pwd] SYSADMIN “System Administrator” SYSADMIN WAIT=N CONCURRENT FND FNDSCURS Here FNDSCURS is the Active Users executable in apps. Note :- If for any reason the concurrent manager does not start its the fnd_concurrent_queues where the control codes are messed up . download cmclean.sql from metalink to clean the statuses and never truncate this table using sql plus straight away.

Golden rules for Oracle Apps 11i/R12 Performance Tuning
1.We should make sure Gather Shema Stats is running on periodical basis. It can be checked with bde_last_analyzed.sql It verifies stats by schema and index.

2.We should not gather statistics excessively for all the schemas such as nightly or weekly. 3. We must not gather statistics on permanent objects during peak intervals. 4. we must use FND_STATS or the Gather Schema and Gather Table Statistics Concurrent Programs. and we should NOT USE the analyze or dbms_stats command directly which results in suboptimal plans. 5.we must use the bde_chk_cbo.sql which is given in metalink to check the intialization parameters so that its set to standards. Then further if you face issues in performance then run AWRreport or statspack to analyze further.. especially look for customized modules ‘SQL’. and programs. for oracle seeded programs always contact oracle support.

Steps To Perform R12 Upgrade From 11i
The Steps are … Step :- 1 Download and apply TUMS patch. Download and apply patch 7705743 $ cd $AD_TOP/patch/115/sql sqlplus / @adtums.sql and Review the report. Step :- 2. Convert to MultiOrg(If not enabled). Step :- 3 . Convert to OATM(patch 7197489)(IF not already done so). Step :- 4 .Drop event alert triggers in custom schemas To drop all event alert database triggers in custom schemas, run the alrdtrig.sql script,located in $ALR_TOP/admin/sql After the Upgrade is finished You can enable it. Step 5:- make sure you have sufficient tablespace… Do the Product Specific Steps Now (See r12Upgrade guide for reference)..

Step 6:-Run Rapid Install(R12) and On the Select Upgrade Action screen, select Create Upgrade File System(Application File System). Step 7 :-Migrate or upgrade your database to at least Oracle 10g Release 2 Step 8 :- Apply AD 12.1.1 upgrade driver(patch 7461070). Step 9 :- To bring your database to the full Oracle Applications Release 12.1.1 level, use AutoPatch to run the (American English) unified driver (u6678700.drv). It is located in $AU_TOP/patch/115/driver. Run the driver on the administration server node on your Release 12.1.1 APPL_TOP using the following commands: $ adpatch options=nocopyportion,nogenerateportion

Troubleshooting Apps Framework/Login Issues
In most cases troubleshooting the Apps framework is very difficult and we will not have a clue about the error.Examples are login issues like facing unexpected error or after login no homepage displayed etc., We will not have a single clue about what the error is and even in Apache log ,Jserv Log nothing is written.In such cases the troubleshooting is very difficult.To get the actual error code and troubleshoot further, The only way is to enable the FND Debug and catch the error. We need to set the following profiles for enabling FND debug Logging FND: Debug Log Enabled — Enables/Disables Logging —values—No Yes FND: Debug Log Filename —Specifies location of log file; (including the directory and filename) FND: Debug Log Level — Unexpected /error (This is the log level ,set it to error). Once You set this and bounce the Apache,you can catch the error messages in the logfile and then its very easy to troubleshoot further.

Considerations for Upgrading Oracle Apps 11i/R12
Its a tendency of everyone that by following the Upgrade manual or by applying maintenance pack the version is upgraded .but upto what level?. If you do upgrade using the upgrade manual and apply maninentance pack then — only the overall release level is upgraded , for example if you upgrade 11i from 11.5.9 to using mainentance pack then only techstack and AOL components are upgraded . To Bring the Individual Products upto the latest level ,we also need to apply the Individual Family Packs.

How to Apply a patch in between patch in oracle apps(Interim patch)
In certain scenarios you will be in a situation that you have pause the existing adpatching and apply a patch in between.This is little bit tricky but still there is way to do that.but utmost care

has to be taken while doing this. before that let us understand how adpatch works. adpatch reads the .drv(driver) file in the patch and does the actions accordingly.It creates two Internal tables in APPLSYS account called AD_DEFERRED_JOBS and FND_INSTALL_PROCESSES for controlling adworkers, the workers statuses are controlled in these tables. Also the Actions of the adpatch are stored in .rf9 file format in $APPL_TOP/admin/ $TWO_TASK/restart directory.. when ever an adpatch is restarted from a failed session,it looks in to this folder to do the restart work from where it has failed!. Coming to the Actual procedure how to apply an interim ad patch do the following procedures. 1. Login adctrl and choose the option (tell the manager that a worker failed its job) — to stop the existing patching… 2.login to APPLSYS and create backup of the two tables 1.AD_DEFERRED_JOBS , 2.FND_INSTALL_PROCESSES 3. take a backup of the restart folder(or directory) under $APPL_TOP/admin/$TWO_TASK/ 4.Apply the Interim(Intermediate ) patch successfully ,when asked for to continue with failed session in adpatch say No and to the next question choose Yes (so that you will erase the failed session and start a fresh patching). 5.After finishing the Intermediate patch ,restore the tables AD_DEFERRED_JOBS and FND_INSTALL_PROCESS and the restart directory under $APPL_TOP/admin/$TWO_TASK. 6.login to adctrl and instruct the manager to restart the jobs. 7.Return to the original patch directory and invoke adpatch and now it will ask “whether to continue with failed session”. You have to give “Yes” and proceed with the original patching… You May face this kind of issues while Upgrading the Oracle Apps (applying maintenance pack).

Script to find and kill runaway processes (concurrent requests) after termination
This script is useful for finding the SID and serial number for a specific 11i/R12 concurrent request that has been terminated in the applications, but has not been cleaned up by PMON. Sometimes in 11i, when a long-running concurrent request is terminated, it will still be active in the database for long periods taking up resources. With this script, you can find the SID, serial

number and server PID for a terminated concurrent request so that the process can be killed at the database and OS level. The input parameter for this script is the terminated concurrent request ID. After running this script you can then do an “alter system kill session” and a “kill-9″ using the server pid to stop the processing faster. This script has been tested on, and on 11.5.1 through 11.5.9. rem fndreqidx.sql rem SET LINESIZE 132 rem TTITLE ‘Deleted Concurrent Manager Requests’ rem COL user_concurrent_queue_name FORMAT a15 HEADING ‘QUEUE NAME’ trunc COL request_id FORMAT 9999999 HEADING ‘REQUEST|ID’ COL phase_code FORMAT a1 HEADING ‘P’ COL status_code FORMAT a1 HEADING ‘S’ COL actual_start_date FORMAT a11 HEADING ‘START DATE’ COL user_name FORMAT a15 HEADING ‘USER|NAME’ COL spid FORMAT a6 HEADING ‘SERVER|PID’ headsep ‘|’ COL program FORMAT a40 HEADING ‘PROGRAM’ COL duration FORMAT a10 HEADING ‘DURATION’ COL sidserial FORMAT a11 HEADING ‘SID,SERIAL#’ – SELECT qt.user_concurrent_queue_name , fcr.Request_Id Request_id , fu.User_name , p.spid , s.sid ||’, ‘|| s.serial# SIDSERIAL , substr( Fcpv.Concurrent_Program_Name ||’ – ‘|| Fcpv.User_Concurrent_Program_Name, 1,46) Program , to_char( fcr.actual_start_date, ‘mm/dd hh24:mi’ ) actual_start_date , phase_code, status_code , to_char( trunc(sysdate) + ( sysdate – fcr.actual_start_date ) , ‘hh24:mi:ss’ ) duration FROM apps.Fnd_Concurrent_Queues Fcq , apps.fnd_concurrent_queues_tl qt , apps.Fnd_Concurrent_Requests Fcr , apps.Fnd_Concurrent_Programs Fcp , apps.Fnd_User Fu , apps.Fnd_Concurrent_Processes Fpro , v$session s , v$process p , apps.Fnd_Concurrent_Programs_Vl Fcpv WHERE phase_code = ‘C’

AND status_Code = ‘X’ AND s.paddr = p.addr AND fcr.requested_by = user_id AND fcq.application_id = qt.application_id AND fcq.concurrent_queue_id = qt.concurrent_queue_id AND userenv(‘lang’) = qt.language AND fcr.os_process_id = s.process AND fcr.Controlling_Manager = Concurrent_Process_Id AND (fcq.concurrent_queue_id = fpro.concurrent_queue_id AND fcq.application_id = fpro.queue_application_id ) AND (fcr.concurrent_program_id = fcp.concurrent_program_id AND fcr.program_application_id = fcp.application_id ) AND (fcr.concurrent_program_id = fcpv.concurrent_program_id AND fcr.program_application_id = fcpv.application_id ) ORDER BY fcr.actual_start_date;

Datablock corruption after Cloning Oracle Applications Using Rapid Clone…
If You follow hotbackup strategy for Oracle E-business Suite then You Sometimes land with the following problem after cloning the instance..The root cause of which very difficult to Find. You will land with the following Error while opening forms :– ORA-01578: ORACLE data block corrupted (file # 96, block # 5409) ORA-01110: data file 96: ‘/u02/oradata/a_txn_data05.dbf’ ORA-26040: Data block was loaded using the NOLOGGING option The error indicates that This error is very serious and database is corrupted but it is NOT as it says.. I have also faced the same issue and after digging out my mind I found the following 1.When the hotbackup was taken that time one or more of the WorkFlow(WF) Tables were in NOLOGGING MODE.. and Found that the Concurrent Program “Synch WF LOCAL Tables” was doing this NOLOGGING to enable direct path LOAD… I have used the following solutions to Solve this particular issue. a. After Cloning from a Hotbackup run the concurrent Program “Synch WF LOCAL Tables” which will solve the issue. b. Do not run the hotbackup while this particular concurrent program is running.

What I would Advise is to follow Cold backup restore for Cloning(where ever possible). This will be my Best Solution to finish the clone without issues.

what is dbc file in Apps and its Importance
dbc (database connector) file is the key configuration file in oracle applications(E-business suite) Its Location is $FND_TOP/secure.. It is the main configuration file using which applications connect to the database. It has the following information also i have given the equivalent parameter in the xml(context) file. Context File Parameter Parameter in the DBC File Description ——————————————————————————————————————— ————s_guest_user GUEST_USER_PWD Guest Account s_guest_pass s_dbhost DB_HOST Database hostname s_dbport DB_PORT Port number for database listener s_dbSid DB_NAME Database name s_fnd_jdbc_buffermin FND_JDBC_BUFFER_MIN Minimum Number of connections the pool maintains s_fnd_jdbc_buffermax FND_JDBC_BUFFER_MAX Maximum number of connections the pool allows s_fnd_jdbc_buffer_decay_interval FND_JDBC_BUFFER_DECAY_INTERVAL Specifies how often the connection pool checks buffer size s_fnd_jdbc_buffer_decay_size FND_JDBC_BUFFER_DECAY_SIZE Maximum number of connections removed during a cycle.

Key Differences Between Release 11i and R12
The Main Difference Lies in the Technology Stack between 11i and R12

In 11i You have 9i or 10g RDBMS Oracle Home and 8.0.6 for PL/SQL libraries and forms 6i and 9iAS In R12 You have 10g RDBMS Oracle Home and 10.1.2 Oracle Home for forms/reports and libraries and 10.1.3 Oracle Home for Application Server… The reports server has been removed in R12 and it runs as a spawned process called rwrun which is spawned by conc manager. INST_TOP has been introduced. All the log files and adminisrative scripts you can find in this TOP… if you delete the Apache _pages(cache) it will not be generated automatically.You need to regenerate them… OPMN is introduced to start the services(oracle Process manager). Jserv component is removed and it is replaced in R12 by OC4J modpls component of Apache is removed .you have to see the alternate for custom developed programs which will be using this

where is the xml file in R12
In older version i.e 11i and old normally xml file alias context file will be under $APPL_TOP/admin but dont be surprised to you dont find it in R12 in the Same place.Its safely there in $INST_TOP/appl/admin

More About Oracle Apps Middle Tier
Lets see the purpose of the middle tier components 1.Web Server This is Apache server which brings you the webpages of the application. 2.Forms Server Here You should know that 11i consists of three oracle home’s a)Database Oracle Home. b) 8.0.6 Oracle Home c) IAS Oracle Home so the forms server is part of IAS Oracle Home.–which brings you the forms of 11i–E-business suite.

3. Reports Server. This is also a part of IAS Oracle Home– used for running reports against the 11i database. 4.Concurrent Processing Server. Used for processing the concurrent requests. 5. Admin Server. This is used for admin purpose. 6.Discoverer Server. This is optional.This brings you the discoverer integrated with 11i.

Various Startup Scripts in Oracle Applications
In this post I would like to write about the various scripts available for starting and shutting down the apps services. Normally 11i will be installed with two OS accounts . one for oracle db and one for oracle apps tier. normally –applmgr(or) appl sid . after logging into apps user you should source the APPSORA.env env file under APPL_TOP. This sets your environment. you can confirm whether it has been setup by echoing the TWO_TASK. like– $echo $TWO_TASK which will show you the SID. now you are ready to execute scripts. Generally the scripts are under $COMMON_TOP/admin/scripts. here you will find the following scripts. adstrtal.sh — used for starting the apps tier.. usage— adstrtal.sh apps/apps password. adstpall.sh — used for stopping the apps tier.. usage—adstpall.sh apps/apps password. adapcctl.sh start/stop — used for starting and stopping the apache/web server. adalnctl.sh start/stop — used to start stop the apps listener.

adfrmctl.sh start/stop –used to start stop forms server. adcmctl.sh start apps/apps adcmctl.sh stop apps/apps —-used for starting and stopping the concurrent managers. addisctl.sh start/stop — used for starting stopping the discoverer. any comments/questions kindly post.

Oracle Applications Architecture
Architecture of 11i Oracle E-Business Suite. ———————————————11i Architecture is a 3 Tier Architecture. 1.DataBase Tier. 2.Middle Tier. 3.Client or Desktop Tier. DataBase tier consits of the database to which 11i stores the data. this can be separate node or on the same node where middle tier is. Middle Tier consists of the following components. 1.Web Server. 2.Forms Server. 3.Reports Server 4.Concurrent Processing Server. 5.Admin Server 6.Discoverer Server. This tier can be distributed(load balanced) into multiple nodes. Desktop Tier –which is the client pc used for accessing the applications. The components include a web browser ,Oracle Jinitiator. Any questions or comments kindly post in this blog. –Vivek Further I will discuss about the various TOP(physical structure)’s of the Oracle 11i(E-Business Suite). They are.

DataBase Oracle Home. DATA_TOP (where oracle dbf’s are stored). APPL_TOP(Application’s Top) where all the relevant modules files are stored(e.g forms,reports,pl/sql stored procedures etc of a GL (General Ledger Module). COMMON_TOP— various admin scripts and other necessary files are stored. OA_HTML—where the .jsp files are stored. IAS_ORACLE_HOME—Apache,Jserver components are stored here. 806_ORACLE_HOME— The necessary pl/sql libraries are stored here. JAVA_TOP and JDK_HOME.

How to restore apps password if corrupted
Reset apps password in Oracle Applications if corrupted —————————————————————————– Passwords in Applications are encrypted both at the database level AND at the Applications level. The Applications passwords are encrypted using the APPLSYS password as a seed; therefore, if the APPLSYS password changes, all the encryptions will change. Note: By APPLSYS, we refer specifically to the actual owner of your foundation tables, i.e. the value of the FNDNAM environment variable or logical. Below are three select statements which will help you reset the passwords in your database. Specifically, you will be returning your APPLSYS and APPS passwords to APPS, and the SYSADMIN user’s password to WELCOME. Following these steps will cause ALL Applications users except for SYSADMIN to become INVALID until they are re-registered using the Register Oracle ID form. Therefore, you should only follow these steps in case of desperation, and when

all other means of obtaining passwords have been exhausted. NOTE: You should make a backup copy of both FND_USER and FND_ORACLE_USERID before you make any changes to these tables. To backup these tables use the following syntax: SQL> create table fnd_user_bak as (select * from fnd_user); SQL> create table fnd_oracle_userid_bak as (select * from fnd_oracle_userid); Then, execute the following select statements: SQL> select encrypted_oracle_password from fnd_oracle_userid where oracle_username IN (‘APPS’, ‘APPLSYS’); SQL> select encrypted_foundation_password, encrypted_user_password from fnd_user where user_name = ‘SYSADMIN’; SQL> select encrypted_oracle_password from fnd_oracle_userid where oracle_username = ‘APPLSYSPUB’; The first select statement shows the current encrypted ORACLE password for APPLSYS and APPS. Update these rows in your FND_ORACLE_USERID table with the following update command: update FND_ORACLE_USERID set ENCRYPTED_ORACLE_PASSWORD = ‘C4E9B59142D7A3F5C2BB0DA9C215A5C9A623EDB3473AC895876A253C0093F4E0′ where ORACLE_USERNAME in (‘APPS’, ‘APPLSYS’); commit;

The second select statement shows the current encrypted foundation password in the FND_USER table (which is based on the APPLSYS password), and the encrypted user password for the SYSADMIN user. Update the necessary rows in your FND_USER table to reflect the correct values with this command: update FND_USER set ENCRYPTED_FOUNDATION_PASSWORD = ’2DF3E509EB6A33F9607959C0976E25D997166FAB694ACDDAE466414791A44411′, ENCRYPTED_USER_PASSWORD= ‘D2FCA9810D86BCA9BE944D3E2E7A4A9E6CDF89AAD633179B701774083F907C13′ where USER_NAME=’SYSADMIN’; commit; Finally, the third statement gives the ORACLE password for the APPLSYSPUB account (specifically, the username specified by the GWYUID environment variable or logical). It is rarely necessary to change this — but in this case it is will be. Update your FND_ORACLE_USERID table with this command: update FND_ORACLE_USERID set ENCRYPTED_ORACLE_PASSWORD = ‘D5ECA7C25E91A5C9D7D2E6C7287E73BEFB6DE76691E6CCBAD1426F611452D241′ where ORACLE_USERNAME = (‘APPLSYSPUB’); commit; Log into SQL*Plus as SYSTEM and change the sqlplus passwords for these IDs using the following commands: ALTER USER apps IDENTIFIED BY apps;


Cloning Oracle Applications Using Rapid clone
Introduction Cloning Oracle Applications 11i /12 instances can be a difficult ones.Clients are constantly asking for refreshes With the advent of Oracle apps , meeting cloning schedules can be challenging to say the least. The good news is that when you are from Oracle Applications version 11.5.8, we can use an easy method (called Rapid Clone) It is advisable to read Oracle’s Metalink note 230672.1, which details how to set up and run Rapid Clone, and note 165195.1, which outlines the use of AutoConfig. Of course, since we live in such rapidly changing environments, it is strongly recommended that you double check patch numbers and ensure that you have all prerequisites for your particular installation before applying any patches. The Basic Steps for Cloning After installing the Rapid Clone and AutoConfig patches, you are ready to clone an instance. There are ten basic steps involved. I have outlined them below: Run system configuration on the Application tier: $COMMON_TOP/admin/scripts/adautocfg.sh Use the APPS password when prompted. Run system configuration on the database tier: $ORACLE_HOME/appsutil/scripts/adautocfg.sh Use the APPS password when prompted. Copy AutoConfig to the RDBMS ORACLE_HOME: Apply patch 2952369 to acquire adchkcfg utility. Create appsutil.zip file by: perl /bin/admkappsutil.pl. Copy appsutil.zip file to the unzip -o appsutil.zip Generate the database context file: cd $ORACLE_HOME/appsutil/bin adbldxml.sh tier=database appsuser= appspasswd= Output log is written to: $ORACLE_HOME/appsuti/out//cfgcheck.txt Generate and apply AutoConfig configuration file: cd $ORACLE_HOME/appsutil/bin adconfig.sh contextfile= appspass=

Prepare for source database clone:(for R11i and R12) cd $ORACLE_HOME/appsutil/scripts/ ./perl adpreclone.pl dbTier Prepare for source application clone: cd $COMMON_TOP/admin/scripts/ for R12 cloning cd $INST_TOP/admin/scripts ./perl adpreclone.pl appsTier Copy the application tier file system: Logon to the source system as APPLMGR and shut down the server processes. Copy the following application directories from the source to the target node/file system: Shut down the source database and copy the RDBMS ORACLE_HOME and DATA_TOP it to the target node/file system. Restart the source database and source application server processes. Configure the target system database sever: cd /appsutil/clone/bin ./perl adcfgclone.pl dbTier answer the prompts the prompts will be like enter the number of DATA TOP, PATH to the new ORACLE_HOME,DATA_TOP, hostname,dbname ,port etc.., Configure the target system application tier: for R11i/R12 cd $COMMON_TOP/clone/bin ./perl adcfgclone.pl appsTier answer the prompts prompts will be like enter the value for — appl_top,common_top,IAS_ORACLE_HOME, 8.0.6 ORACLE_HOME, db name ,db host ,port etc(for the target system to replace ). this will take some time to finish… Cloning an Oracle Applications environment is complicated, but Rapid Clone makes it a lot easier. The steps provided here are intended to give you an overview of the process. Be sure to read the Metalink notes cited and other available documentation for additional information.

Register Custom Top in Oracle Applications
Step 1: Make the directory structure for your custom application files mkdir xxsuff mkdir xxsuff/11.5.0 mkdir xxsuff/11.5.0/admin mkdir xxsuff/11.5.0/admin/sql mkdir xxsuff/11.5.0/admin/odf mkdir xxsuff/11.5.0/sql mkdir xxsuff/11.5.0/bin mkdir xxsuff/11.5.0/reports mkdir xxsuff/11.5.0/reports/US mkdir xxsuff/11.5.0/forms mkdir xxsuff/11.5.0/forms/US mkdir xxsuff/11.5.0/$APPLLIB mkdir xxsuff/11.5.0/out mkdir xxsuff/11.5.0/log Step:2 Add the Path of the Custom Top in adovars.env. /sufdev/applmgr/1159/admin/adovars.env XXSUFF_TOP=/sufdev/applmgr/1159/xxsuff/11.5.0 export XXSUFF_TOP Step 3: Login into SQL as System User sql> create tablespace xxsuff datafile ‘/sufdev/oradata/data03/xxsuff01.dbf’ size 500m; Step 4: sql> create user xxsuff identified by xxsuff default tablespace xxsuff temporary tablespace temp quota unlimited on xxsuff quota unlimited on temp; Step 5: sql> grant connect, resource to xxsuff; Applications: Step 6: Register your Oracle Schema. Login to Applications with System Administrator responsibility Navigate to Application–>Register Application = XXSUFF Custom Short Name = XXSUFF

Basepath = XXSUFF_TOP Description = XXSUFF Custom Application Step 7: Register Oracle User Naviate to Security–>Oracle–>Register Database User Name = XXSUFF Password = XXSUFF Privilege = Enabled Install Group =0 Description = XXSUFF Custom Application User Step 8: Add Application to a Data Group Navigate to Security–>Oracle–>DataGroup Data Group = XXSUFFGroup Description = XXSUFF Custom Data Group Click on “Copy Applications from” and pick Standard data Group, then add the following entry Application = XXSUFF Custom Oracle ID = APPS Description = XXSUFF Custom Application Step 9: Create custom request group This will act as a placeholder for any custom reports we wish to make available for the Custom Responsibility Navigate to Security–>responsbility–>Request Group = XXSUFF Request Group Application = XXSUFF Custom Code = XXSUFF Description = XXSUFF Custom Requests We can define a request and add to the group Step 10: Create custom menu This will act as a placeholder for any menu items we wish to make available for the Custom Responsibility. Here two menus are created , one for Core Applications and one for Self Service. Navigate to Application–>Menu Menu = XXSUFF_CUSTOM_MENU User Menu Name = XXSUFF Custom Application Menu Type = <leave blank> Description = XXSUFF Custom Application Menu Seq = 100 Prompt = View Requests Submenu = <leave blank> Function = View All Concurrent Requests Description = View Requests Seq = 110 Prompt = Run Requests

Submenu = <leave blank> Function = Requests: Submit Description = Submit Requests Menu = XXSUFF_CUSTOM_MENU_SSWA User Menu Name = XXSUFF Custom Application SSWA Menu Type = <leave blank> Description = XXSUFF Custom Application Menu for SSWA Step 11: Create new responsibility.One for Core Applications and One for Self Service (SSWA) Navigate to Security–>Responsibility–>Define Responsibility Name = XXSUFF Custom Application = XXSUFF Custom Responsibility Key = XXSUFFCUSTOM Description = XXSUFF Custom Responsibility Available From = Oracle Applications Data Group Name = XXSUFFGroup Data Group Application = XXSUFF Custom Menu = XXSUFF Custom Application Request Group Name = XXSUFF Request Group Responsibility Name = XXSUFF Custom SSWA Application = XXSUFF Custom Responsibility Key = XXSUFFCUSTOMSSWA Description = XXSUFF Custom Responsibility SSWA Available From = Oracle Self Service Web Applications Data Group Name = XXSUFFGroup Data Group Application = XXSUFF Custom Menu = XXSUFF Custom Application SSWA Request Group Name = XXSUFF Request Group Step 12: Add responsibility to user Navigate to Security–>User–>Define Add XXSUFF Custom responsibility to users as required. We have added XXSUFF custom responsibility to System Administrator.

As Oracle Apps DBA / Sysadmin you Apply patches & restart servives or make some
configuration changes in applications 11i before releasing Instance to Application Users you wish to check if all components in EBusiness Suite 11i are working fine. Here is list of components you should check apart from your custom services.

 1. Check Web Server is Up : Check in browser http://hostname.domainname:port where hostname.domain name is Machine Name on which Web Server(OHS) is running. If you are using load balancer or Proxy Server in front of Web Server it will be loadbalancer / Proxy Server Name. Port is port on which Web Server is Listening. It is defined in $IAS_ORACLE_HOME /Apache /Apache /conf /httpd.conf , To find more about WebServer & its parameters Click Here . If you can't access this check error_log at $IAS_ORACLE_HOME /Apache /Apache/ logs  2. Check Jserv is Up : Check if you can access OAM (Oracle Application Manager) page. http://hostname.domainname:port_number/servlets/weboam/oam/oamLogin If you can't access login screen for OAM, check logs at  3. Check mod_pls is working fine : http://hostname.domainname:port/pls/$SID so if you installed vision instance with SID as VIS11I your SID here is VIS11II this sometime in documents also called as TWO_TASK. You should see output from procedure FND_WEB.PING . If not check that A) database listener is Up B) GUEST User is not end dated & password is correct. C) dbc (database connect descriptor) file is corerct at $FND_TOP/secure D) apps password is correct in wdbsvr.app at $IAS_ORACLE_HOME/Apache/modplsql/cfg  4. Login to Application : Login to application with Application User to confirm login is working fine , if not check mod_pls for any issues.  5. Check Form Server is working : Click on any Core Responsibility like "System Administrator", If you are facing any problem opening form Applet A) Check jinitiator is installed, if not do you have access to install jinitiator B) Try clearing cache from jinitiator C) Check forms server parameters are configured properly in appsweb_$CONTEXT_NAME.cfg D) Check if form server listener is Up : netstat -an | grep form_server_port  6. Check Concurrent Manager is Up & Running : Select "Administer Concurrent Manager" & check if "Actual" & "Target" are same. If not check $SID_MM_DD.mgr at $APPLCSF/$APPLLOG To know more about concurrent Manager Click Here  7. Check Reports can display properly : Change "Active Users" reports output from "Text file" to "PDF" from Define Concurrent Request Screen. Submit Active Users request & click on Output , check if you can se report in PDF format. If you encounter error like REP-3000 Oracle Toolkit , issue is with DISPLAY,

Sign up to vote on this title
UsefulNot useful