Sap Tech Ed06 Asug Wf

100 %
0 %
Information about Sap Tech Ed06 Asug Wf
Technology

Published on July 22, 2009

Author: kswenson

Source: slideshare.net

Description

Presentation from Edwin Mukusha about his use of Wf-XML to connect two SAP systems

Developing Cross-System Workflow Applications with Wf-XML

Speaker Information Daniel J Rempe Systems Analyst, University of Nebraska Edwin Mukusha Business Technologies Lead, University of Nebraska

Daniel J Rempe Systems Analyst, University of Nebraska

Edwin Mukusha Business Technologies Lead, University of Nebraska

Learning Objectives As a result of this workshop, you will be able to: Understand the concept and syntax of Wf-XML Learn the essential steps to setup the Workflow environment for web activities Develop workflows that accomplish tasks across related systems

As a result of this workshop, you will be able to:

Understand the concept and syntax of Wf-XML

Learn the essential steps to setup the Workflow environment for web activities

Develop workflows that accomplish tasks across related systems

Server Configuration Workflow Setup Wf-XML At Run Time Wf-XML Document Overview Communicating With Non-SAP Systems

Server Configuration Workflow Setup Wf-XML At Run Time Wf-XML Document Overview Communicating With Non-SAP Systems

Creating a Service Alias in transaction SICF Open path default_host/sap/bc Right click on workflow_xml and choose “New Sub-Element” Enter the name of your alias Click the radio button “Reference to an existing service”

Open path default_host/sap/bc

Right click on workflow_xml and choose “New Sub-Element”

Enter the name of your alias

Click the radio button “Reference to an existing service”

Setting Service Parameters (1) Enter a description in the provided space Enter a userid and password for handling incoming requests Modify security settings as necessary

Enter a description in the provided space

Enter a userid and password for handling incoming requests

Modify security settings as necessary

Setting Service Parameters (2) Find the path to the workflow_xml node as before and click on it Press the save button

Find the path to the workflow_xml node as before and click on it

Press the save button

Activating alias link in SICF Right click on your new alias and choose “Activate Link”

Right click on your new alias and choose “Activate Link”

Determining HTTP Port Number and Host Name Open transaction SMICM Use the menu path Goto->Parameters->Display Find the parameter icm/server_port_ x containing the port number for the HTTP protocol Find the parameter icm/host_name_full to determine the server’s host name

Open transaction SMICM

Use the menu path Goto->Parameters->Display

Find the parameter icm/server_port_ x containing the port number for the HTTP protocol

Find the parameter icm/host_name_full to determine the server’s host name

Setting handler for workflows in SWR_WEBSERVER Enter your hostname and port as a URL in the web server address box Enter the path to your SICF service, which should be SAP/BC/ WORKFLOW_XML/ Alias Name /? Test the URL by pressing the button next to the URL at the bottom

Enter your hostname and port as a URL in the web server address box

Enter the path to your SICF service, which should be SAP/BC/ WORKFLOW_XML/ Alias Name /?

Test the URL by pressing the button next to the URL at the bottom

Server Configuration Workflow Setup Wf-XML At Run Time Wf-XML Document Overview Communicating With Non-SAP Systems

Container interface for remote workflow You will need to be familiar with the container elements in the workflow you are calling

You will need to be familiar with the container elements in the workflow you are calling

Remote workflow template The remote workflow in this example will wait ten seconds before changing the value of a return element It is necessary that some processing time occur for the document interchange to be successful

The remote workflow in this example will wait ten seconds before changing the value of a return element

It is necessary that some processing time occur for the document interchange to be successful

Container interface for reference workflow The reference workflow is a template in the calling system that refers to the remote workflow Elements which need to be exchanged with the remote workflow must share the same definition in the reference workflow

The reference workflow is a template in the calling system that refers to the remote workflow

Elements which need to be exchanged with the remote workflow must share the same definition in the reference workflow

Reference Workflow Template It is not necessary that the reference workflow contain any steps Any steps included in the reference template will not actually be run on the calling system

It is not necessary that the reference workflow contain any steps

Any steps included in the reference template will not actually be run on the calling system

Creating the Calling Workflow

Creating a Web Activity The web activity contains a URL that calls a workflow on another system Transfer Format indicates the specification used to exchange information between systems “ Wait For Feedback”, when checked, will cause the calling workflow to wait until the remote workflow finishes before it completes

The web activity contains a URL that calls a workflow on another system

Transfer Format indicates the specification used to exchange information between systems

“ Wait For Feedback”, when checked, will cause the calling workflow to wait until the remote workflow finishes before it completes

Using the URL Wizard The URL wizard generates a URL for calling the remote system based on the information you enter

The URL wizard generates a URL for calling the remote system based on the information you enter

Adding an alias to the URL The wizard will not add your alias name from SICF to the generated URL. For instance, in this link: HTTP://uncsuns.nebraska.edu:8199/SAP/BC/WORKFLOW_XML/?~localkey=WS91000004 The alias needs to be added in this manner: HTTP://.....WORKFLOW_XML/ WF_XML_ALIAS /?~localkey.....

The wizard will not add your alias name from SICF to the generated URL.

For instance, in this link: HTTP://uncsuns.nebraska.edu:8199/SAP/BC/WORKFLOW_XML/?~localkey=WS91000004

The alias needs to be added in this manner: HTTP://.....WORKFLOW_XML/ WF_XML_ALIAS /?~localkey.....

Adding the Reference Workflow Add the reference workflow created earlier in the provided space Binding elements to the reference workflow is done on the Call tab

Add the reference workflow created earlier in the provided space

Binding elements to the reference workflow is done on the Call tab

Server Configuration Workflow Setup Wf-XML At Run Time Wf-XML Document Overview Communicating With Non-SAP Systems

Viewing progress in the Workflow Log The remote workflow’s overall progress will be shown if the Wait For Feedback box was checked on the calling system Specific steps within the remote workflow are not shown

The remote workflow’s overall progress will be shown if the Wait For Feedback box was checked on the calling system

Specific steps within the remote workflow are not shown

Viewing XML files with transaction SWXML Transaction SWXML provides a report of Wf-XML documents sent or received by the system The report organizes groups of documents by Work Item ID

Transaction SWXML provides a report of Wf-XML documents sent or received by the system

The report organizes groups of documents by Work Item ID

Wf-XML documents are stored using the SAP Business Document Service OAOR does not allow selection by date/time as SWXML does View documents in transaction OAOR (BDS)

Wf-XML documents are stored using the SAP Business Document Service

OAOR does not allow selection by date/time as SWXML does

Server Configuration Workflow Setup Wf-XML At Run Time Wf-XML Document Overview Communicating With Non-SAP Systems

Wf-XML is a standard published by the Workflow Management Coalition to enable interoperability between systems that use Workflow This presentation uses version 1.1 of the Wf-XML standard. The full specification of this standard can be downloaded at: http://www.wfmc.org/standards/docs/Wf-XML-11.pdf The Wf-XML version is specified while creating the Web Activity step in the Workflow Builder Wf-XML Specification

Wf-XML is a standard published by the Workflow Management Coalition to enable interoperability between systems that use Workflow

This presentation uses version 1.1 of the Wf-XML standard. The full specification of this standard can be downloaded at: http://www.wfmc.org/standards/docs/Wf-XML-11.pdf

The Wf-XML version is specified while creating the Web Activity step in the Workflow Builder

This process shows a two-way communication process between systems A Request is made by the initiating system, which is immediately acknowledged by a Response from the receiving system The receiving system sends its own Request upon completing its task, which is acknowledged by a Response from the initiator System Interaction Source: http://www.wfmc.org/standards/docs/Wf-XML-11.pdf

This process shows a two-way communication process between systems

A Request is made by the initiating system, which is immediately acknowledged by a Response from the receiving system

The receiving system sends its own Request upon completing its task, which is acknowledged by a Response from the initiator

A CreateProcessInstance interchange is initiated when instructing a remote system to perform a particular workflow task A ProcessInstanceStateChanged interchange is done whenever the state of the remote workflow changes (for example, when it is complete) System Interaction (2) Source: http://www.wfmc.org/standards/docs/Wf-XML-11.pdf

A CreateProcessInstance interchange is initiated when instructing a remote system to perform a particular workflow task

A ProcessInstanceStateChanged interchange is done whenever the state of the remote workflow changes (for example, when it is complete)

This is a CreateProcessInstance.Request document. It was automatically generated by the Workflow system in the previous example CreateProcessInstance - Request

This is a CreateProcessInstance.Request document. It was automatically generated by the Workflow system in the previous example

This is a CreateProcessInstance.Response document. It is returned immediately from the called system in acknowledgement of the Request document CreateProcessInstance - Response The MIME type of the returned document MUST BE text/xml . Any other type will cause the originating workflow to end in error

This is a CreateProcessInstance.Response document. It is returned immediately from the called system in acknowledgement of the Request document

ProcessInstanceStateChanged

Server Configuration Workflow Setup Wf-XML At Run Time Wf-XML Document Overview Communicating With Non-SAP Systems

In this example, an Apache web server runs a Perl script at a given URL which responds with a Wf-XML document Interfacing With Foreign Systems #!c:/perl/bin/Perl.exe ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time); print &quot;Content-type: text/xml &quot;; print &quot;<?xml version=&quot;1.0&quot; encoding=&quot;ISO-8859-1&quot; ?> &quot;; print &quot; <WfMessage xmlns=&quot;http://www.wmfc.org/standards/docs/Wf-XML&quot; Version=&quot;1.1&quot;> &quot;; print &quot; <WfMessageHeader> &quot;; print &quot; <Response /> &quot;; print &quot; <Key>Apache Transaction - Free Text 1</Key> &quot;; print &quot; </WfMessageHeader> &quot;; print &quot; <WfMessageBody> &quot;; print &quot; <CreateProcessInstance.Response> &quot;; print &quot; <ProcessInstanceKey>Apache Transaction - Free Text 2</ProcessInstanceKey> &quot;; print &quot; <ContextData> &quot;; print &quot; <Name>Date</Name><Value>$mon/$mday/$year</Value> &quot;; print &quot; <Name>Time</Name><Value>$hour:$min:$sec</Value> &quot;; print &quot; <Return> &quot;; print &quot; <Success /> &quot;; print &quot; <Message> &quot;; print &quot; <Number>ZH999</Number> &quot;; print &quot; <Text>&amp; &amp; &amp; &amp;</Text> &quot;; print &quot; <V1>The method was executed successfully</V1> &quot;; print &quot; </Message> &quot;; print &quot; </Return> &quot;;

In this example, an Apache web server runs a Perl script at a given URL which responds with a Wf-XML document

Here, a Lotus Notes server runs an agent which attempts to create a calendar entry document before returning a Wf-XML document The document returned is dependent upon whether the agent was able to accomplish its task Interfacing With Foreign Systems (2) public class JavaAgent extends AgentBase { public void NotesMain() { try { ... creating calendar entry in Notes printXMLDocument(notes_doc.getUniversalID()); } catch(NotesException e) { createErrorDocument(e.text, 1); } }

Here, a Lotus Notes server runs an agent which attempts to create a calendar entry document before returning a Wf-XML document

The document returned is dependent upon whether the agent was able to accomplish its task

Interfacing With Foreign Systems (3) private void createErrorDocument(String msg, int type) { try { notes_doc = sapleave_db.createDocument(); notes_doc.replaceItemValue(&quot;Form&quot;, &quot;Incoming&quot;); notes_doc.replaceItemValue(&quot;Error&quot;, new Integer(type)); notes_doc.save(); printXMLDocument(notes_doc.getUniversalID()); } catch (NotesException ex) { ex.printStackTrace(); } } private void printXMLDocument(String id) { try { pw.println(&quot;Content-type: text/xml&quot;); pw.println(&quot;<?xml version=&quot;1.0&quot; encoding=&quot;ISO-8859-1&quot; ?>&quot;); pw.println(&quot;<WfMessage xmlns=&quot;http://www.wmfc.org/standards/docs/Wf-XML&quot; Version=&quot;1.1&quot;>&quot;); pw.println(&quot;<WfMessageBody>&quot;); … . Context Data of Response Document pw.println(&quot;</WfMessageBody>&quot;); pw.println(&quot;</WfMessage>&quot;); } catch (Exception ex) { ex.printStackTrace(); } }

Summary Wf-XML enables systems to communicate and manage wokflow tasks using a standard XML-based syntax SAP’s Workflow Builder automatically handles the specifics of Wf-XML interaction using the Workflow Container and the Business Document Service The SAP Workflow runtime environment provides interfaces for administration and troubleshooting of remote workflow tasks Non-SAP systems can easily communicate with R/3 systems using the same document structure

Wf-XML enables systems to communicate and manage wokflow tasks using a standard XML-based syntax

SAP’s Workflow Builder automatically handles the specifics of Wf-XML interaction using the Workflow Container and the Business Document Service

The SAP Workflow runtime environment provides interfaces for administration and troubleshooting of remote workflow tasks

Non-SAP systems can easily communicate with R/3 systems using the same document structure

Transaction Reference SICF – HTTP Service Hierarchy Maintenance (setup of workflow_xml node) SWR_WEBSERVER – Setup of web server callback URL SWXML – Selection Report for XML Documents OAOR – Business Document Navigator

SICF – HTTP Service Hierarchy Maintenance (setup of workflow_xml node)

SWR_WEBSERVER – Setup of web server callback URL

SWXML – Selection Report for XML Documents

OAOR – Business Document Navigator

Further Information  Public Web: http://www.wfmc.org – Workflow Management Coalition www.sdn.sap.com - SAP Developers‘ Network  Related Workshops/Lectures at SAP TechEd ’05 EPI104 – Interoperability SAP NetWeaver–IBM WebSphere, Lotus, and Tivoli EPI200 - ASUG Workflow/Webflow SIG Community: Tips, Tricks and Information Sharing Session  Americas’ SAP Users’ Group (ASUG) www.asug.com

THANK YOU FOR YOUR ATTENTION ! QUESTIONS – SUGGESTIONS – DISCUSSION

Feedback Please complete your session evaluation. Be courteous — deposit your trash, and do not take the handouts for the following session. Thank You !

No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice. Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. Microsoft, Windows, Outlook, and PowerPoint are registered trademarks of Microsoft Corporation. IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, and Informix are trademarks or registered trademarks of IBM Corporation in the United States and/or other countries. Oracle is a registered trademark of Oracle Corporation. UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group. Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix Systems, Inc. HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C®, World Wide Web Consortium, Massachusetts Institute of Technology. Java is a registered trademark of Sun Microsystems, Inc. JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape. MaxDB is a trademark of MySQL AB, Sweden. SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned are the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary. The information in this document is proprietary to SAP. No part of this document may be reproduced, copied, or transmitted in any form or for any purpose without the express prior written permission of SAP AG. This document is a preliminary version and not subject to your license agreement or any other agreement with SAP. This document contains only intended strategies, developments, and functionalities of the SAP ® product and is not intended to be binding upon SAP to any particular course of business, product strategy, and/or development. Please note that this document is subject to change and may be changed by SAP at any time without notice. SAP assumes no responsibility for errors or omissions in this document. SAP does not warrant the accuracy or completeness of the information, text, graphics, links, or other items contained within this material. This document is provided without a warranty of any kind, either express or implied, including but not limited to the implied warranties of merchantability, fitness for a particular purpose, or non-infringement. SAP shall have no liability for damages of any kind including without limitation direct, special, indirect, or consequential damages that may result from the use of these materials. This limitation shall not apply in cases of intent or gross negligence. The statutory liability for personal injury and defective products is not affected. SAP has no control over the information that you may access through the use of hot links contained in these materials and does not endorse your use of third-party Web pages nor provide any warranty whatsoever relating to third-party Web pages. Copyright 2006 SAP AG. All Rights Reserved

No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice.

Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors.

Microsoft, Windows, Outlook, and PowerPoint are registered trademarks of Microsoft Corporation.

IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, and Informix are trademarks or registered trademarks of IBM Corporation in the United States and/or other countries.

Oracle is a registered trademark of Oracle Corporation.

UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group.

Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix Systems, Inc.

HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C®, World Wide Web Consortium, Massachusetts Institute of Technology.

Java is a registered trademark of Sun Microsystems, Inc.

JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape.

MaxDB is a trademark of MySQL AB, Sweden.

SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned are the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary.

The information in this document is proprietary to SAP. No part of this document may be reproduced, copied, or transmitted in any form or for any purpose without the express prior written permission of SAP AG.

This document is a preliminary version and not subject to your license agreement or any other agreement with SAP. This document contains only intended strategies, developments, and functionalities of the SAP ® product and is not intended to be binding upon SAP to any particular course of business, product strategy, and/or development. Please note that this document is subject to change and may be changed by SAP at any time without notice.

SAP assumes no responsibility for errors or omissions in this document. SAP does not warrant the accuracy or completeness of the information, text, graphics, links, or other items contained within this material. This document is provided without a warranty of any kind, either express or implied, including but not limited to the implied warranties of merchantability, fitness for a particular purpose, or non-infringement.

SAP shall have no liability for damages of any kind including without limitation direct, special, indirect, or consequential damages that may result from the use of these materials. This limitation shall not apply in cases of intent or gross negligence.

The statutory liability for personal injury and defective products is not affected. SAP has no control over the information that you may access through the use of hot links contained in these materials and does not endorse your use of third-party Web pages nor provide any warranty whatsoever relating to third-party Web pages.

Add a comment

Related presentations

Presentación que realice en el Evento Nacional de Gobierno Abierto, realizado los ...

In this presentation we will describe our experience developing with a highly dyna...

Presentation to the LITA Forum 7th November 2014 Albuquerque, NM

Un recorrido por los cambios que nos generará el wearabletech en el futuro

Um paralelo entre as novidades & mercado em Wearable Computing e Tecnologias Assis...

Microsoft finally joins the smartwatch and fitness tracker game by introducing the...

Related pages

ASUG.com - Events - Americas' SAP Users' Group

ASUG SAP Analytics & Business Objects 2 2015 ASUG SAP Business One Summit ASUG SAP Analytics & Business Objects 3 Task Gateway and Business Workflow ...
Read more

SAP TechEd && d-code - ASUG Online |

ASUG SAP Analytics & BusinessObjects Conference. Agenda. ... ASUG and SAP are partners in education again this year for SAP TechEd && d-code, ...
Read more

SAPPHIRE NOW + ASUG Annual Conference - Home | SAP Online ...

... Orlando, Florida Join us at SAPPHIRE NOW + ASUG Annual Conference for three days of strategy ... SAP and ASUG. Home ; Agenda ; Activities ; Agenda ...
Read more

ASUG SAP TechEd Sessions Featuring Business Int... | SCN

ASUG SAP Analytics BusinessObjects Conference Presentations. 658 Views Topics: business_intelligence Events: sap_teched Tags: sapmentors, ...
Read more

The Latest and Greatest Tweets on SAP and ASUG

Three Lessons from the Consumer User Experience That Apply to Enterprise Tech How can a businesses ... The Latest and Greatest Tweets on SAP and ASUG.
Read more