R7 Development Tools
Denise LutherDenise LutherSenior Consultant, Technical ServicesSenior Consultant, Technical Services
You might be interested in R7 and Integrator/Enterprise Integrator if:• You would like to (or have to-SOX) improve the
security of your system• You would like to integrate multiple systems on
multiple platforms into a single user interface• You want a more proactive system- tell me what I
need to know!• Your users like Microsoft Desktop applications, and
you would like to integrate with them• You would like to use the web to communicate with
customers, partners, and employees• You need the ability to enhance your system as your
business needs change-and maintain an upgrade path
Auto Content Security-What Rows
• Special attribute classes are assigned
• On-the-fly security subsets based on values assigned to a user
• Global across all objects
• User can be setup to view all warehouse data but only allowed to maintain data in certain warehouses
Example: Item Warehouse
We want to restrict this user to warehouse 1 only.
Using a security subset
Only warehouse 1 records appear in the list
The subset is still (all records) i.e., all the records this user is authorized to. They can still subset from here.
Deployment Profiles
All objects and attributes
What user is authorized to
What is presented to the user
What the user chooses to see
• Object/field assumes everything authorized
• Deployment Profile assumes nothing authorized
Object security
Deployment Profile
UI
Database
Deployment Profiles• Object list• Object list• Content
• Object list• Content• Navigation
• Object list• Content• Navigation• Maintenance
• Object list• Content• Navigation• Maintenance• Fields
Security for: Powerlink
…and Security for: Netlink
…and Security for: System-Link
Enhanced Security for XA
• Security Modeling and Planning
• Advanced Analysis and testing
• Routine Auditing and reporting
Alerts – Integrator Subscriptions
• Via e-mail, phone or system message
• Can also run a program
ERPERP
PO P012345 for $11,283.19 needs approval
Define the event
• Choose the object
• Define the type of maintenance
Define the event
• Like a subset
• Some new features– Before– After– Difference– %Difference
Flexible notification
•Notify usersNotify users•Email or Email or Cell Cell phonephone
•Notify a Notify a programprogram•RPG, XMLRPG, XML
Notify via e-mail
Substitute Email from vendor object as To address
Notify via cell phone
Data Sources•Other Platforms•Files from another iseries•Files in another XA environment
You must acquire drivers from the database providerPlace them in /MAPICS/driverlib
IFS directory where MAPICS is installedThey will work for all environments
Drivers are no-charge and can be downloaded from the web
Data Sources - Drivers
iSeries – already installedAccess – already installedSQL Server – SQL Server Driver for JDBC
Oracle – need 9i driverPostgreSQL – need driver for JDBC3 Platform
Data Sources - Drivers
Data Sources – SQL Drivers
Data Sources
[dsh][dsh]::[port][port]
DatabaseDatabase
[Password][Password]
[user ID][user ID]Database ownerDatabase owner
Data Sources
Display SQL Server• Views, subsets,
sorts
• Full navigation
• Navigation history
• Workbenches
• Code files
• Graph cards
• Compound cards
• Attachments
• Column functions
Navigate to SQL Server table
Navigate to SQL Server table • Navigate from iSeries objects to external objects
• Native menus automatically reflect new choices
• Consistent UI across platforms
• Acts like one system to the user
See outside data from within an object
• Show data in context
• Cards can be external data sources
• Drill-down capability across platforms
5-1. Reduce Development Costs and SchedulesUser Exit Code Generation
No downloads More control More Exits Consistency Exported with object Enterprise Integrator extends these
advantages to your custom objects (no more triggers)
Generate Generate programprogram
Compile Compile programprogram
Display Compile listingDisplay Compile listing
User Exit Source
Deliver Easy-to-use ApplicationsMass Program Actions
Downloadable sample code and instructions are provided
Pass parameters including dynamic token Program will process all selected records or
records within the current subset Use when standard mass change will not
handle your requirements
Improved management for environments
Import/Export individual objects Use subsets or selected records to limit export
Improved management for environments
Integrator Projects and object maintenance history
Create Projects to track development activity Each change is logged to a project View history of project changes
Object transactions
• Better way to do Program actions– Requires EI– Transactions Card in Integrator– Parameters defined as attributes
• Edits
• Default generation
• User Exits
Object Transactions
Object Transactions
• Attribute (Number of copies) is required entry
• User Exit calls the print program
2-2-3737
What is System-Link?• Program to program interface between XA and other systems.
– Inquiry/Maintenance
– Replacement for offline load
• XML
– Other ERP systems
– Other platforms
• Part of Power Architecture
– CSM, PM, OBPM, EPDM, MM…
– CO’s, PO’s, MO’s, Engineering…
Why use System-Link
2-2-3838
•Any object available in Power-Link can be loaded•Only certain files are available for offline load
•System-Link has a standard interface•Every application is a different flavor of offline load
•Secondary objects can be loaded•Extra fields defined by user
•Non-XA Primary objects can be loaded•Add, Change and Delete are supported•Power-Link edits are enforced
•Including user defined edits
Why use System-Link
2-2-3939
System-Link handles:System-Link handles:Database files and fieldsDatabase files and fieldsLogical fieldsLogical fieldsBusiness rulesBusiness rulesEditingEditingSecuritySecurity
You also get You also get Release TransparencyRelease TransparencyNo worries about release upgradesNo worries about release upgrades
2-2-4040
System-Link References• System-Link User Guide – Release 7.7
– Download from Infor website• Documentation
– Product Manuals» Miscellaneous» SYSL
• System-Link Installation Instructions R7
• Configuring WAS 5.0 Express on W2K for
System-Link R7 (SH14777) Servlet information
2-2-4141
Managing System-Link
• Use Link Manager to manage System-Link
processes
By environment
By machine
Distribute server load across resources
2-2-4242
Managing System-Link• System-Link processes must be started
• Autostart System-Link– Options at environment level
2-2-4343
Methods to connect• System-Link Simulator
– Use for testing/troubleshooting
• To web server via XML
– Web pages – Java/HTML
• Directly to System-Link via LPI
– RPG/CL programs
• Web Services
– Anything Microsoft-enabled
– Requires Enterprise Integrator
• IBM’s WebSphere MQ
– Global enterprises
– Requires IBM products
2-2-4444
System-Link SimulatorURL points to your host server
2-2-4545
Using System-Link Simulator• Display PO’s for vendor 100 – Restricted List,
navigate from Vendor object• Navigation/System-Link request• Not required to create System-Link requests
but it makes the job easy
2-2-4646
System-Link REQUEST
2-2-4747
Request and Response
2-2-4848
Paste from clipboard
2-2-4949
Check the response
2-2-5050
System-Link Update
Requesting System-Link from Card File
Copying a Create System-Link Command
2-2-5454
System-Link sessions• WRKODBCJOB command will allow you to
manage System-Link jobs.
2-2-5555
System-Link sessions
• IP address of auxiliary server will be System-Link sessions
• View job log (Option 10) for troubleshooting
• Errors from associated Integrator user exits will be in QSYSOPR message queue
2-2-5656
Local Program Interface• RPG program you call from anywhere
– PSVPSR1R in AMALIBx
• Parameters for the XML to send and receive– Inquiry – Request rows (view) or details (cards)
– Receive the results
– Maintenance – Create records, Update an attribute – Receive confirmation
– Send is the Request - Receive is the Response
2-2-5757
LPI Sample• Illustrate one way of using System-Link with your
RPG programs– Send a request– Parse the response
• Available as a download– SH14873
• Create a report of PO’s for a vendor• Use RPG to…
– Send XML request to LPI– Receive and parse XML response from LPI
2-2-5858
Writing your own programs• Sample parsing program 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
Supplier Portal - Web application
2-2-5959
•Login information used to construct Login tag •System-Link request to retrieve order lines
System-Link request returns rows
2-2-6060
Transactions
• User actions on the web page are used to construct a System-Link request to create records in a custom transaction file.
• Custom transaction file is a business object with Integrator user exits.
• User exits are used to perform work on the host (update flags, dates, secondary business object)
• Integrator user exits execute if object is being maintained via PowerLink, System-Link or NetLink.
2-2-6161
System-Link Create AttachmentWeb portal can set attachments for document management
Custom Forecast Object
Custom objects can be used with System-Link
2-2-6363
System-Link replaces Off-Line Load
• Create the System-Link requests from an interface file– Separates the XML logic from the load function
• XML logic can be adjusted without changing load program(s)
– Can be used to track XML requests• Who, what, when created the request?• When was the request processed?• Were there any errors?
– Errors can easily be fixed in the file• Changing XML would be problematic
– Group requests• Process various types of objects together• Processing can take place in batch mode as unattached job• Sequence objects are processed in is important
Sample System-Link Interface File
File name . . . SYSLNKCD Customer Order Line Item - Interface Format name . . SYSLNKCDR0 Key . . . Sequential Field Field Text Type
LengthAENB Company number S 2,0 DCCD Internal header type A 1 CVNB Quote/order number A 7 KTNB User entered sequence no. A 7 ACQT Order qty In order U/M P 10,3 AITX Item number A 15 CQCD U/M A 2 A3CD Warehouse A 3 SYST System-link Status A 1 TKEN Token used to uniquely identify record A 15 ACDA Action Code A 1 NWCD Group ID A 10 CRDT Create date P 7,0 CRTM Create time P 6,0 CRUS Created by user A 10 CRPG Create program A 10 CHDT Change date P 7,0 CHTM Change time P 6,0
XML Error Messages
• Errors are returned in XML format in the Response– Error needs to be parsed out
• Can be found by scanning for:
< Message type=“error”><Text><![CDATA[
• Multiple messages can occur for one request
• In V5R4 native RPG commands aid XML parsing– %XML, XML-INTO, %HANDLER, XML-SAX
• How are errors managed?– How are they presented, organized, resolved?
• Watch for external errors– These do not show up in response
Groups with Errors
• In this model requests are grouped by group ID
Message or e-mail could be sent to Message or e-mail could be sent to useruser
Errors in the Group
• On overview is used to show multiple record types
System-Link Transaction Detail
• Error(s) returned from System-Link
• Error messages are formatted as text
• Linked to transaction by token
System-Link Transaction Detail
• XML that was passed to System-Link
• See if what you thought you sent is what was sent
• Not meant for user
System-Link Transaction Detail
• Fields passed to System-Link
• Errors can be fixed here
• Error transactions can be processed again
System-Link Transaction Detail
• Who initiated this transaction
• When was it initiated
• What program created the transaction
• When was the transaction processed
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
Web Services Example
On the server…•Enterprise Integrator•System-Link
On the client…•Microsoft Office•Microsoft Office XP Web Services Toolkit 2.0
Prerequisites
Deployment Profile
Generate Web service CatalogGenerate Web service Catalog
• 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
Steps in Excel
Price Book version before
Host edits, subscriptions…everything works
Price book version after
Additional questions or Additional questions or comments?comments?
Thank you!!Thank you!!
Top Related