You are on page 1of 4

Creating custom Web ADI Integrators

Creating custom Web ADI Integrators. Using custom Web-ADI integrators, you can create custom excel spreadsheets that can be integrated with Oracle Applications Menus. The structure of this excel will be as per your business needs. This excel will have fields validated by LOV, DropDown Lists etc. The data entered into this excel will then be further validated and gives errors in Excel. Once the valid values entered the data will be loaded into tables via PL/SQL. This is a great feature in Oracle Applications, and many of the functional & business users would love to have this functionality. Using this article, you will be able to implement a custom web-adi integrator to meet the data entry requirements of your business users via excel screen. Standard Web ADI gives General Ledger Journals for 11.0 and 11i. This document explains about how to create custom integrators, and how to integrator with the functions. After added the custom integrators how to use the custom integrators and insert the data into database through the integrators. This document assumes that the reader has a basic knowledge of PL/SQL procedure and functions.

Background Web ADI gives functionality with desktop productivity applications to create a more effective working environment. Traditional enterprise application users can leverage productivity tools such as Microsoft Excel to complete their tasks. This proves helpful when users have a large number of records to enter into the system. Rather than creating records row by row in an HTML form or using a back-end data loader, a formatted Excel worksheet can be created that allows the free-form entry of data - all Excel functionality such as copy/paste, fill-down and data import. And extra functionalities like drop down, List of values are available to help one quickly create, view and edit Information. Users are made more productive, yet the accuracy of their work is not compromised. All business rules these users encounter in the main application are enforced within the Web ADI worksheet. For example, if the wrong cost center is entered for a journal, the data will not be "committed" to the database; a message will be returned directly to the worksheet where the invalid data exists; the user can then quickly make the correction and save their Excel data to Oracle General Ledger. If a column has more values you can start the search from excel sheet, the results you can get in a OAFramework page and select the value will return to excel sheet. Web ADI uses the Internet Computing Architecture (ICA). This means no client side install and great performance over WAN, VPN and even dial up connections.

Steps:

<!--[if !supportLists]-->1) <!--[endif]-->Develop an Integrator for your own excel template and
assign it to the user.

<!--[if !supportLists]-->2) <!--[endif]-->User login and launch the excel from Web ADI and enters
the values in excel directly (he can enter the values, choose the values from Poplist or List of Values.

<!--[if !supportLists]-->3) <!--[endif]-->Choose oracle->upload option in excel and upload the
data into the database. When the data gets uploads you can write a PL/SQL to insert the data directly into database or you can do some process of the entered data and then update the database table accordingly.
This document should be used to develop custom integrators. Custom integratos will be used for a case of having a requirement of launching an excel templete from apps and fill the values in the excel file and we will get an option to upload the values into the database table. At the time of uploading the data we can define that where the data should go and we can manupulate the entered data and insert into the database table.

. Creation of the custom integrator Usage of custom integrator Custom integrator will be used to upload the excel values into database tables.

P_INTERFACE_USER_NAME – Name of the Interface. P_APPLICATION_ID --Is the application Id of the application where we are going to create the integrator. Step 1. P_API_PACKAGE_NAME . Step 3. P_SOURCE_LANG IN VARCHAR2. P_INTEGRATOR_USER_NAME IN VARCHAR2. (0 for sysadmin) P_INTEGRATOR_CODE – Return parameter. which we are creating the custom integrator. P_PARAM_LIST_NAME IN VARCHAR2. Step 5. P_INTEGRATOR_USER_NAME – Integartor Name. Change the excel column prompts. SELECT application_id FROM fnd_application WHERE application_short_name = '<CUSTOM_SHORT_NAME>'. P_OBJECT_CODE – Integrator Code. which we are creating now. P_INTEGRATOR_CODE IN VARCHAR2. From this procedure the data needs to be inserted into the database table. P_API_TYPE IN VARCHAR2.Parameter list. P_UPLOAD_TYPE IN NUMBER. P_APPLICATION_ID – Application Id. The template excel can have defaulted values. Using bne_integrator_utils. and when it uploads the data should be validated and should be returned back if any error occurs or data should do some other calculation with other tables. Using bne_integrator_utils. which we created in the step1. P_API_PACKAGE_NAME IN VARCHAR2. --Use the query. Create Integrator Using the standard package bne_integrator_utils. P_SOURCE_LANGUAGE are the language codes. Adding POPList for the required columns. P_OBJECT_CODE IN VARCHAR2. P_INTEGRATOR_CODE – Code for the integrator. by default the column headers will come as Database column name.CREATE_INTEGRATOR we can create the integrator. P_USER_ID IN NUMBER. Step 2.CREATE_DEFAULT_LAYOUT package create the default layout for the created integrator with the interface. which will be used for the furter steps. Step 4.When the user uploads the excel sheet this package being called. P_PARAM_LIST_NAME . Steps to create the custom integrator. that can be done. LOV values and POPList values to select the values. Create Interface PROCEDURE CREATE_INTERFACE_FOR_API ( P_APPLICATION_ID IN NUMBER. P_LANGUAGE IN VARCHAR2. P_INTERFACE_CODE OUT NOCOPY VARCHAR2). PROCEDURE CREATE_INTEGRATOR (P_APPLICATION_ID IN NUMBER. . P_API_PROCEDURE_NAME IN VARCHAR2. P_USER_ID – FND_USER id. P_LANGUAGE IN VARCHAR2. P_INTERFACE_USER_NAME IN VARCHAR2. P_API_RETURN_TYPE IN VARCHAR2 DEFAULT NULL. with the following parameters. P_SOURCE_LANGUAGE IN VARCHAR2. P_INTEGRATOR_CODE OUT NOCOPY VARCHAR2). which will be used internally. P_OBJECT_CODE IN VARCHAR2.CREATE_INTEGRATOR package create the custom integrator Step 2.CREATE_INTERFACE_FOR_API package create the interface for the created integrator. P_OBJECT_CODE – Interface Code for internal use. In this procedure the columns will be mapped with the excel sheet. Once we have the custom integrator we can define as a function and assign to the FND_USER. (US for english).For Example the user wants to upload the data from an excel sheet with a formatted way. P_PARAM_LIST_CODE OUT NOCOPY VARCHAR2. P_LANGUAGE. P_API_PROCEDURE_NAME . Using bne_integrator_utils. P_USER_ID IN NUMBER. which will be displayed in the application.When the user uploads the excel sheet this procedure being called. Now lets see the above steps in detail Step 1.

P_INTERFACE_CODE IN VARCHAR2. 0 = Custom Upload Type (uses BNE_INTERFACES_B.. Adding User Hints UPDATE bne_interface_cols_tl SET user_hint = '*(Eg. Check bne_integrator_utils for more details about creating LOV. P_INTEGRATOR_CODE .Interface code. (Set to 0. P_OBJECT_CODE – Default Layout code. 2 = Upload to PL/SQL API) P_LANGUAGE. PROCEDURE CREATE_DEFAULT_LAYOUT ( P_APPLICATION_ID IN NUMBER. P_INTERFACE_CODE . P_FORCE IN BOOLEAN.If the layout name exists over write or error out(true or false). Create POPLIST for a column UNIT_OF_MEASURE UPDATE bne_interface_cols_b SET val_id_col = 'UNIT_OF_MEASURE'. P_USER_ID IN NUMBER.Integrator code which we have created in the step1. use the following sql. P_INTERFACE_CODE . P_ALL_COLUMNS . val_type = 'TABLE'.Return code for the created Integrator.Miscellaneous)' WHERE prompt_left IN ('CATEGORY_NAME') AND application_id = <CUSTOM_APPLICATION_ID> AND interface_code = <CREATED_INTERFACE_CODE>.API type. if we want to create POPLIST. 1= upload to Table. P_API_RETURN_TYPE .UPLOAD_OBJ_NAME to obtain class name to load). P_LAYOUT_CODE . val_obj_name is the table name where the values should come from and val_addl_w_c is the where clause for the POPLIST restriction.User Id (0 – Sysadmin) P_FORCE . Creating default layout.Out parameter for the created default layout. lov_type = 'POPLIST'.What is being returned from the API P_UPLOAD_TYPE Type of upload. Now we are ready with the custom integrator. User hint for any of the created integrator columns. for internal use. PROCEDURE or FUNCTION. Step 3. P_APPLICATION_ID –Application Id. P_LAYOUT_CODE IN OUT NOCOPY VARCHAR2). P_ALL_COLUMNS IN BOOLEAN. P_INTEGRATOR_CODE IN VARCHAR2.Language being used in the upload(US-English) P_USER_ID .User Id for the reference (0 – Sysadmin) P_PARAM_LIST_CODE . P_SOURCE_LANG .Return code for the parameter list.Layout to be created for all the columns (true or false). val_addl_w_c = 'DISABLE_DATE > sysdate or DISABLE_DATE is null' WHERE interface_col_name = 'P_UNIT_OF_MEASURE' AND application_id = lc_application_id_result AND interface_code = lc_interface_code. 1 or 2. val_mean_col = 'UNIT_OF_MEASURE'. Creating POPLIST for the required columns.P_API_TYPE . which we have created in the step2. Step 4. P_USER_ID . Calender LOV and Chapter 5 of Web ADI Integrator Developer’s Guide for Java LOV. . which we are creating the custom integrator. val_obj_name = 'MTL_UNITS_OF_MEASURE_VL'. P_OBJECT_CODE IN VARCHAR2.

Please check the following screen shots. bne_interface_cols_b are the main tables used for the above changes and for holding integrators info.D): One of the following operating systems must be installed on the client PC Windows ME Windows NT 4. Set the browser security settings to allow a document to be created on the desktop Navigate to Tools -> Internet Options and choose the Security tab Select Local Intranet and choose the Custom Level button Set the option ‘Initialize and script Active X controls not marked as safe’ to Prompt One of the following versions of Excel is required if using the General Ledger . Login into the instance and select the Web ADI responsibility. Prerequisities.Journals Integrator: Microsoft Excel 97 Microsoft Excel 2000 Microsoft Excel XP Microsoft Office 2003 For Web ADI to work with Excel XP and 2003 users will have to: Open Excel Go to Tools -> Macro -> Security -> Trusted Sources Check the "Trust access to Visual Basic Project" Setting the layout and create the Integrator as a function. The following are the prerequisites for Web ADI (11i. bne_interface_cols_tl. We can create our own layout for the excel sheet.BNE.0 with Service Pack 3 or later Windows 2000 Windows XP Windows 98 Windows Server 2003 Internet Explorer 5.0 or greater installed on your machine.Step 5. Manual Setup for Created Integrator Layout and Create Document Function: This document describes about creating Required Layout from the existing Default Layout. prompt_left = 'Item Description' WHERE prompt_above = 'ITEM_DESCRIPTION' AND application_id = lc_application_id_result AND interface_code = lc_interface_code. To do the following steps the user should have System Adminstrator responsibility and Web ADI Responsibility or Web ADI’s Main menu. . Changing the PROMPTS for the columns UPDATE bne_interface_cols_tl SET prompt_above = 'Item Description'.

3.55..0.17420.039078039070/147.3093.943.3/039078 90.-094054306:.-..:08 .:08   18:55479898(   03/1( 448047.017420-.99490478009070903.9438  $9058  18:55479898(   03/1( 0.3/800../4594330.422990/9490/.9.3/:54.4:23.9.20475.30390790..9080/745/43 8941.0 0990.39490/.098:54.9.:084:.9:70  %820. 7.3/..82470.0 .0-0709:730//70.41907478349.1:3.0 :54.09025./90 /../84:..39036:.250 190743..94 7..389.0.80..90.943.0/93900-478009 470..9.702.:5.25479 3/097.:0830.90..3/0.4:39073902..090.70. 90/.33907..9471474:7430.0/70.3790.90 .0398/0389.4330.943.4:73.089890:807.:3.0/07 1. 2.:081742!4589478941 '.3 .990...42574280/ -:830887:089080:807803.9.7003147.00307.//.80 0390/..799080..70.0/....3/ .0907.07 '!...0 8009 90708:984:.9.3/8..9.04.03 /.9 0.:08.5.448090.-.045.95071472.3834.3/0/931472.3/70.88399490:807   18:55479898(   03/1( &80743.890 1 /43.:0709:73940.7.2088.9.943  &8078.!.3//.9.4770.:7.900.349-0 ./02470574/:.489..08009  0-:808903907309425:937.

.809.80474:.9.9.9.:0839490/.-08  .-0 990 92041:54.0884190039070//./390/.9.-....3/3807939490 /..558.-./900.9394/.010.47/3  %8/4..0.041.-0     70.-.:08394/..3/190.9090039070//.9.84:/4.-0.3/903:5/..:89423907.:203984:/-0:80/94/0.3/01309..-.809..:89423907.907090/.-.948-0:80/147.3.34594394:54.3:5:..3/009.947 &8.9.947 :89423907.$"943807990/.706:70203941..8041..3/0.947-0:80/94:54.32.9./90.9090 /.809.045.9.0.:083900.090250901742.3 .809.9.:3.9478 :89423907.:89423907.9.9434190. /70.30.3/48420574.

947  $905 &83-30*3907.9./23  !*%#% #*  #09:735.0/:7090.9090.7947.90/ .2090789  .55.704394.:08..3/! !89.420.:08  '.:7847/.7090..70.0.7/5..30..4:235742598 -/01.947 &839089.4/08  &$147038  !*&$#* *&$#/  14788.9090/01.30900.04/014739073.1472.900.3..70.943/4190.9470.00.70..947*:98 #%*%#* #*!5.:90/.0/  !*!*!# &#* 0390:807:54.84://484204907..0  $905 //3! !8914790706:70/.90903907.39894:54.0/  398574.0.947*:98 #%*%#% #5.3/.3/039:54.80.9.47.943.70.947990 39071..3:.:89423907.0.0/01.300/894-0380790/39490/.20 &$% *$ #%*  !* %*  3907.0800998574.:0894800.4:230.0-03.8839490*&$#    $905894.9.90/3907.:89423907.4:238-02.:89423907..70.3-0/430  %09025.1742.943949079.../8900..909039071.7...080099.:80  !*%#% #*  4/0147903907.0.947  $905 &83-30*3907.947 99014435.990/...0/390.947 . $905 70./890/.70./078.0/:7090/.-0/85.9474/0 .3..70.25090:807.903907.9430700..20 ..90/3907.8.20419039071.943#..3/84:/-0709:730/-.0890583/09.:9..70.-0  !*%#*&$#* .-.947  !* %*  39071.  !*%#% #*&$#* 390.-0:80/39073..3/.4:233.0 ..-08 9.0.9334  !*!#*$%* !.84:/-0.08009 74298574.9090.08009985../.55.943/ ..0.7.9.70.-4.947 $905 &83-30*3907.-0:80/147901:790789058     $905 70.990.9.947*:98 #%*%#% #0.3077474.:990.1:3../8900..0.70.55.4:238  $905 .:.947*:98 #%*&%* &%5.0/:70-03. .55.:08  3..1.9.9.0 !# &##%*%#* #*!  !*!!% *&#  !* %* '##  !*%#% #* '##  !*!*!*'##  !*!*!# &#*'##  !*%#*&$#*'##  !*!#*$%*'##  !*!*%!'##  !*!*#%&#*%!'##&%&  !*&! *%!&#  !*&'##  !*$ &#*'##  !*&$#*&#  !*!#*$%*  &%  !'##  !*%#*  &%  !'##   !*!!% * 55./90/.80 9..55.4:914790..943*/# 13/*.9390.70.70.550/9900.-..209078  !# &##%*%#% # !*!!% *&#  !* %* '##  !*%#% #*&$#*'##  !*&'##  !*$ &#*&'##  !*&$#*&#  !*%#% #*  &%  !'##  !*!!% * 890.90903907..7.943  !*& !*$ &#*&..0..0.9039071.20907 ...8.90/3908905  !*!*!* 0390:807:54.943*8479*3.3/0130..:89423907.947  &80906:07 $%..70.55.014790.20    409880090.090..0-30*3907.

/  $0994 47  :8942&54./94%.98-03709:730/174290! !*&! *%! %5041:54.3./ :54.883../%50 :808 *%#$* &! * *944-9.20944./94!.-0  &54.!*!*%! !950 !# &#47&%   !*!*#%&#*%! .

4 &%* *$&#  .$"!  !*& !*$ &#* .:9..0.4/0.0*.90/3907./ &$ 38  !*&$#* &807/147907010703.4:238 97:0471..0*.20 %*&%$* *$&#*'  .93/01.*/*.0.4 &%* *$&#  .3/.*4-*3.0..4:23&%* *$&# &!%-30*39071.:89423907.:89423907.70.943/ .943   0.4:9..0..90/3908905  !*&$#* &807/  $8.03/07 '.4201742.70.4/0 .80  !** &$ .90.4/0 14739073..70.0.:8014790! !$%70897.943*/.3*.4:9       $905 70.4:238  40.2090789  !*%#*  #09:73.70..-30*3907.7.890070.0779047077474:9 97:0471.947..*.5907410-3907.0*.-03..4/0147905.70.:0884:/.4/0#%*%#*  .:9.4/014790.80  !* &%*   :95.943*/*708:9 39071.3/.70.208909.0..2008984.:9.*.70.947       $905 70.3:...4:9  !# &##%*&%* &%  !*!!% *&#  !* %* '##  !*%#% #* '##  !*%#* '##  !*&$#*&#  !* #   !** &$   !* &%*  &%  !'##  !*!!% * 55.*20..90! !$%147..90/3908905  !*%#*  39071.0*.9047$*%83:  #39071.947...*.4*3.55.0*.2090714790.70.93! !$%14790706:70/..04507 8:/0147 .2007090./23  !* # 190../990.48*9 $%:807*39  8.4/0 .90//01.0*.9470.90/3907.0.947  !* %*  01.55.*39071./23  !*!#*$%*  #09:73..48*- $%..55.34190.8.70.3994.//**.9390.//**.*4-*3.90! !$% &80739147.:80  !*%#% #*  3907.70.0  $8.947 10.4:994-0.*950 %  4...7070.90/147.. $*%88/.947*:981472470/09.-4:9.*950 ! !$%  .93 ' .304:8  #574259*019 % #*  ..943*/&$% *!!% * 39071..4:93.4:238 :8090 144386   70.0-03:80/390:54.4/0. '   //3&807398 &!%-30*39071.7.20 !*&%* *$&#  .

904.3/800.9   $099390.9478314      !70706:8908  %01443.943*/.7090570706:89081470-     30419014434507.48*9 $%574259*..3.0/4390.90/4390/08945 .08706:70/1:83900307.4:9.397.3/.1:3.4:238 &!%-30*39071.0 .8.9.4:9147900.   $905 .4:9 4339490389.947 .70/.70.907389.0*.3203:  .3/70..0.39.08 0.9094%448 3907309 59438.-4.:203994-0.943  0.:79 %7:890/$4:7.90/3907...0 %*$#!%   ..0.0! .4/0 -30*39071.75943  #574259*.90903907.8.-4:9..:799.3390!# !%$14790.$09:514770.0.70.0*.93#06:70/.48*-.75943  574259*019 90208.10 94!74259  3041901443.3/.88.9900- 7085438-9   .74 $0.0.-08:80/14790.3/0-#085438-9470- 8.-4.309.3/8.4.0.55.70.08894'8:..48*9 -30*39071...4/0.70902.4397483492.759.07   390730954707 4770.07843841.7-08.08009 !0.0*..*39071.83907.0!..3/ :8078.748419.9014438..- $00.-4.448090:89420.094 503.9477085438-9.55.4:9.!740.:2039:3.938890282:89-0389.0/434:72.448090$0.3:.70038498 %4/49014438905890:80784:/...947..0  .0 494%448 .0 90208.748419 11.*.904:743.94../4.0*.947.0*.039! 3/48 3/48% 9$07.3/.:2039/08.943 %8/4.4:9174290089301.907 3/48  3/48! 3/48 3/48$07.0!.30  $0990-7480780.47.0/07 4:73.:9..3/1474/33907.308.80.0    470-94479..70..943*/*708:9 39071.:7980993894.748419..3.0 $8902/23897..748419.90%7:89.0-:9943 $099045943 39.