Friday, 23 July 2021

Oracle Basics for Custom Form Development

 

Oracle Basics for Custom Form Development

The below are the steps to follow to develop a basic Custom form in EBS.

 

Download the Resource folder from the server and place in local directory.

 

Right Click on form builder--> Select properties --> In Start field : <resource folder path>

 

 

Creating Table:

 

Create table with who columns, flex field columns and Database Columns.

 

Registering Table and Columns:

 

When table contains flexfield columns or alert columns the table and columns need to be registered in the application.

 

 

 

Creating Main Form:

 

1. Download TEMPLATE.fmb and APPSTAND.fmb from server and place the files in resource folder.

2. Now open TEMPLATE.fmb in form builder and rename the file.

3. Remove the Defaults
                        >Open Oracle Forms Builder
                        >Open the form TEMPLATE.fmb
                        >Rename the form (ex XX_abcd1)
                        >Delete the followings from object nevigator.
                                    >Go to Data Blocks and delete BLOCKNAME, DETAILBLOCK
                                    >Go to Windows and delete BLOCKNAME
                                    >Go to Canvases and delete BLOCKNAME

4. Create new window,canvas and data block.

5. Modify the PRE-FORM Trigger
                        >Go to triggers—PREFORM
                        >Original Code:

FND_STANDARD.FORM_INFO(‘$Revision: 120.0 $’, ‘Template Form’, ‘FND’,
‘$Date: 2005/05/06 23:25  $’, ‘$Author: appldev $’);
 app_standard.event(‘PRE-FORM’);
 app_window.set_window_position(‘BLOCKNAME’, ‘MAIN_WINDOW’);
                       
                        >Modified Code:
                       
   FND_STANDARD.FORM_INFO('$Revision: 1.0 $', 'XXCUST_10418','CUST_FORM_10418',

  '$Date: 2017/03/23 11:00  $', '$Author: Danish Halim $');

  app_standard.event('PRE-FORM');

  app_window.set_window_position('CUSTOMERS', 'MAIN_WINDOW');                       
                        > Compile the code

6. Modification for Program unit
                        > Go to APP_CUSTOM*(Package Body)
                        >Type your First window name in place of <your first window>
                        > Compile the code

7. If any Item in the Datablock is of Date type and you want to attach a standard calender to it, do the following
                        > Go to Text Item> Property palate > Subclass Information > Property Class
                        > Give property class name as TEXT_ITEM_DATE
                        > Attach LOV as ENABLE_LIST_LAMP
                        > Create KEY-LISTVAL item level trigger & add following code into it
                           calendar.show; and compile the trigger.

 

 

Compiling & Registering Form :

 

1. Deploy .fmb file in the server in AU_TOP/version/forms/US

2. Compile the fmb file in putty using below steps

A) cd appl_top

B) find *.env

C) . ./<First environment variable ex: APPSUAT_ebs12training.env>

D) cd au_top/version/forms/US

E) frmcmp_batch userid=apps/apps module=<form name>.fmb output_file=CUST_TOP/version/forms/US/<form name>.fmx module_type=form batch=no compile_all=special

F) Now register form under Application Developer -> Application -> Form

G) Register Function System Administrator —>Application —> Function

H) Register Menu and Responsibility.

 

 

Assigning WHO Columns :

 

1. Apply the CREATION_OR_LAST_UPDATE_DATE property class to the form fields CREATION_DATE and LAST_UPDATE_DATE. This property classes sets the correct attribute values like data type and width.

2. Create PRE_INSERT AND PRE_UPDATE triggers under datablock with

   fnd_standard.set_who();

 

 

Creating QUERY_FND form:

 

1. Drag QUERY_FIND Object Group from APPSTAND.fmb to Our Form Object Group. Here we get  window,canvas,datablock will come automatically  with the name QUERY_FIND.

2. Apply subclass information to QUERY_FND Window,Canvas as well as Block. And drag these to first position.

3. In QUERY_FIND data block we get 3 buttons(Clear,New,Find) with 3 Triggers.

4. Give Block name as <main forms data block name> in WHEN-BUTTON-PRESSED trigger of New and Find Button. Compile and close.

5. Open the QUERY_FND canvas and create test items.

6. Next drag the QUERY_FIND trigger from APPSTAND.fmb and Place it in Main forms data block level trigger.

--APP_STANDARD.EVENT('QUERY_FIND');

APP_FIND.QUERY_FIND(<results block window>, <Find window>, <Find window block>);

Ex:

APP_FIND.QUERY_FIND('CUSTOMERS','QUERY_FIND','QUERY_FIND');

7. Create pre_query trigger in main forms block

IF :parameter.G_query_find = 'TRUE' THEN

COPY (<find Window field>,<results field>);

Ex: COPY(:QUERY_FIND.customer_id, 'customers.customer_id');

:parameter.G_query_find := 'FALSE';

END IF;

8. In the form module give the first navigation block as QUERY_FIND. In the QUERY_FIND datablock give next navigation block as MAIN DATA BLOCK.

9. Save and move to server.

 

No comments:

Post a Comment

How to change Employee Number Generation from Manual to Automatic in Oracle HRMS (When attempting to apply for a job in iRecruitment)

When attempting to apply for a job in iRecruitment, the following error occurs: ERROR: You must enter an Application Number. Solution: How t...