Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf ·...

Preview:

Citation preview

Custom Web ADI Integrators

NEOAUG

Agenda

Agenda

� Web ADI Custom Integrators

� Creating an Integrator

� Creating an API

� Defining the Interface

� Defining an Importer

� Working around the bugs

� Adding the Integrator to a Menu

� Migrating

� Troubleshooting

2

Web ADI

3

Lots of helpful error messages

Overview

4

An Overview of the Process from the End Users Point of View

�Access from a menu Item

Overview

5

Enter Invoice Lines with LOV’s for Important fields

Overview

6

Upload data with Validation and AP Interface launch

Overview

7

All of this from an Excel Spreadsheet.

Integrator Overview

8

� Custom Integrator for AP Invoice creation

� Load Invoice Lines from spreadsheet

� Validate and load interface table

� Call AP Interface Import

PL/SQL API

9

� Create a PL/SQL package to work with the integrator

PL/SQL API

10

� The APInv procedure will validate each line of the spreadsheet, and load the line into the interface table.

� Errors are communicated to the spreadsheet via

� You get 30 chars per line for an error message

� You can define your own custom messages

� You can also put plain text in place of ‘WEB ADI ERROR’

PL/SQL API

11

� The RunImport procedure will call the AP Invoice Interface, from the last step of the integrator.

Integrator – Step1

12

Integrator – Step2

13

Integrator – Step2

14

Integrator – Step2

15

Fix the Prompt Names. Define defaults and validation rules for each column.Click Submit from here, NOT Next or you’ll most likely lose everything to a Null pointer exception.You can go back and update this later.

Spreadsheet Example

16

The spreadsheet so far

Integrator – Step2

17

Validating Columns

Lets validate the Vendor Name before it reaches the PL/SQL API

Integrator – Step2

18

An invalid value will get you the following on the spreadsheet.

Lets also add an LOV

Go to Desktop Integration Manager->Create Component

Integrator – Step2

19

Table-select-column tells excel where to place the value you select in the spreadsheet. You reference the name of the column, from the parameter name, not the name you put in the spreadsheet.

Integrator – Step2

20

Back into the Integrator definition, Step 2, click update on the Vendor Name field

Integrator – Step2

21

Adding a Calendar LOV to the Accounting Date field

Create another component

Integrator – Step2

22

Adding a Calendar LOV to the Accounting Date field

Change the height from 500 to 300, otherwise the dialog will contain A LOT of whitespace.

Go back to the definition, choose update for Accounting Date

Integrator – Step2

23

For Component name, enter the exact name, this field doesn’t work with wild cards.

Integrator – Step2

24

Back to the spreadsheet

Integrator – Step4

25

Step 4 Create an Uploader. Just take defaults.

Integrator – Step4

26

Integrator – Step5

27

Step 5 define an uploader

Welcome to the Buggiest Screen Ever!

Depending on your level of luck, you’ll get through this step.

If you didn’t you’ll need to have the end user schedule the import process manually.

Integrator – Step5

28

Note: when you make a selection from the importer type dropdown the importer rules section should show up. If it doesn’t, start patching.

Integrator – Step5

29

Integrator – Step5

30

Try Synchronous or Asynchronous and you'll end up with this error from excel

Layout

31

Create a layout for how this looks in Excel

Layout

32

Adding to a Menu

33

� To Simplify navigation for user, add the new integrator directly to a menu

� Switch to the “Desktop Integration”responsibility

� Choose Create Document and select the integrator that you created

Adding to a Menu

34

Choose Save

Adding to a Menu

35

Adding to a Menu

36

� Find it in the database with

Adding to a Menu

37

Lets add it to Payables

Uses Menu AP_NAVIGATE_GUI12

Adding to a Menu

38

Migrating

39

Migrating

DownloadFNDLOAD apps/apps 0 Y DOWNLOAD $BNE_TOP/admin/import/bneint.lct xx_ap_inv_ld.ldt BNE_INTEGRATORS INTEGRATOR_ASN=SQLAP INTEGRATOR_CODE=XX_WEBADI_PKG_XINTG

UploadFNDLOAD apps/apps 0 Y UPLOAD $BNE_TOP/admin/import/bneint.lct xx_ap_inv_ld.ldt

You won’t be able to edit the integrator.

Migrating

40

Migrating

This only get’s you some of the integrator. The Uploader step is missing.You also need to load the Components and the Layout definitions separately.

Oracle is moving towards using lct’s at $BNE_TOP/patch/115/import/*

bneintegrators.lct doesn’t function in my instance. See patch:

Patch 10385955: FNDLOAD USING BNEINTEGRATOR.LCT DOES NOT INCLUDE BNE_INTEGRATORS_B.SOURCE

Troubleshooting

41

� Change Log Level to “TRACE”, note: no LOV here.

� Restart the Apache Server or you’ll never see anything…

That’s $ADMIN_SCRIPTS_HOME/adoacorectl.sh stop

� You can view the log from the front end at:

� http://hostname:portnumber/OA_HTML/BneAdminServlet

� Login as sysadmin first

Troubleshooting

42

Seems very sensitive to user switching logins.

Also see: Oracle Web Applications Desktop Integrator (Web ADI) Tips for Troubleshooting

(Doc ID 390476.1)

The Servlet may not recognize you’re the sysadmin

Troubleshooting

43

� Don’t be afraid to open the Macro itself to see what’s going on

� From Excel, choose View->Macros->Edit

Troubleshooting

44

Although you are allowed to delete columns from the interface definition, it won’t work

Find the Records in bne_param_list_items, and remove them

There it is. Into the back end to remove the Columns that I deleted through the GUI.

Questions & Answers

Discussion

Don Browne

Don.Browne@monumentdata.com

603.952.4641

www.monumentdata.com

45

Recommended