Showing posts with label AOL. Show all posts
Showing posts with label AOL. Show all posts

Tuesday, December 29, 2020

Concurrent Requests Status and Phase Code Explained


Concurrent Request Status and Phase Code Combinations.

select  *  from apps.fnd_lookup_Values where lookup_type like 'CP_STATUS_CODE' AND VIEW_APPLICATION_ID =0

select  * from apps.fnd_lookup_Values where lookup_type like 'CP_PHASE_CODE' AND VIEW_APPLICATION_ID =0 




Monday, September 21, 2020

User Preferences Values

Sometimes, we need to Update/retrieve User Preferences values Setup at User level in our code/Specifically in User specific application logic building.

So here are few pointers , one ought to know while working with User references.

 --> User Preferences are nothing but the System Profiles (Default from Site Level), starting with 'ICX%'%



 If some one Updates his/her user presences from EBS Home Page, updated values automatically gets reflects in System profiles as well  at the User Level (Not on Site level). 




 --> Function to get These values,

SELECT FND_PROFILE.VALUE_SPECIFIC('ICX_DATE_FORMAT_MASK',<USER_ID>) FROM DUAL;

This function retrieves the value from profiles for a specific User , if their is no value found at user value it further goes down to site value level and fetch the value.


Below query also can be used to get the values , those are updated at User level.


SELECT

    VAL.PROFILE_OPTION_VALUE, OPT.PROFILE_OPTION_NAME,val.PROFILE_OPTION_ID

FROM

    APPLSYS.FND_PROFILE_OPTION_VALUES VAL,

    APPLSYS.FND_PROFILE_OPTIONS OPT,

    APPLSYS.FND_USER FUSER

WHERE

    VAL.PROFILE_OPTION_ID = OPT.PROFILE_OPTION_ID

    AND VAL.LEVEL_VALUE = FUSER.USER_ID

  --  AND OPT.PROFILE_OPTION_NAME LIKE 'ICX%'

    AND VAL.LEVEL_ID = 10004 -- USER LEVEL

    AND FUSER.USER_NAME = 'DEMOUSER';


Tuesday, November 05, 2019

Defining Link Stage for Request Set

Hi,

To trigger one program from another in a set up of Request Set, Link stage plays a Vital role.

One need to mention the excutability depending on 1st program.

For example: If 1st program completes successfully or completes in Warning or Errors Out , 2nd program should trigger appropriately.

It can be setup in
Request set-->> Link Stage step.





Monday, June 10, 2019

Concurrent program Logs to analyze OPP errors/Other standard Exception


Concurrent program Logs


a) Concurrent Request Log:
select logfile_name from fnd_concurrent_requests where request_id = <request_id>;

b) Concurrent Output file:
select outfile_name from fnd_concurrent_requests where request_id = <request_id>;

c) Concurrent Manager Worker Log:
select logfile_name from fnd_concurrent_processes where concurrent_process_id=(select controlling_manager
from fnd_concurrent_requests where request_id=<request_id>);

d) FNDOPP log file
SELECT fcpp.concurrent_request_id req_id, fcp.node_name, fcp.logfile_name
FROM fnd_conc_pp_actions fcpp, fnd_concurrent_processes fcp
WHERE fcpp.processor_id = fcp.concurrent_process_id
AND fcpp.action_type = 6
AND fcpp.concurrent_request_id =<request_id>;

Friday, May 18, 2018

Validation on Concurrent Program Parameter

Recently While working on one of the Finance Report , i got one requirement to Validate Concurrent Program Parameters.

Requirement was : Date Range should not allow Future date to be picked.

So to fulfill this requirement , i had to create one Value set with Type as Special.



Go to Edit Information


Select Event as Validate

Write the custom code to validate your requirements.

Add this value Set to your Program and Verify the results.



Thursday, July 20, 2017

Oracle Form: Restricting Lookup form to one Lookup type

Hi Folks,

I had a requirement from business .
Business wants me to change the 'Define Lookup' form that should only show a particular lookup type and attach it with a new Responsibility .

Steps To Achieve this requirement.

1) First find the function name , that needs to be manipulate.
    Navigation
   
            System Administrator --> Application  --> Menu

And here is the form Prompt ''Order Management"
                   Function Name "Order Management QuickCodes" (This Function have to be manipulate)




  2)- Go to Function Screen
        Navigation
           
                  System Administrator --> Application  --> Function

Search Above Function in function screen by searching User function Name as "Order Management QuickCodes".

Then Here we get the Actual Function Name : ONT_FNDLVMLU.




3 )-  Now the actual Work starts here to create new function with the same properties of the original one but tweak the Parameters Field.

        New Function Name : ONT_FNDLVMLU_CSR
        User Function Name : Order Management QuickCodes CSR

(CSR is something Custom i had to add, You can give any relevant name to new function).


Then Change the values in Parameter Field .

VIEW_APPLICATION="ONT" LOOKUP_TYPE ="XXX_CUSTOM_LOOKUP_TYPE"



Then Save this function.

4)- Add this function to your responsibility , and check the values . This new function will only show 1 lookup type name as  "XXX_CUSTOM_LOOKUP_TYPE".


Happy sharing
:)

Thursday, March 30, 2017

API To Create User and Assign Responsibility to the User

DECLARE
   l_user_name                VARCHAR2 (100);
   l_user_password            VARCHAR2 (100) := 'welcome1';
   l_user_start_date          DATE := SYSDATE;
   l_user_end_date            VARCHAR2 (100) := NULL;
   l_password_date            VARCHAR2 (100) := SYSDATE;
   l_password_lifespan_days   NUMBER;
   l_person_id                NUMBER;
   l_email_address            VARCHAR2 (100);
   l_count                    NUMBER;
   l_change_password          BOOLEAN;
   l_user_id                  NUMBER;

   PROCEDURE assign_responsibility (p_user_name IN VARCHAR2)
   IS
      CURSOR c_resp
      IS
         SELECT fav.application_short_name,
                fav.application_name,
                frv.responsibility_key,
                frv.responsibility_name
           FROM fnd_application_vl fav, fnd_responsibility_vl frv
          WHERE     frv.application_id = fav.application_id
                AND frv.responsibility_name IN ('US Receivables Super User',
                                                'US Service Contracts Super User',
                                                'US Order Management Super User',
                                                'Installed Base User');

      l_appl_short_name   fnd_application_vl.application_short_name%TYPE;
      l_resp_name         fnd_responsibility_vl.responsibility_name%TYPE;
      l_resp_key          fnd_responsibility_vl.responsibility_key%TYPE;
      l_description       VARCHAR2 (100)
         := 'Adding Responsibility to the user using script';
      l_count             NUMBER;
   BEGIN
      FOR resp_rec IN c_resp
      LOOP
         SELECT COUNT (1)
           INTO l_count
           FROM fnd_user fuser,
                per_people_f per,
                fnd_user_resp_groups furg,
                fnd_responsibility_tl frt
          WHERE     fuser.employee_id = per.person_id
                AND fuser.user_id = furg.user_id
                AND (   TO_CHAR (fuser.end_date) IS NULL
                     OR fuser.end_date > SYSDATE)
                AND frt.responsibility_id = furg.responsibility_id
                AND (   TO_CHAR (furg.end_date) IS NULL
                     OR furg.end_date > SYSDATE)
                AND frt.language = 'US'
                AND fuser.user_name = p_user_name
                AND frt.responsibility_name = resp_rec.responsibility_name;

         IF l_count = 0
         THEN
            l_appl_short_name := resp_rec.application_short_name;
            l_resp_key := resp_rec.responsibility_key;
            l_resp_name := resp_rec.responsibility_name;


            BEGIN
               fnd_user_pkg.addresp (username         => p_user_name,
                                     resp_app         => l_appl_short_name,
                                     resp_key         => l_resp_key,
                                     security_group   => 'STANDARD',
                                     description      => l_description,
                                     start_date       => SYSDATE,
                                     end_date         => NULL);
               COMMIT;
               DBMS_OUTPUT.put_line (
                     'The responsibility : '
                  || l_resp_name
                  || ' is added to the user '
                  || p_user_name);
            EXCEPTION
               WHEN OTHERS
               THEN
                  DBMS_OUTPUT.put_line (
                        'Responsibility '
                     || l_resp_name
                     || ' IS NOT added to the user '
                     || p_user_name
                     || ' due to '
                     || SQLCODE
                     || '; '
                     || SUBSTR (SQLERRM, 1, 250));
                  DBMS_OUTPUT.put_line ('');
                  ROLLBACK;
            END;
         ELSE
            DBMS_OUTPUT.put_line (
                  'Responsibility : '
               || resp_rec.responsibility_name
               || ' Already assigned');
         END IF;
      END LOOP;
   END;

 
BEGIN
   fnd_global.apps_initialize (17959, 20420, 1);

   FOR i IN 1 .. 200
   LOOP
      l_user_name := 'TESTUSER' || i;
      fnd_user_pkg.createuser (
         x_user_name                => l_user_name,
         x_owner                    => NULL,
         x_unencrypted_password     => l_user_password,
         x_start_date               => l_user_start_date,
         x_end_date                 => l_user_end_date,
         x_password_date            => l_password_date,
         x_password_lifespan_days   => l_password_lifespan_days,
         x_employee_id              => 12345,
         x_email_address            => 'xxxx@gmail.com');

      COMMIT;

      SELECT user_id
        INTO l_user_id
        FROM fnd_user
       WHERE user_name = l_user_name;

      IF l_user_id IS NOT NULL AND l_user_id > 0
      THEN
         assign_responsibility (l_user_name);

         BEGIN
            jtf_auth_bulkload_pkg.assign_role (l_user_name,
                                               'CSI_NORMAL_USER');
            jtf_auth_bulkload_pkg.assign_role (l_user_name, 'CSI_ADMIN_USER');
            jtf_auth_bulkload_pkg.assign_role (l_user_name,
                                               'CSI_READ_ONLY_USER');
            COMMIT;
            DBMS_OUTPUT.put_line ('Assign IB Roles Successfully!!!');
         END;

         l_change_password :=
            fnd_user_pkg.changepassword (l_user_name, 'welcome123');

         IF l_change_password
         THEN
            DBMS_OUTPUT.put_line ('Password Changed successfully!!!');
            COMMIT;
         ELSE
            DBMS_OUTPUT.put_line ('Unable to Change Password!!!');
            ROLLBACK;
         END IF;
      ELSE
         DBMS_OUTPUT.put_line (
               'User : '
            || l_user_name
            || ' Not found, hence unable to assign the responsibilities');
      END IF;

      l_user_name := NULL;
   END LOOP;

   COMMIT;
EXCEPTION
   WHEN OTHERS
   THEN
      ROLLBACK;
      DBMS_OUTPUT.put_line (SQLERRM);
END;
/

Tuesday, February 28, 2017

Change the User Password from Backend




begin
   fnd_user_pkg.updateuser (x_user_name                 => 'USER_NAME',
                            x_owner                     => 'CUST',
                            x_unencrypted_password      => 'CHOOSE_PASSWORD',
                            x_password_date             => TO_DATE ('2', 'J')
                           );
   COMMIT;
END;
/

Wednesday, October 05, 2016

Standard Function To Get Nextval for a sequence


Package Name : FND_SEQNUM
Function Name : GET_NEXT_AUTO_SEQ

So If Seq Name : XXX_ITEM_ID_S

Then next value can be fetched by simply using of

FND_SEQNUM.GET_NEXT_AUTO_SEQ ('XXX_ITEM_ID_S');

Monday, September 12, 2016

Know your Concurrent Program’s Performance


Know your Concurrent Program’s Performance

The below query will give you the time taken to execute the concurrent Programs with the latest concurrent programs with least execution time comes first.
select
      f.request_id ,
      pt.user_concurrent_program_name user_conc_program_name,
      f.actual_start_date start_on,
      f.actual_completion_date end_on,
      floor(((f.actual_completion_date-f.actual_start_date)
        *24*60*60)/3600)
        || ' HOURS ' ||
        floor((((f.actual_completion_date-f.actual_start_date)
        *24*60*60) -
        floor(((f.actual_completion_date-f.actual_start_date)
        *24*60*60)/3600)*3600)/60)
        || ' MINUTES ' ||
        round((((f.actual_completion_date-f.actual_start_date)
        *24*60*60) -
        floor(((f.actual_completion_date-f.actual_start_date)
        *24*60*60)/3600)*3600 -
        (floor((((f.actual_completion_date-f.actual_start_date)
        *24*60*60) -
        floor(((f.actual_completion_date-f.actual_start_date)
        *24*60*60)/3600)*3600)/60)*60) ))
        || ' SECS ' time_difference,
      p.concurrent_program_name concurrent_program_name,
      decode(f.phase_code,'R','Running','C','Complete',f.phase_code) Phase,
      f.status_code
from  apps.fnd_concurrent_programs p,
      apps.fnd_concurrent_programs_tl pt,
      apps.fnd_concurrent_requests f
where f.concurrent_program_id = p.concurrent_program_id
      and f.program_application_id = p.application_id
      and f.concurrent_program_id = pt.concurrent_program_id
      and f.program_application_id = pt.application_id
      AND pt.language = USERENV('Lang')
      and f.actual_start_date is not null
order by
      f.actual_start_date desc,
      f.actual_completion_date-f.actual_start_date ;

Wednesday, August 17, 2016

FND Profile and FND Global Values

FND_PROFILE and FND_GLOBAL values



Following are the FND_PROFILE values that can be used in the PL/SQL code:

   fnd_profile.value('PROFILEOPTION');
   fnd_profile.value('MFG_ORGANIZATION_ID');
   fnd_profile.value('ORG_ID');
   fnd_profile.value('LOGIN_ID');
   fnd_profile.value('USER_ID');
   fnd_profile.value('USERNAME');
   fnd_profile.value('CONCURRENT_REQUEST_ID');
   fnd_profile.value('GL_SET_OF_BKS_ID');
   fnd_profile.value('SO_ORGANIZATION_ID');
   fnd_profile.value('APPL_SHRT_NAME');
   fnd_profile.value('RESP_NAME');
   fnd_profile.value('RESP_ID');

Following are the FND_GLOBAL values that can be used in the PL/SQL code:

   FND_GLOBAL.USER_ID;
   FND_GLOBAL.APPS_INTIALIZE;
   FND_GLOBAL.LOGIN_ID;
   FND_GLOBAL.CONC_LOGIN_ID;
   FND_GLOBAL.PROG_APPL_ID;
   FND_GLOBAL.CONC_PROGRAM_ID;
   FND_GLOBAL.CONC_REQUEST_ID;

For example, I almost always use the following global variable assignments in my package specification to use throughout the entire package body:

   g_user_id      PLS_INTEGER  :=  fnd_global.user_id;
   g_login_id     PLS_INTEGER  :=  fnd_global.login_id;
   g_conc_req_id  PLS_INTEGER  :=  fnd_global.conc_request_id;
   g_org_id       PLS_INTEGER  :=  fnd_profile.value('ORG_ID');
   g_sob_id       PLS_INTEGER  :=  fnd_profile.value('GL_SET_OF_BKS_ID');

And initialize the application environment as follows:

   v_resp_appl_id  := fnd_global.resp_appl_id;
   v_resp_id       := fnd_global.resp_id;
   v_user_id       := fnd_global.user_id;
     
   FND_GLOBAL.APPS_INITIALIZE(v_user_id,v_resp_id, v_resp_appl_id);

Tuesday, June 21, 2016

Query to find Parameters and Value Sets associated with a Concurrent Program

SELECT
        fcpl.user_concurrent_program_name "Concurrent Program Name",
        fcp.concurrent_program_name "Short Name",
        fcp.EXECUTION_METHOD_CODE,
        fdfcuv.column_seq_num "Column Seq Number",
        fdfcuv.end_user_column_name "Parameter Name",
        fdfcuv.form_left_prompt "Prompt",
        fdfcuv.enabled_flag " Enabled Flag",
        fdfcuv.required_flag "Required Flag",
        fdfcuv.display_flag "Display Flag",
        fdfcuv.flex_value_set_id "Value Set Id",
        ffvs.flex_value_set_name "Value Set Name",
        flv.meaning "Default Type",
        fdfcuv.DEFAULT_VALUE "Default Value"
FROM
        fnd_concurrent_programs fcp,
        fnd_concurrent_programs_tl fcpl,
        fnd_descr_flex_col_usage_vl fdfcuv,
        fnd_flex_value_sets ffvs,
        fnd_lookup_values flv
WHERE
        fcp.concurrent_program_id = fcpl.concurrent_program_id
       -- AND    fcpl.user_concurrent_program_name = :conc_prg_name
        AND    fdfcuv.descriptive_flexfield_name = '$SRS$.'
                 || fcp.concurrent_program_name
                 and ffvs.flex_value_set_name = 'FND_STANDARD_DATE'
                 and fcp.concurrent_program_name like 'XXSYK%'
                 and fcp.EXECUTION_METHOD_CODE ='H'
        AND    ffvs.flex_value_set_id = fdfcuv.flex_value_set_id
        AND    flv.lookup_type(+) = 'FLEX_DEFAULT_TYPE'
        AND    flv.lookup_code(+) = fdfcuv.default_type
        AND    fcpl.LANGUAGE = USERENV ('LANG')
        AND    flv.LANGUAGE(+) = USERENV ('LANG')

Monday, March 14, 2016

Create New User from Beckend

Sometimes when a Development Instance is Cloned from Production Instance, and if some Users is not available in Production Instance will not be available in Development instance after cloning. User can be generated through
 
API :fnd_user_pkg.createuser

DECLARE
   l_user_name         VARCHAR2 (100) := 'USER_NAME'; -- 'USER_NAME';
   l_pwd               VARCHAR2 (100) := 'password123';
BEGIN
   fnd_user_pkg.createuser (x_user_name         => l_user_name
                           ,x_owner             => 'FND'
                           ,x_unencrypted_password => l_pwd
                           );
   --commit;
   fnd_user_pkg.addresp (username            => l_user_name
                        ,resp_app            => 'SYSADMIN'
                        ,resp_key            => 'SYSTEM_ADMINISTRATOR'
                        ,security_group      => 'STANDARD'
                        ,description         => NULL
                        ,start_date          => SYSDATE
                        ,end_date            => NULL
                        );
   COMMIT;
END;

Wednesday, February 10, 2016

Process to Enable DFF for a Lookup Value set

Create a DFF

Login to System Administrator
Application -> Flexfield -> Descriptive -> Segments
Search for Application = Application Object Library
Title = Common Lookups

You can see referenced field as "LOOKUP_TYPE"

Now if you want to enable your lookup, you need to uncheck "Freeze Flexfield Definitions" checkbox on the top left the DFF Segments screen.
this enables you to enter new DFF entries.

Now, enter create a line under Context Field Values 

Under "Code" enter your lookup ex: XXSYK_DEDUCT_ELEMENTS

Click on Segments

Enter the number, name, prompt, column and value set(if you have one) 

save and compile the DFF.

Now, switch the responsibility to Application Developer to see the DFFs enabled in lookup

Open the common lookups screen and query for the lookup name you have given under "Code" of DFF setup.

and thus your DFF is enabled.

Wednesday, September 23, 2015

Table Suffixes in Oracle Apps

Table Suffixes:
You have lot of tables ending with different suffixes in Oracle Apps database. Did you ever wonder what these denote? Listed below are the different table suffixes and what they mean.
_ALL: Table ending with _ALL means it stores data related to multiple organizations. Such tables definitely will have a column called org_id which specifies to which org the record belongs to.
_TL: Table ending with _TL is a Translation Table. Such tables have a column called language
_B: Tables ending _B are the base tables
_VL: Tables ending with _VL are Views built upon multi language or translation tables. In other words such views combine base table data with translation table data. If you wish to see the data related to a one particular language, you should set the language using USERENV(‘LANG’).
_V: Tables ending with _V are views
_S: Tables ending with _S are Sequences
_A, _Avn, _ACn: Tables ending with _A, _Avn, _ACn are audit tables.
_F: Tables in which data is tracked with two date columns (Effective_start_Date, Effective_end_date). These tables are primarily used in HRMS and payroll modules.
_DFV /_KFV: DFF/KFF view created on the base table. This is the best way to get the concatenated value of DFF/KFF.
Also using this table the values can be queried based on the DFF/KFF name and not attributes column.

Friday, September 11, 2015

FNDLOAD For AOL Objects Migration

FNDLOAD to transfer AOL Objects from one instance to other

The Generic Loader (FNDLOAD) is a concurrent program that can transfer Oracle Application entity data between database and text file. The loader reads a configuration file to determine which entity to access. 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.
Oracle has provided standard configuration files (.lct files) for migration of the standard entities. All of these configuration files are available at $FND_TOP/patch/115/import directory. The main configuration files for the corresponding entity are given below:
Entity
Configuration File
Attachment Definition
afattach.lct
Concurrent Programs
afcpprog.lct
Printers and Printer Styles
afcppstl.lct, afcpprnt.lct
Value Sets
afffload.lct
Request Groups
afcpreqg.lct
Request Sets
afcprset.lct
Form Personalization
affrmcus.lct
Lookups
aflvmlu.lct
Responsibilities
afrole.lct
Applications
afscapp.lct
Profile Options
afscprof.lct
Users
afscursp.lct
Form, Functions, Menus
afsload.lct
Document Sequences
afsncat.lct
Descriptive and Key Flex Fields
afffload.lct
Messages
afmdmsg.lct
Steps to Move a Concurrent program from one instance(Database) to other
·         Define your concurrent program and save it in first instance(for how to register a concurrent program click here)
·         Connect to your UNIX box on first instance and run the following command to download the .ldt file
FNDLOAD username/password@database O Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct file_name.ldt PROGRAM APPLICATION_SHORT_NAME=”Concurrent program application short name” CONCURRENT_PROGRAM_NAME=”concurrent program short name”
·         Move the downloaded .ldf file to new instance(Use FTP)
·         Connect to your UNIX box on second instance and run the following command to upload the .ldt file
FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/afcpprog.lctfile_name.ldt
Note: Make sure you are giving proper .lct file in the commands and don’t confuse with .lct and .ldt files
These following are the other entity data types that we can move with FNDLOAD
1 – Printer Styles
FNDLOAD username/password@database O Y DOWNLOAD $FND_TOP/patch/115/import/afcppstl.lct file_name.ldt STYLE PRINTER_STYLE_NAME=”printer style name”
2 – Lookups
FNDLOAD username/password@database O Y DOWNLOAD $FND_TOP/patch/115/import/aflvmlu.lct file_name.ldt FND_LOOKUP_TYPE APPLICATION_SHORT_NAME=”FND”
LOOKUP_TYPE=”lookup name”
3 – Descriptive Flexfield with all of specific Contexts
FNDLOAD username/password@database O Y DOWNLOAD $FND_TOP/patch/115/import/afffload.lct file_name.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”
4 – Key Flexfield Structures
FNDLOAD username/password@database O Y DOWNLOAD $FND_TOP/patch/115/import/afffload.lct file_name.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”
5 – Concurrent Programs
FNDLOAD username/password@database O Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct file_name.ldt PROGRAM APPLICATION_SHORT_NAME=”FND” CONCURRENT_PROGRAM_NAME=”concurrent name”
6 – Value Sets
FNDLOAD username/password@database O Y DOWNLOAD $FND_TOP/patch/115/import/afffload.lct file_name.ldt VALUE_SET_VALUE FLEX_VALUE_SET_NAME=”value set name”
7 – Value Sets with values
FNDLOAD username/password@database O Y DOWNLOAD $FND_TOP/patch/115/import/afffload.lct file_name.ldt VALUE_SET FLEX_VALUE_SET_NAME=”value set name”
8 – Profile Options
FNDLOAD username/password@database O Y DOWNLOAD $FND_TOP/patch/115/import/afscprof.lct file_name.ldt PROFILE PROFILE_NAME=”profile option” APPLICATION_SHORT_NAME=”FND”
8 – Request Groups
FNDLOAD username/password@database O Y DOWNLOAD $FND_TOP/patch/115/import/afcpreqg.lct file_name.ldt REQUEST_GROUP REQUEST_GROUP_NAME=”request group” APPLICATION_SHORT_NAME=”FND”
10 – Request Sets
FNDLOAD username/password@database O Y DOWNLOAD $FND_TOP/patch/115/import/afcprset.lct file_name.ldt REQ_SET
APPLICATION_SHORT_NAME=”FND” REQUEST_SET_NAME=”request set”
11 – Responsibilities
FNDLOAD username/password@database O Y DOWNLOAD $FND_TOP/patch/115/import/afscursp.lct file_name.ldt FND_RESPONSIBILITY RESP_KEY=”responsibility”
12 – Menus
FNDLOAD username/password@database O Y DOWNLOAD $FND_TOP/patch/115/import/afsload.lct file_name.ldt MENU MENU_NAME=”menu_name”
13 – Forms Personalization
FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/affrmcus.lct file_name.ldt FND_FORM_CUSTOM_RULES function_name=FUNCTION_NAME
14 – Functions:
FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/afsload.lct XXFUNNAME.ldt FUNCTION FUNC_APP_SHORT_NAME=”XXCUST” FUNCTION_NAME=”XXFUNNAME”
15 – Forms:
FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/afsload.lct XXFRMNAME.ldt FORM APPLICATION_
SHORT_NAME=”XXCUST” FORM_NAME=”XXFRMNAME”
16 – FND Users:
FNDLOAD username/password@database 0 Y DOWNLOAD $FND_TOP/patch/115/import/afscursp.lct XXUSERNAME.ldt FND_USER USER_NAME=’XXUSERNAME’
17 – Data Definitions for XML Publisher Report Template:
FNDLOAD username/password@database 0 Y DOWNLOAD $XDO_TOP/patch/115/import/xdotmpl.lct XXBRPRPOPRINT_XML_DD.ldt XDO_DS_DEFINITIONS APPLICATION_SHORT_NAME=’XXCUST’ DATA_SOURCE_CODE=’XXBRPRPOPRINT_XML’
Note: UPLOAD command is same for all except replacing the .lct and passing any extra parameters if you want to pass
Eg: FNDLOAD username/password@database 0 Y UPLOAD $FND_TOP/patch/115/import/corresponding.lct upload_file.ldt

Monday, September 07, 2015

Registering the Executable from back-end

 Registering the Executable from back-end:
Usually we create executable in the front-end, but this can be done from the database tier i.e. back-end too. Below is the PL/SQL code to create an executable from back-end.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
BEGIN
  FND_PROGRAM.executable(executable => 'XXFIN TEST EXECUTABLE' , -- Executable Name
  application=>'XXFIN' , -- Application Short Name
  short_name=>'XXFINTSTEXE' , -- Executable Short Name
  description=>'Test Executable created from Backend' ,     -- Description,DEFAULT NULL
  execution_method=>'PL/SQL Stored Procedure',              -- Execution Method
  execution_file_name=>'XXFIN_TEST_PROC' ,                  -- Execution File Name,DEFAULT NULL
  subroutine_name=>NULL ,                                   -- Subroutine Name,DEFAULT NULL
  icon_name=>NULL ,                                         -- Icon Name,DEFAULT NULL
  language_code=>'US' ,                                     -- Language Code,DEFAULT 'US'
  execution_file_path=>NULL                                 -- Execution File Path, DEFAULT NULL
  );
  COMMIT;
END;
View from Frontend:
Creating Executable

Clear BNE Cache for WebADI Changes

It Sometime happens that WebAdi Changes doesn't reflect once migrated in controlled instances. Here are the quick steps(Generally perfor...