48
Denise Luther Senior IT Consultant [email protected] Extend your Enterprise with System-Link

Denise Luther Senior IT Consultant [email protected] Extend your Enterprise with System-Link

Embed Size (px)

Citation preview

Denise LutherSenior IT Consultant

[email protected]

Extend your Enterprise with System-Link

Denise LutherProfessional Experience

• 30+ Years in Information Technology

• 5 Years XA Experience

• Software Design and Development

MAPICS Expertise

• Enterprise Integrator Trainer

• Technical Strategies for working with XA

Recent Customer Success

• Saia-Burgess – Implemented custom supplier web portal using Enterprise Integrator and System-Link

My technical background in the iSeries/XA environment

allows me to help IT professionals

implement new technologies for continued business

success .

Agenda

• What is System-Link

• Methods to connect

• Managing System-Link

• Simulator

• LPI

• Web portal

• Web services

What is System-Link

• Bridge between XA and other systems– Inquiry – Maintenance

• XML – Standard interface– Other ERP systems– Other platforms

• Part of Power Architecture– CSM, PM, OBPM, EPDM, MM…– CO’s, PO’s, MO’s, Engineering…

• Universal Off-Line Load• Build websites for customers,

vendors and partners that links directly to the XA database

• Web Services – industry standard way to run programs over the web

Why use System-Link

System-Link handles:Database files and fields (objects, attributes)Logical fieldsBusiness rulesEditingUser ExitsSecurity

You also get Release TransparencyNo worries about release upgrades

Why use System-Link

• System-Link Simulator– Use for testing/troubleshooting

• Directly to System-Link via LPI– Call an RPG program with parameters

• To web server via XML– Web pages – Java/HTML

• Web Services– Anything Microsoft-enabled– Requires Enterprise Integrator

• IBM’s WebSphere MQ– Global enterprises– Requires IBM products

Methods to Connect

Methods to Connect

•RPG can call LPI, Web Server, MQI, MQ LPI•HTML can call Web Server•Java can call Web Server and MQ JMS

• System-Link User Guide – Release 7.7– Download from Infor support website

- Documentation- Product Manuals

- Miscellaneous - SYSL

• System-Link Installation Instructions R7

System-Link References

• Use Link Manager to manage System-Link processes

By environmentBy machine

Distribute server load across resources

Managing System-Link

• System-Link processes must be started

• Autostart System-Link– Options at environment level

Managing System-Link

• Link Manager– Green circle means started– Right click to start/stop/restart/Move– Run System-Link on auxilliary machine

Managing System-Link

Managing System-LinkLogs provide troubleshooting information

URL points to your host server

System-Link Simulator

Navigation/System-Link requestNot required to create System-Link requests

but it makes the job easyDisplay PO’s for vendor 100 – Restricted List,

navigate from Vendor object or subset

System-Link Simulator

System-Link Request

2-2-1717

Paste from clipboard

System-Link Request

2-2-1818

Variables

System-Link Request

2-2-1919

Check the response

System-Link Response

2-2-2020

System-Link Response

2-2-2121

Request has errors – Check the response

System-Link Response - Error

System-Link Request

Requesting System-Link from Card File

System-Link Request

System-Link Request

2-2-2525

WRKODBCJOB command will allow you to manage System-Link jobs.

System-Link Sessions

2-2-2626

• IP address of auxiliary server will be System-Linksessions

• View job log (Option 10) for troubleshooting

• Errors from associated Integrator user exits will be in QSYSOPR message queue

System-Link Sessions

2-2-2727

• RPG program you call from anywhere– PSVPSR1R in AMALIBx

• Parameters for the XML to send and receive– Send an inquiry

•Receive the results– Send an update

•Receive confirmation

Local Program Interface

2-2-2828

Parm Description Use Size Type

P#XREQ XML Request I 65,535 A

P#XRSP XML Response O 65,535 A

P#MRQR More records? *YES if more records to return

O 8 A

P#ERFD Internal Errors*YES if response contains errors

O 8 A

P#MSID External ErrorsPSX0122 – System-Link not startedPSX0130 – Response > 65K

O 7 A

LPI Parmeters

2-2-2929

• Available as a download– SH14873

• Illustrate one way of using System-Link with your RPG programs– Send a request - Send XML request to LPI– Parse the response - Receive and parse

XML response from LPI • Create a report of PO’s for a vendor• Only change required – Supply data for

login substitutions

LPI Sample

2-2-3030

• Sample parsing program USRLPI1R is written generically– Can be used for just about any object (use it for

yours)– V5R4 New XML functions for parsing

%XML, XML-INTO, %HANDLER, XML-SAX

• Sample print program calls the parser field-by-field– You can use this technique in your programs– There are other techniques

Writing your programs

2-2-3131

<<Response_sessionHandle='1a5f739:fc75bbe92b:_7aef‘_wResponse_sessionHandle='1a5f739:fc75bbe92b:_7aef‘_workHanorkHan

<QueryListResponse_name='queryList_PurchaseOrderGe<QueryListResponse_name='queryList_PurchaseOrderGeneral‘_rneral‘_r

<DomainEntity_domainClass='com.mapics.pm.PurchaseO<DomainEntity_domainClass='com.mapics.pm.PurchaseOrder'rder'

<Key><Key><Property_path='order'><Property_path='order'>

<Value><![CDATA[P000349]]></Value><Value><![CDATA[P000349]]></Value></Property></Property>

</Key></Key><Property_path_='order'><Property_path_='order'>

<Value><![CDATA[P000349]]></Value><Value><![CDATA[P000349]]></Value></Property></Property><Property_path='vendor'><Property_path='vendor'>

<Value><![CDATA[100]]></Value><Value><![CDATA[100]]></Value></Property></Property><Property_path='vendorName'><Property_path='vendorName'>

<Value><![CDATA[Hi_Tech_Corp]]></Value><Value><![CDATA[Hi_Tech_Corp]]></Value></Property></Property><Property_path='orderStatus'><Property_path='orderStatus'>

<Value><![CDATA[20]]></Value><Value><![CDATA[20]]></Value>

Starts a new recordStarts a new record

Field valuesField values

2-2-3232

• Don’t ask for too many records at once.– You set the limit with MaxReturned

• LPI tells you if there are more.• ‘FetchNext’ is the way to get more.

– Our sample programs shows you how.– Create loop that processes until P#MRQR

= *NO

Fetch Next

2-2-3333

•HTTP Post interfaces with System-Link servlet •Login information used to construct Login tag •System-Link request to retrieve P.O. lines•Auto content security determines what rows to return•Deployment profile provides “firewall”

Supplier Portal – Web application

Style sheet used to present the XML data

2-2-3434

Supplier Portal – Web application

Upload shipping documents to host server Create PowerLink attachment via System-Link request

Supplier Portal – Web application

• Events on the web page are used to construct a System-Link request to create records in a custom transaction file. Transactions can be viewed in Power Link

• Custom transaction file is a business object with Integrator user exits.

• User exits are used to perform work on the host (update flags, dates, perform edits, default data generation)

• Integrator user exits execute if object is being maintained via PowerLink, System-Link or NetLink

• Ability to update Purchase orders directly

2-2-3636

Power Link transactions

2-2-3737

Power Link transactions

2-2-3838

Custom objects can be used with System-Link (EI)

Custom objects

2-2-3939

Web ServicesUse RPG, HTML, Java, PHP, MS Office,

anything that can communicate with a web server

2-2-4040

Web Services

•Create a deployment profileInclude the object(s) you wantSpecify the attributesSpecify the actions

•Generate the web service (URL)WSDL – Web services description languageIdentifies information required for Request Type of Response that will be received

2-2-4141

Web Services

•Web service provider WSDL information

•Tools for analyzing WSDL

• WDSc's Web Services Explorer• SQLData System's Generic SOAP Client • WebserviceX.NET's WSDL Analyzer

2-2-4242

Web Services – Price Book MS Excel Worksheet containing pricing dataA button on the worksheet sends data to an XA PricebookXA edits the data

Accepts someRejects some

Error messages are returned

2-2-4343

Web Services – Price Book On the server…•Enterprise Integrator•System-Link

On the client…•Microsoft Office•Microsoft Office XP Web Services Toolkit 2.0

• PriceBookExample.xls provided– Enable macros, if necessary– Change price book, etc. to match your environment

• Search for web services– Tools => Macros => Visual Basic Editor => Web Service

References– Enter the URL from the deployment profile

• Add two services– PriceBookBasePriceSvc– SystemOperations

• Import sample code (File => Import File)– ExamplesCode.bas– MAPICSLogonPrompt.frm

Web Services – Price Book

Web Services – Price Book

Web Services – Price Book

Host edits, subscriptions…everything works

Web Services – Price Book

Thank You!

Technical [email protected]

Sales InformationBen [email protected]