470 likes | 480 Views
Connect MAPICS to Anything with System Link (CISTECH R7.8 series). Denise Luther Senior IT Consultant denise.luther@cistech.net. Agenda. What is System-Link Methods to connect Managing System-Link Simulator LPI Web portal Web services. What is System-Link.
E N D
Connect MAPICS to Anything with System Link (CISTECH R7.8 series) Denise Luther Senior IT Consultant denise.luther@cistech.net
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 and other platforms • Request/Response • Part of IDF • CSM, PM, OBPM, EPDM, MM… • CO’s, PO’s, MO’s, Engineering…
Why use System-Link • 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 fields • Business rules • Editing • Default generation • User Exits • Security • Attachments • Host jobs and reports • Logical and object transactions
Methods to Connect • 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
System-Link References • System-Link User Guide – Release 7.7 • Download from Infor support website - Documentation - Product Manuals - Miscellaneous - SYSL • System-Link Installation Instructions R7
Managing System-Link • Use Link Manager to manage System-Link processes By environment By machine Distribute server load across resources
Managing System-Link Link Manager 7.8
Managing System-Link • System-Link processes must be started on auxiliary • Autostart System-Link with environment • Right click or toolbar to start/stop/restart/Move • View Logs and diagnostics
System-Link Simulator URL points to your host server
System-Link Simulator • Navigation/System-Link request • Not required to create System-Link requests but it makes the job easy • Display PO’s for vendor 100 – Restricted List, navigate from Vendor object or subset
System-Link Request Paste from clipboard
System-Link Request Variables
System-Link Response Check the response
System-Link Response - Error Request has errors – Check the response
System-Link Request Requesting System-Link from Card File
System-Link Sessions WRKODBCJOB command will allow you to manage System-Link jobs.
System-Link Sessions • IP address of auxiliary server will be System-Link sessions • View job log (Option 10) for troubleshooting • Link Manager 7.8 • Errors from associated Integrator user exits will be in QSYSOPR message queue
Local Program Interface • 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
LPI Sample • 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
Constructing a Request • Write a service program with functions • for sections, tags and actions • XML header • Login • Request • Property path wrapper based on type: • alpha, numeric • Common actions
Parsing Response • 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
<Response_sessionHandle='1a5f739:fc75bbe92b:_7aef‘_workHan <QueryListResponse_name='queryList_PurchaseOrderGeneral‘_r <DomainEntity_domainClass='com.mapics.pm.PurchaseOrder' <Key> <Property_path='order'> <Value><![CDATA[P000349]]></Value> </Property> </Key> <Property_path_='order'> <Value><![CDATA[P000349]]></Value> </Property> <Property_path='vendor'> <Value><![CDATA[100]]></Value> </Property> <Property_path='vendorName'> <Value><![CDATA[Hi_Tech_Corp]]></Value> </Property> <Property_path='orderStatus'> <Value><![CDATA[20]]></Value> Starts a new record Field values
Fetch Next • 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
Transaction Group StartTransactionGroup tag A StartTransactionGroup tag is used to group all subsequent maintenance actions in a request document as a single transaction. Normally, most maintenance actions are “auto-commit”: each maintenance action commits prior to the next action being run.
Transaction Group <Request sessionHandle='*current' workHandle='*new' broker='EJB' maxIdle='1000'> <Update name='updateObject_Vendor1' domainClass='com.mapics.pm.Vendor'> ... </Update> <StartTransactionGroup /> <Create name='createObject_PurchaseOrder' domainClass='com.mapics.pm.PurchaseOrder'>…….. </Create> <Create name='createObject_PurchaseOrderItem1' domainClass='com.mapics.pm.PoItem'> ……… </Create> <Create name='createObject_PurchaseOrderItem2' domainClass='com.mapics.pm.PoItem'> ……… <Create name='createObject_PurchaseOrderItem3' domainClass='com.mapics.pm.PoItem'> ………. </Create> <Update name='updateObject_Vendor2' domainClass='com.mapics.pm.Vendor'> ............. </Update> </Request>
Supplier Portal – Web application • 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
Supplier Portal – Web application Upload shipping documents to host server Create PowerLink attachment via System-Link request
Power Link transactions • 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
Custom objects Custom objects can be used with System-Link (EI)
Web Services Use RPG, HTML, Java, PHP, MS Office, anything that can communicate with a web server
Web Services • Create a deployment profile • Include the object(s) you want • Specify the attributes • Specify the actions • Generate the web service (URL) • WSDL – Web services description language • Identifies information required for Request • Type of Response that will be received
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
Web Services – Price Book MS Excel Worksheet containing pricing data A button on the worksheet sends data to an XA Pricebook XA edits the data Accepts some Rejects some Error messages are returned
Web Services – Price Book • On the server… • Enterprise Integrator • System-Link • On the client… • Microsoft Office • Microsoft Office XP Web Services Toolkit 2.0
Web Services – Price Book • 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 Host edits, subscriptions…everything works
Thank You! Technical Information Denise.Luther denise.luther@cistech.net 704-814-0017 Sales Information Ben McCormick ben.mccormick@cistech.net 704-814-0016