This action might not be possible to undo. Are you sure you want to continue?
Amit R Tiwari (2191687)
AOL is a collection of pre-built application components and facilities and it consists of forms, subroutines, concurrent programs and reports, database tables and objects, messages, menus, responsibilities, flexfield definitions, various guides and library functions.
Author : Amit R Tiwari
Profile Option Assignment
Responsibilty UserName Password
Request Security Group
Request Set Concurrent Program
Author : Amit R Tiwari
Profile Option Author : Amit R Tiwari 6/19/2012 5 .
Author : Amit R Tiwari 6/19/2012 6 . User(who uses the Application) Responsibility(Assigned to User) Profile(Level of Access) Concurrent Programs(To Perform Various Task) Valueset Requestset Request group Flexfield( To capture info) Etc.
Let See How Each One of These Play Their Role Author : Amit R Tiwari 6/19/2012 7 .
Author : Amit R Tiwari 6/19/2012 8 .
Users are assigned a set of responsibilities through which they can retrieve or modify certain set of data. Users and Responsibilities are created in oracle applications in order to control the access to the data. Author : Amit R Tiwari 6/19/2012 9 . Responsibility is a grouping of access in a logical manner. make payments etc. We can create users. Accounts payable responsibility would contain all the privileges to create invoices. responsibility through system administrator responsibility in oracle applications. All the users from the payables department would be given this responsibility.
1. 2. 3. 4. 5.
Login to the E-Business Suite Home Page Be connected as sysadmin Choose the "System Administrator" from the Navigator Choose from "Security: User" Define option Enter the information for this user and add some responsibilities to the user if you want to do it now
Creation of User Navigation – System Administrator ->Security -> User -> Define
Creation of Responsibility
Navigation – System Administrator ->Security -> Responsibility -> Define
Author : Amit R Tiwari
Figure 1. Create User Navigation
Creation of User
Navigation – System Administrator ->Security -> User -> Define
Author : Amit R Tiwari
Author : Amit R Tiwari
Author : Amit R Tiwari 6/19/2012 13 .
Author : Amit R Tiwari 6/19/2012 14 Description Password Expiration Person Customer Supplier Email Fax Effective Dates Responsibilities . Its use to send notifications to the user through oracle applications. Accesses No. None You can attach employee to this user.Fields UserName Password Give the username in this field. From and To dates between which the user would be active. Provide brief description of the user in this field. You would be required to change the password when you login first time with this username. This is used for HRMS applications To attach customer to this user. Enter desired password twice in this field. List of responsibilities assigned to the user. Provide email address for the user. Fax number for the user. To attach supplier to this user. Days No.
Author : Amit R Tiwari 6/19/2012 15 .
Author : Amit R Tiwari 6/19/2012 16 .
to allow a user in the ADMIN responsibility to see rows containing a CUSTOMER_ID value of 1000. You can select from any of the attributes assigned to the user's responsibility.Attribute : Select an attribute you want used to determine which records this user can access. no information is returned for that attribute. assign the securing attribute of CUSTOMER_ID to the ADMIN responsibility. You may assign one or more values for any of the securing attributes assigned to the user. Then give the user a security attribute CUSTOMER_ID value of 1000. Author : Amit R Tiwari 6/19/2012 17 . When the user logs into the Admin responsibility. If a securing attribute is assigned to both a responsibility and to a user. Securing attributes are used by Oracle HTML-based applications to allow rows (records) of data to be visible to specified users or responsibilities based on the specific data (attribute values) contained in the row. Value : Enter the value for the attribute you want used to determine which records this user can access. For example. the only customer data they have access to has a CUSTOMER_ID value of 1000. but the user does not have a value for that securing attribute.
Creation of Responsibility Navigation – System Administrator ->Security -> Responsibility -> Define Author : Amit R Tiwari 6/19/2012 18 .
Author : Amit R Tiwari 6/19/2012 19 .
Author : Amit R Tiwari 6/19/2012 20 .
Enter the PL/SQL Agent Name for the database used by this responsibility. Type : Select either Function or Menu as the type of exclusion rule to apply against this responsibility. request sets. When you exclude a function from a responsibility. Author : Amit R Tiwari 6/19/2012 21 . Web Host Name . change the end date to a date after the current date. When you exclude a menu. Otherwise. Effective Dates From/To . all of its menu entries. Application . user profiles and user profile values into your Oracle Applications tables.The menu whose name you enter must already be defined with Oracle Applications.If your Web Server resides on a different machine from your database.If you have multiple responsibilities.Name/Application The data group defines the pairing of application and ORACLE username. Menu . the responsibility is valid indefinitely. all occurrences of that function throughout the responsibility's menu structure are excluded. you must designate the host name (URL) here.Responsibility Name . and if you do not enter an end date. the Web Host Name defaults to the current database host server. Web Agent Name . Menu Exclusions Block Define function and menu exclusion rules to restrict the application functionality accessible to a responsibility. the responsibility defaults to the agent name current at log-on. To help ensure that your responsibility key is unique throughout your system. You can deactivate a responsibility at any time by setting the end date to the current date. that is. The default value for the start date is the current date. all the functions and menus of functions that it selects are excluded. If you wish to reactivate the responsibility. begin each Responsibility Key name with the application short name associated with this responsibility.If you do not assign a request security group to this responsibility. Data Group . Select the application whose ORACLE username forms connect to when you choose this responsibility. a user with this responsibility cannot run requests. The ORACLE username determines the database tables and table privileges accessible by your responsibility. or concurrent programs from the Submit Requests window. Available From . except for request sets owned by the user. The user can access requests from a Submit Requests window you customize with a request group code through menu parameters. Responsibility Key .This is a unique name for a responsibility that is used by loader programs. a pop-up window includes this name after you sign on. If you do not specify an Agent Name.This application name does not prevent the user of this responsibility from accessing other applications' forms and functions if you define the menu to access other applications. Transaction managers can only process requests from responsibilities assigned the same data group as the transaction manager. Name : Select the name of the function or menu you wish to exclude from this responsibility.A responsibility may be associated with only one applications system. The function or menu you specify must already be defined in Oracle Applications. You cannot delete a responsibility because its information helps to provide an audit trail. Request Group Name/Application .Enter the start/end dates on which the responsibility becomes active/inactive. or clear the end date. Select between Oracle Self-Service Web Applications or Oracle Applications. Loaders are concurrent programs used to "load" such information as messages.
Author : Amit R Tiwari 6/19/2012 22 .
Author : Amit R Tiwari 6/19/2012 23 .
createuser() How Do we use this API to create user: we create a script for creation of user. Why Needed ? When Multiple User is need to be created we use script file. API is fnd_user_pkg. Author : Amit R Tiwari 6/19/2012 24 .
x_last_logon_date => SYSDATE .description => 'Auto Assignment' .Call the procedure to Create FND User fnd_user_pkg.x_employee_id => 30 /*Change this id by running below SQL*/ /* SELECT person_id .10 .10 .x_description => 'appstechnical.x_session_number => v_session_id .com' .full_name FROM per_all_people_f WHERE upper(full_name) LIKE '%' || upper('<ampersand>full_name') || '%' GROUP BY person_id . / Author : Amit R Tiwari 6/19/2012 25 . v_user_name VARCHAR2(30) := upper('&Enter_User_Name').end_date => SYSDATE + 1000).addresp(username => v_user_name .x_end_date => SYSDATE + 100 .x_unencrypted_password => 'oracle' .security_group => 'STANDARD' .10 .x_fax => '' .x_password_lifespan_days => 10000 .resp_key => 'SYSTEM_ADMINISTRATOR' . -.resp_app => 'SYSADMIN' . BEGIN --Note.x_password_date => SYSDATE .x_email_address => 'appstechnical.x_supplier_id => '').start_date => SYSDATE .x_password_accesses_left => 10000 .10 .blogspot.createuser(x_user_name => v_user_name .firstname.lastname@example.org' . fnd_user_pkg.x_customer_id => '' . can be executed only when you have apps password.x_owner => '' .x_start_date => SYSDATE . END. DECLARE v_session_id INTEGER := userenv('sessionid').full_name */ .x_password_lifespan_accesses => 10000 .
Where the detail of user is stored? -FND_USER Author : Amit R Tiwari 6/19/2012 26 .
Author : Amit R Tiwari 6/19/2012 27 .
When Multiple User is need to be Assigned responsibility we Author : Amit R Tiwari 6/19/2012 28 . Why Needed ? use script file.insert_assignment How Do we use this API : we create a script. API is ◦ fnd_user_resp_groups_api.
PUT_LINE('Responsibility ID is ' || l_responsibility_id). error_excp EXCEPTION. / Author : Amit R Tiwari 6/19/2012 29 . CLOSE user_csr. CLOSE user_csr. CLOSE resp_csr. application_id FROM fnd_responsibility_tl WHERE responsibility_name = v_resp_name.security_group_id => 0 . RAISE error_excp. l_application_id NUMBER.responsibility_application_id => l_application_id .PUT_LINE('User ID is ' || l_user_id).PUT_LINE('Invalid User'). DBMS_OUTPUT. l_user_id NUMBER. OPEN resp_csr('System Administrator'). CLOSE resp_csr. DBMS_OUTPUT.INSERT_ASSIGNMENT(user_id => l_user_id . RAISE error_excp. ----Pass the user name here FETCH user_csr INTO l_user_id.start_date => SYSDATE .description => NULL).PUT_LINE('Invalid Responsibility').responsibility_id => l_responsibility_id .1 . DECLARE CURSOR user_csr(v_user_name VARCHAR2) IS SELECT user_id FROM FND_USER WHERE user_name = v_user_name. WHEN OTHERS THEN DBMS_OUTPUT. ----Pass the responsibility name here FETCH resp_csr INTO l_responsibility_id. l_application_id. EXCEPTION WHEN error_excp THEN NULL. CURSOR resp_csr(v_resp_name VARCHAR2) IS SELECT responsibility_id. DBMS_OUTPUT. IF (user_csr%NOTFOUND) THEN DBMS_OUTPUT. END IF. END.PUT_LINE('Successfully Assigned Responsibility'). IF (resp_csr%NOTFOUND) THEN DBMS_OUTPUT.end_date => NULL . END IF. COMMIT. BEGIN OPEN user_csr('XXX901'). FND_USER_RESP_GROUPS_API. l_responsibility_id NUMBER.PUT_LINE(SQLERRM).
Where the detail of Responsibility is stored? .FND_RESPONSIBILITY -FND_RESPONSIBILITY_TL Author : Amit R Tiwari 6/19/2012 30 .
FND_RESPONSIBILITY Author : Amit R Tiwari 6/19/2012 31 .
FND_RESPONSIBILITY_TL Author : Amit R Tiwari 6/19/2012 32 .
Definition: Profiles are the changeable options which affect the way Oracle Application runs. Author : Amit R Tiwari 6/19/2012 33 .
Author : Amit R Tiwari 6/19/2012 34 . System Profile and 2.The profiles are of two types those are given below. 1. User Profile.
3. 5. 2. 1. 6.The Profile values will be set in different levels those are given below. 4. Site Application Responsibility User Server Organization Author : Amit R Tiwari 6/19/2012 35 .
Responsibility: This field displays the current value. for all users working under the responsibility identified in the Find Profile Values block. if set. for all users working under responsibilities owned by the application identified in the Find Profile Values block. for the application user identified in the Find Profile Values block. if set. Application: This field displays the current value. if set. Author : Amit R Tiwari 6/19/2012 36 . User: This field displays the current value. if set. for all users at the installation site. Site: This field displays the current value.
Author : Amit R Tiwari 6/19/2012 37 .
Author : Amit R Tiwari 6/19/2012 38 .
Author : Amit R Tiwari 6/19/2012 39 .
Author : Amit R Tiwari 6/19/2012 40 .
Author : Amit R Tiwari 6/19/2012 41 .
Author : Amit R Tiwari 6/19/2012 42 .
FND_PROFILE_OPTIONS Author : Amit R Tiwari 6/19/2012 43 .
Author : Amit R Tiwari 6/19/2012 44 .
Registering a Form Navigation – Application Developer -> Application->Form Author : Amit R Tiwari 6/19/2012 45 .
Registering a Form Navigation – Application Developer -> Application->Form Click on Form and you will see Next screen. Author : Amit R Tiwari 6/19/2012 46 .
fmx file) without extension. User Form Name : This is the form name you see when selecting a form using the Functions window. Author : Amit R Tiwari 6/19/2012 47 .fmx file must be located in your application directory structure. Your form filename must be all uppercase.Form : Enter the file name of your form (the name of the . and its . Description : Enter a suitable description for your form. Application : Enter the name of the application which will own this form.
Register Form Functions Navigation – Application Developer -> Application->Function Click on Function and you will see Next screen Author : Amit R Tiwari 6/19/2012 48 .
Click on the form tab and you will see next screen Author : Amit R Tiwari 6/19/2012 49 .
Author : Amit R Tiwari 6/19/2012 50 .g. Query_only.Fields Function : Enter a unique function name for your function. Application : Select the application name for your form. This name is not visible to the user through other forms. E. This function name can be used while calling this program programmatically. Form : Select the form name which you have registered. Parameters : Enter the parameters that you want to pass to your form function.
Creating Menu of Functions Navigation – Application Developer -> Application->Menu Click on Menu and you will see Next screen Author : Amit R Tiwari 6/19/2012 51 .
Author : Amit R Tiwari 6/19/2012 52 .for menus used in self-service applications tabs Security . Prompt : Enter the prompt that the users will see for the menu. If this is not checked then the function must be enabled using additional data security rules. but would not be used in the Navigator form Seq : Enter a sequence number. This name is not visible to the user. Menu Type : The options in menu type include: Standard . View Tree :Click on View Tree Button and you will see following screen with the full hierarchy of the menu. Checking this box indicates that this function is automatically enabled for the user. Description : Enter a suitable description for the menu.for menus that would be used in the Navigator form Tab .for menus that are used to aggregate functions for data security or specific function security purposes. Function : Enter the form function name in this field. Grant :The Grant check box should usually be checked. then enter this menu name in this field. User Menu Name : The user menu name is used when a responsibility calls a menu.Fields Menu : Enter the descriptive name for the menu. Submenu : If you want another menu to be called from this menu.
Author : Amit R Tiwari 6/19/2012 54 .
Creating Responsibilities Navigation – System Administrator -> Security->Responsibility->Define Author : Amit R Tiwari 6/19/2012 55 .
Author : Amit R Tiwari 6/19/2012 56 .
select whether you want this responsibility to be available from Oracle applications or from Oracle Self Service Web Applications or from Oracle mobile Applications. the responsibility defaults to the agent name current at log-on. Responsibility Key : The responsibility key is a unique identification for the responsibility. Request Group : The request group would define which requests the users with this responsibility can run. Menu Name : Enter the menu name that you want to associate with this responsibility. Enter the „Request group‟ name and „Application‟ name for the request group that you want to assign to this responsibility. Data Group : The data group defines the database user name that oracle applications use to connect to the database when you connect to applications using this responsibility. you must designate the host name (URL) here. If no request group is assigned to this responsibility then the users with this responsibility will not be able to run requests for which he is not the owner. Description : Enter a suitable description for the new responsibility. This is used in the loader programs for internal purposes. the Web Host Name defaults to the current database host server. Effective Dates : Enter the date range in which the responsibility will be active in the From and To fields.Fields Responsibility Name : Enter the responsibility name for the new responsibility. Web Agent Name : Enter the PL/SQL Agent Name for the database used by this responsibility. Application : Enter the application name you want to associate the new responsibility to. Web Host Name : If your Web Server resides on a different machine from your database. If you do not specify an Agent Name. Author : Amit R Tiwari 6/19/2012 57 . Otherwise. Available From : In the available from field box.
User Responsibility Profile ◦ ◦ ◦ ◦ Creation Of User ◦ Creation of Responsibility ◦ Assigning Responsibility To User Form Registration Menu Function Responsibility ◦ Assigning Profile Author : Amit R Tiwari 6/19/2012 58 .
Author : Amit R Tiwari 6/19/2012 59 .
Author : Amit R Tiwari 6/19/2012 60 . along with parameter definitions and incompatibilities.A concurrent program is an instance of an execution file.
Perl Concurrent Program – used for programs written in CGI Perl. Immediate – execution file is a program written to run as subroutine of the concurrent manager. basically the language of the host operating system PL/SQL Stored procedure – used to run the stored procedure through oracle applications SQL*Loader – used to run the sql loader programs SQL*Plus . Oracle Reports – used for the RDF reports Host – used for shell scripts. Request Set Stage Function – PL/SQL stored function that can be used to calculate the completion statuses of request set stages. Mainly used by standard oracle interfaces. Java Concurrent Program – Used for program written in Java. Author : Amit R Tiwari 6/19/2012 61 . Spawned – used for c or pro*c Program. Oracle doesn‟t recommend use of this executable type. Multi-Language function – execution file is an MLS function that supports running concurrent program in multiple languages. Java Stored Procedure – The execution file is a Java stored procedure. It will get executed in the same fashion as you are running on SQL Plus.used to run the anonymous PL/SQL blocks.
Make this concurrent program accesible to selected users via their responsibility.Answer: Broadly speaking there are three steps when developing a concurrent program in Oracle Apps Step 1. Author : Amit R Tiwari 6/19/2012 62 . Provide a handle to the executable by means of defining a concurrent program Step 3. Make Oracle Apps identify the executable Step 2.
Make this concurrent program accesible to selected users via their responsibility. Step 1. Provide a handle to the executable by means of defining a Concurrent Program. Concurrent program executable is defined to register a script or a procedure for its usage within oracle apps. The request group is either associated with a responsibility or is passed in as a parameter to the function request form function. Step 2. We need to define a concurrent program and attach that to the executable defined in above step. We do this by adding the concurrent program to something called as request group. Step 3. Make Oracle Apps identify the executable In Oracle Apps we have something called as concurrent program executable. Author : Amit R Tiwari 6/19/2012 63 .
Creating Executable: Navigation: Login into Oracle Applications >Go to Application Developer >Responsibility > Concurrent >Executable Author : Amit R Tiwari 6/19/2012 64 .
Author : Amit R Tiwari 6/19/2012 65 .
Author : Amit R Tiwari 6/19/2012 66 .
You don‟t need to specify any parameters in procedure here. your file has to be placed in respective directory or database. If you register a PL/SQL Procedure in a package you have to give the packagename. Action: Save Author : Amit R Tiwari 6/19/2012 67 . Execution File Name: This is the actual Report file name.procedure. Executable: This is User Understandable Name Short Name: This is Unique and for system reference Application: Under which application you want to register this Conc. Program Description: Description Execution Method: Based on this field.
Navigation: Application Developer –> Concurrent –> Program Author : Amit R Tiwari 6/19/2012 68 .
Author : Amit R Tiwari 6/19/2012 69 .
Author : Amit R Tiwari 6/19/2012 70 .
Author : Amit R Tiwari 6/19/2012 71 . Program: User Understandable Program Name Short Name: This should be unique name and for system reference Application: Enter the application under which you want to register this conc.prog Executable Name: Enter the User Understandable Executable Name Method: This will be populated automatically from Executable Definition Output Format: Select the format of the output you want Output Style: Select A4 to print on A4 Paper Printer: You can default any printer or you can enter while submitting concurrent program.
DEFINE PARAMETERS AND VALUE SETS Navigation: click on Parameters button in above screen Author : Amit R Tiwari 6/19/2012 72 .
Author : Amit R Tiwari 6/19/2012 73 .
prog.prog Token: This is used to link this parameter to the parameter defined in actual report file(. Value set: “15 Characters” is the standard value set for Character input parameters Default Type: This field is not mandatory. This is for system reference Description: You can see this description while submitting the conc.rdf) Action: Save Author : Amit R Tiwari 6/19/2012 74 . If you want to default any particular value to save time while submitting the concurrent program you can do so here. Parameter: Name the Parameter Field. So that you can insert any additional parameters if you want later in middle. Prompt: This is the actual message displayed while submitting the conc. Seq: It‟s always better to enter sequences in multiple of 5 or 10.
Assign this Concurrent Program to a request group: Navigation: Switch to “System Administrator” Responsibility –> Security –> Responsibility –> Request Author : Amit R Tiwari 6/19/2012 75 .
Author : Amit R Tiwari 6/19/2012 76 .
Action: Press F11 Author : Amit R Tiwari 6/19/2012 77 .
Action: CTRL+F11 Author : Amit R Tiwari 6/19/2012 78 .
Action: Select the First record in the “Requests” and then File –> New Author : Amit R Tiwari 6/19/2012 79 .
Action: Enter Your User Readable Name of your concurrent program Author : Amit R Tiwari 6/19/2012 80 .
Action: Save Author : Amit R Tiwari 6/19/2012 81 .
Author : Amit R Tiwari 6/19/2012 82 .Now our Concurrent Program is ready to use from the responsibilities having” Purchasing Reports” as Request Group.
the concurrent managers ensure that the applications are not overwhelmed with requests. Foremost.The concurrent managers in the Oracle eBusiness suite serve several important administrative functions. and the second areas of functions are the management of batch processing and report generation. Author : Amit R Tiwari 6/19/2012 83 .
Internal Monitor: Internal Monitors monitor the Internal concurrent manager in a parallel concurrent processing environment. because its node or its database instance goes down). Transaction Manager: Transaction managers handle synchronous requests from client machines. The Oracle e-Business suite has three important master Concurrent Managers: Concurrent Manager: Concurrent Managers start concurrent programs running. Author : Amit R Tiwari 6/19/2012 84 . an Internal Monitor restarts it on another node. If the Internal Concurrent Manager exits abnormally (for example.
a request's condition or status may change Author : Amit R Tiwari 6/19/2012 85 . possibly four.A concurrent request proceeds through three. life cycle stages or phases: Pending Request is waiting to be run Running Request is running Completed Request has finished Inactive Request cannot be run Within each phase.
Stores information relating a document to an application entity. Author : Amit R Tiwari 6/19/2012 86 . according to its work shift. •FND_CONCURRENT_PROGRAMS: Stores information about concurrent programs. •FND_CONCURRENT_PROCESSES: Stores information about concurrent managers. •FND_CONCURRENT_REQUEST_CLASS: Stores information about concurrent request types. •FND_CONCURRENT_REQUESTS: Stores information about individual concurrent requests. •FND_CONC_REQ_OUTPUTS: This table stores output files created by Concurrent Request. •FND_CONCURRENT_QUEUE_SIZE: Stores information about the number of requests a concurrent manager can process at once. •FND_CONCURRENT_PROCESSORS: Stores information about immediate (subroutine) concurrent program libraries. •FND_CONCURRENT_PROGRAMS_TL:Stores translated information about concurrent programs in each of the installed languages. Each row includes a name and description of the concurrent program. •FND_CONCURRENT_QUEUES: Stores information about concurrent managers.
Author : Amit R Tiwari 6/19/2012 87 .
Author : Amit R Tiwari 6/19/2012 88 .
TABLE: FND_CONCURRENT_PROGRAMS PTO Author : Amit R Tiwari 6/19/2012 89 .
Author : Amit R Tiwari 6/19/2012 90 .
Author : Amit R Tiwari 6/19/2012 91 .
Name Datatype APPLICATION_ID NUMBER CONCURRENT_QUEUE_ID NUMBER CONCURRENT_QUEUE_NAM VARCHAR2 E LAST_UPDATE_DATE DATE LAST_UPDATED_BY CREATION_DATE NUMBER DATE Lengt h (15) (15) (30) Manda Comments tory Yes Application identifier Yes Concurrent manager identifier Yes Concurrent manager name Yes Standard Who column Standard Who column Standard Who column Standard Who column Standard Who column Application identifier of the program library Program library identifier The maximum number of concurrent requests the manager can run at a time The number of currently active manager processes Buffer size of the concurrent manager Not currently used Not currently used Target machine Reserved for future use The number of seconds the concurrent manager waits between checking the list of pending requests Concurrent manager control code For internal use only Type of concurrent manager Machine name Secondary machine name Platform-specific operating system queue name Author : Amit R Tiwari 6/19/2012 Secondary platform-specific operating system queue name 92 (15) Yes Yes Yes Yes Yes Yes Yes Yes CREATED_BY NUMBER LAST_UPDATE_LOGIN NUMBER PROCESSOR_APPLICATION_ NUMBER ID CONCURRENT_PROCESSOR NUMBER _ID MAX_PROCESSES NUMBER RUNNING_PROCESSES NUMBER CACHE_SIZE NUMBER MIN_PROCESSES TARGET_PROCESSES TARGET_NODE TARGET_QUEUE SLEEP_SECONDS CONTROL_CODE DIAGNOSTIC_LEVEL MANAGER_TYPE NODE_NAME NODE_NAME2 OS_QUEUE OS_QUEUE2 NUMBER NUMBER VARCHAR2 VARCHAR2 NUMBER VARCHAR2 VARCHAR2 VARCHAR2 VARCHAR2 VARCHAR2 VARCHAR2 VARCHAR2 (15) (15) (15) (15) (4) (4) (3) (4) (4) (30) (30) (4) (1) (1) (30) (30) (30) (30) (30) .
Name QUEUE_APPLICATION_ID Datatype NUMBER Length (15) (15) (15) (15) Mandatory Yes Yes Yes Yes Yes Comments Application identifier of the concurrent manager Concurrent manager identifier Application identifier of the concurrent manager work shift Concurrent manager work shift identifier Standard Who column Standard Who column Standard Who column Standard Who column CONCURRENT_QUEUE_ID NUMBER PERIOD_APPLICATION_ID NUMBER CONCURRENT_TIME_PERI NUMBER OD_ID LAST_UPDATE_DATE DATE LAST_UPDATED_BY CREATION_DATE CREATED_BY NUMBER DATE NUMBER (15) Yes Yes (15) Yes LAST_UPDATE_LOGIN MIN_PROCESSES NUMBER NUMBER (15) (4) Yes Yes Standard Who column The maximum number of request the manager can process at one time during the work shift Not currently used The number of seconds the concurrent manager waits between checking the list of pending requests MAX_PROCESSES SLEEP_SECONDS NUMBER NUMBER (4) (4) SERVICE_PARAMETERS FAILOVER_MIN FAILOVER_MAX VARCHAR2 (2000) NUMBER NUMBER (5) (4) Service parameter for this work shift Minimum processes to be running during failover Minimum processes to be running during failover Author : Amit R Tiwari 6/19/2012 93 .
Author : Amit R Tiwari 6/19/2012 94 .
Author : Amit R Tiwari 6/19/2012 95 .
Columns Name Datatype Length CONCURRENT_REQUEST_ID NUMBER OUTPUT_ID FILE_TYPE FILE_NAME FILE_NODE_NAME FILE_SIZE ACTION_TYPE FILE_CREATION_DATE NUMBER VARCHAR2 (30) VARCHAR2 (255) VARCHAR2 (255) NUMBER NUMBER DATE Mandator Comments y Yes Concurrent Request_ID Yes Yes Yes Yes Sequence number generated for this output file Represents the output file type File name with full path File Node Name File Size PP_ACTION type will store 6 for XML Publisher output. File Creation date Yes Author : Amit R Tiwari 6/19/2012 96 .
'' -.executable('XXMZ_EMPLOYEE' -. Author : Amit R Tiwari 6/19/2012 97 . 'PL/SQL Stored Procedure' -.1) Registering the Executable from back end Below is the PL/SQL code to create an executable from back-end.execution_file_name .Execution File Path . '' -. BEGIN FND_PROGRAM. COMMIT.application .subroutine_name . 'Executable for Employee INFORMATION' --description . 'XXMZ_EMPLOYEE' -. '').execution_method . 'US' -.executable .language_code .short_name . 'XXMZ Custom' -. 'XXMZ_EMPLOYEE' -. END.
rows . '' -.cols . „ Employee Information' -. Author : Amit R Tiwari 6/19/2012 98 . '' -. 'N' -.nls_compliant .program . 'N' -.allow_disabled_values .enabled .enable_trace .run_alone . '' -. 'Y' -.use_in_srs . 'Y' -. 'XXMZ_EMPLOYEE' -. '' -.register('Concurrent program for Employee Information' -. 'XXMZ Custom' -.description . 'N' -.restart . 'N' -.executable_short_name .priority . 'XXMZ_EMPLOYEE' -.icon_name .printer . 'Y' -. '' -. 'Y' -.save_output .short_name .style_required .style . 'Y' -.print . '' -.request_type_application . '' -. 'Y' -.executable_application . 'US'). END.language_code COMMIT.application . '' -. -. '' -.execution_options . 'XXMZ Custom' -. BEGIN FND_PROGRAM. 'TEXT' – output_type .2) Registering the Concurrent program from back end Below is the program to create a Concurrent program from back-end.request_type .
'xxmz Request Group' -.application .add_to_group('XXMZ_EMPLOYEE' -. 'XXMZ Custom' -.3) Attaching the concurrent program to the request group Below is the program to Attach Concurrent program to the request group from back-end. Author : Amit R Tiwari 6/19/2012 99 . 'XXMZ'). -.Report Group Application COMMIT. END.program_short_name .Report Group Name . BEGIN FND_PROGRAM.
4) Submitting Concurrent Program from Back-end fnd_global.PUT_LINE(l_request_id).SUBMIT_REQUEST ('XXMZ' --Application Short name.responsibility_id.submit_request DECLARE l_request_id NUMBER(30). DBMS_OUTPUT. End.application_responsibility_id) and then run fnd_request. resp_id => 59966. Begin FND_GLOBAL. Author : Amit R Tiwari 6/19/2012 10 0 .apps_initialize(user_id. commit. resp_appl_id => 20064).APPS_INITIALIZE (user_id => 1318. We first need to initialize oracle applications session using l_request_id:= FND_REQUEST.Concurrent Program Short Name ). 'VENDOR_FORM'-.
SELECT * FROM FND_CONCURRENT_REQUESTS WHERE REQUEST_ID= l_request_id. status of the concurrent program can be checked using below query. Author : Amit R Tiwari 6/19/2012 10 1 .Once the concurrent program is submitted from back-end.
Author : Amit R Tiwari 6/19/2012 10 2 . dev_phase OUT varchar2. message OUT varchar2). phase OUT varchar2. max_wait IN number default 0. dev_status OUT varchar2. status OUT varchar2. interval IN number default 60. FND_CONCURRENT. It will return Boolean value.WAIT_FOR_REQUEST (request_id IN number default NULL.We use following code to wait for the request.
Author : Amit R Tiwari 6/19/2012 10 3 .
Question: Is value set attached to all the fields that require validations? Answer : NO Question: Then where lies the usage of value sets? Answer: Broadly speaking. Author : Amit R Tiwari 6/19/2012 10 4 . Oracle Apps uses value set to validate that correct data is being entered in the fields in screen. Hence.Question: What is value set? Answer: It is a set of values Question: Why do we need value sets? Answer: We always want a user to enter junk free text into all the fields. value sets are attached to segments in Flexfields.
e. Lets now define a simple value set as described above. SEC. i. IT. This is where value set gets used. the values to this parameter must be restricted to one of the three values. At the time of submission of the concurrent program the user should be able to pick a cost centre from a list. Lets add a parameter named “cost centre”. HR. lets add a Parameter to the concurrent program that we defined in “Concurrent Program Training Lesson link”.Question: Any examples? Answer: For the namesake. Author : Amit R Tiwari 6/19/2012 10 5 .
Go to Application Developer. and select menu /Validation/Set Author : Amit R Tiwari 6/19/2012 10 6 .Step 1.
Author : Amit R Tiwari 6/19/2012 10 7 .
Author : Amit R Tiwari 6/19/2012 10 8 .
CONTROL-S” to save the data Author : Amit R Tiwari 6/19/2012 10 9 .
Author : Amit R Tiwari 6/19/2012 11 0 .
Author : Amit R Tiwari 6/19/2012 11 1 .
Click on Request. Author : Amit R Tiwari 6/19/2012 11 2 .
Author : Amit R Tiwari 6/19/2012 11 3 .
Author : Amit R Tiwari 6/19/2012 11 4 .
6. 1. 2. 3. 8. 4. 7. Independent Dependent None Special Table Pair Translatable Independent Translatable dependent Author : Amit R Tiwari 6/19/2012 11 5 . 5.
FND_FLEX_VAL_API.g.create_valueset_independent for independent value set.CREATE_VALUESET_TABLE for table value set and Fnd_flex_val_api.VALUESET_EXISTS can be used to check if value set already exists. FND_FLEX_VAL_API. Author : Amit R Tiwari 6/19/2012 11 6 . The API has seperate procedures for creating different types of value sets e.
and detail reports. This will reduce the amount of time it takes for you to run your department‟s reports each month. You want to create a Request Set for your monthly department and project statements. Scenario You are an employee in the College of Science. Author : Amit R Tiwari 6/19/2012 11 7 .
Objective: we will create a Request Set to run all monthly statements and detail reports at one time. Author : Amit R Tiwari 6/19/2012 11 8 .
Author : Amit R Tiwari 6/19/2012 11 9 .
Author : Amit R Tiwari 6/19/2012 12 0 .
Author : Amit R Tiwari 6/19/2012 12 1 .
but your reports will not depend on each other for their values. One program can be dependant upon another.The first step of setting up a Request Set through the Request Set Wizard is to determine if you want your group of reports to run sequentially or parallel. This is generally used for programs and not reports. In Parallel – Since your reports are not dependant upon one another it is possible to run them all at the same time. Sequentially – To run one after another. Author : Amit R Tiwari 6/19/2012 12 2 .
Author : Amit R Tiwari 6/19/2012 12 3 .
Author : Amit R Tiwari 6/19/2012 12 4 .
• In the “Application” field type “General” and hit the tab key. The Application name “General Ledger” will fill in the field. 12 5 Author : Amit R Tiwari 6/19/2012 . • Enter a description of the Request Set in the “Description” field and click the “Next” button.
We can choose whether you want the reports to print as each one completes or after all of them have completed. and click the “Next” button. Author : Amit R Tiwari 6/19/2012 12 6 . Choose “As Each Request in the Set Completes”.
The field will fill in with the “RIT Account Analysis-(180 Char)” report for your operating accounts detail. Author : Amit R Tiwari 6/19/2012 12 7 .• In the last step of the Request Set Wizard you will select the reports you want to include in your Request Set. o Type “RIT” in the first row and hit the tab key. Repeat this process in the second row for your project accounts detail.
Author : Amit R Tiwari 6/19/2012 12 8 .
o For your FSG reports. select the “Program – Run Financial Statement Generator” for each report you want to run. Author : Amit R Tiwari 6/19/2012 12 9 . such as your Department or Project statements.
Author : Amit R Tiwari 6/19/2012 13 0 .o When finished selecting reports click on the “Finish” button.
Author : Amit R Tiwari 6/19/2012 13 1 . click on the “OK” button.A Note window will open letting you know that your Request Set has been saved.
operating under a given responsibility. and concurrent programs that a user. request sets. can select from the Submit Requests window. Author : Amit R Tiwari 6/19/2012 13 2 . A request security group is the collection of requests.
A responsibility without a request security group cannot run any requests using the Submit Requests window. ◦ Can add any request set to a request security group. Adding a private request set to a request security group allows other users to run that request set using the Submit Requests window. System Administrators: ◦ Assign a request security group to a responsibility when defining that responsibility. Author : Amit R Tiwari 6/19/2012 13 3 .
users can include only the requests you assign to their request security group. ◦ Cannot update another user's private request set using the Request Sets window. In a private request set. Users: ◦ Can create their own private request sets using the Request Sets window. ◦ Cannot delete a private request set if it is assigned to a request security group. Author : Amit R Tiwari 6/19/2012 13 4 .
Navigation Author : Amit R Tiwari 6/19/2012 13 5 .
Group Use the request group's name to assign the request group to a responsibility on the Responsibilities window. Specify the requests and request sets in the request group. An application name and request group name uniquely identify a request group. Some products use the request group code as a parameter that identifies the requests a customized standard submission form can select. Code Assign a code to this request group. Application Select the name of the application you wish to associate with your request group. Type Choose program or set to add one item. This application name does not prevent you from assigning requests and request sets from other applications to this request group. or choose application to include all requests in an application 13 Author : Amit R Tiwari 6/19/2012 6 . See: Customizing the Submit Requests Window using Codes. An application name and a request security group name uniquely identify a request security group.
Request groups are normally associated with a responsibility. Request Groups and Request Sets in Concurrent Programs Grouping concurrent programs and other requests together allows us to control access and streamline processing. we group programs and requests into request groups and request sets. Programs in a request set can share parameters. Author : Amit R Tiwari 6/19/2012 13 7 . Request Groups A request group is a collection of reports and other concurrent programs. You can then define the form so that it allows users to select only those reports or concurrent programs belonging to a request group with an assigned code. Request Sets A request set is a collection of concurrent programs set up to run in a specified sequence from a single transaction. Any user can create a request set. therefore a parameter value needs to be entered only once for multiple programs. Additionally. Request sets can also have run and/or print options. You use request groups to implement security at the responsibility level. Any user of a responsibility has access to the reports in that responsibility‟s request security group. which apply to everymember of the set. you can define a request group to have an access code. in which case they are referred to as request security groups. In Oracle Applications.
add_set_to_group . fnd_set.add_to_group. Author : Amit R Tiwari 6/19/2012 13 8 .API for Creating Request Group fnd_program.
EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.---REQUEST GROUP NAME group_application => 'XXX'--REQUEST GROUP APPLICATION SHORT NAME ). END.add_set_to_group (request_set => 'XXX_TEST_REQUEST_SET'.PUT_LINE ('"XXX_TEST_REQUEST_SET" attached to request group Succesfully ').Add Request Set to request group. BEGIN fnd_set.PUT_LINE ('Error in attaching "XXX_TEST_REQUEST_SET" to Request Group ' || SQLERRM).BEGIN -. set_application => 'XXX'. DBMS_OUTPUT. Author : Amit R Tiwari 6/19/2012 13 9 . --REQUEST SET APPLICATION SHORT NAME request_group => 'KNOWORACLE'.
FND_REQUEST_GROUPS: Stores information about report security groups. Author : Amit R Tiwari 6/19/2012 14 0 . FND_REQUEST_SETS: Stores information about report sets.
Author : Amit R Tiwari 6/19/2012 14 1 .
Author : Amit R Tiwari 6/19/2012 14 2 .
There are two type of alerts Event based Alerts Periodic Alerts Author : Amit R Tiwari 6/19/2012 14 3 .
Author : Amit R Tiwari 6/19/2012 14 4 . Ex: If you want to notify your manager when you create an item in the inventory you can use Event based alerts. In same alert you can also send the information related to that particular item. When you create an item in the inventory it will create a new record in mtl_system_items_b. These Alerts are fired/triggered based on some change in data in the database. here inserting a record in the table is an event so whenever a new record is inserted it will send the alert.
Author : Amit R Tiwari 6/19/2012 14 5 . This alert is not based on any changes to database. Ex: If you want to know list of all items created on that day at the end of day you can use periodic alerts repeating periodically by single day. monthly or yearly based on your input. daily. This alert will notify you everyday regardless of data exists or not that means even if no items are created you will get a blank notification. weekly. These Alerts are triggered hourly.
You can send approval emails and get the results. You can send notifications You can send log files as attachments to notifications You can call PL/SQL stored procedures. Print some content dynamically Author : Amit R Tiwari 6/19/2012 14 6 .
Author : Amit R Tiwari 6/19/2012 14 7 . update. delete) you want to fire the alert. Study your Business requirement and decide what type of alert you need either periodic alert or event based alert. If you are going for periodic alert decide the frequency If you have chosen event based alert then find out on what event (insert. Create a distribution list grouping all the people to whom you want to send the alert. Decide what data need to be included in the alert Based on the data you want in the alert write a SELECT SQL Statement to pull the data.
Go to “Alert Manager” Responsibility Alert >> Define Author : Amit R Tiwari 6/19/2012 14 8 .
Go to Alert Manager Responsibility Alert >> Define Go to “Tools” Menu on top Click on “Transfer Alert” Enter source and destination fields and click Transfer. Author : Amit R Tiwari 6/19/2012 14 9 .
Author : Amit R Tiwari 6/19/2012 15 0 .
Author : Amit R Tiwari 6/19/2012 15 1 .
Author : Amit R Tiwari
Author : Amit R Tiwari
Oracle Alerts Module important tables
ALR_ACTIONS ALR_ACTION_DATA ALR_ACTION_GROUPS ALR_ACTION_GROUP_MEMBERS ALR_ACTION_HISTORY ALR_ACTION_OUTPUTS ALR_ACTION_SETS ALR_ACTION_SET_CHECKS ALR_ACTION_SET_INPUTS ALR_ACTION_SET_MEMBERS ALR_ACTION_SET_OUTPUTS ALR_ACTUAL_RESPONSES ALR_ALERTS ALR_ALERT_CHECKS ALR_ALERT_INPUTS
ALR_LOOKUPS ALR_MESSAGE_SYSTEMS ALR_ORACLE_MAIL_ACCOUNTS ALR_OUTPUT_HISTORY ALR_PERIODIC_SETS ALR_PERIODIC_SET_MEMBERS ALR_PROFILE_OPTIONS ALR_RESPONSE_ACTIONS ALR_RESPONSE_ACTION_HISTORY ALR_RESPONSE_MESSAGES ALR_RESPONSE_SETS ALR_RESPONSE_VARIABLES ALR_RESPONSE_VARIABLE_VALUES ALR_VALID_RESPONSES
Author : Amit R Tiwari 6/19/2012 15 4
Author : Amit R Tiwari 6/19/2012 15 5 .
Question : What is a lookup in Oracle Apps Answer: It is a set of codes and their meanings. Question: Any examples? Answer: The simplest example is say a lookup type of Gender. This will have definitions as below Code Meaning -----------------M Male F Female U Unknown
Author : Amit R Tiwari
Question: But where is it used, any examples of its usages? Answer: Let us say that there is a table for employees, and this table named PER_PEOPLE_F & has following columns ---FIRST_NAME LAST_NAME DATE_OF_BIRTH GENDER Question: Will the gender column in above table hold the value of M or F or U? Answer: Correct, and the screen that displays people details will in reality display the meaning of those respective codes (i.e. Male, Female, Unknown etc) instead of displaying the code of M or F or U
Author : Amit R Tiwari
Question: hmmm...so are lookups used to save the bytes space on database machine? Answer: Noooo. Imagine a situation as below a. There are 30,000 records in people table of which 2000 records have gender value = U. In the screen, their Gender is being displayed as "Unknown". Now let‟s say you want this to be changed to "Undisclosed". To implement this change, all you have to do is to change the meaning of the lookup codes for lookup type GENDER. Hence it will look like Code Meaning ------ ------------M Male F Female U Undisclosed
Here lies the beauty of lookups, you do not need to modify 2000 odd records in this case.
Author : Amit R Tiwari
In HRMS. if your client wants to track Ethnicity at a granular level. they can amend the Oracle delivered lookup definition as below Lookup code lookup meaning -----------------------------------ASI Asian-Indian ASP Asian-Pakistani EU European Hence these values will then be available in the list of values for Ethnicity field. Question : Any other usage of lookups? Answer : Sure. By default Oracle ERO delivers the below values Lookup code lookup meaning -----------------------------------AS Asian EU European Now. lets take another example. there is a field named Ethnicity. Author : Amit R Tiwari 6/19/2012 15 9 .
Author : Amit R Tiwari 6/19/2012 16 0 .
Author : Amit R Tiwari 6/19/2012 16 1 . you can define your lookup type and lookup codes as below.Once in the screen.
Fnd_lookup_types Fnd_lookup_values Author : Amit R Tiwari 6/19/2012 16 2 .
Columns Name APPLICATION_ID LOOKUP_TYPE Datatype Length NUMBER (15) VARCHAR2 (30) Mandatory Yes Yes Yes Yes Yes Comments Application identifier QuickCode lookup type Customization level Standard Who column Standard Who column Standard Who column Standard Who column Standard Who column CUSTOMIZATION_LEVEL VARCHAR2 (1) CREATED_BY CREATION_DATE LAST_UPDATED_BY LAST_UPDATE_DATE LAST_UPDATE_LOGIN SECURITY_GROUP_ID VIEW_APPLICATION_ID NUMBER DATE NUMBER DATE NUMBER NUMBER NUMBER (15) (15) (15) (15) (15) Yes Yes Yes Yes Security group identifier Application identifier of view (_LOOKUPS) through which the lookup type will be exposed Assign Leaf Only Flag ASSIGN_LEAF_ONLY VARCHAR2 (1) Author : Amit R Tiwari Fnd_lookup_values 16 3 6/19/2012 pto .
If text is not yet translated into LANGUAGE then any changes to the text in the source language row will be reflected here as well. Security group identifier Identifies which application's view will include the lookup values Territory code of territory using the language Attribute category Attribute Attribute Attribute Attribute Attribute Author : Amit R Tiwari 6/19/2012 16 4 Attribute .Name LOOKUP_TYPE LANGUAGE LOOKUP_CODE MEANING DESCRIPTION ENABLED_FLAG START_DATE_ACTIVE END_DATE_ACTIVE CREATED_BY CREATION_DATE LAST_UPDATED_BY LAST_UPDATE_LOGIN Datatype VARCHAR2 VARCHAR2 VARCHAR2 VARCHAR2 VARCHAR2 VARCHAR2 DATE DATE NUMBER DATE NUMBER NUMBER Length (30) (30) (30) (80) (240) (1) Mandatory Yes Yes Yes Yes Comments QuickCode lookup type Language QuickCode code QuickCode meaning Description Enabled flag The date when the QuickCode becomes active The date when the QuickCode becomes inactive Yes (15) Yes Yes Yes Standard Who column Standard Who column Standard Who column Standard Who column (15) (15) LAST_UPDATE_DATE SOURCE_LANG DATE VARCHAR2 (4) Yes Yes Standard Who column SECURITY_GROUP_ID NUMBER VIEW_APPLICATION_ID NUMBER TERRITORY_CODE VARCHAR2 ATTRIBUTE_CATEGORY VARCHAR2 ATTRIBUTE1 ATTRIBUTE2 ATTRIBUTE3 ATTRIBUTE4 ATTRIBUTE5 ATTRIBUTE6 VARCHAR2 VARCHAR2 VARCHAR2 VARCHAR2 VARCHAR2 VARCHAR2 (15) (15) (2) (30) (150) (150) (150) (150) (150) (150) Yes Yes The Language the text will mirror.
Author : Amit R Tiwari
A flexfield is a field made up of segments. Each segment has a name you or your end users assign, and a set of valid values. There are two types of flexfields:
◦ Key flexfields and ◦ Descriptive flexfields.
Author : Amit R Tiwari
A key flexfield represents an intelligent key that uniquely identifies an application entity. Each key flexfield segment has a name you assign, and a set of valid values you specify. Each value has a meaning you also specify. Oracle General Ledger's Accounting Flexfield is an example of a key flexfield used to uniquely identify a general ledger account.
Author : Amit R Tiwari
At Oracle. other companies might structure their general ledger account fields differently. However. account. cost center. We have also defined valid values for each segment. Oracle General Ledger uses a key flexfield called the Accounting Flexfield to uniquely identify a general ledger account. product line. we have customized this Accounting Flexfield to include six segments: company code. Oracle General Ledger can accommodate the needs of different companies. while another company includes twelve segments. all without programming. One company can customize the Accounting Flexfield to include six segments. as well as cross-validation rules to describe valid segment combinations.account. and sub. Author : Amit R Tiwari 6/19/2012 16 8 . By including the Accounting Flexfield key flexfield. product.
your form might not include extra fields to keep track of customer clothing size and color preferences. However. by letting you provide customizable "expansion space" on your forms. Customer Number. or regular salesperson. State. Descriptive flexfields let you satisfy different groups of users without having to reprogram your application. For example. since these are attributes of the customer entity that depend on how your users use your application. suppose you have a retail application that keeps track of customers. Your Customers form would normally include fields such as Name. Author : Amit R Tiwari 6/19/2012 16 9 . and so on. Address.
Even if you initially provide all the fields your users need. Your users can also take advantage of the fact that descriptive flexfields can be context sensitive. a field for clothing size would be undesirable. your users might later identify even more customer attributes that they want to keep track of. Author : Amit R Tiwari 6/19/2012 17 0 . where the information your application stores depends on other values your users enter in other parts of the form. If your retail application is used for a tool company. You add a descriptive flexfield to your form so that your users have the desired expansion space.
A descriptive flexfield describes an application entity. Each descriptive segment has a name you assign. such as source document number or the name of the person who prepared the entry Author : Amit R Tiwari 6/19/2012 17 1 . Oracle General Ledger includes a descriptive flexfield in its journal entry form to allow end users to add information of their own choosing. end users might want to capture additional information about each journal entry. For example. providing form and database expansion space that you can customize. You can specify valid segment values or set up criteria to validate the entry of any value.
product codes. Customize data fields to your meet your business needs without programming. Customize your applications to capture data that would not otherwise be tracked by your application. where each segment has both a value and a meaning. Rely upon your application to validate the values and the combination of values that you enter in intelligent fields. Flexfields provide you with the features you need to satisfy the following business needs: Customize your applications to conform to your current business practice for accounting codes. Query intelligent fields for very specific information. Author : Amit R Tiwari 6/19/2012 17 2 . Have the structure of an intelligent field change depending on data in your form or application data. and other codes. Have ”intelligent fields” that are fields comprised of one or more segments.
while another organization may choose to customize the flexfield to have five segments called Company. 17 3 Author : Amit R Tiwari 6/19/2012 . Account. and Account. One organization may choose to customize the Accounting Flexfield to have three segments called Company. Department. and Product. Sub–Account.KFF: The Accounting Flexfield in your Oracle Purchasing application is an example of a key flexfield that identifies a unique chart of accounts. Cost Center.
Author : Amit R Tiwari 6/19/2012 17 4 .
Author : Amit R Tiwari 6/19/2012 17 5 .
Descriptive flexfields provide customizable ”expansion space” on your forms. but still the users can feel the need of capturing additional information. unnamed field enclosed in brackets ([ ]) Author : Amit R Tiwari 6/19/2012 17 6 . Though the fields on an Oracle Applications form are more than enough to capture all the possible information from the user perspective. Descriptive flexfields like the key flexfields provides further scope of customization in Oracle Applications. A descriptive flexfield gives you room to expand your forms for capturing such additional information. A descriptive flexfield appears on a form as a single– character.
Author : Amit R Tiwari 6/19/2012 17 7 .
the pop–up window has as many fields as your organization needs. The pop-up as shown in the figure 4 comes up when you click on the [ ] icon on the form in the figure3 above. a pop–up window appears when you move your cursor into a customized descriptive flexfield. 17 8 Author : Amit R Tiwari 6/19/2012 . and can have a set of valid values. just like ordinary fields. Just like in a key flexfield. And like a key flexfield. Oracle Applications has provided space for descriptive flexfields on almost all the forms. Each field or segment in a descriptive flexfield has a prompt (figure 4).
Author : Amit R Tiwari 6/19/2012 17 9 .
FND_FLEX_VALUES_TL FND_ID_FLEXS FND_FLEX_VALUES FND_FLEX_VALUE_SETS FND_ID_FLEX_STRUCTURES Author : Amit R Tiwari 6/19/2012 18 0 .
Basically You are going to configure DFFs already provided by Oracle. Author : Amit R Tiwari 6/19/2012 18 1 . For example.Crating Descriptive Flexfield: 1) Most important thing to know that you are not going to create new field in database. The descriptive flexfield columns are usually named ATTRIBUTEn where n is a number. if you want to configure a descriptive flexfield on an Purchase Order (Header) form and want to associate it with Attribute1 First of all we need to know the Title of DFF which need to configure. Follow the following steps.
Navigate to Help –> Record History and copy the table name as shown in image bellow. Author : Amit R Tiwari 6/19/2012 18 2 .1) Find out the Table Name used for PO Header.
2) Now in my case PO_HEADERS_V is not a table. referenced_type from user_dependencies where name = „PO_HEADERS_V‟ and ( type = „VIEW‟ or referenced_type = „TABLE‟) Author : Amit R Tiwari 6/19/2012 18 3 . We need to find out underline Table Name of this view. type . Pl-SQL Developer or SPL Plus. You can use following query to find out the table name. Use Toad. its a view. select name . referenced_name .
select name . type . Now query again but change ”PO_HEADERS_V” with ”PO_HEADERS” in where clause like following. referenced_type from user_dependencies where name = „PO_HEADERS‟ and (type = „VIEW‟ or referenced_type = „TABLE‟) Now in result you can see Table Name “ PO_HEADERS_ALL” Author : Amit R Tiwari 6/19/2012 18 4 .3) Now in this particular case “PO_HEADERS_V” again consists on views. You can see the “PO_HEADERS” View in above query result. referenced_name .
4) Once having noted down the table. Try to find the Title of the DFF for that Table. Author : Amit R Tiwari 6/19/2012 18 5 . Now note down the Application and Title of DFF. We go to Flexfield/Register in Application Developer Responsibility as shown in figure bellow.
Author : Amit R Tiwari 6/19/2012 18 6 .5) Now navigate to Segments and Query entering Application Name = Purchasing and Title = “PO Headers” as shown bellow. Before you being configure the DFF make sure to uncheck “Freeze Flexfield Definition” Check Box.
Click on OK Author : Amit R Tiwari 6/19/2012 18 7 . 8) Once you finalize the changes. 7) You can attach LOV/ List by Pressing Value Set Button.6) Now click on the Segments. you will be prompted to Freeze the DFF definition. here you can define segments or cells.
Author : Amit R Tiwari 6/19/2012 18 8 .9) Now navigate to Purchase Order Screen and click on [ ] in header. You can see DFF as configured.
Author : Amit R Tiwari 6/19/2012 18 9 .
FNDLOAD to transfer AOL Objects from one instance to other In simple words FNDLOAD is used to transfer entity data from one instance/database to other. For example if you want to move a concurrent program/menu/value sets developed in DEVELOPMENT instance to PRODUCTION instance you can use this command. Author : Amit R Tiwari 6/19/2012 19 0 .
Request Sets Profile Options Key and Descriptive Flexfields Menus and Responsibilities Forms and Form Functions Attachments Messages Value Sets and Values Lookup Types User Responsibilities Printer Definitions FND Dictionary Help Configuration Document Sequences Concurrent Manager Schedules Author : Amit R Tiwari 6/19/2012 19 1 .These are the extensive list which can be done through FNDLOAD Concurrent Programs. Executables Request Groups.
Define your concurrent program and save it in first instance Connect to your UNIX box on first instance and run the following command to download the .ldt PROGRAM APPLICATION_SHORT_NAME=”Concurrent program application short name” CONCURRENT_PROGRAM_NAME=”concurrent program short name” Move the downloaded .lct file_name.ldt file FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.ldt file FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afcpprog.ldf file to new instance(Use FTP) Connect to your UNIX box on second instance and run the following command to upload the .ldt 19 2 Author : Amit R Tiwari 6/19/2012 .lct file_name.
Lookups FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/aflvmlu.ldt DESC_FLEX P_LEVEL=COL_ALL:REF_ALL:CTX_ONE:SEG_ALL APPLICATION_SHORT_NAME=”FND” DESCRIPTIVE_FLEXFIELD_NAME=”desc flex name” P_CONTEXT_CODE=”context name” Key Flexfield Structures FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afffload.ldt KEY_FLEX P_LEVEL=COL_ALL:FQL_ALL:SQL_ALL:STR_ONE:WFP_ALL:SHA_ALL:CVR_ALL:SEG_ALL APPLICATION_SHORT_NAME=”FND” ID_FLEX_CODE=”key flex code” P_STRUCTURE_CODE=”structure name” Author : Amit R Tiwari 6/19/2012 19 3 .lct file_name.lct file_name.lct file_name.ldt FND_LOOKUP_TYPE APPLICATION_SHORT_NAME=”FND” LOOKUP_TYPE=”lookup name” Descriptive Flexfield with all of specific Contexts FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afffload.
ldt REQUEST_GROUP REQUEST_GROUP_NAME=”request group” APPLICATION_SHORT_NAME=”FND” Author : Amit R Tiwari 6/19/2012 19 4 .lct file_name.lct file_name.ldt VALUE_SET_VALUE FLEX_VALUE_SET_NAME=”value set name” Value Sets with values FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afffload.ldt PROGRAM APPLICATION_SHORT_NAME=”FND” CONCURRENT_PROGRAM_NAME=”concurrent name” Value Sets FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afffload.ldt PROFILE PROFILE_NAME=”profile option” APPLICATION_SHORT_NAME=”FND” Request Groups FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afcpreqg.ldt VALUE_SET FLEX_VALUE_SET_NAME=”value set name” Profile Options FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afscprof.lct file_name. Concurrent Programs FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct file_name.lct file_name.
ldt MENU MENU_NAME=”menu_name” Menus Forms Personalization FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/affrmcus.ldt FND_RESPONSIBILITY RESP_KEY=”responsibility” FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afsload.lct file_name.ldt FND_FORM_CUSTOM_RULES function_name=FUNCTION_NAME Note: UPLOAD command is same for all except replacing the .lct file_name.ldt REQ_SET APPLICATION_SHORT_NAME=”FND” REQUEST_SET_NAME=”request set” Responsibilities FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afscursp. Request Sets FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afcprset.lct file_name.ldt Author : Amit R Tiwari 6/19/2012 19 5 .lct upload_file.lct FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/corresponding.lct file_name.
Author : Amit R Tiwari 6/19/2012 19 6 .
This action might not be possible to undo. Are you sure you want to continue?