Friday, 5 June 2015

Oracle Apps Interview Question and Answer

1.   How to call flex fields in the form?
By using FND_FLEX.EVENT (EVENT varchar 2)

2.   How to register an executable and define a concurrent program through backend?
By using concurrent processing API’S
1. FND_CONC_GLOBAL.REQUES_DATA
                                    .SET_REQUEST_GLOBALS
2. FND_CONCURRENT.AF_COMMIT
                                  .AF_ROLLBACK
                                  .GET_REQUEST_STATUS
                                  .WAIT_FOR_REQUEST
                                  .SET_COMPLETION_STATUS
3. FND_FILE . PUT
                   . PUT_LINE
                   .NEW_NAME
                   .PUT_NAMES
                   .CLOSE
4. FND-PROGRAM    . MESSAGE
                             . EXECUTABLE
                             . REGISTER
                             . PARAMETER
                             . IN COMPATIBILITY
                             . EXECUTABLE_EXISTS
5. FND_REQUEST    . SET-OPTIONS
                             .SET_REPEAT_OPTIONS
                             .SET_PRINT_OPTIONS
                             .SUBMIT_REQUEST
                             .SET_MODE
6. FND_REQUEST_INFO     . GET_PARAM_NUMBER
                                      . GET_PARAM_INFO
                                      . GET_PROGRAM
                                      . GET_PARAMETER
7. FND_SET  . MESSAGE
                   .ADD_PROGRAM
                   .ADD_STAGE
                   .IN COMPATIBILITY
8. FND_SUBMIT       . SET_MODE
                             .SET_REQUEST_STATUS
                             .SUBMIT_PROGRAM
                             .SUBMIT_SET

* FND_PROGRAM.EXECUTABLE
-          is used to define a concurrent program executable
-          it takes 8 parameters ( all are IN mode )
syntax            procedure FND_PROGRAM.EXECUTABLE
          (executable IN varchar2,
(Full name) à application IN varchar2,
(executable short name) à short name IN varchar2,
                                     description IN varchar2 default null
                                    execution_method IN varchar2,
                                   execution_file_name IN varchar2 default null,
(only fol spauned & Immedaite) à subroutine_name IN varchar2 default null,
                                                icon_name IN varchar2 default null,
                                                language_code IN varchar2 default (VS)
(for Java Conc Program) à execution_file_path IN varchar2 default null,

* FND_PROGRAM.REGISTER
- this procedure no used to define a concurrent program.
- It has 30 IN parameters. Out of which 9 are mandatory, the remaining are default.
          Syntax à procedure FND_PROGRAM.REGISTER
                   (program                IN varchar2,
                    application            IN varchar2,
                   enabled                 IN varchar2,
                   short_name            IN varchar2,
                   description             IN varchar2, default null,
(executable_short_name) à executable_name IN varchar2
                                      executable_application IN varchar2,
                                       mls_function_shelt_name IN varchar2,
                                      mls_function_application IN varchar2,
                                      inerementor IN varhcar2);

3.    How to register a table and columns through back end?
* by using AD_DD package
-          for registering a table à AD_DD.REGISTER_TABLE
-          for registering columns à AD_DD.REGISTER_COLUMN.
-          AD_DD BPI doesn’t check for the existence of the registered table or column in the data base schema, but only updates the required SQL tables.
-          It should be ensured that, all the tables and columns registered exist actually and have the same format as that defined using AD_DD API.
-          Views need not be registered.

4.    How to write to a file through concurrent program.
* By using FND_FILE package and it can be used only for log and output files.
          à FND_FILE package contains procedures to write text to log and output files.
          à FND_FILE supports a maximum buffer line size of 32k for both and output files.

  1. FND_FILE.PUT
-          this is used to write text to a file with out a new line character
-          Multilane calls to FND_FILE.PUT will produce consummated text.
Procedure FND_FILE.PUT (which IN Number,
                                       Buff IN varchar2);
Which à log output file
-          can be FND_FILE.LOG or FND_FILE.OUTPUT.
  1. FND_FILE.PUT_LINE
-          this procedure as used to write a line of text to a file followed by a new line character.
Procedure FND_FILE.PUT_LINE (which IN number,
                                              buff  IN varchar2);
EX:- FND_FILE.PUT_LINE( FND_FILE.LOG, find_message_get);
  1. FND_FILE.NEW_LINE
- this procedure is used to write line terminators to a file
procedure FND_FILE.NEW_LINE (which IN number
                                                 LINES IN NATURAL:=1);
Ex:- to write two newline characters to a log file
       Fnd_file.new_line (fnd_file.log,2);
  1. FND_FILE.PUT_NAMES
-          this procedure as used to set the temporary log file and output filenames and the temporary directory to the user specified values.
-          This should be called before calling my other FND_FILE procedure and only once per a session.

Function
FND_REQUEST.SUBMIT_REQUEST
( application      in varchar2   default null,
  program          in varchar2   default null,
  description      in varchar2   default null,
  start-time                 in varchar2   default null,
  sub_request     in bookan     default False,
  argument1,
arguemnt2,
argument 100) return number;
* If this is submitted from oracle forms, all the arguments ( 1 to 100 ) must be specified.

5.    How to display Request ID in the reports?
* By using the parameter P_CONC_REQUEST_ID
which needs to be defined always in the reports.

6.    How to get username / user id in reports?
     - By using the API FND_PROFILE THE OPTION values
        can be manipulated in client / server profile caches
-          FND_PROFILE.GET, FND_GLOBAL.USER_ID
                                       FND_GLOBAL.USER_NAME
-          this procedure is located in FNDSQF library.
-          This procedure is to located to get the current value of the specified user profile option or null if the profile does not exist.
-          The server_side PL/SQL package FND_GLOBAL returns the values which need to set who columns for inserts and updates from stored procedures.
-          Procedure FND_PROFILE.GET ( name in varchar2,
       Value out varchar2);
          FND_PROFILE.GET (‘USER_ID’, user_id);

* FND_PROFILE.VALUE
- this function exactly works like GET, except it returns the values of the specified profile option as a function result
 Function FND_PROGILE.VALUE (name in varchar2
                                                 Return varchar2;  

*FND_PROFILE.PUT
-          this is used to put a value to the specified profile option
-           
-          if the option doesn’t exist, it can also be created with PUT.
Procedure FND_GET (‘USERNAME’, user name);
FND_PROFILE.GET (‘USER_ID’, user_id);
-          username, user-id, vsp_id , Appl_shrt_Name, Resp_Appl_Id, Form_Name, Form_id, Form_Appl_Name, Form_Appl_Id, Logon_Date, Last_Lagon_Date, login_id, Gone_Request_Id, Gone_Program_Id,Gone_program_Application_Id, Gone_Login_Id, Gone_Print_Output, Gone_printstyle_ these are the user profile options that can be accessed via user profile option routines .
-          the values of these profile options can be retrieved in forms, reports and program
-          these values cannot be changed except Gone_Print_Output and Gone_Print_Style.
-          SA’s and end users also cannot see the values or change these values.

7.   In which directory log and output files are stored?
* APPLCSF  is the top level directory in which the concurrent manager puts logs and output files.

* APPLLOG  and APPLOUT are the subdirectories in which the concurrent manager puts log and output files.

*APPLCSF variable need to be set in the prod.env ( environmental variable ), so that all product log files 
$ APPLCSF/ $ APPLLOG à log files
$APPLCSF/ $ APPLOUT à out files

* concurrent manager log and out put files should go to $ FND_TOP/ $ APPLOG and $ FND _TOP / $APPLOUT if $ APPLCSF is not set.

8.    How to submit concurrent programs through OS?
-          From the operating system the utility .CONCSUB  is used to submit is concurrent propgram.
-          This is basically used to test a concurrent program .
-          By using the WAIT token. The utility checks the request status every 60 seconds and returns the OS prompt upon completion of the request.
-          Concurrent manager does not abort, shutdown or start up until the concurrent request completes.

* If the concurrent program is compatible with it self, it can be checked for data integrity and dead locks by submitting it many times so that it runs concurrently with it self.
*PL/SQL procedures can submit a request to run a program as a concurrent process by calling.
FND_REQUEST. SUBMIT_REQUEST.
* Before submitting a request, the following functions also should be called optionally.
              FND_REQUEST.SET_OPTIONS
              FND_REQUEST.SET_REPEAT_OPTIONS
              FND_REQUEST.SET_PRINT_OPTIONS
              FND_REQUEST.SET_MODE

9.    How to checks the request states?
-          A PL/SQL procedure can check the status of a concurrent request by calling.
FND_CONCURENT.GET_REQUEST_STATUS
FND_CONCURRENT.WAIT_FOR_REQUEST
-          FND_CONCURRENT.GET_REQUEST_STATUS
-          This function returns the status of a concurrent request
-          If the request is already computed, it also returns the completion message.
-          This function returns both user friendly (translatable) phase and status values as well as developer phase and status vales that can drive program logic.

Syntax à Function FND_CONCURRENT.GET_REQUEST_STATUS
                   ( request_id in out number,
                   application in varchar2 default null,
                   program in varchar2 default null,
                   phase out varchar2,
                   status out varchar,
                   dev_phase out varchar2,
                   dev_status out varchar2,
                   message out varchar2) return BOOLEAN;
-          when application and program are specified, the request_id of the last request for the specified program should be returned to request_id.
-          Phase, and status values should be taken from
FND_LOOKUPS
dev_phase                                          dev_status
pending                                    normal, standby, scheduled, paused
running                                     normal, waiting, resuming, terminating.
Complete                                  normal, Error, warning, cancelled, terminated
Inactive                                     disabled, on-hold, No-manager, supended
-          FND_REQUEST.WAIT_FOR_REQUEST
-          This function waits for request completion, then returns the request phase/status and completion message to the caller.
-          Goes to sleep between checks for request completion.

Syntax àFND_CONCURRENT.WAIT_FOR_REQUEST
     ( request_id in number default null,
     interval in number default 60,
     max_wait in numbe default 0,
     phase out varchar2,
     status out varchar2,
dev_phase out varchar2,
dev_status out varchar2,
message out varchar2) return BOOLEN;

* FND_CONCURRENT.SET_COMPLETION_STATUS
-          this function should be called from a concurrent program to set its completion states.
-          This function returns TRUE on success, other wise FALSE.
Syntax à function FND_CONCURRENT.SET_COMPLETION_STATUS
     ( status in varchar2,          message in varchar2) return BOOLEAN;
Normal status  warning message à any message
          Error

11.    What is a Data Group?
·         A data group is a group of oracle applications and the Oracle ID’s of each application
·         Oracle ID grants access privileges to tables in an Oracle Database
·         Data group determines which Oracle Data base accounts a responsibilities forms, concurrent programs and reports connect to.

12.    What is a Responsibility?
·         Responsibility defines Applications Privileges
·         A responsibility is a level of authority in Oracle Applications that lets users only those Oracle Applications functions and data appropriate to their roles in an organization.
·         Each user has at list one or more responsibilities and several users can share the same responsibility
* Each responsibility allows access to
·         a specific application or a set of applications.
·         A set of books
·         A restricted list of windows that an user can navigate
·         Reports in a specific application.

13.    What are security Attributes?
·         Security Attributes are used by Oracle self service web Applications to allow rows of data to be visible to specified users responsibilities based on the specific data contained in the row.

14.    What is a Profile Option?
·         profile options are the set of changeable options that affects how the application looks and behaves.
·         By setting profile options, the applications can be made to react in different ways for different users depending on the specific user attributes.

15.    What are steps involved in developing a flex field?
·         designing the table structure
·         creating fields on the form (Visible/Hidden)
·         calling appropriate routines
·         registration of the flex field.
·         Definition of the flex field.
<Flex fields / key/ Register>
<Flex fields/Descriptions / Register>

16.    What is an application /Module?
·         Application is a collection of forms, function and menus

17.    What are Alerts?
·         Alert is a mechanism that checks the database for a specific exception condition.
·         An alert is characterized by the SQL select statements it contains.
·         A SQL select statement fells the application what database exception to identify as well as what output to produce for that exception.


No comments:

Post a Comment

AP Invoice Notes related Table details in Oracle Fusion

 What is the table that stores the AP Invoice notes? AP notes are stored in ZMM_NOTES table with SOURCE_OBJECT_CODE = 'AP_STANDARD_INVOI...