45
Custom Web ADI Integrators NEOAUG

Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Embed Size (px)

Citation preview

Page 1: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Custom Web ADI Integrators

NEOAUG

Page 2: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

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

Page 3: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Web ADI

3

Lots of helpful error messages

Page 4: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Overview

4

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

�Access from a menu Item

Page 5: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Overview

5

Enter Invoice Lines with LOV’s for Important fields

Page 6: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Overview

6

Upload data with Validation and AP Interface launch

Page 7: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Overview

7

All of this from an Excel Spreadsheet.

Page 8: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Integrator Overview

8

� Custom Integrator for AP Invoice creation

� Load Invoice Lines from spreadsheet

� Validate and load interface table

� Call AP Interface Import

Page 9: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

PL/SQL API

9

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

Page 10: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

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’

Page 11: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

PL/SQL API

11

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

Page 12: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Integrator – Step1

12

Page 13: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Integrator – Step2

13

Page 14: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Integrator – Step2

14

Page 15: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

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.

Page 16: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Spreadsheet Example

16

The spreadsheet so far

Page 17: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Integrator – Step2

17

Validating Columns

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

Page 18: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an 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

Page 19: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

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.

Page 20: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Integrator – Step2

20

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

Page 21: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Integrator – Step2

21

Adding a Calendar LOV to the Accounting Date field

Create another component

Page 22: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

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

Page 23: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Integrator – Step2

23

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

Page 24: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Integrator – Step2

24

Back to the spreadsheet

Page 25: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Integrator – Step4

25

Step 4 Create an Uploader. Just take defaults.

Page 26: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Integrator – Step4

26

Page 27: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

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.

Page 28: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

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.

Page 29: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Integrator – Step5

29

Page 30: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Integrator – Step5

30

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

Page 31: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Layout

31

Create a layout for how this looks in Excel

Page 32: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Layout

32

Page 33: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

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

Page 34: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Adding to a Menu

34

Choose Save

Page 35: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Adding to a Menu

35

Page 36: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Adding to a Menu

36

� Find it in the database with

Page 37: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Adding to a Menu

37

Lets add it to Payables

Uses Menu AP_NAVIGATE_GUI12

Page 38: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Adding to a Menu

38

Page 39: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

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.

Page 40: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

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

Page 41: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

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

Page 42: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

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

Page 43: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Troubleshooting

43

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

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

Page 44: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

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.

Page 45: Custom WebADI Integrators - Monument Datamonumentdata.com/.../09/Custom-Web-ADI-Integrators.pdf · Agenda Agenda Web ADI Custom Integrators Creating an Integrator Creating an API

Questions & Answers

Discussion

Don Browne

[email protected]

603.952.4641

www.monumentdata.com

45