0% found this document useful (0 votes)
20 views315 pages

NWC120 - Col73 Guided Procedures

Guided Procedures Col73

Uploaded by

jose
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views315 pages

NWC120 - Col73 Guided Procedures

Guided Procedures Col73

Uploaded by

jose
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 315

NWC120

Guided Procedures
SAP NetWeaver

Date
Training Center
Instructors

Education Website

Participant Handbook
Course Version: 73
Course Duration: 3 Day(s)
Material Number: 50088097

An SAP course - use it to learn, reference it for work


Copyright

Copyright © 2008 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.

Trademarks

• Microsoft®, WINDOWS®, NT®, EXCEL®, Word®, PowerPoint® and SQL Server® are
registered trademarks of Microsoft Corporation.
• IBM®, DB2®, OS/2®, DB2/6000®, Parallel Sysplex®, MVS/ESA®, RS/6000®, AIX®, S/390®,
AS/400®, OS/390®, and OS/400® are registered trademarks of IBM Corporation.
• ORACLE® is a registered trademark of ORACLE Corporation.
• INFORMIX®-OnLine for SAP and INFORMIX® Dynamic ServerTM are registered trademarks
of Informix Software Incorporated.
• UNIX®, X/Open®, OSF/1®, and Motif® are registered trademarks of the Open Group.
• Citrix®, the Citrix logo, ICA®, Program Neighborhood®, MetaFrame®, WinFrame®,
VideoFrame®, MultiWin® and other Citrix product names referenced herein are trademarks of
Citrix Systems, Inc.
• HTML, DHTML, XML, XHTML 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.
• SAP, SAP Logo, R/2, RIVA, R/3, SAP ArchiveLink, SAP Business Workflow, WebFlow, SAP
EarlyWatch, BAPI, SAPPHIRE, Management Cockpit, mySAP.com Logo and mySAP.com are
trademarks or registered trademarks of SAP AG in Germany and in several other countries all
over the world. All other products mentioned are trademarks or registered trademarks of their
respective companies.

Disclaimer

THESE MATERIALS ARE PROVIDED BY SAP ON AN "AS IS" BASIS, AND SAP EXPRESSLY
DISCLAIMS ANY AND ALL WARRANTIES, EXPRESS OR APPLIED, INCLUDING WITHOUT
LIMITATION WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE, WITH RESPECT TO THESE MATERIALS AND THE SERVICE, INFORMATION, TEXT,
GRAPHICS, LINKS, OR ANY OTHER MATERIALS AND PRODUCTS CONTAINED HEREIN. IN
NO EVENT SHALL SAP BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL,
CONSEQUENTIAL, OR PUNITIVE DAMAGES OF ANY KIND WHATSOEVER, INCLUDING
WITHOUT LIMITATION LOST REVENUES OR LOST PROFITS, WHICH MAY RESULT FROM
THE USE OF THESE MATERIALS OR INCLUDED SOFTWARE COMPONENTS.

g2008419103857
About This Handbook
This handbook is intended to complement the instructor-led presentation of this
course, and serve as a source of reference. It is not suitable for self-study.

Typographic Conventions
American English is the standard used in this handbook. The following typographic
conventions are also used.

Type Style Description

Example text Words or characters that appear on the screen. These


include field names, screen titles, pushbuttons as well as
menu names, paths, and options.
Also used for cross-references to other documentation
both internal (in this documentation) and external (in
other locations, such as SAPNet).

Example text Emphasized words or phrases in body text, titles of


graphics, and tables

EXAMPLE TEXT Names of elements in the system. These include report


names, program names, transaction codes, table names,
and individual key words of a programming language,
when surrounded by body text, for example SELECT
and INCLUDE.

Example text Screen output. This includes file and directory names
and their paths, messages, names of variables and
parameters, and passages of the source text of a program.

Example text Exact user entry. These are words and characters that
you enter in the system exactly as they appear in the
documentation.

<Example text> Variable user entry. Pointed brackets indicate that you
replace these words and characters with appropriate
entries.

2008/Q1 © 2008 SAP AG. All rights reserved. iii


About This Handbook NWC120

Icons in Body Text


The following icons are used in this handbook.

Icon Meaning

For more information, tips, or background

Note or further explanation of previous point

Exception or caution

Procedures

Indicates that the item is displayed in the instructor's


presentation.

iv © 2008 SAP AG. All rights reserved. 2008/Q1


Contents
Course Overview ............................................................................. vii
Course Goals.................................................................................vii
Course Objectives ...........................................................................vii

Unit 1: Introduction ............................................................................1


Basics of Guided Procedures ............................................................... 2

Unit 2: Creating a Guided Procedure .................................................... 17


Guided Procedures: Architecture and Components ................................... 18
Building a Process.......................................................................... 30

Unit 3: Callable Objects ..................................................................... 53


Basics of Callable Objects................................................................. 54
Application Focused Callable Objects ................................................... 62
Control Focused Callable Objects ........................................................ 90
Testing Callable Objects .................................................................. 108

Unit 4: Process Actions .................................................................... 119


Basics of Actions........................................................................... 120
Actions with Callable Objects and Ad Hoc Items ...................................... 126

Unit 5: Process Blocks .....................................................................139


Sequential Blocks.......................................................................... 140
Other Block Types ......................................................................... 167
Personal Templates ....................................................................... 189
Design Time Testing....................................................................... 193

Unit 6: Email Templates ....................................................................199


Email Templates ........................................................................... 200

Unit 7: Forms Processing .................................................................213


Reasons for forms ......................................................................... 214
Using Forms within Guided Procedures ................................................ 219
Administrative Task ........................................................................ 246

2008/Q1 © 2008 SAP AG. All rights reserved. v


Contents NWC120

Unit 8: Special Step Types ................................................................255


Assignment of Users to Process Roles ................................................. 256
Additional Step Types ..................................................................... 267

Unit 9: Administration and Monitoring .................................................293


Administration and Monitoring ........................................................... 294

Unit 10: Appendix: Development resources ..........................................301


Development Resources ................................................................. 302

vi © 2008 SAP AG. All rights reserved. 2008/Q1


Course Overview
We are a small local department that works in a very specialized area of the business.
We do not have access to all corporate systems. We do have limited access to the
central ERP systems. Each year our business department reviews current business
partner data and updates the data as required. We need to get business partner data
from our ERP system, perform some updates by departmental employees, then apply
those updates to our ERP system.

Target Audience
This course is intended for the following audiences:
• Project team members
• Business process experts
• Developers interested in learning about guided procedures

Course Prerequisites
Required Knowledge
• Familiar with SAP NetWeaver

Recommended Knowledge
• Previous experience with business process design

Course Goals
This course will prepare you to:

• Understand how guided procedures fits within SAP NetWeaver


• Build complete guided procedures

Course Objectives
After completing this course, you will be able to:

• Explain how guided procedures fit within SAP NetWeaver


• Explain the guided procedures architecture
• Demonstrate how to use callable objects, actions, blocks, and processes

2008/Q1 © 2008 SAP AG. All rights reserved. vii


Course Overview NWC120

• Build complete guided procedures


• Use SAP Interactive Forms by Adobe with guided procedures
• Discuss the options for assigning users at runtime
• Demonstrate how to manage due dates
• Integrate guided procedure actions into Universal Worklist
• Discuss special options when building guided procedures

viii © 2008 SAP AG. All rights reserved. 2008/Q1


Unit 1
Introduction

Unit Overview
Before you can build your process to update business partner data, you need to get an
overview of guided procedures and execute an existing guided procedure.

Unit Objectives
After completing this unit, you will be able to:

• Describe guided procedures and its role in SAP NetWeaver


• Execute an existing guided procedure
• Explain the roles required to use guided procedures

Unit Contents
Lesson: Basics of Guided Procedures .............................................. 2
Exercise 1: Executing Your First Guided Procedure........................ 11

2008/Q1 © 2008 SAP AG. All rights reserved. 1


Unit 1: Introduction NWC120

Lesson: Basics of Guided Procedures

Lesson Overview
In this lesson we will explain exactly what is guided procedures and the need for
guided procedures.

Lesson Objectives
After completing this lesson, you will be able to:
• Describe guided procedures and its role in SAP NetWeaver
• Execute an existing guided procedure
• Explain the roles required to use guided procedures

Business Example
Your department has just received approval for additional head count. Prior to formal
interviews, you are responsible to pre-screen candidates for your manager. Since you
are so busy, you decide to use an existing, automated process to speed up the reviews.

SAP History

Figure 1: Guided Procedures: How We Got Here

2 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Basics of Guided Procedures

SAP has a large investment in tools that enable business process building and
execution. SAP Business Workflow has been around for many years and enables you
to build processes that follow strict business rules, processes that are very complex,
repeatable, and enable complaince to corporate policies.
Universal Worklist (UWL) was introduced to enable you get your workflow items
from many SAP systems in one location. In Universal Worklist you can get access to
business workflow tasks, knowledge management notifications, alerts, collaboration
tasks, and guided procedure actions. Additionally, there is an API available that
enables you to bring in non-SAP tasks to UWL.
Business Process Management (BPM) was introduced with SAP NetWeaver Process
Integration (also called Exchange Infrastructure or XI). It enables you to build a
process that orchestrates an exchange of messages between systems.
In SAP NetWeaver we began to put more focus on the business user, on the
person who must execute and deal with the business process on a day to day basis.
Collaboration tasks enable business users to create one-time, non-repeatable processes
that can help them with their particular task. If you use collaboration rooms in the
SAP NetWeaver Portal, you can use collaboration tasks to assign work to people in
the rooms. Additionally, if I receive a business workflow item I need to do, such as
approving an invoice, I can use a collaboration task to start a sub-process where I
request input from other users on the invoice.
With SAP NetWeaver 2004s we introduce guided procedures which enable business
users to create their own processes. With guided procedures we begin to put more
of the business process creation and execution in the hands of the business process
experts.

2008/Q1 © 2008 SAP AG. All rights reserved. 3


Unit 1: Introduction NWC120

Figure 2: Centralized vs. Decentralized Process Control

When you look at business processes, there are many stake holders in the processes.
There are some processes that we used for compliance and other policy regulation.
For example, a company is in the service industry and they have guaranteed their
customers they will contact them within 24 hours of a maintenance call. You can have
a corporate IT owned process, that workflows the process of responding to the call.
This process could be quite complex, execute often, and has regulation and reporting
requirements around it. This would be a process owned by central IT.
Another example would be a process to get approval on your expenses or to book
trips. Perhaps there is a corporate process you use to book a trip, and another process
you follow to inbox expense and get reimbursement. These processes are probably
implemented on a corporate-wide basis. However, in your department perhap there
is a process you need to follow to request the option to book a trip. For this, each
department could have their own process.
Business departments often have the need to expand upon the central IT process, or to
create their own processes for their departmental needs. A business department may
not always want to request an IT resource to help them with a small process that only
their department needs.
Individuals may need to request help or guidance with their own tasks. So, once an
employee receives a task, they may want to collaborate with others.

4 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Basics of Guided Procedures

Figure 3: Centralized vs. Decentralized Process Control

The central IT processes are normally processes that use SAP Business Workflow and
BPM offered by SAP NetWeaver Process Integration. These processes are normally
monitored daily, involve thousands to millions of processes daily, and are normally
regulated by a centrol control group.
Guided Procedures fits the needs of the business department localized processes.
With guided procedures business departments can create their own processes that are
created, controlled, and monitored just by them and for their use.

2008/Q1 © 2008 SAP AG. All rights reserved. 5


Unit 1: Introduction NWC120

Figure 4: Composit Applications: a Business View

6 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Basics of Guided Procedures

Typical business scenarios for Guided Procedures In general, Guided Procedures are
best suited for sequential, human based processes. The following are typical examples
of Guided Procedures:
• In this example a company has a centralized process owned by IT. For example,
this could be a process to book a trip (for example, in SAP ERP) or a process for
expense approval. Both of these processes are centralized for the entire company.
• While each business department must follow this central process, some
departments may want slight deviations. For example, a department that
generates direct revenue for the company may be able to book all trips in the
ERP system directly, while another department needs a special departmental
approval before booking a trip.
• The departmental approval process is a good candidate for Guided Procedures.
The person can submit their request for the trip, business reason, expected costs.
Once the departmental manager approves the request, then the corporate-wide
process can begin.
• In this example you need to access a non-SAP system via a URL or web service
call. Perhaps you fill out a form to start a Guided Procedures process. The
process uses a URL to call the external system where required objects are created,
for example a folder or a business object. Once these steps are completed, an
email is sent to the initiator with information on the updates performed.
• In this example you have a process that is human-based, and it uses multiple
systems. In the previous example we mentioned accessing a non-SAP system
via a URL or a web service call. Perhaps once that step is completed we also
need to update one or multiple SAP application systems (SAP ERP, SAP CRM,
or SAP SRM, for example).
• Another example could be a process that uses no systems. Perhaps a process for
approval on an idea for a new product, or a process seeking multiple approvals
before outsourcing a particular project.
• In this example a company creates materials, vendors, or some other object in
an SAP application system, such as ERP, or in SAP NetWeaver Master Data
Management. However, before creating the object, an email is sent to key people
who provide input.
• This business example is a very common usage of Guided Procedures. A Guided
Procedure can facilitate routing SAP Interactive Forms by Adobe to multiple
people. Each person provides their information and a Web Service or API call is
used to update the related SAP system(s).

2008/Q1 © 2008 SAP AG. All rights reserved. 7


Unit 1: Introduction NWC120

Figure 5: Composite Applications: a Technical View

Figure 6: Guided Procedures and Composite Applications

8 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Basics of Guided Procedures

Figure 7: Target Groups

If we look at the types of groups we involve in guided procedures, the casual user
can execute actions, collaborate with others, and even build very simple processes
using the process wizard.
The business expert creates most of the process and actions. As the transactions get
more complex, we could require a developer to create new services and business
objects for us.

2008/Q1 © 2008 SAP AG. All rights reserved. 9


Unit 1: Introduction NWC120

Figure 8: Guided Procedures Major Components

The major components of guided procedures includes an activity gallery that gets you
access to all your systems. The access could be directly to the system, or it could go
through a CAF business object or service.

10 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Basics of Guided Procedures

Exercise 1: Executing Your First Guided


Procedure
Exercise Objectives
After completing this exercise, you will be able to:
• Check user permissions to execute a guided procedure
• Execute Time-Off Process

Business Example
You want to take advantage of an automated procedure for requesting time off. You
first want to check if your permissions are adequate. Next you'll execute a time-off
process, which will guide you through the steps to request vacation days.

Task 1: Check User Permissions

1. Log on to the NetWeaver 7.1 CE portal.


2. After logging in, navigate to your user information.User Administration →
Identity Management → Search Criteria

Task 2: Execute Time-Off Process


Execute Time-Off Process
1. Navigate to the guided procedures runtime and execute the Time-Off Process
from the Examples folder.

2008/Q1 © 2008 SAP AG. All rights reserved. 11


Unit 1: Introduction NWC120

Solution 1: Executing Your First Guided


Procedure
Task 1: Check User Permissions

1. Log on to the NetWeaver 7.1 CE portal.


a) http://host:50000/irj For example. http://twdfXXXX.wdf.sap.corp:50000/irj
User = GP-##, pw = initial1
2. After logging in, navigate to your user information.User Administration →
Identity Management → Search Criteria
a) Make certain that User is listed for Search Criteria. In the next blank field,
type your user id, GP-## and select go. Notice your user id in the list.
Select the line item for your user id by clicking on the left most button.
b) Click on the tab, Assigned Roles. Notice the search criteria has the default
value, All Data Sources. You can leave this value as is or change it to,
Portal Role and click go.
You may notice several roles and you may have to scroll down. There are
three major roles for guided procedures.
• GP Business Expert, com.sap.caf.eu.gp.roles.designtime, enables
you to build guided procedures.
• GP User ,com.sap.caf.eu.gp.roles.runtime, is used to execute guided
procedures actions.
• GP Administrator, com.sap.caf.eu.gp.roles.administrator, enables
you to do perform administrative tasks such as monitor process
instances, created end points to systems and manage forms.

Continued on next page

12 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Basics of Guided Procedures

Task 2: Execute Time-Off Process


Execute Time-Off Process
1. Navigate to the guided procedures runtime and execute the Time-Off Process
from the Examples folder.
a) Guided Procedures → Runtime → Initiate a New Process → Examples →
Time-Off Process → Time-Off Process Click Next.

Hint: You should notice two, Next, buttons. One is located


towards the top of the screen and the other is located towards the
bottom of the screen. Either Next button is fine.

b) Enter the following information and then click Submit.

Absence Type Vacation


Radio button Paid
Start Date Today's date
End Date 1 week from now

Notice the Process Activities Window on the left, of the screen. You should
now see the 1st approval step is now highlighed
c) Click, Add comment. In the pop-up window, enter This employee
really deserves time off. Click, Add comment, to close
window.
Notice the time stamp, with the approving user id added in the comment
box.
d) Click Approve.
Notice the Process Activities Window on the left, of the screen. You should
now see the 2nd approval step is now highlighed
e) Click Approve.
Notice the Process Activities Window on the left, of the screen. You should
now see the Book Request step is now highlighed
f) Click Complete.

2008/Q1 © 2008 SAP AG. All rights reserved. 13


Unit 1: Introduction NWC120

Lesson Summary
You should now be able to:
• Describe guided procedures and its role in SAP NetWeaver
• Execute an existing guided procedure
• Explain the roles required to use guided procedures

14 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Unit Summary

Unit Summary
You should now be able to:
• Describe guided procedures and its role in SAP NetWeaver
• Execute an existing guided procedure
• Explain the roles required to use guided procedures

2008/Q1 © 2008 SAP AG. All rights reserved. 15


Unit Summary NWC120

16 © 2008 SAP AG. All rights reserved. 2008/Q1


Unit 2
Creating a Guided Procedure

Unit Overview
In this unit you will learn how to create guided procedures.

Unit Objectives
After completing this unit, you will be able to:

• Explain the building blocks of guided procedures


• Navigate in the guided procedure design time environment.
• Build a guided procedure
• Work with the guided procedures runtime environment

Unit Contents
Lesson: Guided Procedures: Architecture and Components .................. 18
Lesson: Building a Process......................................................... 30
Exercise 2: Building A Process - Job Application ........................... 39

2008/Q1 © 2008 SAP AG. All rights reserved. 17


Unit 2: Creating a Guided Procedure NWC120

Lesson: Guided Procedures: Architecture and


Components

Lesson Overview
This lesson will provide an overview of the components of guided procedures.

Lesson Objectives
After completing this lesson, you will be able to:
• Explain the building blocks of guided procedures
• Navigate in the guided procedure design time environment.

Business Example
Your department must identify the best strategy to create a guided procedure for a
current business process. In your meeting, you plan to explain development options.

Components of Guided Procedures

Figure 9: Components of Guided Procedures

18 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Guided Procedures: Architecture and Components

CAF Guided Procedures (CAF GP) is a framework for modeling and managing
workflows using simple and user-friendly tools. In this course we may refer to such a
workflow as a guided procedure or a process. As a part of the Composite Application
Framework (CAF), GP enables access to multiple backend systems, consistently
combining different types of services and applications into processes. In addition, GP
supports collaboration, ad-hoc items, and offline task management using interactive
forms. It provides role-based access to tools and resources and guidance through
the workflows at runtime, thereby helping end users to easily identify and complete
their tasks.
At design time, we build a process template, which we instantiate at runtime into a
process.
Guided Procedures are built up from different structural or executable elements. These
include Blocks, Actions, and Callable Objects.
• Blocks are structural units; that is, they organize processes into reusable sections.
Blocks can contain other blocks, actions, and or complete processes (which
further fosters reuse).
• Blocks also describe the processing mode for that section of the process. For
instance, the actions within a block may be executed sequentially, in parallel, or
repeatedly in a loop.
• The individual steps in a process in GP are implemented as actions. They
contain one or two callable objects, which enable you to use external services
and applications in processes modeled with GP. Actions also contain additional
metadata to define the behavior of the callable objects within the process itself.
• ACallable object is a reusable unit that enables the execution of external
applications or services within the Guided Procedures framework.
• Callable objects are the most fine-grained elements in a process.

2008/Q1 © 2008 SAP AG. All rights reserved. 19


Unit 2: Creating a Guided Procedure NWC120

Figure 10: Designing a Process

Guided Procedures (GP) makes it easy to model business processes that connect
various backend applications and services into a single workflow. In addition, multiple
contributors may be involved in completing the process. The ability to set up and
modify such processes quickly and flexibly is a requirement imposed by a dynamic
business environment. GP responds to the needs of many employees who handle
cross-functional collaborative processes on a daily basis.
Process modeling with GP does not require specific development skills. It is targeted
at business experts who are familiar with business processes, and can use GP to model
them according to specific requirements in the enterprise.

Note: Note: Callable object design requires a good understanding of the


services and applications that are exposed. Typically, it is a task for users
with a technical background.

The individual steps in a process are implemented as actions. They contain one or
two callable objects, which enable you to use external services and applications in
processes modeled with GP. Actions also contain additional metadata to define the
behavior of the callable objects within the process itself.
Blocks are the main building elements in a process template. The top-level blocks
(that is, blocks that are not contained within other blocks) in the process template form
process phases. They are always executed in sequence.

20 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Guided Procedures: Architecture and Components

Figure 11: Top-down vs. Bottom-up Design

Top-down modeling:
• When modeling a process from the top-down, you typically start from the
overall process model and break it down into its individual elements, which you
create using the GP design time tools. This implies that you design most of
the components or all of them according to the requirements of the particular
business case. You can extend the process template when you identify a need
to add another step, and you can define items that are executed when certain
conditions occur.
Bottom-up modeling:
• When you have already defined certain functions and you need to combine them
into a single process, you use the bottom-up modeling approach. The main focus
when using bottom-up modeling should be the definition of the process phases
themselves, and not on the fine-grained components, such as callable objects
and actions.

2008/Q1 © 2008 SAP AG. All rights reserved. 21


Unit 2: Creating a Guided Procedure NWC120

Figure 12: The GP Design Time Environment

The gallery is a repository for the objects that build processes in Guided Procedures.

Contextual navigation panel Using the links available in the contextual


navigation panel, you can create the objects that
are stored in the gallery.
Filters and content Using the available filters, you can choose to
management display only the selected types of objects that
are stored in the gallery for example, callable
objects, actions, and so on. In addition, you can
create and edit folders, delete and restore objects,
and so on.
GP Content The gallery content is displayed in the central
frame. Here you can browse the available folders
and manage them or their content.

22 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Guided Procedures: Architecture and Components

Figure 13: Designing a Process

While the process depicted above seems complicated, you will see that for your
first process, you will be able to create a process quickly and easily. As you gain
familiarity with GP and the design time environment, you will be able to do more and
may have more steps to complete to create and configure your process.
Create Process Template: Creating the process template is the first step in the
process design. Using this procedure, you create the framework, in which you can
define process flow, roles, parameters, and so on
Define Process Flow: You model the process flow using blocks. The top-level blocks
in the process define its phases, and are executed sequentially. To define a more
complex flow, you must implement the required flow logic at block level.
The following steps may or may not be required, depending on the specifics of the
process in question:
• Consolidate Parameters: Consolidating parameters means grouping several
parameters and displaying them as a single one. When you consolidate
parameters, they get the same values. The following scenarios are possible
for consolidating parameters:
– You consolidate parameters of the same type either input or output. At
runtime, you enter a value once, and it is valid for all parameters in the
group.

2008/Q1 © 2008 SAP AG. All rights reserved. 23


Unit 2: Creating a Guided Procedure NWC120

– You map the input parameters of a callable object to the output parameters
of the same object. In this case, the values of the output parameters are
retrieved from the relevant input parameters.
– You map the output parameters of a callable object to the input parameters
of another callable object. At runtime, the input for the second object is
automatically retrieved from the output for the first object.
• Consolidate Roles: For each action that you add to a block flow, the Guided
Procedures framework creates a separate process role. These roles are further
propagated from block to process level. At runtime, you assign user(s) to each
existing process role to define who is responsible for its execution. Consolidating
roles implies grouping and displaying them as a single one. You consolidate the
roles for those actions that must be executed by the same user(s).
– You can consolidate roles at block or process level.
• Define Due Dates: A due date is the point by which an action or a process
must have been completed. In addition, you can set notifications that occur
before the due date reached. For each notification you can choose to execute
a particular callable object.
• Grant Permissions: For each object that you create in the Guided Procedures
design time, you can set permissions for editing and executing the object.
– You can define read, write, delete, initiate, or full control permissions.
• Configure Process Control Items: Process control items are predefined actions
that enable you to manage process instances at runtime; for instance, you may
choose to allow users to change deadlines, to delegate roles to other users at
runtime, or to terminate a process.
• Grant View Permissions: In complex process or block structures where you
have multiple items executed by multiple users, you can define permissions that
allow users to view actions processed by different contributors. In a real-life
scenario, you can use this function if the processor of an action needs to review
the results of the previous actions before he or she can complete the step
assigned to him or her.
• Add Attachments: The Guided Procedures framework enables you to attach
files, URLs, or user management handlers to the actions, blocks, and process
templates that you create. (Note: To be able to see the attachments at runtime,
you must add view Additional Resources. For more information, see Select
Views below).
• Define Info Callable Objects: For each action, block, or process template that
you create, you can define info callable objects. At runtime these objects can be
executed to provide additional information relevant for the item. For example,
you can execute a BI query, or call a Web page to get certain data.

24 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Guided Procedures: Architecture and Components

• Add Interactive Forms: Using Guided Procedures, you can replace paper-based
forms by integrating interactive forms into your processes. Interactive forms in
GP enable you to send and receive data as a part of the workflow managed by
the GP framework. For each process template, you can define interactive form
callable objects that can optionally be executed at runtime.
• Select Views: Guided Procedures enables process contributors to check different
aspects of a process at runtime by means of different views. You can configure
the available runtime views when designing the process template. For instance,
you can configure a process to allow processors to see attachments, see a process
overview, or see all the process activities and information. You can also define
custom views.
• Configure Process Instantiation: At design time, you can configure process
instantiation parameters that define how many process instances may be created
at runtime. In addition, you can choose to start the process automatically, and
generate an URL that you can use to start the process.
Activate Process: Before a process can be executed in the runtime environment, it
must be activated

Figure 14: Process role Configuration

The authorization to execute particular tasks in a process are linked to particular


user roles.
Process role configuration may include defining when users are assigned to a
particular role, as well as adding default user assignments at design time. This is not
a required step in the process design. If you do not explicitly configure the process

2008/Q1 © 2008 SAP AG. All rights reserved. 25


Unit 2: Creating a Guided Procedure NWC120

roles when designing the process, the user assignments for each available role are
done when the process is being initiated. However, you can use this function to enable
better control over the process initiation.
There are built in roles, and you can define custom roles as well. You can configure the
built-in roles that are created for each process: Administrator, Overseer, and Owner.
You can choose one of the following role types:
• Initiation Defined: user assignments for the role are done at process initiation.
You can also configure the following options for the role:
– Default Definition Required with this option selected, you must also define
a default user assignment for the role, as explained below.
– Overwritable at Runtime with this option selected, the defaults defined for
the role can be overwritten when the process is being initiated.
• Initiator: the user who initiates the process is assigned to the role.

Figure 15: Designing a Block

Sequential block
The items in the block are executed sequentially in the order that you have
defined.
Parallel
The items in the block flow are executed in parallel.

26 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Guided Procedures: Architecture and Components

Parallel Dynamic
Multiple processors can be assigned to execute the items in this block type.
For example, asa part of such a block, a survey can be completed by multiple
users and the results sent to the system for further processing. The items are
executed in parallel.
Precondition Loop
The items in the block are executed in a loop, and the loop criteria is checked
before the execution of the first item.
Postcondition Loop
The items in the block are executed in a loop, but the loop criteria is checked
after the last item has been executed. This guarantees that the items in the block
will be executed at least once.
Alternatives
At runtime the user chooses one of the available alternatives and his or her
decision defines which item(s) is(are) executed.

Figure 16: Designing an Action

In Guided Procedures (GP), actions are executable units that define a single step when
implemented in a process template. Each action can refer to either one or two callable
objects – one for execution, and an optional one for display. Attaching a callable

2008/Q1 © 2008 SAP AG. All rights reserved. 27


Unit 2: Creating a Guided Procedure NWC120

object to an action is a prerequisite for using it in a process template. The definition of


the action adds metadata to the callable object functions, thereby defining how it is
called and executed within the process.

Figure 17: Designing a Callable Object

Using the callable object wizard in the GP design time, create a callable object of the
appropriate type for each application that you want to use in a process. Define its basic
data, input and output parameters, and the configuration settings. Finally, you activate
the object. Test the callable object. To test the callable object, open it in the design
time environment, and click on the test tab. If there are input parameters associated
with the object you can supply those for the test. The test wizard walks you through
the process of testing the object and allows you to see the results of the test.

28 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Guided Procedures: Architecture and Components

Lesson Summary
You should now be able to:
• Explain the building blocks of guided procedures
• Navigate in the guided procedure design time environment.

2008/Q1 © 2008 SAP AG. All rights reserved. 29


Unit 2: Creating a Guided Procedure NWC120

Lesson: Building a Process

Lesson Overview
This lesson will cover the basic steps to create a simple guided procedure process.

Lesson Objectives
After completing this lesson, you will be able to:
• Build a guided procedure
• Work with the guided procedures runtime environment

Business Example
Your department has just received approval for additional head count. You are tasked
to pre-screen candidates for you manager. You need to automate the application
process as much as possible.

30 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Building a Process

Design Environment

Figure 18: The Job Application Process

The first process we will build is a job application process; in this process, a
hypothetical job applicant will be presented with an informational screen describing
the prerequisites for employment. By clicking on the Apply button they can initiate an
online job application. This is in the form of an input screen in which they can enter
their first and last names, their education level, and the languages they speak. Once
they submit the information, a hiring manager can review the application and either
accept or reject it. In either case, an appropriate mail will be sent.

2008/Q1 © 2008 SAP AG. All rights reserved. 31


Unit 2: Creating a Guided Procedure NWC120

Figure 19: Building a Process

You notice the are two icons each for, SAVE, DISPLAY, and EDIT. This is so that you
can select a single object or all objects.
The Edit icon is available to click. Upon clicking on the edit icon, you will advised
of a new version number to be generated, if you have previously activated the object.
Display Icon, will be available to click if you are in edit mode.
Other Icons
• The Item drop-down box is sensitive to the hierarchical context; that is, it
only shows objects that can be placed under the selected item (for instance,
if you are in a block it will only show blocks and actions, the only allowable
subordinate objects of a block).
• Update (icon just right of the activate icon): Updates a selected deprecated
object with its latest active version.
• Adjust All (icon just right of the update icon): Propagates to the
currently-selected object the changes that are made to the roles and parameters
at the lower levels of the hierarchy.
• Move Up/Down (up and down arrow icons): Moves the selected object up
or down in the process hierarchy. For example, you can move up actions in a
block flow, or move down blocks in a process flow.
• Edit Usage Name and Description (farthest right icon): Enables you to
overwrite the default name and description of the selected object, which are
assigned to it when the object is created (note that this can also be done I the
properties frame).

32 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Building a Process

Figure 20: Working in the Editor

The Process editor has two frames: a flow frame and a properties frame. Each object
type, for example, BLOCK, ACTION, CALLABLE OBJECT, has a set of properties.
To see the properties for a specific object, click the left most button, of the object
line item.

Parameters

Figure 21: Mapping Parameters

For the callable objects that you create, you can define input and output parameters.
When the callable object is attached to an action, the parameters are inherited by the
action, and are then propagated further to the block and process level. Consolidating
parameters means grouping several parameters and displaying them as a single one.
When you consolidate parameters, they obtain the same values.

2008/Q1 © 2008 SAP AG. All rights reserved. 33


Unit 2: Creating a Guided Procedure NWC120

The following scenarios are possible for consolidating parameters:


• You consolidate parameters of the same type either input or output. At runtime,
you enter a value once, and it is valid for all parameters in the group.
• You map the input parameters of a callable object to the output parameters of
the same object. In this case, the values of the output parameters are retrieved
from the relevant input parameters.
• You map the output parameters of a callable object to the input parameters
of another callable object. At runtime, the input for the second object is
automatically retrieved from the output for the first object.
For our first process, we will map the output parameters of our data input form to the
input parameters of the approval action. In this way, data values entered in the data
input form are automatically available to the decision step.
For each action that you add to a block flow, the Guided Procedures (GP) framework
creates a separate process role. These roles are further propagated from block to
process level. At runtime, you assign user(s) to each existing process role to define
who is responsible for its execution. Consolidating roles implies grouping and
displaying them as a single one. You consolidate the roles for those actions that must
be executed by the same user(s). You can consolidate roles at block or process level.

Runtime Environment

Figure 22: GP Runtime

You can access the GP runtime from the navigation bar in the Portal. In the runtime
you can instantiate a process instance.

34 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Building a Process

A process instance is a running process. The process instance (runtime object) is


generated by starting a process, that is by initiating a process template (design time
object). The process instance is a complete process including all actions, blocks and
phases which must be processed by all process contributors in the form of tasks.
To instantiate and run your process, click on either of the links circled above. This
will kick off a wizard to instantiate the process. The first step of this wizard will be
to select the process template you wish to instantiate.

Figure 23: Edit Process Roles

After selecting the appropriate process template, you must assign actual users to the
process roles; these will include the built-in roles, such as owner or administrator,
as well as the consolidated roles (Job Applicant, Hiring Manager) that you created
in your process design.
For each role, you can use the search functionality to find and assign a user. Enter a
search term and click, Go, select the appropriate user from the result set, and choose,
Add, You must do this for each role.
To launch the process, accept or change (if possible) the initiator, and click Initiate.

2008/Q1 © 2008 SAP AG. All rights reserved. 35


Unit 2: Creating a Guided Procedure NWC120

Figure 24: Navigation in the Process

At runtime, the screen is divided into the following areas when you work with process
instances:
• Portal Navigation: The main navigation (above) and the step navigation (left)
of the portal are parts of this screen area. Guided Procedures is embedded in
the portal. The step navigation under Guided Procedures is always empty and
minimized.
• Process Title Bar: This screen area is part of the runtime basic layout. For more
information on the basic layout, refer to Core Elements of the Runtime. The
screen displays the respective title of the current open process.
• Phase Navigator:The Phase Navigator is displayed in the process title bar.
It shows the individual phases of a process. The navigator is only visible for
multi-phase processes.
• Application Area:This screen area is part of the runtime basic layout. For more
information on the basic layout, refer to Core Elements of the Runtime. The
application area is your actual work center in the runtime. All available process
information and processing steps are displayed in the application area.
• Navigation Area: This screen area is part of the runtime basic layout. The
navigation area contains additional screen areas:
– Screen area View Selection -View

36 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Building a Process

– Views Screen area Contextual Navigation Panel - Components


• Contextual Navigation Panel: This screen area is not necessarily available for a
specific process instance. You can only see this area if the necessary components
were assigned to the process in the design time. In the design time, you can set
the following components for a process instance.
Activities (Activity Navigator)
Options (Info Callable Object Navigator)
Information (Info Callable Object Navigator by categories)
Process Control (Elements of Process Control)
Phases (Mini Phase Navigator)
You Can (You Can Navigator)
The components, if any, which are displayed in the contextual navigation panel
depend on the views (see View Selection screen area) which you set for the
process instance in the design time when you create the process template.
• View Selection: At least one view is assigned to this screen area in the design
time. View selection allows all process contributors to oversee different aspects
of the running process, depending on the view selected. In the design time, you
can set the following generic views for a process instance; additionally, each
view has assigned its own components for the contextual navigation panel.
Process Activities (in various versions)
Overview
Process Information
Additional Resources
You can also create your own individual views in the design time.

2008/Q1 © 2008 SAP AG. All rights reserved. 37


Unit 2: Creating a Guided Procedure NWC120

Figure 25: Email Notification

38 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Building a Process

Exercise 2: Building A Process - Job


Application
Exercise Objectives
After completing this exercise, you will be able to:
• Create a Guided Procedure to Automate a Job Application Process

Business Example
You would like to automate how you receive and approve candidates for a new
position in your department.

Task 1:
Create the HTML Context Object
1. This first part of the exercise MUST be performed from the server.
2. Log in NetWeaver 7.1 CE Portal and then navigate to Design Time

Task 2:
Create Job Application Process
1. Create the Process, JobApplicationProcess##
2. Create a sequential block, JobAppBlock##,for your process.
3. Create action, StartPageAction##
4. Create a callable object, CO_StartPage##, of type Content Package.
5. Create another action, DatatInputAction##.
6. Create a new callable object, CO_DataInput##, of type Data Input Form.
7. Create another action, ApprovalAction##
8. Create a callable object, CO_Approval##, for your action, ApprovalAction##

Task 3:
Consolidate Parameters
1. Consolidate parameters

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 39


Unit 2: Creating a Guided Procedure NWC120

Task 4:
Consolidate roles
1. Consolidate roles

Task 5:
Test the Job Application Process
1. Navigate to the Runtime environment to execute your guided procedure

40 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Building a Process

Solution 2: Building A Process - Job


Application
Task 1:
Create the HTML Context Object
1. This first part of the exercise MUST be performed from the server.
a) To log into the server: Start → Programs → Accessories → Remote
Desktop Connection
b) Computer is your server name that you've been assigned for the course,
for example, twdf####.
c) User name: should be <ask instructor> and Password should be
<ask instructor>
Now you're logged into the server. If you're not used to logging into a
server from Citrix, please make these observations. At the top, middle of
the screen, you'll notice the server name, within a grey area. Also in this
grey area, you'll notice the minimize button. Use this minimize button to
minimize the server. If you continue to look across the top of the window
you'll notice, in the upper right another minimize. Be careful not to confuse
this minimize icon with the server minimize icon. If you click on the upper
right, minimize button, then you'll be minimizing the entire Citrix window.
Also, when you're finished working on the server, make sure to use the
server start option. Depending on window sizing, you may see two starts
our you may have to scroll down to get to the server start. Anyway, to log
off of the server start →Log Off ce1adm i

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 41


Unit 2: Creating a Guided Procedure NWC120

2. Log in NetWeaver 7.1 CE Portal and then navigate to Design Time


a) http://twdf####:50000/irj
For example: http://twdfXXXX.wdf.sap.corp:50000/irj
b) Guided Procedures → Design Time → NWC120 → Unit 2 - Creating a
Guided Procedure → Group ##.
c) With your folder highlighted, click, Create Content Package Object.
Enter the following information: .

Name StartPage
Description StartPage

d) Click Save and open


e)
Note: You must add content to the package.

Select Maintain Content.


f) Choose Add File then choose Browse.
g) Click to the drop down option to view a list of directories. Find directory
labeled, CE71 on 'nwtraining.wdf.sap.corp' (I:)
h) Next choose folder NWC120
i) Select StartPage.htm, Open, and choose Add.
You should see a line with a red-x icon, which also has your file name
listed on the line.
j) Select Done
k) From the left window, choose Activate Content Package
l) Choose Activate
m) Return to the gallery by clicking the Gallery link in the upper left-hand
corner.

Continued on next page

42 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Building a Process

Task 2:
Create Job Application Process
1. Create the Process, JobApplicationProcess##
a) Guided Procedures → Design Time → NWC120 → Unit 2 Creating a
Guided Procedure→ Group ##.
With your folder highlighted, click, Create Process and then accept default
language, en, by clicking onCreate.
You should now see the process editor window. The top panel defines the
process flow. The bottom panel is for the process configuration.
b)

Hint: Select the left most button to highlight a line item in the
process flow window.

Make sure to highlight the process line and then enter the following.

Name JobApplicationProcess##
Description Job application process
for Group ##

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 43


Unit 2: Creating a Guided Procedure NWC120

2. Create a sequential block, JobAppBlock##,for your process.


a)

Hint: The create icon is to the right of the item field, just above
your process line item. The icon looks like a paper, with an
earmark.

With the Process highlighted, click on the Create New icon.


b) Accept the default value, sequential block and choose select.
You should now see two line items.
c) Highlight the block line item and enter the following information.

Name JobAppBlock##
Description Sequential Block for
Job Application Process
Group##

3. Create action, StartPageAction##


a) With your block highlighted, click Create New
b) Highlight your action and enter the following information.

Name StartPageAction##
Description Start page action

Continued on next page

44 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Building a Process

4. Create a callable object, CO_StartPage##, of type Content Package.


a) With your action highlighted, choose Create New.
You're now in the create callable object window. You must select a type of
callable object and provide a name and description.
b) Use the following entries.

Type User Interface → Content


Package
Name CO_JobApp##
Description call start page for job
app

c) Select Next.
d) Choose Browse and navigate to your folder NWC120 → Unit2 → Group##
→ JobApplicationStartPage## and choose Select.
e) Expand on the root folder by clicking the arrow.
f) Click on StartPage.htm and then select Next.
g) Change the button label to Apply and choose Next
h) Click Finish.
5. Create another action, DatatInputAction##.
a) Highlight the JobAppBlock## and click Create New.
b) Highlight the new action and enter the following information.

Name DataInputAction##
Description DataInputAction##

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 45


Unit 2: Creating a Guided Procedure NWC120

6. Create a new callable object, CO_DataInput##, of type Data Input Form.


a) With DataInputAction selected, choose, Create New and enter the
following.

Type Form → Data Input Form


Name CO_DataInput##
Description CO_DataInput##

b) Choose Next.
Note: Notice now, that the step is Define Output. This is time to
define the output of the form. These will be the parameter values
that hold the data that the job applicant will input into this form.

c) Using the Insert New Button and also the Insert Child button create
the following entries.

Hint: English and German should be inserted as a child element of


Languages. Make sure language is highlighted and then choose
insert child button.

Context Technical Namespace Object type Value


Parameter Name required
First FName Group## String Yes
Name
Last LName Group## String Yes
Name
Educa- Educa- Group## String
tion tion
Lan- Lang Group## Struc-
guages ture
→ English → EN Group## Boolean
→ German → DE Group## Boolean

d) Click Next and the click Finish.

Continued on next page

46 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Building a Process

7. Create another action, ApprovalAction##


a) Highlight the JobAppBlock and click Create New.
b) Highlight the new action.
c) Enter the following information.

Name ApprovalAction##
Description ApprovalAction##

8. Create a callable object, CO_Approval##, for your action, ApprovalAction##


a) With the action, ApprovalAction##, hjghlighted, click, Create New
b) Enter/Select the following information

Type Process Control → Visual


Approval
Name CO_Approval##
Description call approval screen

c) You're now on step 2 of the callable object definition. It is necessary at


this point to specify the input parameters of the approval step. Create
parameters exactly as the previous exercise and according to the following
table.

Hint: Remember, English and German should be inserted as a


child element of Languages. Make sure language is highlighted
and then choose insert child button.

Context Technical Namespace Object type Value


Parameter Name required
First FName Group## String Yes
Name
Last LName Group## String Yes
Name
Educa- Educa- Group## String
tion tion

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 47


Unit 2: Creating a Guided Procedure NWC120

Lan- Lang Group## Struc-


guages ture
→ English → EN Group## Boolean
→ German → DE Group## Boolean

I
d) Select Next.
e) Choose Next
Note: The output parameters for the callable object are pre-defined.
You can only change their order using Move Up or Move Down,
which is unnecessary.

f) At this point it is time to configure what happens on both approval and


rejection. Some email templates already exist, so use the following table
the appropriate entries.

Approve Email Job Application


Approval
Recipients for Approval Initiator
Reject Email Job Application
Rejection
Recipients for rejection initiator

g) Choose Next and then choose Finish.


You should notice that you're now back to the Process editor window.
h) Choose Save All

Continued on next page

48 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Building a Process

Task 3:
Consolidate Parameters
1. Consolidate parameters
a) Highlight the block, JobAppBlock##
b) Click the parameters tab
c) Within the bottom panel window, the process configuration editor, click the
line item First Name,DataInputAction## and user the cntrl key and click
the line item, First Name,ApprovalAction and click group
and
d) Accept the pop up window, which should have a default for Name of
FirstName. Choose Create
e) Now do the same for Last Name, Education, and Language
f) Click, SaveAll

Task 4:
Consolidate roles
1. Consolidate roles
a) Highlight the process, JobApplicationProcess##
b) Click the roles tab
c) Within the bottom panel window, the process configuration editor, click the
line item Processor of StartPageAction##, Processor of DataInputAction
and click inside the Consolidate To field to type JobApplicant and
click Go.
d) For the last action, Processor of ApprovalAction, highlight it and for the
Consolidate To field, type Hiring Manager and then click Go.
e) Click Save All
f)

Hint: Remember to highlight at the process line level

Activate the process.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 49


Unit 2: Creating a Guided Procedure NWC120

Task 5:
Test the Job Application Process
1. Navigate to the Runtime environment to execute your guided procedure
a) Guided Procedures → Runtime
b) Click the link titled Initiate a New Process
c) Navigate to the folder NWC120 → Unit 2 → Group## →
JobApplicationProcess##
d) Choose Next
e) Type any information for First Name, Last Name, Education, and then click
on the row, Language and then click, add row. Now you can expand on
Language to select a language. After entering some information, choose
Next.
f) And now we're stuck adding user information for the roles of the process.
In the upcoming units, we will correct this. For now, choose add user.
g) In the far right panel, type, GP-## for user and click Go and then click Add.
h) Perform the same exact user assignment steps to the other 4 roles by
clicking the drop-down option, where you currently see Administrator
i) Click Next
j) Leave the defaults and choose initiate.
k) If you're asked for a user id user your GP-## user and use the password
that you created earlier.
l) The start page appears. Click Apply
m) Enter your name and education. For Language, highlight the row
for lang and then click Create. Select the checkbox for English. and
Click Submit.
n) Since you are configure as both the job applicant and hiring manager, you
willl also perform the approval process; approve or reject the application,
and an appropriate email will be sent.

50 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Building a Process

Lesson Summary
You should now be able to:
• Build a guided procedure
• Work with the guided procedures runtime environment

2008/Q1 © 2008 SAP AG. All rights reserved. 51


Unit Summary NWC120

Unit Summary
You should now be able to:
• Explain the building blocks of guided procedures
• Navigate in the guided procedure design time environment.
• Build a guided procedure
• Work with the guided procedures runtime environment

52 © 2008 SAP AG. All rights reserved. 2008/Q1


Unit 3
Callable Objects

Unit Overview
Callable objects dictate the underlying functionality of guided procedures. In this unit
we will analyze, create, and update callable objects.

Unit Objectives
After completing this unit, you will be able to:

• Navigate through the callable objects definition screens


• List the application focused callable objects
• Define the application focused callable objects
• List the types of control focused callable objects
• Test all types of callable objects

Unit Contents
Lesson: Basics of Callable Objects................................................ 54
Lesson: Application Focused Callable Objects .................................. 62
Exercise 3: Callable Object type Remote Enabled Function .............. 73
Exercise 4: Callable Object type Portal iView ............................... 79
Exercise 5: Callable Object type Web Service for weather ................ 83
Exercise 6: Simple Visual Composer Application ........................... 85
Lesson: Control Focused Callable Objects....................................... 90
Exercise 7: The Google Process .............................................. 97
Lesson: Testing Callable Objects ................................................. 108
Exercise 8: Testing Callable Objects......................................... 111

2008/Q1 © 2008 SAP AG. All rights reserved. 53


Unit 3: Callable Objects NWC120

Lesson: Basics of Callable Objects

Lesson Overview
This lesson introduces callable objects

Lesson Objectives
After completing this lesson, you will be able to:
• Navigate through the callable objects definition screens

Business Example
You need to access SAP applications, to allow users to input data, and to access other
SAP NetWeaver components .

Callable Objects

Figure 26: Components of Guided Procedures

54 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Basics of Callable Objects

CAF Guided Procedures (CAF GP) is a framework for modeling and managing
workflows using simple and user-friendly tools. In this course we may refer to such a
workflow as a guided procedure or a process. As a part of the Composite Application
Framework (CAF), GP enables access to multiple backend systems, consistently
combining different types of services and applications into processes. In addition, GP
supports collaboration, ad-hoc items, and offline task management using interactive
forms. It provides role-based access to tools and resources and guidance through
the workflows at runtime, thereby helping end users to easily identify and complete
their tasks.
At design time, we build a process template, which we instantiate at runtime into a
process.
Guided Procedures are built up from different structural or executable elements. These
include Blocks, Actions, and Callable Objects.
• Blocks are structural units; that is, they organize processes into reusable sections.
Blocks can contain other blocks, actions, and or complete processes (which
further fosters reuse).
• Blocks also describe the processing mode for that section of the process. For
instance, the actions within a block may be executed sequentially, in parallel, or
repeatedly in a loop.
• The individual steps in a process in GP are implemented as actions. They
contain one or two callable objects, which enable you to use external services
and applications in processes modeled with GP. Actions also contain additional
metadata to define the behavior of the callable objects within the process itself.
• ACallable object is a reusable unit that enables the execution of external
applications or services within the Guided Procedures framework.
• Callable objects are the most fine-grained elements in a process.

• Callable Objects Further Described


– A reusable unit that enables the execution of external applications or
services within the GP framework.
– Wraps an application used for representing an action in GP
– These can be Web Dynpro applications and components, BSP applications,
Remote-enabled function modules, SAP Transaction codes, Java classes,
web pages…
– Callable objects may also run in the background
– Some callable objects can raise exceptions

2008/Q1 © 2008 SAP AG. All rights reserved. 55


Unit 3: Callable Objects NWC120

A callable object is a reusable unit that enables the execution of external applications
or services. Callable objects are the most fine-grained elements in a process. They
enable you to use external services or application components within the context
of a process modeled with GP.
There is a simple wizard that helps you when creating callable objects. Basic data
for callable objects includes a name, description, the type of callable object, and
a folder location.
There are other parameters that can be defined using the wizard. They are:
Input parameters
Output parameters
Configuration parameters
Result states
Exceptions

• Defining a Calable Object in GP Design Time


1. All callable objects in GP Design time, require a name, description, type,
original language and a folder
2. Specify the type of callable object. The type of the object determines
the input in the following screen
3. Input & output parameters: Data can be passed from/to a callable object
4. Configuration parameters: CO can be configured
5. Result states: The result states of a callable object indicate the outcome
of its execution
6. Exception handling
To create callable objects, go to Guided Procedure Design time and click on Create
Callable Object.
Input and output parameters: You can implement a callable object, so that it
retrieves input data from a user or from another object. You do this by creating input
parameters of the relevant type. To enable a callable object to provide data as a result
of its execution, you define output parameters. At runtime, you can map them to the
appropriate input parameters of another object, thereby enabling data flow throughout
the process. The availability of parameters depends on the callable object type, and on
the implementation of the underlying application or service.
Configuration parameters: You can configure parameters at action, block, and
process level once you have included the callable object in the process flow. To be
able to do this correctly, you must be aware of the underlying concepts related to
parameter contexts. Each GP activity (action, block, or process) has its own parameter

56 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Basics of Callable Objects

context, also known as the local context. Parameters from the local context are only
visible to activities up in the process hierarchy (parent activities) if they are exposed
in, or propagated to, the input and output parameter sets of the child activity. All
parameters that you create are exposed by default. You can choose to hide them at
action, block, or process level. At design time you can set the appropriate values for
these parameters. For example, if you implement a function that sends an e-mail, you
can define the e-mail template and the recipient as configuration parameters, and set
them up when instantiating the callable object using the GP design time.
Result states: The result states of a callable object indicate the outcome of its
execution. In addition, they enable you to manage the process flow in a flexible way,
by defining different workflows depending on the state reached. You define and set
the result states in the implementation of the callable object. At design time, you can
configure a target action for each defined result state.
Exception handling: You can implement your callable object so that it defines
process exceptions. You can implement callable objects with user interfaces, such as
Web Dynpo or BSP applications. The GP framework also provides APIs for callable
objects that are executed in background mode, and do not necessarily provide UIs.
Depending on the type of callable object, you may have some or all of the above
screen numbers. As you define the callable object and select NEXT the editor will
automatically prompt you to the next screen. After defining the callable object, if
you wish to change any of your original definition, you can do so in the properties
screen of the callable object editor.

Figure 27: Defining a Callable Object in GP Design Time

2008/Q1 © 2008 SAP AG. All rights reserved. 57


Unit 3: Callable Objects NWC120

Figure 28: Creating Callable Object in GP Design Time

Basic Data
In this step, you define the basic parameters for the callable object, such as
name, description, and so on.
Define Object
In the second step you define which service or application you want to expose
as a callable object, and the parameters to connect to it. For example, URL,
endpoint alias, and so on.
Define Input
If the callable object requires input, you can define the input parameters in
this step. For certain callable object types, these parameters are displayed
automatically.
Define Output
In this step, you can configure the output parameters of the callable object, if
any. For certain callable object types, they are displayed automatically.
Set Configuration
Finally, you can maintain any specific configuration parameters that the
callable object defines. Certain callable object types have standard predefined
configuration parameters.
Note: Not all of these steps are obligatory for all callable object types. For
some of them, the steps Define Input, Define Output, or Set Configuration
might be skipped.

58 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Basics of Callable Objects

Figure 29: Callable Object Parameter Context

You can implement a callable object, so that it retrieves input data from a user or from
another object. You do this by creating input parameters of the relevant type.
To enable a callable object to provide data as a result of its execution, you define
output parameters. At runtime, you can map them to the appropriate input parameters
of another object, thereby enabling data flow throughout the process.
For certain types of callable objects, such as Web Dynpro components, CAF
applications, and so on, the implemented input and output parameters are automatically
detected and you can only modify the order in which they are displayed.
For other callable object types, such as Web pages, or content packages, you can
define certain input and output parameters manually if required
Application focused enable you to link to a specific application functionality.
Predefined objects enable you to put boundaries and handle logistics of the guided
procedures (e.g. emails).
Exposing a service or application as a callable object allows re-use of existing
functionality from both SAP and external providers. In addition, you can incorporate
multiple backends and technologies, such as Web Dynpro, ABAP programs,
interactive forms, and so on. Once imported as callable objects, these components can
be used universally in process modeling.

2008/Q1 © 2008 SAP AG. All rights reserved. 59


Unit 3: Callable Objects NWC120

GP comes with a set of registered callable object types that define which applications
you can directly expose as callable objects and enable their handling in the context of
GP processes.
The predefined callable objects are available in the list of callable object categories
that is displayed in the first step of the procedure for creating callable objects. To use
a predefined object, you just select it as a type from the relevant category.

60 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Basics of Callable Objects

Lesson Summary
You should now be able to:
• Navigate through the callable objects definition screens

2008/Q1 © 2008 SAP AG. All rights reserved. 61


Unit 3: Callable Objects NWC120

Lesson: Application Focused Callable Objects

Lesson Overview
This lesson will explain details of application focused callable objects.

Lesson Objectives
After completing this lesson, you will be able to:
• List the application focused callable objects
• Define the application focused callable objects

Business Example
Some steps in your business process require information from an application system.
You need to automate this step.

Application Focused Callable Objects

• More commonly used Application focused callable object types:


BSP’s
You can expose a BSP application as a callable object and attach it to
an action in a process flow.
Web pages
You can display a Web page as a process step, or attach it to the process as
an info callable object. Use this callable object type to display third-party
Web pages.
Interactive forms
Using the GP framework it is possible to integrate a form template and
expose it as a callable object.
GP comes with a set of registered callable object types that define which applications
you can directly expose as callable objects and enable their handling in the context of
GP processes.

62 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Application Focused Callable Objects

Prerequisites
• The connections to the relevant service providers are configured for example,
endpoint aliases.
• The relevant services or applications are available in the system for example, the
Web Dynpro component is deployed on the SAP Web Application Server.
• Using the callable object wizard in the GP design time, create a callable object of
the appropriate type for each application that you want to use in a process.
• Define its basic data, input and output parameters, and the configuration settings.
• Activate the object.

• More commonly used Application focused callable object types:


Webdynpro (abap & java)
The GP framework enables you to expose Web Dynpro components
and applications as callable objects
Web Dynpro components – these are components that implement the GP
interface for Web Dynpro callable objects.
Web Dynpro applications – any application that has been deployed on the
SAP Web Application Server Java
RFC’s
The GP framework enables you to import any function module, thus
allowing you to reuse the modules you have implemented in your system
without having to modify their implementation
The CAF resources must be deployed on the J2EE Engine. The CAF Web Dynpro
components must be properly configured.
An endpoint alias for EJB remote calls must be configured for the J2EE Engine where
the CAF resources are deployed.
Web pages: Do not use it to reference SAP applications embedded in the SAP
NetWeaver Portal.

2008/Q1 © 2008 SAP AG. All rights reserved. 63


Unit 3: Callable Objects NWC120

Interactive forms: You must have created the form template that GP will use for
generating forms.
• If you want to pre-fill the interactive form fields with the output from other
services, you must have exposed these services as callable objects.
• If you want to use a service to validate the output from the callable object, you
must have exposed this service as a callable object as well.

• Web Dynpro components and applications as callable objects


– Webdynpro applications (Java & abap)
– Webdynpro components
– Same procedure for java webdynpro component/application
– For Abap webdynpro, endpoint alias need to be defined
– Pre-requisites: A Web Dynpro Component that implements the Guided
Procedures Interface deployed on the server.
The Guided Procedures (GP) framework enables you to expose Web Dynpro
components and applications as callable objects. This allows you to integrate existing
applications in the processes you have created with GP.
Web Dynpro components
These are components that implement the GP interface for Web Dynpro callable
objects.
A Web Dynpro Component can specify its input and output parameters as
the input and output parameters of a callable object. We can work with these
parameters, because Guided Procedures Design Time can retrieve all this
information from the callable object during its creation.
You can either use an existing callable object GP comes with some samples or
you can build your own Web Dynpro Component that implements the Guided
Procedures Interface.
Web Dynpro applications
Any application that has been deployed on the SAP Web Application Server Java
ABAP Web Dynpro applications
Any ABAP application that has been deployed on the SAP Web Application
Server ABAP

64 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Application Focused Callable Objects

Figure 30: Callable Object type: External Service

The process of importing an RFC-enabled function module into GP comprises the


following steps:
Configuring an endpoint
Exposing a BAPI as a callable object
CAF GP installed
You need an R/3 or ERP System and you need an Endpoint Alias for RFC
remote call to be configured to enable a connection to the required R/3 or ERP
system. In the Administration module of Guided Procedures, an endpoint to the
SAP system that contains the RFC-enabled function module.
Using Guided Procedures (GP) design time you can expose any RFC-enabled function
module as a callable object. Unlike Web Dynpro components and BSP applications,
specific implementation is not required for the RFC modules. The integration into the
GP framework is done transparently by the system. To expose the function module as
a callable object, you must follow the wizard the GP design time provides.

2008/Q1 © 2008 SAP AG. All rights reserved. 65


Unit 3: Callable Objects NWC120

The GP framework enables you to import any function module, thus allowing you to
reuse the modules you have implemented in your system without having to modify
their implementation

• Callable Object type: Web Services


Currently Web Service callable objects support the following SOAP
encoding styles:
SOAP Remote Procedure Call Literal encoding (SOAP RPC-literal)
SOAP document-style encoding, which is also known as message-style or
document-literal encoding
Prerequisites
You have created and configured a logical destination to access the required
Web Services.
You need to know a precise WSDL URL for internal or external Web
services that do not require authentication.
Web services are Web interfaces that are based on open and commonly accepted
standards and can be integrated into a companys business scenarios. Using Web
services enables you to combine functions implemented in different software
components into a single process.
You can expose any web service as a callable object using Guided Procedures (GP)
design time. The integration into the GP framework is done transparently by the
system.
Logical destinations are required for all Web services that need authentication. For
example, you can use an ABAP Web service only through a predefined logical
destination.

• Callable Object type: Portal iView or Page


– Use the portal callable object to define an iView or page that is displayed in
the portal when the callable object is executed
– Possible to expose:
Standard iViews or pages
Visual Composer (VC) iViews or pages
The difference between iView page or Visual Composer page is that the input and
output parameters defined for the VC iViews in the VC environment are automatically
rendered in Guided Procedures (GP). VC iViews can also have custom result states,
which are recognized and used in GP

66 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Application Focused Callable Objects

When exposing iViews or pages created with the Visual Composer, you cannot create
input parameters other than the ones already defined in VC.
If you have selected a BI or SAP Transaction iView for the portal callable object,
you cannot define input parameters. If you want to define input parameters for BI
Queries, BI Web Applications or SAP Transactions, use the BI or SAP Transaction
callable object.

• Callable Object type: BSP


– Prerequisites:
A configured portal system alias for the backend system where the BSP
application resides
The name and the start page for the BSP application
A configured endpoint alias for remote function calls
– Defining BSP Object in CO creation Wizard:
1. Portal system Alias
2. Start page
3. Customer namespace
4. Application namespace
5. BSP application
6. Endpoint Alias (optional)

2008/Q1 © 2008 SAP AG. All rights reserved. 67


Unit 3: Callable Objects NWC120

To use the BSP application in a business process modeled with Guided Procedures
(GP), you must register the application as a callable object.
• Portal System Alias:Select the appropriate portal system alias from the
dropdown list. The GP framework uses the parameters from the alias
configuration to generate the URL for the BSP application at runtime.
• Start Page: Enter the name of the HTML page that you want to be displayed as a
start page when the BSP callable object is executed.
• Customer Namespace: If you use a specific namespace to store your objects in
the SAP system, enter it here. By default, the namespace is sap.
• Application Namespace: If the BSP application that you want to expose as a
callable object is stored in a specific namespace in the SAP system, enter it
here. By default, the namespace is sap.
• Business Server Page (BSP) Application: Enter the name of the BSP
application.Endpoint Alias (optional)Use Choose to select the appropriate
endpoint alias for the system where the BSP application resides.
• Enter the endpoint alias: If you want to define input and output parameters for
the BSP application. Otherwise, it is executed in display mode at runtime, and
you cannot interact with the backend system using the application.
Define the endpoint alias of type Endpoint Alias for EJB Remote call; provide the
endpoint alias name. In the properties, define the remote provider URL. The Remote
Provider URL consists of two parts: the server-name and the port, which is derived
from the http port of your server. Also enter the the security principal and the security
credentials.

68 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Application Focused Callable Objects

After defining the endpoint alias, it can be chosen when defining the callable object.

• Callable Object type: Web Dynpro for Visual Composer (WD4VC)


Applications
– Prerequisites: iView in Visual Composer compiled and deployed as a
Web Dynpro component.
Compiler Option: Add Guided Procedure Information checkbox is enabled
Start Point connector element is configured with any needed Input
Parameters
End Point connector element is configured with any needed Output
Parameters
Defined and mapped the Result States and corresponding Events
– Defining WD4VC Object in CO creation Wizard:
1. From the Type list, select User Interface –> WD4VC Application and
enter the required basic data
2. On the Define Object screen, select a development component
3. Define Input screen, you can view all input parameters defined
previously for the component
4. On the Define Output screen, you can view all output parameters defined
previously for the component
5. Choose Next to continue and Finish and Open to open the design time of
the object.
6. You can now test and activate the callable object.
7. If you have defined result states for the iView, you will see them in the
action design time.
WD4VC applications can be exposed in Guided Procedures as callable objects. Input
and output parameters are automatically rendered.
The WD4VC application is an iView or page created in Visual Composer (VC) and
deployed as a Web Dynpro development component, which can be exposed as a
callable object and attached to an action in a process flow.
In Visual Composer, navigate to Tools → Options → Compiler and select Web
Dynpro from the Runtime dropdown box. Make sure that the Add Guided Procedure
Information check-box is enabled.

2008/Q1 © 2008 SAP AG. All rights reserved. 69


Unit 3: Callable Objects NWC120

To create endpoint alias, go to guided procedure → Administration → Configure


Endpoints
To be able to successfully create or edit an endpoint alias, you need to have detail
knowledge about the connection parameters of the systems connected.
To create an endpoint alias for a Remote Function Call (RFC) for which the connection
is defined through the System Landscape Directory (SLD), you must perform the
following steps in advance:
• You have defined your SAP system in the SLD.
• You have configured the SLD in the Visual Administrator, using the service
SLD Data Supplier.
• You have defined the SLD connection in the Content Administrator (that is,
specified the connection description, etc.

• Configuring End Point Aliases


An endpoint alias is a communication endpoint between the J2EE Engine and
the SAP systems connected.
– For Remote enabled function modules
Connections can be defined by SLD or by User
Normal endpoint options for SAP system log in
– EJB remote Call
Remote provider of URL
Security Principal
Security Credentials
– Endpoint configuration can be tested from GP Design time
– For this workshop, systems have been added to portal and system
aliases are setup by the Administrator
To create a end point alias for a EJB Remote call
• Enter the endpoint alias name
• Enter the endpoint alias type
• Enter the remote provider URL Use ports similar to the valid ports of the J2EE
Engine. For example, you could specify the following: localhost:50004.
• Provide the values for Security Principal and Security Credentials

70 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Application Focused Callable Objects

Look at existing endpoints - To configure end points go to NetWeaver


Administrator (http://host:port:/nwa –> Configuration Management –>
Destination
Hosting System accept default, Local J2EE
System
Destination Name <SID>
Destination Type RFC
Load Balancing Yes
System ID <SID> **SID must be upper case
Message Server /H/tdc-
saprouter/H/<sid>tdc00.wdf.sap.corp
Logon Group SPACE
Gateway Host leave blank
Gateway Service leave blank
SNC Inactive
Authentication Technical User
Language EN
Client 800
User Name <your user>
Password <your pw>
Destination Name <SID>

2008/Q1 © 2008 SAP AG. All rights reserved. 71


Unit 3: Callable Objects NWC120

72 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Application Focused Callable Objects

Exercise 3: Callable Object type Remote


Enabled Function
Exercise Objectives
After completing this exercise, you will be able to:
• Create a callable object to call an rfc.

Business Example
You would like to create a callable object that make a remote function call to the
ECC backend system. At a later time, you will insert this callable object into your
guided procedure process.

Task 1:
Check in ECC system for bapi
1. Log on to the ECC system
2. Display function module

Task 2:
Create Endpoint for Remote Function Call Destination
1. Log into the NetWeaver Administrator, http://host::50000/nwa For example,
http://twdfxxxx.wdf.sap.corp:50000/nwa

Task 3:
Create a callable object to call Z_BAPI_BUPA_CREATE_FROM_DATA.
1. Log in NetWeaver CE Portal
2. Navigate to Design Time

2008/Q1 © 2008 SAP AG. All rights reserved. 73


Unit 3: Callable Objects NWC120

Solution 3: Callable Object type Remote


Enabled Function
Task 1:
Check in ECC system for bapi
1. Log on to the ECC system
a) Log on the ECC system. Client # to be provided by instructor.
2. Display function module
a) In the ECC system navigate to transaction codeSE37.
b) In Function Module field enter z*bapi*bupa* and
then click drop down option. Select function module
Z_BAPI_BUPA_CREATE_FROM_DATA.
c) Do not change this function module.
ClickDisplay button.
The function does indeed exist. If you select the Attributes tab, you'll
notice processing type is set to Remote-Enabled Module.

Task 2:
Create Endpoint for Remote Function Call Destination
1. Log into the NetWeaver Administrator, http://host::50000/nwa For example,
http://twdfxxxx.wdf.sap.corp:50000/nwa
a) Configuration Management → Destination

Hint: If for some reason the system hour-glasses here, try this
other way. Configuration Management → Infrastructure → SLD
Data Supplier Configuration → Destinations

b) Click create.
c) Use the following information.

Continued on next page

74 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Application Focused Callable Objects

Hosting System accept default, Local


J2EE System
Destination Name <SID>_## (## = your
group number
Destination Type RFC
Load Balancing Yes
System ID <SID> **SID must be upper case
Message Server /H/tdc-
saprouter/H/<sid>tdc00.wdf.sap.corp
Logon Group PUBLIC
Gateway Host leave blank
Gateway Service leave blank
SNC Inactive
Authentication Technical User
Language EN
Client 800
User Name <your user>
Password <your pw>
Destination Name <SID>

Hint: In the message server field the sid should be lower case.
Feel free to look at the one for T36 and just copy the line but
remember to change T36 to your assigned sid.

d) Accept all other defaults and click Finish.

Task 3:
Create a callable object to call Z_BAPI_BUPA_CREATE_FROM_DATA.
1. Log in NetWeaver CE Portal
a) http://localhost:50000/irj
2. Navigate to Design Time

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 75


Unit 3: Callable Objects NWC120

a) Guided Procedures → Design Time → NWC120 → Unit 3 Callable


Objects → Group ##.
b) With your folder highlighted, click, Create Callable Object. Enter the
following information.

Type Service → External Service


Name CO_SAPBAPITest##
Description Call to
Z_BAPI_BUPA_CRE-
ATE_FROM_DATA.

c)

Hint: From above or below the type window, you'll see the Next
button.

Click Next.
d) Enter the following information

Logical Destination provided by instructor


Function z*bapi*bupa*
Function Group you can leave blank

Select Search.
e)

Hint: To select a line, click the left most button.

From the list displayed, click on the line, Z_BAPI_BUPA_CRE-


ATE_FROM_DATA and choose Next
f) Notice, at the top of the screen, you are currently on step 3, Define Input.
Choose Next and Next again, until you get to step 5, Step Configuration.
g) Change the Error Handling Mode to No Error Handling.
Select Next.

Continued on next page

76 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Application Focused Callable Objects

h) Click on Finish and Open.


i) Click Activate.

2008/Q1 © 2008 SAP AG. All rights reserved. 77


Unit 3: Callable Objects NWC120

78 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Application Focused Callable Objects

Exercise 4: Callable Object type Portal iView


Exercise Objectives
After completing this exercise, you will be able to:
• Call an iView Within a Callable Object

Business Example
You would like to add a call to an iView to your Guided Procedure.

Task:
iView Portal Page Callable Object
1. Log in NetWeaver CE Portal
2. Navigate to Design Time

2008/Q1 © 2008 SAP AG. All rights reserved. 79


Unit 3: Callable Objects NWC120

Solution 4: Callable Object type Portal iView


Task:
iView Portal Page Callable Object
1. Log in NetWeaver CE Portal
a) http://localhost:50000/irj
2. Navigate to Design Time
a) Guided Procedures → Design Time → NWC120 → Unit 3 Callable
Objects → Group ##.
b) With your folder highlighted, click, Create Callable Object. Enter the
following information.

Type User Interface Portal → iView or


Page
Name CO_iViewTest##
Description Call to iView Portal page

c)

Hint: From above or below the type window, you'll see the Next
button.

Click Next.
d) Scroll down through the list of available roles to select, Every User Core
Role.
You should now see on the right panel of the screen another list. This is a
list of portal pages and/or iviews
e) Navigate to Home (2nd one in list)→ Overview → Universal Worklist.
Select Universal Worklist
f) Select Next and select Next again.
You should notice that you're now in step 4, Set Configuration, of your
callable object definition.
g) Click Add

Continued on next page

80 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Application Focused Callable Objects

You should notice that an extra line now appears labeled, ResultState1,
under the line complete.
h) Highlight the ResultState1line.
i) Replace the text for both Technical Name and Name with Repeat
j) Click Next.
k) Click Finish and Open.
l) Activate.

2008/Q1 © 2008 SAP AG. All rights reserved. 81


Unit 3: Callable Objects NWC120

82 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Application Focused Callable Objects

Exercise 5: Callable Object type Web


Service for weather
Exercise Objectives
After completing this exercise, you will be able to:
• Create a web service type callable object.

Business Example
You know ahead of time that eventually, you'll create a guided procedure that has
steps for booking travel arrangements. Currently, you're not sure how many steps
will go into the process. However, you do foresee the need to check weather the
destination city. You want to create a callable object now that you can insert into you
guided procedure later.

Task:
Create a callable object to call a web service for weather
1. Log in NetWeaver CE Portal
2. Navigate to Design Time to create callable object

2008/Q1 © 2008 SAP AG. All rights reserved. 83


Unit 3: Callable Objects NWC120

Solution 5: Callable Object type Web Service


for weather
Task:
Create a callable object to call a web service for weather
1. Log in NetWeaver CE Portal
a) http://localhost:50000/irj
2. Navigate to Design Time to create callable object
a) Guided Procedures → Design Time → NWC120 → Unit 3 Callable
Objects → Group ##.
b) With your folder highlighted, click, Create Callable Object. Enter the
following information.

Type Service → Web Service


Name CO_WeatherService##
Description Call to check weather
status

c)

Hint: From above or below the type window, you'll see the Next
button.

Click Next.
d) Type http://www.webservicex.net/WeatherFore-
cast.asmx?WSDL and press Enter or click Go.
e) Select GetWeatherByZipCode.
f) Click Next
If you drill into Input Parameters, you see zip code as an input parameter.
g) Click Next.
If you drill into Return Parameters, you see several output parameters.
h) Select Next and then select Finish and Open
i) Choose Save All and Activate

84 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Application Focused Callable Objects

Exercise 6: Simple Visual Composer


Application
Exercise Objectives
After completing this exercise, you will be able to:
• Create a visual composer form
• Create a Callable Object of type WD4VC Application

Business Example
You would like to create a callable object that uses a visual composer form.

Task 1:
Create a simple visual composer form
1. Log into Visual Composer
2. Create form

Task 2:
Create a callable object of type WD4VC
1. Log in the NetWeaver CE portal
2. Create a callable object, CO_MyFirstVC_GRP##

2008/Q1 © 2008 SAP AG. All rights reserved. 85


Unit 3: Callable Objects NWC120

Solution 6: Simple Visual Composer


Application
Task 1:
Create a simple visual composer form
1. Log into Visual Composer
a) http://host:50000/VC
2. Create form
a) Select Model → New → Composite View and user the following information

Composite View
Name MyFirstVC##
Repository Accept default, Local
Repository
Software Component Accept default, sap.com_UW-
SoftwareComponent
Development Component Click New and enter groupxx for
Development Component and then
click OK

b) Click OK
c) From the right panel, 'Compose Model' window, click to drag Form View
to left panel, the canvas.
d) From the right panel, 'Compose Model' window, click to drag Start Point
to left panel, the canvas.
You should now have a start icon and a form view icon in your canvas.
e) We need point the start icon to the form view icon.Click within the Start
icon, on the diamond and then drag the cursor to point it to 'in' of
the form view icon.
You should now see a line pointing from the diamond within start to the
'in' of form view.
f) Right click on the form and choose Define Data

Continued on next page

86 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Application Focused Callable Objects

g) Click the 'plus' sign, then choose String and then type FirstName
for Field Name
h) On the same line, double-click the 'fx'. Drill into DataFields and
double click, FirstName and then click OK.
i) Choose the 'plus' sign, then choose String andt ype LastName for
Field Name and then click OK
j) On the same line, double-click the 'fx'. Drill into DataFields and double
click, LastName and then click OK
k) Choose Close
l) Click the word 'out' and drag the cursor to the right. When you let up
from the mouse, click Endpoint
m) On the bottom of your canvas, click the tab 'Layout'
n) From the right side of the screen, drag the 'button' icon just below
last name.
o) With the new button (Action), highlighted, click Configure, on the very
right side of the screen
p) You'll notice several fields. Notice the field, Action. Currently it is blank
but also, you'll see the Action field has 3 dots. Click on the 3dots.
q) Click the plus and choose submit
r) Click Close
s) Notice the 2nd field, labeled, Text, with the word Action1. Change the
Text field to OK
t) Now click anywhere on the canvas. You'll noticed the button 'OK'
u) Form the bottom of your canvas, click the tab 'Designt'
v) Click on the line leading to 'end'. This part is tricky. If you click in
correctly, you'll notice the right panel with 3 fields, Guard, Event name,
Select mode
w) Click in the Event Name field and choose submit.
x) Click Tools → Options

Hint: Not the Tools from the internet browser window). Tools is
an option in the Visual Composer menu, along top of form.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 87


Unit 3: Callable Objects NWC120

y) Notice the Compiler area in the right panel. For Default runtime, select
'XGL'
z) Click Deploy, the button on the very far right panel.
aa) Click Compile
ab) Click Deploy
You should see the message, Completed Successfully. Also under groupxx,
you should see Web_Dynpro-HTML with 2 links and Flex with 2 links.

Task 2:
Create a callable object of type WD4VC
1. Log in the NetWeaver CE portal
a) http://host:50000/irj
b) Navigate to Guided Procedures → Design Time
2. Create a callable object, CO_MyFirstVC_GRP##
a) Navigate to NWC120 → Unit3 → Group##
b) With your folder highlighted, click Create Callable Object
c) Use the following information.

Type User Interface → WD4VC


Application
Name CO_MyFirstVC_GRP##
Description WD4VC test for my
first Visual Composer
application

d) Click, Next
e) Highlight your line, CO_MyFirstVC_GRP##
f) Select Next, Next, Finish and Open
g) Activate

88 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Application Focused Callable Objects

Lesson Summary
You should now be able to:
• List the application focused callable objects
• Define the application focused callable objects

2008/Q1 © 2008 SAP AG. All rights reserved. 89


Unit 3: Callable Objects NWC120

Lesson: Control Focused Callable Objects

Lesson Overview
This lesson will describe control focused callable objects.

Lesson Objectives
After completing this lesson, you will be able to:
• List the types of control focused callable objects

Business Example
Many guided procedures need boundaries, or conditions to dictate the flow from
one step to the next within the business process. Therefore, you need to define flow
of the guided procedure steps.

Predefined Callable Objects

• Predefined Callable Objects


– Predefined callable objects belong to 4 major categories:
– Data Forms
– Process Control
– User Management
– Miscellaneous
Guided Procedures (GP) provides a set of callable object implementations, which you
can use by simply configuring them in the GP design time.
Predefined objects enables us to put boundaries and handle logistics of the guided
procedure (e.g. emails, checking for a condition, retrieve user information etc)
The predefined callable objects are available in the list of callable object types that
is displayed in the first step of the procedure for creating callable objects. To use a
predefined object, you just select it as a type.

90 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Control Focused Callable Objects

If you do not see the predefined callable objects in the initial screen of the callable
object wizard, make sure that there are permissions defined for these objects in the GP
Administration workset.

• Predefined Callable Objects - Data Form


Data input form
Provides a form for data input.
Data display form
Displays the input data passed to the callable object. The callable object
also provides an OK button to enable the explicit completion of the object
execution.
Data display and acknowledgement
Displays the input data passed to the callable object. The callable object
also provides an OK button to enable the explicit completion of the object
execution.
Input
Used for general input. You can use it in any scenario to transfer data
between process steps.
Data Input Form
Type: Web Dynpro-based form. Provides a form for data input. To enable the
form processor to enter data and to send it to the system, you must define output
parameters. At runtime, they are available as input fields and the data is sent to
the framework when the process step is complete.
Data Display Form
Type: Web Dynpro-based form. Displays the input data passed to the callable
object. The callable object also provides an OK button to enable the explicit
completion of the object execution. To map the output of the other callable
objects and get the displayed data, you must define input parameters

2008/Q1 © 2008 SAP AG. All rights reserved. 91


Unit 3: Callable Objects NWC120

Data Display and Acknowledgement


Type: Web Dynpro-based form. Displays the input data passed to the callable
object. Users can acknowledge that they have read the data as well as enter a
comment and notify other process contributors. To map the output of the other
callable objects and get the displayed data, you must define input parameters

• Predefined Callable Objects - Process Control


Visual Approval
Enables users to approve or reject certain requests
Approve, Reject button is provide along with comments on why
Email can be sent
Interactive Form or File Approval
Used for displaying online, an interactive form or file that can be approved
or rejected
Offline Approval
Enables users to approve or reject a request, and notify process contributors
of their decision
Decision (Comparison to a predefined value)
Compares the input to a pre-defined comparison value
Numeric decision
Compares the input with a pre-defined numeric value
Initiate a process (using a predefined template)
Starts a process using an existing process template. To be able to initiate a
process using this callable object, process roles must be configured with
default values. The process template must be active
Terminate process
Stops the current process
With most Process Control callable objects, different Result States are possible.
Visual Approval
Type: Web Dynpro-based form. This form provides an Approve and a Reject
button along with a comment on why a certain action (approve/reject) was
chosen. Using the configuration parameters of the callable object, you can
configure it to notify selected process contributors that the request has been
approved or rejected. You can set up different e-mail templates for approval
or rejection.

92 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Control Focused Callable Objects

Offline Approval
Type:Java Callable Object for background execution; Enables users to approve
or reject a request, and notify process contributors of their decision. In addition,
you can define other input parameters and configure e-mail notifications, in
the same way as for Visual Approval.
Decision (Comparison to Predefined Value)
Type: Java Callable Object for background execution. Compares the input to
a pre-defined comparison value. There are two result states that are possible,
EQUAL or DIFFERENT
Numeric Decision
Type: Java Callable Object for background execution Compares the input with a
predefined numeric value. The comparator can be <, <=, >, >=, = & <>.Two
result states are possible, RESULTSTATE_TRUE or RESULTSTATE_FALSE.
Initiate Process (Using Predefined Template)
Type: Java Callable Object for background execution. Starts a process using
an existing process template. To be able to initiate a process using this callable
object, process roles must be configured with default values. The process
template must be active.
Terminate Process
Type: Java Callable Object for background execution. Stops the current Process

• Predefined Callable Objects: User Management


– Choose a User
– Read User Information
– Assign Users to Process Role
– Return Process role Member List
– Resolve Manager of User (Requires SAP HR):
– Check User
Choose a User
Type: Web Dynpro-based form; Provides a user interface for choosing a user
from user management. Returns the unique identifier of the user as well as
additional data in its output data structure. The result contains the details about
the user: (For example, address, phone number, company).

2008/Q1 © 2008 SAP AG. All rights reserved. 93


Unit 3: Callable Objects NWC120

Read User Information


Type: Java Callable Object for background execution. Reads and returns user
information based on the unique ID, the logon ID or the current user. If you
enter one of the three options, detailed information about the user appears as an
output. The input can be a User unique id, name, or user logon id and the output
is user data such as address, phone number etc.
Assign Users to Process Role
Type: Java Callable Object for background execution. Assigns users to a process
role. The input can be a list of users to be assigned to a process role.
Return Process Role Member List
Type:Java Callable Object for background execution. Enables you to get the
users assigned to the roles for the current process.
Resolve Manager of User (Requires SAP HR)
Type:Java Callable Object for background execution. Returns the manager of
a specified user using a back-end SAP Human Resources system. Using the
configuration parameters of the callable object, you define the endpoint alias for
the system where SAP HR is configured.

94 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Control Focused Callable Objects

Check User
Type:Java Callable Object for background execution. Checks whether a specified
user is unique. This is done by searching the UME for a particular user by ID or
user name. If the search returns multiple results, they are available as a structure.

• Predefined Callable Objects - Miscellaneous


Read System Properties
Returns a list of system properties
Write to System Log
Writes information text to the system log
Current State Information
Returns information about the current system state (date, time, language
code)
Send Notification
Sends a notification e-mail to specified process contributors
Send Notification with Attachment
Sends a notification e-mail message with attachments to a specified
recipient
File Input
Uploads any file and transfers it across the process flow as a context
parameter. Once you have uploaded the file, you can download or view its
contents in a subsequent process step.
Read System Properties
Type: Java Callable Object for background execution. Returns a list of
system properties. This list can be narrowed by providing prefix value in the
configuration parameter.
Write to System Log
Type: Java Callable Object for background execution. Writes information text to
the system log. The level of severity can be one of information, error or warning.
Current State Information
Type: Java Callable Object for background execution. Returns information
about the current system state (date, time, language code)
Send Notification
Type:Java Callable Object for background execution. Sends a notification e-mail
to specified process contributors.

2008/Q1 © 2008 SAP AG. All rights reserved. 95


Unit 3: Callable Objects NWC120

Send Notification with Attachment


Type: Java Callable Object for background execution. Sends a notification
e-mail message with attachments to a specified recipient. 9
File Input
Uploads any file and transfers it across the process flow as a context parameter.
Once you have uploaded the file, you can download or view its contents in a
subsequent process step.

96 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Control Focused Callable Objects

Exercise 7: The Google Process


Exercise Objectives
After completing this exercise, you will be able to:
• Create and use control focused callable objects, within a process.

Business Example
You would like to automate Google lookups allowing the option for multiple searches.

Task 1:
Build the Google Process
1. Log in NetWeaver 7.1 CE Portal
2. Navigate to Design Time to build process
3. Create a process named GoogleProcess##
4. Create a block named GoogleSearchBlock##
5. Create an action named, GoogleDataInputAction##
6. Create a callable object named, CO_GoogleParameters##.
7. Add a new action called, GoogleSearchAction## to your block.
8. Add a new web page callable object to your action, called
CO_GoogleSearch##.
9. Add a new action to your block, and call it SearchAgainAction##
10. Insert a new callable object of type Process Control → Decision Dialog, into
your action. Name it CO_SearchAgain##
11. You want to configure the process to return to the Data Input Form, if the Yes
button is selected.

Task 2:
Configure and Activate the Process.
1. Consolidate Parameters.
2. Combine roles and assign user.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 97


Unit 3: Callable Objects NWC120

Task 3:
Test your new guided procedure process
1. Navigate to Runtime
2. Execute the process

Task 4:
Optional. Upon launching your google process, you were required to initially type in
search criteria and then asked to again type the same exact information. Let's correct
this.
1. Log in NetWeaver 7.1 CE Portal
2. Navigate to Design Time to build process
3. Edit the process.

98 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Control Focused Callable Objects

Solution 7: The Google Process


Task 1:
Build the Google Process
1. Log in NetWeaver 7.1 CE Portal
a) http://host:50000/irj For example: http://twdfXXXX.wdf.sap.corp:50000/irj
2. Navigate to Design Time to build process
a) Guided Procedures → Design Time → NWC120 → Unit 3 - Callable
Objects → Group ##.
You should see two panels. On the right side is your folder hierarchy. On
the left panel is the, You Can, which list the options of what you can do
within your folder.
3. Create a process named GoogleProcess##
a) With your folder highlighted, click, Create Process then choose Create.
You're now in the Process editor window. The top panel is the process flow
editor. The bottom panel is the process configuration editor.
Notice one line item in the editor window, currently named, Process1, and
type is process. Continue to notice the type column as you work through
this exercise.
b) Within the process flow editor, highlight the line item currently named
process

Hint: click the left most button

c) With the process line highlighted, notice the bottom panel, the process
configuration screen. Enter the following information.

Name GoogleProcess##
Description Google process

Hint: You won't see the text in the flow editor change until you
once again click the left most button or perform the next step.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 99


Unit 3: Callable Objects NWC120

4. Create a block named GoogleSearchBlock##


a) With the process line highlighted, notice just above, the field labeled Item.
The value in Item field is Block. Click the Create new icon to now create a
Block. Choose Select to accept the default value of type Sequential Block.
Now you'll notice a second line item of type, block.
b) Within the process flow editor, highlight the line item currently named
Block1 and enter the following information.

Name GoogleSearchBlock##
Description Google search block

5. Create an action named, GoogleDataInputAction##


a) With the Block line still highlighted, click Create new.
You now see an action line item.
b) Highlight the action line and enter the following information.

Name GoogleDataInputAction##
Description data input for google
search

Continued on next page

100 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Control Focused Callable Objects

6. Create a callable object named, CO_GoogleParameters##.


a) With the action line still highlighted, click Create new.
A new screen appears, labeled, Create callable object. On the left side of
the window are the types of callable objects. You must select one.
b) Use the following information.

Type Form → Data Input Form


Name CO_GoogleParameters##
Description Google Parameters

Click Next
c) Select Insert New twice, to add twonew parameters. Add the following
information.

Context Technical Name Namespace Object Type


Parameter
Search- Search- Group## String
String String
Language Language Group## String

d) Click Next and Finish to add your callable object to the process.
7. Add a new action called, GoogleSearchAction## to your block.
a) Highlight the GoogleSearchBlock## line item and select Create New.
For the new action, enter the following information.

Hint: Before typing information, make certain to highlight your


new action.

Name GoogleSearchAction##
Description Search criteria

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 101


Unit 3: Callable Objects NWC120

8. Add a new web page callable object to your action, called


CO_GoogleSearch##.
a) With the new action line item highlighted, select Create New. Use the
following information.

Type User Interface → Web Pages


Name CO_GoogleSearch##
Description Google Search criteria

b) Select Next.
c) For the url type http://www.google.com/search and click Next.
d) Select Insert New twice, to add two new parameters. Add the following
information.

Context Technical Name Namespace Object Type


Parameter
Search- q Group## String
String
Language hl Group## String

Note: If you were to point a web browser at Google


(www.google.com), and then conduct a search for “SAP,”
you would see that the generated url looks like the following
(http://www.google.com/search?hl=en&q=sap. Thus, we give our
parameters those technical names.

e) Click Next.
f) Accept the default Container height by clicking Next again.
g) Click Finish.

Continued on next page

102 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Control Focused Callable Objects

9. Add a new action to your block, and call it SearchAgainAction##


a) Highlight the GoogleSearchBlock## line item and select Create New. For
the new action, enter the following information.

Hint: Before typing information, make certain to highlight your


new action.

Name SearchAgainAction##
Description new Search criteria

10. Insert a new callable object of type Process Control → Decision Dialog, into
your action. Name it CO_SearchAgain##
a) With the new action line item highlighted, select Create New. Use the
following information.

Type Process Control → Decision


Dialog
Name CO_SearchAgain##
Description new search information

and click, Next


b) Verify, Decision for Loops is selected and then click Next.
c) Click Next again, so that you see step 4, Set Configuration. Enter the
following information.

Heading Search Again


Message Would you like to
perform another search?
Continue Button Label Yes
Break Button Label No

d) Click Next
e) Click Finish

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 103


Unit 3: Callable Objects NWC120

11. You want to configure the process to return to the Data Input Form, if the Yes
button is selected.
a) In the process flow, under your action, SearchAgainAction##, you will see
a line titled Result States.. Expand this by clicking the arrow next to it,
and you will see two result states: Continue and Break. Use the drop-down
to the right of the Continue state to select GoogleDataInputAction##.

Task 2:
Configure and Activate the Process.
1. Consolidate Parameters.
a) Highlight the block GoogleSearchBlock## and click on the parameters
tab.
b) Within the parameters tab, highlight both SearchString line items, using
the cntrl key to select more than one line. Then click the button Group.
Accept the default name SearchString, and click create.
c) Do the same for language.
2. Combine roles and assign user.
a) Highlight the process, GoogleProcessXX and click the Roles tab.
You should now see roles.
b) Within the roles tab, select the three custom roles, SearchAgainAction,
GoogleSearchAction, GoogleDataInputAction. For the field consolidate,
enter Searcher and then select Go.
You now see 4 roles. You should notice searcher role has an arrow for
expansion
c) For each of the 4 lines, select initiator, as the role type.
d) Save and Activate the process.

Task 3:
Test your new guided procedure process
1. Navigate to Runtime
a) Guided Procedures → Runtime

Continued on next page

104 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Control Focused Callable Objects

2. Execute the process


a) Click Initiate a New Process
b) Navigate this path NWC120 → Unit 3 - Callable Objects → Group ## →
.GoogleProcessXX
c) Click Next
d) Use the following information.

SearchString SAP
Language en

e) Click Next
f) Click Initiate
You should notice that you are being asked again to supply the information
for SearchString and Language. Wouldn't it be nice if we can fix this
annoyance of redundant entries? For now, type the information again.
When you complete this task, if you're up to the challenge, proceed to the
next optional task.
g) Use the following information.

SearchString SAP
Language en

h) Click submit.
A google search offering SAP links should appear.
i) Choose complete.
j) Choose Yes to perform another search.
k) Enter whatever information of your choice, for example Sodoku, en.
l) When finish choose complete. and then choose No
Notice the list of actions in the Process Activities window.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 105


Unit 3: Callable Objects NWC120

Task 4:
Optional. Upon launching your google process, you were required to initially type in
search criteria and then asked to again type the same exact information. Let's correct
this.
1. Log in NetWeaver 7.1 CE Portal
a) http://host:50000/irj For example: http://twdfXXXX.wdf.sap.corp:50000/irj
2. Navigate to Design Time to build process
a) Guided Procedures → Design Time → NWC120 → Unit 3 - Callable
Objects → Group ## → GoogleProcess##. and click Open.
3. Edit the process.
a) Click Toggle Multi-Edit Mode
b) Answer Yes to the question about inactivating the current version.
c) Click the Parameters tab.
d) Deselect the check boxes in the column 'Exposed in Input'. You're
doing this so that you no longer receive the initial screen twice, to enter
same information. In a much later exercise, you'll see when it is handy to
leave these check boxes selected.
e) Save All and Activate.
f) To test, proceed as before with instructions from the previous task.

106 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Control Focused Callable Objects

Lesson Summary
You should now be able to:
• List the types of control focused callable objects

2008/Q1 © 2008 SAP AG. All rights reserved. 107


Unit 3: Callable Objects NWC120

Lesson: Testing Callable Objects

Lesson Overview
The purpose of this lesson is to explain how to test callable objects.

Lesson Objectives
After completing this lesson, you will be able to:
• Test all types of callable objects

Business Example
You are responsible for development of guided procedures in SAP NetWeaver 7.1 CE.
You need to test your callable object before end users execute the guided procedure,
which calls the callable object.

Testing Callable Objects

• Testing Callable Objects


– Callable objects can be tested in the Design Time even before activation
– Two test modes: Execution or Display
Testing a callable object in display mode can be used for functions that
provide user interface and can therefore be specified as an object for
display in an action.
If the object is tested in display mode, you only get a preview of the
function, but you cannot execute it.
If the application has a user interface, it is displayed in the Callable Object
Execution step. To display the test results for callable objects with user
interface, choose Complete Step.
The Guided Procedures (GP) framework enables you to test your standalone callable
objects before even activating them. By testing them, you can see how they will be
executed in a process, and can detect any possible problems or errors in their definition.
Testing a callable object in display mode can be used for functions that provide user
interface and can therefore be specified as an object for display in an action.
If the object is tested in display mode, you only get a preview of the function, but
you cannot execute it.

108 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Testing Callable Objects

If the result of the callable object test is Successful completion, you can activate the
object and make it available for use in actions.
If the result indicates an error, you should check the J2EE Engine log files for more
information about the problem.

• Testing Callable Objects


– Not all callable objects can be tested using the Test feature in guided
procedure design time
– Callable objects that can be tested:
SAP Remote enabled functions
Webservices
Webpages
Webdynpro for Visual Composer
– Callable objects that cannot be tested in GP Design Time:
BSP‘s
Portal iview or pages
Not all callable objects can be tested using the test feature in the GP design time.
If a callable object cannot be tested in guided procedure design time, then you need
to craete the corresponding action(s), block(s) & process, and test the process in
guided procedure runtime.

2008/Q1 © 2008 SAP AG. All rights reserved. 109


Unit 3: Callable Objects NWC120

110 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Testing Callable Objects

Exercise 8: Testing Callable Objects


Exercise Objectives
After completing this exercise, you will be able to:
• Test Callable Objects

Business Example
You want to test your callable objects before using them with a guided procedure
process.

Task 1:
Test callable object CO_SAPBAPITest_##
1. Log in NetWeaver 7.1 CE Portal
2. Navigate to Design Time
3. Test

Task 2:
Check for your business partner number in the ECC backend system.
1. If you're not already logged into the ECC backend system, please do so.
2. Check for your business partner number

Task 3:
Test the callable object CO_WeatherService##.
1. Log in NetWeaver CE Portal
2. Navigate to Design Time
3. Test

Task 4:
Test the callable object CO_MyFirstVC_GRP##.
1. Log in NetWeaver CE Portal
2. Navigate to Design Time

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 111


Unit 3: Callable Objects NWC120

3. Test

Task 5:
Optional. You can try testing your callable object CO_iViewTest##, only to find out
that this type of callable object cannot be tested.
1. Log in NetWeaver CE Portal
2. Navigate to Design Time
3. Test

112 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Testing Callable Objects

Solution 8: Testing Callable Objects


Task 1:
Test callable object CO_SAPBAPITest_##
1. Log in NetWeaver 7.1 CE Portal
a) http://host:50000/irj For example: http://twdfXXXX.wdf.sap.corp/irj
2. Navigate to Design Time
a) Guided Procedures → Design Time → NWC120 → Unit 3 Callable Objects
→ Group ##. → CO_SAPBAPITest_## and click OPEN
3. Test
a) Click on the Test tab
b) Use the following information:

SearchTerm1 Cool
SearchTerm2 Really Cool
Firstname <your name>
Lastname <your name>

c) Click Execute (you may have to scroll down)


d) You should receive a business partner number. Write down your business
number.

Task 2:
Check for your business partner number in the ECC backend system.
1. If you're not already logged into the ECC backend system, please do so.
a) Log into ERP using your GP-## user
2. Check for your business partner number
a) Execute t-code bp
b) For the field Business Partner type your <business partner
number>
You business partner detail should be displayed.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 113


Unit 3: Callable Objects NWC120

Task 3:
Test the callable object CO_WeatherService##.
1. Log in NetWeaver CE Portal
a) http://host:50000/irj
2. Navigate to Design Time
a) Guided Procedures → Design Time → NWC120 → Unit 3 Callable Objects
→ Group ##. → CO_WeatherService##. and click OPEN
3. Test
a) Click on the Test tab
b) Type your <zipcode>
c) Click Execute (you may have to scroll down)

Task 4:
Test the callable object CO_MyFirstVC_GRP##.
1. Log in NetWeaver CE Portal
a) http://host:50000/irj For example: http://twdfXXXX.wdf.sap.corp/irj
2. Navigate to Design Time
a) Guided Procedures → Design Time → NWC120 → Unit 3 Callable Objects
→ Group ##. → CO_MyFirstVC_GRP##. and click OPEN
3. Test
a) Click on the Test tab
b) Click Execute (you may have to scroll down)
Your should see your form appear.
c) Enter your first and last name and click OK
You should see a result message, 'Completed successfully'

Continued on next page

114 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Testing Callable Objects

Task 5:
Optional. You can try testing your callable object CO_iViewTest##, only to find out
that this type of callable object cannot be tested.
1. Log in NetWeaver CE Portal
a) http://host:50000/irjFor example: http://twdfXXXX.wdf.sap.corp/irj
2. Navigate to Design Time
a) Guided Procedures → Design Time → NWC120 → Unit 3 Callable Objects
→ Group ##. → CO_iViewTest##,. and click OPEN
b) Type your <zipcode>
3. Test
a) Click on the Test tab
b) Click Execute (you may have to scroll down)
You should see an error message Callable objects of this type cannot be
run in test mode.

2008/Q1 © 2008 SAP AG. All rights reserved. 115


Unit 3: Callable Objects NWC120

Lesson Summary
You should now be able to:
• Test all types of callable objects

116 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Unit Summary

Unit Summary
You should now be able to:
• Navigate through the callable objects definition screens
• List the application focused callable objects
• Define the application focused callable objects
• List the types of control focused callable objects
• Test all types of callable objects

2008/Q1 © 2008 SAP AG. All rights reserved. 117


Unit Summary NWC120

118 © 2008 SAP AG. All rights reserved. 2008/Q1


Unit 4
Process Actions

Unit Overview
This unit will demonstrate the need for actions. We will discuss available options for
actions and also create actions.

Unit Objectives
After completing this unit, you will be able to:

• Discuss the necessity of actions, to initiate a callable object within a guided


procedures
• List capabilities of actions in guided procedures
• Create actions that use callable objects
• Create actions with ad hoc items

Unit Contents
Lesson: Basics of Actions ......................................................... 120
Lesson: Actions with Callable Objects and Ad Hoc Items..................... 126
Exercise 9: Callable Object Type Web Page ............................... 129
Exercise 10: Create ActionsProcess......................................... 131

2008/Q1 © 2008 SAP AG. All rights reserved. 119


Unit 4: Process Actions NWC120

Lesson: Basics of Actions

Lesson Overview
This lesson will explain the use of actions within a guided procedure.

Lesson Objectives
After completing this lesson, you will be able to:
• Discuss the necessity of actions, to initiate a callable object within a guided
procedures
• List capabilities of actions in guided procedures

Business Example
You plan to create a guided procedure which requires user input for processing. An
action will capture the user input. Subsequent actions my require the same previously
entered data. You want to pass data from one action to another.

Actions

Figure 31: Components of Guided Procedures

120 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Basics of Actions

CAF Guided Procedures (CAF GP) is a framework for modeling and managing
workflows using simple and user-friendly tools. In this course we may refer to such a
workflow as a guided procedure or a process. As a part of the Composite Application
Framework (CAF), GP enables access to multiple backend systems, consistently
combining different types of services and applications into processes. In addition, GP
supports collaboration, ad-hoc items, and offline task management using interactive
forms. It provides role-based access to tools and resources and guidance through
the workflows at runtime, thereby helping end users to easily identify and complete
their tasks.
At design time, we build a process template, which we instantiate at runtime into a
process.
Guided Procedures are built up from different structural or executable elements. These
include Blocks, Actions, and Callable Objects.
• Blocks are structural units; that is, they organize processes into reusable sections.
Blocks can contain other blocks, actions, and or complete processes (which
further fosters reuse).
• Blocks also describe the processing mode for that section of the process. For
instance, the actions within a block may be executed sequentially, in parallel, or
repeatedly in a loop.
• The individual steps in a process in GP are implemented as actions. They
contain one or two callable objects, which enable you to use external services
and applications in processes modeled with GP. Actions also contain additional
metadata to define the behavior of the callable objects within the process itself.
• ACallable object is a reusable unit that enables the execution of external
applications or services within the Guided Procedures framework.
• Callable objects are the most fine-grained elements in a process.

2008/Q1 © 2008 SAP AG. All rights reserved. 121


Unit 4: Process Actions NWC120

Figure 32: Designing a Process

Guided Procedures (GP) makes it easy to model business processes that connect
various backend applications and services into a single workflow. In addition, multiple
contributors may be involved in completing the process. The ability to set up and
modify such processes quickly and flexibly is a requirement imposed by a dynamic
business environment. GP responds to the needs of many employees who handle
cross-functional collaborative processes on a daily basis.
Process modeling with GP does not require specific development skills. It is targeted
at business experts who are familiar with business processes, and can use GP to model
them according to specific requirements in the enterprise.

Note: Callable object design requires a good understanding of the services


and applications that are exposed. Typically, it is a task for users with a
technical background.

The individual steps in a process are implemented as actions. They contain one or
two callable objects, which enable you to use external services and applications in
processes modeled with GP. Actions also contain additional metadata to define the
behavior of the callable objects within the process itself.
Blocks are the main building elements in a process template. The top-level blocks
(that is, blocks that are not contained within other blocks) in the process template form
process phases. They are always executed in sequence.

122 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Basics of Actions

Figure 33: Why actions are important

Actions are important because they are the link between the process step and the
actual callable object. In this graphic teh action AC_iViewXX links to callable object
CO_iViewTestXX.
Actions enable us to capture results from the callable object and control the process
based on the result state. In this example, the action AC_iViewXX has two result
states: Repeat and Complete. If we had a process with many steps, we could use the
result state to tell the process which step to execute next. In our example the result
states both say No Target. However, if this was a process with many steps, we would
replace the No Target with the step (action) that should be executed next.

• Why actions are important


– Important capabilities of actions include (tabs associated with actions):
Due date processing
Ad hoc items
Attachments
Info callable objects
Parameterize task title (work item text)
Capabilities associated with actions include due date processing, ad hoc items,
attachments, info callable objects, and the ability to customize the task title by adding
parameters.
With due dates you can add time parameters related to an action and/or a process.

2008/Q1 © 2008 SAP AG. All rights reserved. 123


Unit 4: Process Actions NWC120

Ad hoc items enable you to add additional activities that can be used within the
process execution. We will discuss ad hoc items in more detail in this lesson.
Attachments enable you to add permanent attachments to the process execution.
Info callable objects enable you to provide additional information to the process
executor.
If you action has parameters, such as name, address. This parameters can be part of
the task text that appears in the inbox at runtime.

Figure 34: Creating an action

124 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Basics of Actions

Lesson Summary
You should now be able to:
• Discuss the necessity of actions, to initiate a callable object within a guided
procedures
• List capabilities of actions in guided procedures

2008/Q1 © 2008 SAP AG. All rights reserved. 125


Unit 4: Process Actions NWC120

Lesson: Actions with Callable Objects and Ad Hoc Items

Lesson Overview
The purpose of this lesson is to demonstrate the Ad Hoc configuration of actions,
within a guided procedure process.

Lesson Objectives
After completing this lesson, you will be able to:
• Create actions that use callable objects
• Create actions with ad hoc items

Business Example
You have to use actions to initiate callable objects. In doing so, you need to recognize
the options for defining actions.

Actions

• Inserting callable object for display


– Options for inserting callable objects:
Callable object for Execution – callable object that will execute at runtime
Callable object for Display – support callable object that executes after the
executable dialog CO and executes at the same time as a background CO
By defining the basic parameters of an action, you create an inactive object that does
not yet implement any specific logic. To make the action functional, you must attach
at least one callable object to it. The callable object is called and executed when
the action is started at process runtime.
If the action calls a background callable object, you also get the “Alternative Callable
Object for Execution”. This is an option you can execute if the background task
does not execute correctly.
Callable Object for Execution
You must attach a callable object for execution. It can be either a callable object
with a visible part, such as a Web Dynpro or BSP callable object, or one for
background execution.

126 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Actions with Callable Objects and Ad Hoc Items

Callable Object for Display


Optionally, you can attach a callable object for display. It is required to have a
visible part – for example, you cannot select a callable object for background
execution. At runtime, this object is displayed if the processor wants to open
the process step after it has been completed, or if a process contributor has view
permissions on the action.

Figure 35: What you need to know about Ad hoc actions

Ad-hoc items in Guided Procedures (GP) are actions that might be executed if certain
conditions occur, but they do not change the general process flow.
Example: In a job application process, an applicant does not meet all requirements
but is still a strong candidate for an opening. The HR assistant is not authorized to
take the decision to move the application forward, so he or she requests the explicit
approval of the HR manager. This approval is typically not a part of the first phase in
the hiring process. It can be implemented as an ad-hoc item.

2008/Q1 © 2008 SAP AG. All rights reserved. 127


Unit 4: Process Actions NWC120

Figure 36: Ad hoc actions

Within the 'You Can' window a user can optionally click any of the links to execute a
different callable object. However for the user to see the additional links you must
first configure the additional view option with the Runtime tab of the process. There
are various views to select from. You simply add the desired view to your list of view
and set the new view as the 'default view'.

128 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Actions with Callable Objects and Ad Hoc Items

Exercise 9: Callable Object Type Web Page


Exercise Objectives
After completing this exercise, you will be able to:
• Create a webpage type callable object that can be inserted into an action.

Business Example
As part of your business process you need will need to call a web page. In case,
well use the bottom-up approach, meaning we'll first created the callable object and
later insert it into an action. The top-down approach would be if we first created the
process, then the block, then the action, and then callable object.

Task:
Create a web page callable object, which calls your favorite website
1. Log in NetWeaver 7.1 CE Portal
2. Create a User Interface → Web Pages type callable object,
CO_Info_Webpage_GRP_##.
3. Optional: Test the callable

2008/Q1 © 2008 SAP AG. All rights reserved. 129


Unit 4: Process Actions NWC120

Solution 9: Callable Object Type Web Page


Task:
Create a web page callable object, which calls your favorite website
1. Log in NetWeaver 7.1 CE Portal
a) http://host:50000/irjFor example. http://twdfXXXX.wdf.sap.corp:50000/irj
b) Navigate to Guided Procedures → Design Time → NWC120 → Unit 4
Process Actions→ Group ##.
2. Create a User Interface → Web Pages type callable object,
CO_Info_Webpage_GRP_##.
a) Use the following information.

Type User Interface → Web Pages


Name CO_Info_Webpage_GRP_##
Description enter an appropriate description

b) Select Next.
c) For the url type http://www.sap.com.
d) Click Next until you see Finish and Open.
e) Click Activate.
3. Optional: Test the callable
a) In the process configuration area, click the Test tab.
b) Click Execute.

130 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Actions with Callable Objects and Ad Hoc Items

Exercise 10: Create ActionsProcess


Exercise Objectives
After completing this exercise, you will be able to:
• Create an ad-hoc action.

Business Example
For you guided procedure, you would like to give the user an option to click other
links that will execute other callable objects.

Task:
Create an action, ActionsProcess##, within a process, that will utilize the You
Can, option.
1. Log in NetWeaver 7.1 CE Portal
2. Create the process, ActionsProcess##.
3. Create the block, ActionsBlock##.
4. Create the action, AC_iView##
5. Insert the callable object, CO_iViewTest##, into your Process
.
6. Update the process roles, setting all role types to be the initiator.
7. Test your new process.
8. Add the web page callable object as an adhoc item and test.
9. Adjust the Runtime view.
10. Test your newly updated process, with an adhoc option.

2008/Q1 © 2008 SAP AG. All rights reserved. 131


Unit 4: Process Actions NWC120

Solution 10: Create ActionsProcess


Task:
Create an action, ActionsProcess##, within a process, that will utilize the You
Can, option.
1. Log in NetWeaver 7.1 CE Portal
a) http://host:50000/irj For example http://twdfXXXX.wdf.sap.corp:50000/irj
b) Navigate to Guided Procedures → Design Time → NWC120 → Unit 4
Process Actions→ Group ##.
2. Create the process, ActionsProcess##.
a) With your folder highlighted choose Create Process. Accept the default
language of, English, and click create.
b) Enter the following information.

Name ActionsProcess##
Description Process to demonstrate
ad hoc and info
callable objects,
group##

3. Create the block, ActionsBlock##.


a) With your process highlighted, click Create New and choose Select to
accept Sequential Block type.
b) Highlight the block and enter the following information.

Name ActionsBlock##
Description actions block

Continued on next page

132 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Actions with Callable Objects and Ad Hoc Items

4. Create the action, AC_iView##


a) With your block highlighted, click Create New.
b) Highlight the action and enter the following information.

Name AC_iView##
Description this action will call
an iView

5. Insert the callable object, CO_iViewTest##, into your Process


.
a) With your action highlighted, click Insert New (icon to the right of Create
New)
.
b) In the bottom area of the screen, navigate to NWC120 → Unit 3 Callable
Objects → Group ##. → CO_iViewTest## and choose Select.
c) Save All.
Highlight the action and drill into the action until you can see Result
States. You should two result states, Repeat and Complete. If we had
additional actions in our process, we should change the Target for one of
the result states to go to a different action. After you complete this exercise
if you have time you can add an additional action with a simple decision
step and update the result state to point to the new action.
6. Update the process roles, setting all role types to be the initiator.
a) Highlight the process.
b) Select the Roles tab.
c) Set all roles to be initiaor.
d) Save all..
e) Activate.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 133


Unit 4: Process Actions NWC120

7. Test your new process.


a) Navigate to Guided Procedures → Runtime
b) Click Initiate a New Process and then drill down to your process Guided
Procedures → Design Time → NWC120 → Unit 4 Process Actions→
Group ##. → ActionsProcess##
c) Select the process, and choose Next.
d) Choose Initiate.
BE PATIENT. It may take a moment to display next screen.
e) Notice the left window pane, Process Activities. Currently you only see
one action. Don't bother to press the repeat button because we have not
added a target for that button. Select Complete.
8. Add the web page callable object as an adhoc item and test.
a) Navigate back to the editor window, for the ActionsProcess## as follows.
Guided Procedures → Design Time → NWC120 → Unit 4 Process
Actions→ Group ##. → ActionsProcess##
b) Select Open.
c)

Hint: 2nd pencil icon

Select Toggle Multi-Edit Mode and click Yes, to the prompt regarding
creation of an inactive version.
d) Highlight the action, AC_iVIew##.
e) Select the You Can tab.
f) Select Add and navigate to Guided Procedures → Design
Time → NWC120 → Unit 4 Process Actions→ Group ##. →
CO_Info_Webpage_Group##.
g) Choose Select.
h) Click Save All.

Continued on next page

134 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Actions with Callable Objects and Ad Hoc Items

9. Adjust the Runtime view.


a) Highlight the Process.
b) Click the Runtime Views tab.
c) Select Add Generic View.
d)

Hint: Be careful to choose correct line. They all look similar


from a quick glance.

Choose the line labeled, Process Activities (allows to view and execute
activities and access activity related information and start ad-hoc
items)
e) Select Add.
f) Select this new view as the default. Most likely it is the 2nd radio button.
g) Save All and Activate.
10. Test your newly updated process, with an adhoc option.
a) Navigate to Guided Procedures → Runtime
b) Click Initiate a New Process and then drill down to your process NWC120
→ Unit 4 Process Actions→ Group ##. → ActionsProcess##
c) Select the process, and choose Next.
d) Choose Initiate.
BE PATIENT. It may take a moment to display next screen.
e) Notice the left window pane, Process Activities. Now you see an option
to execute another action.Don't bother to press the repeat button because
we have not added a target for that button.
f) Click on text, CO_Info_Webpage_Grp##.
You should see your favorite web page displayed.
g) Select Back and then Complete.

2008/Q1 © 2008 SAP AG. All rights reserved. 135


Unit 4: Process Actions NWC120

Lesson Summary
You should now be able to:
• Create actions that use callable objects
• Create actions with ad hoc items

136 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Unit Summary

Unit Summary
You should now be able to:
• Discuss the necessity of actions, to initiate a callable object within a guided
procedures
• List capabilities of actions in guided procedures
• Create actions that use callable objects
• Create actions with ad hoc items

2008/Q1 © 2008 SAP AG. All rights reserved. 137


Unit Summary NWC120

138 © 2008 SAP AG. All rights reserved. 2008/Q1


Unit 5
Process Blocks

Unit Overview
You will build an entire guided procedure, using blocks to organize the actions. You
will get business partner data from a central ERP system, update the data, route it for
approval, then update the central ERP system with the new business partner data.

Unit Objectives
After completing this unit, you will be able to:
• Describe a sequential block type
• Create a sequential block type.
• Demonstrate how to map parameters between actions within a block.
• List block types
• Explain when to use pre-/post condition block types
• Discuss when to use the alternative block type
• Recognize the features of personal templates
• Test the guided procedure process from design time.

Unit Contents
Lesson: Sequential Blocks ........................................................ 140
Exercise 11: ProcessBlocks - Sequential Blocks........................... 147
Lesson: Other Block Types ........................................................ 167
Exercise 12: Post Condition Block ........................................... 171
Exercise 13: OPTIONAL: Alternative Blocks ............................... 177
Lesson: Personal Templates ...................................................... 189
Lesson: Design Time Testing...................................................... 193
Exercise 14: Testing a process from Design Time ......................... 195

2008/Q1 © 2008 SAP AG. All rights reserved. 139


Unit 5: Process Blocks NWC120

Lesson: Sequential Blocks

Lesson Overview
This lesson will introduce sequential blocks

Lesson Objectives
After completing this lesson, you will be able to:
• Describe a sequential block type
• Create a sequential block type.
• Demonstrate how to map parameters between actions within a block.

Business Example
You have defined a list of actions that need to run sequentially within SAP NetWeaver
CE, guided procedures. You need the actions to run in the proper order. To do so,
requires organizing the actions within a block, of the guided procedure.

Sequential Blocks

Figure 37: Components of Guided Procedures

140 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Sequential Blocks

CAF Guided Procedures (CAF GP) is a framework for modeling and managing
workflows using simple and user-friendly tools. In this course we may refer to such a
workflow as a guided procedure or a process. As a part of the Composite Application
Framework (CAF), GP enables access to multiple backend systems, consistently
combining different types of services and applications into processes. In addition, GP
supports collaboration, ad-hoc items, and offline task management using interactive
forms. It provides role-based access to tools and resources and guidance through
the workflows at runtime, thereby helping end users to easily identify and complete
their tasks.
At design time, we build a process template, which we instantiate at runtime into a
process.
Guided Procedures are built up from different structural or executable elements. These
include Blocks, Actions, and Callable Objects.
• Blocks are structural units; that is, they organize processes into reusable sections.
Blocks can contain other blocks, actions, and or complete processes (which
further fosters reuse).
• Blocks also describe the processing mode for that section of the process. For
instance, the actions within a block may be executed sequentially, in parallel, or
repeatedly in a loop.
• The individual steps in a process in GP are implemented as actions. They
contain one or two callable objects, which enable you to use external services
and applications in processes modeled with GP. Actions also contain additional
metadata to define the behavior of the callable objects within the process itself.
• ACallable object is a reusable unit that enables the execution of external
applications or services within the Guided Procedures framework.
• Callable objects are the most fine-grained elements in a process.

2008/Q1 © 2008 SAP AG. All rights reserved. 141


Unit 5: Process Blocks NWC120

Figure 38: Block Types

Figure 39: Blocks can be...

Here is an example process built by a business process expert in the sales department.
As part of their process, they Email the warehouse. However, they do not know that
this will increase Emails to the warehouse by 5 times they number of Emails they
received before this process was put in place. This means the warehouse is behind on
shipping because the Emails must be processed for the order to ship.

142 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Sequential Blocks

Additionally, the Email server was not sized for this increased volume, so IT gets
reports of the Email server performance problems.
While the business process expert built a process needed in the sale department, they
have broken processes in the warehouse and caused performance problems for all
departments using the same Email server.

Figure 40: Blocks can be...

2008/Q1 © 2008 SAP AG. All rights reserved. 143


Unit 5: Process Blocks NWC120

Figure 41: Our process: Sequential block

Figure 42: Business Partner Block: Mapping parameters between actions

Guided Procedures (GP) enables the transfer of data across the process flow using
mapping between actions' input and output parameters

144 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Sequential Blocks

Parameter search
At process, block, and action level you can search the parameter list by an
arbitrary string that you enter in the search field. The search works on parameter
names, technical names, and namespaces. You can also apply filtering - for
example, search only for parameters of string type. Asterisk (*) is supported as
a wildcard. You can also choose to perform a search on the deeper levels of
the structure hierarchy.
Semi-automatic parameter mapping
Using this feature, you can also map structures that have different children. The
parameters that are similar are mapped in a new structure. You can use this
feature when you have very large data structures and you only need to map
several matching parameters.

Figure 43: Mapping parameters between blocks

2008/Q1 © 2008 SAP AG. All rights reserved. 145


Unit 5: Process Blocks NWC120

146 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Sequential Blocks

Exercise 11: ProcessBlocks - Sequential


Blocks
Exercise Objectives
After completing this exercise, you will be able to:
• Create a process that uses a sequential block.

Business Example
You would like to automate the process of approving business partner creations and
updates. You would like to have an online form, users can enter information. After
submitting the business partner information, someone has to approve or reject the
request. Upon approval, the business partner information should be updated in the
backend SAP ERP system.

Task 1:
Build a process with one sequential block
1. Create a process with a sequential step
2. Create a sequential block, BusinessPartnerUpdateBlock##
3. Create an action, AC1_InputBP_GRP##
4. Create a callable object, CO1_InputBP_GRP##, of type Web Dynpro Form.

Task 2:
Add another action and callable action, to read business partner detail.,
1. Create action, AC2_GetBPDetail_GRP##
2. Create a callable object, CO2_GetBPDetail_GRP##, of type Content
Package.

Task 3:
Add an action and callable action, to update business partner detail.,
1. Create action, AC3_UpdateBP_GRP##
2. Create a callable object, CO3_UpdateBP_GRP##, of type Content Package.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 147


Unit 5: Process Blocks NWC120

Task 4:
Add an action and callable action, to approve business partner detail.,
1. Create action, AC4_ApproveBP_GRP##
2. Create a callable object, CO4_ApproveBP_GRP##, of type Content Package.

Task 5:
Add an action to update the central ERP with the changes to the business partner
that you just made.
1. Create action, AC5_UpdateERPBP_GRP##
2. Create a callable object, CO5_UpdateERPBP_GRP##, of type Content
Package.

Task 6:
Configure parameter mapping to pass data between the actions.
1. Notice the parameters.
2. Map the business partner.
3. Map the first name.
4. Map the last name.
5. Map Search.

Task 7:
Update the process. We do not need all default exposed parameters, and also update
role assignments.
1. Deselect exposed input parameters.
2. Ensure the approval step only occurs if the “Continue” button was selected.
3. Ensure the central ERP system is only updated if the change was approved.
Update the result states of the approve step to only update if approved, end
the process if rejected.

Task 8:
Update roles, save and activate
1. Update roles
Continued on next page

148 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Sequential Blocks

Task 9:
Testing
1. Start the process from the runtime environment.

Task 10:
Check for your business partner number in the ECC backend system.
1. If you're not already logged into the ECC backend system, please do so.
2. Check for your business partner number

2008/Q1 © 2008 SAP AG. All rights reserved. 149


Unit 5: Process Blocks NWC120

Solution 11: ProcessBlocks - Sequential


Blocks
Task 1:
Build a process with one sequential block
1. Create a process with a sequential step
a) Log onto SAP NetWeaver 7.1 CE portal, http://host:50000/irj. For
example: http://twdfXXXX.wdf.sap.corp:50000/irj
b) Navigate to Guided Procedures → Design Time → NWC120 → Unit 5
Process Blocks → Group ##.
c) With your folder highlighted, click, Create Process and then accept default
language, English, by clicking onCreate.
d)

Hint: Select the left most button to highlight a line item in the
process flow window.

Make sure to highlight the process line and then enter the following.

Name BusinessPartnerUp-
dateProcess##
Description BusinessPartnerUp-
dateProcess##

2. Create a sequential block, BusinessPartnerUpdateBlock##


a) With the Process highlighted, click on the Create New icon.
b) Accept the default value, sequential block and choose select.
c) Highlight the block line item and enter the following information.

Name BusinessPartnerUpdate-
Block##
Description BusinessPartnerUpdate-
Block##

Continued on next page

150 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Sequential Blocks

3. Create an action, AC1_InputBP_GRP##


a) With your block highlighted, click Create New
b) Highlight your action and enter the following information.

Name AC1_InputBP_GRP##
Description AC1_InputBP_Grp##

4. Create a callable object, CO1_InputBP_GRP##, of type Web Dynpro Form.


a) With your action highlighted, choose Create New.
b) Use the following entries.

Type Form → Web Dynpro Form


Name CO1_InputBP_GRP##
Description Callable object 1,
input business partner
number for group##

c) Select Next.
d) Choose Add → Add Input Field.
e) Use the following entries.

Input Field Id BusinessPartnerNumber


Input Field Lable BusinessPartnerNumber
Type String

f) Select Create and then select Next.


g) Click Finish.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 151


Unit 5: Process Blocks NWC120

Task 2:
Add another action and callable action, to read business partner detail.,
1. Create action, AC2_GetBPDetail_GRP##
a) Highlight the block, BusinessPartnerUpdateBlock##, click Create New
b) Highlight your action and enter the following information.

Name AC2_GetBPDetail_GRP##
Description AC2_GetBPDetail_GRP##

Continued on next page

152 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Sequential Blocks

2. Create a callable object, CO2_GetBPDetail_GRP##, of type Content


Package.
a) With your action highlighted, choose Create New.
b) Use the following entries.

Type Service → External Service


Name CO2_GetBPDetail_GRP##
Description Callable object 2, get
business partner detail
from ERP system for
group##

c) Select Next.
d) Choose a logical destination from drop-down, provided by your instructor,
for example T36..
e) For the field Function enter BAPI_BUPA_CENTRAL* and select Search.
f) Highlight BAPI_BUPA_CENTRAL_GETDETAIL and then select Next.
Notice you're currently on step 3, Define Input. Notice the input parameters.
g) Click Next.
Notice you're currently on step 4, Define Output. Notice the output
parameters.
h) Click Next.
i) For step 5, Set Configuration, change the field Error Handling Mode,
select, No error handling
j) Select Next and Finish

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 153


Unit 5: Process Blocks NWC120

Task 3:
Add an action and callable action, to update business partner detail.,
1. Create action, AC3_UpdateBP_GRP##
a) Highlight the block, BusinessPartnerUpdateBlock##, click Create New
b) Highlight your action and enter the following information.

Name AC3_UpdateBP_GRP##
Description AC3_UpdateBP_GRP##

2. Create a callable object, CO3_UpdateBP_GRP##, of type Content Package.


a) With your new action highlighted, choose Create New.
b) Use the following entries.

Type Form → Web Dynpro Form


Name CO3_UpdateBP_GRP##
Description Callable object 3,
update business partner
for group##

c) Select Next.
d) Select Add → Add Input Field.
e) Use the following entries.

Hint: You're adding a total of 2 input fields, but one at a time.


Enter the first column of information and then the second column
of information

Field Value Value


Input Field Id FirstName LastName
Input Field Lable FirstName LastName
Type String String

Continued on next page

154 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Sequential Blocks

f) Select Add → Add Dropdown Field

Hint: You 're adding 1 dropdown field, with 4 choices

g) Use the following entries.

Hint: Click on Add Entry 4 times, once foe each region

Field Value Value


Dropdown Id SearchBy
Dropdown Label SearchBy
Add Entry South South Region
Add Entry East East Region
Add Entry West West Region
Add Entry North North Region

h) Select Create.
i) Select Add → Add Button
j) Use the following entries.

Hint: You're adding a total of 2 buttons; The buttons have to be


created one at a time.

Field Value Value


Button Id Cancel Continue
Button Label Cancel update Continue with
and select approval an
a different update ERP
business
partner

k) Select Create.
l) Select Next and Finish.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 155


Unit 5: Process Blocks NWC120

Task 4:
Add an action and callable action, to approve business partner detail.,
1. Create action, AC4_ApproveBP_GRP##
a) highlight BusinessPartnerUpdateBlock##, and click Create New
b) Highlight your action and enter the following information.

Name AC4_ApproveBP_GRP##
Description AC4_ApproveBP_GRP##

2. Create a callable object, CO4_ApproveBP_GRP##, of type Content Package.


a) With your new action highlighted, choose Create New.
b) Use the following entries.

Type Process Control → Visual


Approval
Name CO4_ApproveBP_GRP##
Description Callable object 4,
approve business
partner for group##

c) Select Next.
d) Select Insert New 3 times.
e) Use the following entries.

Field Value Value Value


Name FirstName LastName SearchTerm
Technical Name FirstName LastName SearchTerm
Namespace Group## Group## Group##
Type String String String

f) Select Next
g) Select Next, through step 4, Define Output
h) For set configuration, select the following information.
Continued on next page

156 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Sequential Blocks

Field Value
Approve e-mail: Your request was
approved.
Recipients for approval: Initiator
Reject e-mail: Your request was
rejected
Recipients for approval: Initiator

i) Select Create.
j) Select Next and Finish.

Task 5:
Add an action to update the central ERP with the changes to the business partner
that you just made.
1. Create action, AC5_UpdateERPBP_GRP##
a) Highlight block, BusinessPartnerUpdateBlock##, and click Create New
b) Highlight your action and enter the following information.

Name AC5_UpdateERPBP_GRP##
Description AC5_UpdateERPBP_GRP##

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 157


Unit 5: Process Blocks NWC120

2. Create a callable object, CO5_UpdateERPBP_GRP##, of type Content


Package.
a) With your new action highlighted, choose Create New.
b) Use the following entries.

Type Service → External Service


Name CO5_UpdateERPBP_GRP##
Description Callable object 5,
update business partner
on central ERP for
group##

c) Select Next.
d) Choose logical destination provided by instructor.
e) For the Function field, enter Z_BAPI_BUPA* and then select Search.
f) Highlight Z_BAPI_BUPA_CENTRAL_CHANGE and select Next.
g) Select Next 2 more times, through step 4, Define Output
h) For set configuration, select the following information.

Field Value
Error Handling Mode: No error handling

i) Select Next and Finish.

Task 6:
Configure parameter mapping to pass data between the actions.
1. Notice the parameters.
a) Place the cursor on your block and select the tab Parameters.
You should see a list of all parameters for each step. This includes all BAPI
import parameters and all RFC import parameters. Notice the parameters
for each of the actions.

Continued on next page

158 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Sequential Blocks

2. Map the business partner.


a) Click Advanced Filter and use the following information.

Filter By Display Name


Pattern *business*

b) click Filter.
You should see 3 business parameters in the list from the following
actions, AC1_InputBP_GRPXX, AC2_GetDetailBP_GRPXX,
AC5_UpdateERPBP_GRPXX
c) Highlight all 3 parameters, using the 'cntrl' key to select multiple lines.
d) Select Group.
e) Accept the default values, for example Name probably has the value
BusinessPartner. Select Create.
At this point if you scroll down to the bottom, you should see
BusinessPartner listed as a <Group>.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 159


Unit 5: Process Blocks NWC120

3. Map the first name.


a) Use the following information.

Filter By Display Name


Pattern *first*

b) click Filter.
You should see 5 first name parameters in the list from the following
actions but we only need 4.
c) Highlight the following parameters.
• AC2_GetDetailBP_GRP##:Centraldataperson
• AC3_UpdateBP_GRP##
• AC4_ApproveBP_GRP##
• AC5_UpdateERPBP_GRP##,Centralperson

Hint: Remember to use the 'cntrl' to select multiple lines.

d) Select Group.
e) Accept the default values, for example Name probably has the value
FirstName. Select Create.
At this point if you scroll down to the bottom, you should see FirstName
listed as a <Group>.

Continued on next page

160 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Sequential Blocks

4. Map the last name.


a) Use the following information.

Filter By Display Name


Pattern *last*

b) click Filter.
You should see 5 last name parameters in the list from the following
actions but we only need 4.
c) Highlight the following parameters.
• AC2_GetDetailBP_GRP##:Centraldataperson
• AC3_UpdateBP_GRP##
• AC4_ApproveBP_GRP##
• AC5_UpdateERPBP_GRP##:Centralperson

Hint: Remember to use the 'cntrl' to select multiple lines.

d) Select Group.
e) Accept the default values, for example Name probably has the value
LastName. Select Create.
At this point if you scroll down to the bottom, you should see LastName
listed as a <Group>.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 161


Unit 5: Process Blocks NWC120

5. Map Search.
a) Use the following information.

Filter By Display Name


Pattern *search*

b) click Filter.
You should see 6 search parameters in the list from the following actions
but we only need 4.
c) Highlight the following parameters.

Hint: Be very careful with your selections. We do not need the


searchterm2's.

• Searchterm1, AC2_GetDetailBP_GRP##:Centraldataperson
• SearchBy, AC3_UpdateBP_GRP##
• SearchTerm,AC4_ApproveBP_GRP##
• Searchterm1,AC5_UpdateERPBP_GRP##:Centralperson

Hint: Remember to use the 'cntrl' to select multiple lines.

d) Select Group.
e) Accept the default values, for example Name probably has the value
SearchBy, Select Create.
At this point if you scroll down to the bottom, you should see SearchBy,
listed as a <Group>.

Continued on next page

162 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Sequential Blocks

Task 7:
Update the process. We do not need all default exposed parameters, and also update
role assignments.
1. Deselect exposed input parameters.
a) Highlight the process.
b) Select the parameters tab.
c) deselect the check box for every 'Exposed in Input'
d) Select Save All.
2. Ensure the approval step only occurs if the “Continue” button was selected.
a) Highlight action, AC3_UpdateBP_GRP##
b) Expand the Result States.
You should notice two results: Continue and Cancel.
c) Change the target for Cancel to AC1_InputBP_GRP##
d) Change the target for the Continue to AC4_ApproveBP_GRP##
3. Ensure the central ERP system is only updated if the change was approved.
Update the result states of the approve step to only update if approved, end
the process if rejected.
a) Highlight action, AC4_ApproveBP_GRP##.
b) Expand the Result States.
Notice two results: Input data is rejected and Input data is approved.
c) change the target for Input data is rejected to Terminal
d) Change the target for Input data is approved to AC5_Upda-
teERPBP_GRP##.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 163


Unit 5: Process Blocks NWC120

Task 8:
Update roles, save and activate
1. Update roles
a) Highlight the process.
b) Select the Roles tab.
c) For each of the steps, select the Role type to be Initiator.
d) Activate process.

Task 9:
Testing
1. Start the process from the runtime environment.
a) Guided Procedures → Runtime
b) Choose Initiate
c) Navigate to NWC120 → Unit 5 → BusinessPartnerUpdateProcess##
d) Select Next and Initiate.
e) Enter a business partner number and click complete.
In the top of the screen you see the data from the ERP system.
f) Enter a new first name, last name, and select a
new search term.
g) Click, Continue with approval and update ERP.
h) Enter the comment okay to update bp.
i) Click Approve to send your updates.
j) Optionally, execute the process again but this time reject it.

Task 10:
Check for your business partner number in the ECC backend system.
1. If you're not already logged into the ECC backend system, please do so.
a) Log into SAP ERP using your GP-## user

Continued on next page

164 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Sequential Blocks

2. Check for your business partner number


a) Execute t-code bp
b) For the field Business Partner type your <business partner
number>
You business partner detail should be displayed.

2008/Q1 © 2008 SAP AG. All rights reserved. 165


Unit 5: Process Blocks NWC120

Lesson Summary
You should now be able to:
• Describe a sequential block type
• Create a sequential block type.
• Demonstrate how to map parameters between actions within a block.

166 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Other Block Types

Lesson: Other Block Types

Lesson Overview
This lesson will describe other block types.

Lesson Objectives
After completing this lesson, you will be able to:
• List block types
• Explain when to use pre-/post condition block types
• Discuss when to use the alternative block type

Business Example
All sales orders created at your company, undergo the same business process steps.
However, depending on the region of the customer, additional approval steps may be
necessary. You want to automate the approval process in these cases.

Other Block types

Figure 44: Blocks can be...

You must add a loop decision action first. The decision action defines the loop
condition. These block types require an action with two result states: Continue and
Break. The result states are not displayed in the block flow because you cannot
define targets for them. If you choose to add a second decision action, the new action
replaces the one you previously inserted.

2008/Q1 © 2008 SAP AG. All rights reserved. 167


Unit 5: Process Blocks NWC120

Figure 45: Post-condition Exercise

Figure 46: Parallel blocks

Any action or block can be added to the block flow.


For actions with multiple result states, you can also define targets as described in
step 8 below.
You can specify additional criteria for block completion, depending on the completion
of actions inside the block as described in step 9 below.

168 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Other Block Types

Figure 47: Dynamic Parallel blocks

Any action or block can be added to the block flow.


For actions with multiple result states, you can also define targets as described in
step 8 below.
You can specify additional criteria for block completion, depending on the completion
of actions inside the block as described in step 9 below.

Figure 48: Alternative

2008/Q1 © 2008 SAP AG. All rights reserved. 169


Unit 5: Process Blocks NWC120

To create a business logic callable object do the following:.


• Create a new callable object of type Business Logic.
• IntheInput area enter the what you want to test. In our case it is a search term, so
we enter a string value called SEARCHBY.
• You only need Output parameters if the business logic will calculate and return
an actual output (like field1 + field 2 = field 3). In our example, we just want to
read the text string SEARCHBY and determine if it has the exact text EMEA in
the term. For this case, no Output parameters are required.
• In the configuration for the callable object, you only need to configure the Result
States. You need a result state for each possible output. Since we want to know
if it the value is EMEA or not, we need two result states. One for is EMEA,
the other for is not EMEA.
• In each result state you key in the syntax for the check. There are many functions
available for you, in our case the SEARCHBY == EMEA is what we need
for our is EMEA result state.

Figure 49: Alternative Block Exercise

170 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Other Block Types

Exercise 12: Post Condition Block


Exercise Objectives
After completing this exercise, you will be able to:
• Create and use a post condition block type.

Business Example
You currently execute a guided procedure process periodically. Now, you've
recognized the need to have an option to re-execute the process.

Task 1:
Build a process with a post-condition block
1. Log in NetWeaver 7.1 CE Portal
2. Create process, PostConditionProcess.
3. Add a post condition block, PostConditionBlock, to this process.

Task 2:
Add the action for condition.
1. Create a loop-decision action, AC1_DecideToLoop##
2. Create a callable object, CO1_DecideToLoop## of type decision dialog.

Task 3:
Import the existing sequential block.
1. Import block, BusinessPartnerUpdateBlock##, as the loop body block.

Task 4:
Update the process
1. Update roles, save and activate.

Task 5:
Testing
1. Start the process from the runtime environment.

2008/Q1 © 2008 SAP AG. All rights reserved. 171


Unit 5: Process Blocks NWC120

Solution 12: Post Condition Block


Task 1:
Build a process with a post-condition block
1. Log in NetWeaver 7.1 CE Portal
a) http://host:50000/irjFor example: http//twdfXXXX.wdf.sap.corp/50000/irj
2. Create process, PostConditionProcess.
a) Navigate to Guided Procedures → Design Time → NWC120 → Unit
5 → Group##.
b) With your folder highlighted, click Create Process and then click create to
accept English as the default language.
c) With the process line highlighted, enter the following information.

Name PostConditionProcess##
Description PostConditionProcess##

3. Add a post condition block, PostConditionBlock, to this process.


a) With the process line highlighted, click Create New.
b) Careful! Don't click too quickly. Read on. Use the drop-down to choose
Postcondition Loop Back and then click Select.
c) Highlight the block enter the following information.

Name PostConditionBlock##
Description PostConditionBlock##

Continued on next page

172 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Other Block Types

Task 2:
Add the action for condition.
1. Create a loop-decision action, AC1_DecideToLoop##
a) Ensure that the block, PostConditionBlock##, is highlighted.

Hint: Notice in the Item field, the default text, Loop Decision
Action. This is because the block is of type 'PostCondition Loop
Block'

Click, Create New.


b) Highlight the action and enter the following information.

Name AC1_DecideToLoop##
Description AC1_DecideToLoop##

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 173


Unit 5: Process Blocks NWC120

2. Create a callable object, CO1_DecideToLoop## of type decision dialog.


a) With the action, AC1_DecideToLoop##, highlighted, click Create New.
b) Enter the following information.

Type Process Control → Decision


Dialog
Name CO1_DecideToLoop##
Description Callable object1, input
business partner number
for group ##

c) Select Next.
d) Make sure Decision for Loops is selected and click Next.
e) Select Next again, such that you are at step 4, Set Configuration.
f) Enter the following information.

Heading: Change another?


Message: Do you want to change
another business
partner?
Continue Button Label: Yes
Break Button Label: No

g) Select Next and then Finish.


h) Select Save All to save your entire guided procedure.

Continued on next page

174 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Other Block Types

Task 3:
Import the existing sequential block.
1. Import block, BusinessPartnerUpdateBlock##, as the loop body block.
a) Highlight the block, PostConditionBlock##.
b) Click the drop-down for Item and select Loop Body Block.
c) Click Insert.
d) Navigate to Guided Procedures → Design Time → NWC120 → Unit 5 →
Group## → BusinessPartnerUpdateBlock## and choose Select.
Your process should now have a Process, Postcondition Loop Block, Loop
Decision Action, and a Loop Body Block.

Task 4:
Update the process
1. Update roles, save and activate.
a) Highlight the process, PostConditionProcess##
b) Select the tab, Roles.
c) For each of the steps, select the Role Type to be initiator.
d) Select the tab, Parameters.
e) For each of the parameters, deselect the checkbox in the column ,
Exposed in Input.
f) Select Save All and then Activate.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 175


Unit 5: Process Blocks NWC120

Task 5:
Testing
1. Start the process from the runtime environment.
a) Guided Procedures → Runtime
b) Click Initiate
c) Navigate to NWC120 → Unit 5 → → GroupXX → PostConditionProcess##
d) Select Next and Initiate.

Hint: When the process starts, notice the Iteration 1 in the


Activities area.

e) Enter a business partner number and click complete.


In the top of the screen you see the data from the ERP system.
f) Enter a new first name, last name, and search
term.
g) Click, Continue with approval and update ERP.
h) Click Reject to send your updates.
You should see the question that was configured earlier. Change Another?
i) Choose Yes.
j) Make sure to notice the Process Activities window, with the another
iteration.
k) Repeat the steps again but finally choose No, when you're finished testing.

176 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Other Block Types

Exercise 13: OPTIONAL: Alternative Blocks


Exercise Objectives
After completing this exercise, you will be able to:
• Use Alternative Blocks

Business Example
You would like a guided procedure use business logic, to decide which block should
be executed.

Task 1:
Create a process with one sequential block
1. Create a process, AlternativeProcess.
2. Add a sequential block, MainAltBlock##, to this process.

Task 2:
Insert previously crate actions to get business partner number and detail.
1. Insert action, AC1_InputBP_GRP##
2. Insert action, AC2_GetBPDetail_GRP##

Task 3:
Insert and alternative block and the action to determine which block to execute.
1. Create an alternative block, AlternativeBlock##
2. Create an action, SearchBYDetermineWhichBlock##that enables you to
choose which block will execute.
3. Create a callable object of type business logic to look inside the SearchBy field
to determine which block to execute.
4. Test your new business logic callable object.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 177


Unit 5: Process Blocks NWC120

Task 4:
Create two blocks, one for each result state.
Create two blocks for the result states. For the EMEA result state, you will call
the OneApproverBlock##. For the not EMEA result state, use block name
NoApproversBlock##.
1. Create a sequential block within the alternatives block called
OneApproverBlock##.
2. Create a sequential block within the alternatives block called
NoApproversBlock##.

Task 5:
Create approval steps inside approval blocks and set result state to correct block.
Update the approval blocks by adding appropriate steps for each block.
OneApproverBlock## should have 3 steps:

• Update BP
• Approve BP
• Update ERP

NoApproverBlock## should have 2 steps:

• Update BP
• Update ERP

1. Update the block, OneApproverBlock##, with the previous


actions AC3_UpdateBP_GRP##, AC4_ApproveBP_GRP##. and
AC5_UpdateERPBP_GRP##.
2. Update the block, NoApproversBlock##, with the previous actions you
created to update the business partner, AC3_UpdateBP_GRP## and
AC5_UpdateERPBP_GRP##.
3. Update the result states from your decision action, SearchBYDetermineWhich-
Block##, to execute the OneApprover or NoApprovers blocks.

Continued on next page

178 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Other Block Types

Task 6:
Update the process
Now we do some final updates to the process before testing. This includes parameters
updates and updating role assignments.
1. Update parameter mapping for MainAltBlock.
2. Update parameter mapping for AlternativesBlock##
3. Complete update parameter mapping for MainAltBlock##
4. Optionally, deselect any parameters that are exposed. If you do not do this step,
you must fill in required parameters when testing your process.
5. Update roles, save, and activate.

Task 7:
Test your process
1. Test your process and verify it works correctly. To do this you need a business
partner number. You should have a business partner number created from a
previous exercise. If not, ask your instructor for a business partner number.
Start your process with the guided procedures runtime. Execute the process
twice to execute each alternative block.

2008/Q1 © 2008 SAP AG. All rights reserved. 179


Unit 5: Process Blocks NWC120

Solution 13: OPTIONAL: Alternative Blocks


Task 1:
Create a process with one sequential block
1. Create a process, AlternativeProcess.
a) Navigate Guided Procedures → Design Time → NWC120 → Unit 5
b) Select Create Process and choose Create to accept English as the default.
c) With the process line highlighted, enter the following information.

Name AltenrativeProcess##
Description AltenrativeProcess##

2. Add a sequential block, MainAltBlock##, to this process.


a) With the process line highlighted, click Create New.
b) Click Create New and choose Select.
c) Highlight the block and enter the following information.

Name MainAltBlock##
Description MainAltBlock##

Task 2:
Insert previously crate actions to get business partner number and detail.
1. Insert action, AC1_InputBP_GRP##
a) With the block already highlighted, click Insert.
b) Navigate to Guided Procedures → Design Time → NWC120 → Unit 5 →
Group## → AC1_InputBP_GRP## and choose select.
2. Insert action, AC2_GetBPDetail_GRP##
a) With the block already highlighted, click Insert.
b) Navigate to NWC120 → Unit 5 → Group## → AC1_InputBP_GRP##
and choose select.

Continued on next page

180 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Other Block Types

Task 3:
Insert and alternative block and the action to determine which block to execute.
1. Create an alternative block, AlternativeBlock##
a) Highlight the block, MainAltBlock## and change the Item area so that
Block as subnode is selected.
b) Select, Alternatives Block and choose Select.
c) Highlight the block and enter the following information.

Name AlternativesBlock##
Description AlternativesBlock##

2. Create an action, SearchBYDetermineWhichBlock##that enables you to


choose which block will execute.
a) With the block, AlternativesBlock##, highlighted, select, Create New.
b) Highlight the new action and enter the following information.

Name SearchByDetermineWhich-
Block##
Description SearchByDetermineWhich-
Block##

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 181


Unit 5: Process Blocks NWC120

3. Create a callable object of type business logic to look inside the SearchBy field
to determine which block to execute.
a) With the action, SearchByDetermineWhichBlock## highlighted,
click, Create New.
b) Enter the following information.

Type Process Control → Business Logic


Name CO_IfSearchByisEMEA##
Description use the search by field
to determine which
block to execute.

c) Select Next until you get to Define Input.


d) For the input select Insert New. Insert a field called BL_SearchBY. It
should be a string with BL_SearchBY as the Context Parameter and the
Technical Name.
e) Select Next until you get to Set Configuration.
f) We will not use Output Parameters. We will only use Result states. Select
Add to add a Result State.
g) In the field New State Name enter isEMEA. Then select Add State. Click
on the “…” to further define this result state.
h) Enter the following expression: @BL_SearchBY=="EMEA". If you click
on BL_SearchBY once under the Input Parameters it will copy the field to
the Enter expression area. Then you need to type in ==”EMEA”
i) Select Apply.
j) Enter another expression for isNotEMEA and enter @BL_SearchBY
!="EMEA" as the expression.
k) Select Next and Finish.

Continued on next page

182 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Other Block Types

4. Test your new business logic callable object.


a) Highlight the action you just created (SearchBYDetermineWhichBlock##),
and drill into the Result States in the action. Notice that you have two
Custom IDs: isEEnter EMEA as the Value and select Execute. The Result
details should say “isEMEA”. Optionally, select Start Over and enter
APA as the Value and the test results will be “isNotEMEA”.MEA and
isNotEMEA.
b) Highlight your callable object, CO_IfSearchByIsEMEA## and select the
Test tab.
c) Enter EMEA as the Value and select Execute. The Result details should
say “isEMEA”. Optionally, select Start Over and enter APA as the Value
and the test results will be “isNotEMEA”.
d) You will now create blocks for each of these result states.

Task 4:
Create two blocks, one for each result state.
Create two blocks for the result states. For the EMEA result state, you will call
the OneApproverBlock##. For the not EMEA result state, use block name
NoApproversBlock##.
1. Create a sequential block within the alternatives block called
OneApproverBlock##.
a) Place the cursor on your recently created ALTERNATIVE
block,AlternativesBlock## , so that the Item area is focused on Block
(as subnode).
b) Select Create New. Select Sequential block and rename this block
OneApproverBlock##.
c) Select Save all to save your guided procedure.
2. Create a sequential block within the alternatives block called
NoApproversBlock##.
a) Place the cursor on your recently created block, AlternativesBlock## so
that the Item area is focused on Block (as subnode).
b) Select Create New. Select Sequential block and rename this block
NoApproversBlock##.
c) Select Save all to save your guided procedure.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 183


Unit 5: Process Blocks NWC120

Task 5:
Create approval steps inside approval blocks and set result state to correct block.
Update the approval blocks by adding appropriate steps for each block.
OneApproverBlock## should have 3 steps:

• Update BP
• Approve BP
• Update ERP

NoApproverBlock## should have 2 steps:

• Update BP
• Update ERP

1. Update the block, OneApproverBlock##, with the previous


actions AC3_UpdateBP_GRP##, AC4_ApproveBP_GRP##. and
AC5_UpdateERPBP_GRP##.
a) Place the cursor on your OneApproverBlock## so that the Item area is
focused on Action. Select Insert.
b) Select your actions AC3_UpdateBP_GRP##, AC4_ApproveBP_GRP##
, and AC5_UpdateERPBP_GRP## that is in folder NWC120 → Unit
5 → Group## .
c) You can insert all three at once by first selecting on one action, then click
on the box in front of the other actions to select them at the same time.
d) Click on Select to insert the actions.
e) After inserting multiple actions simulatanesously, the actions may not be in
the correct order. User the arrows to move actions up and down.
f) Select Save all to save your guided procedure.

Continued on next page

184 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Other Block Types

2. Update the block, NoApproversBlock##, with the previous actions you


created to update the business partner, AC3_UpdateBP_GRP## and
AC5_UpdateERPBP_GRP##.
a) Place the cursor on your NoApproversBlock## so that the Item area is
focused on Action. Select Insert.
b) Select your actions AC3_UpdateBP_GRP## and AC5_Upda-
teERPBP_GRP## that are in folder NWC120 → Unit 5 → Group##
c) Click on Select.
d) Select Save all to save your guided procedure.
3. Update the result states from your decision action, SearchBYDetermineWhich-
Block##, to execute the OneApprover or NoApprovers blocks.
a) Place the cursor on your SearchBYDetermineWhichBlock## that is located
inside your AlternativesBlock##.
b) Notice the two result states: isEMEA and isNotEMEA.
c) Update the result states so that the isEMEA result state has a target of
your OneApproverBlock## and the isNotEMEA has a result state of your
NoApproversBlock##.

Task 6:
Update the process
Now we do some final updates to the process before testing. This includes parameters
updates and updating role assignments.
1. Update parameter mapping for MainAltBlock.
a) Highlight main block, MainAltBlock##, and select the tab Parameters.
b) Map the business partner, as shown in following table.

BusinessPartnerNumber AC1_InpputBP_GRP##
Businesspartner AC2_GetBPDetail_GRP##,
Businesspartner AlternativesBlock##.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 185


Unit 5: Process Blocks NWC120

2. Update parameter mapping for AlternativesBlock##


a) Highlight alternatives block, AlternativesBlock##, and select the tab
Parameters
b) Use the advanced Filter method to search for “Search*” and map the
BL_SearchBY with the Searchterm1 and SearchBy fields.
c) Repeat this for first name and last name.
3. Complete update parameter mapping for MainAltBlock##
a) Highlight main block, MainAltBlock##, and select the tab Parameters.
b) Perform mapping for Business Partner, Search by, First Name, and Last
Name. Solutions are similar to previous exercise steps.
c) Select Save All to save your work.
4. Optionally, deselect any parameters that are exposed. If you do not do this step,
you must fill in required parameters when testing your process.
a) Highlight main block and select the tab Parameters.
b) Select Input Parameters. You will see a list of all parameters for each step.
Notice that each of these parameters has a check boxed in the Exposed
column. This means that when the process starts we will prompt the user
to enter data in each parameter. We do not need this for our process, so
deselect the check box for every parameter. There may be several pages
of parameters.
c) Click on Save Changes in the lower left.
d) Select Save all to save your guided procedure.
5. Update roles, save, and activate.
a) Highlight the process and select the tab Roles.
b) For each of the steps, select the Role type to be Initiator.
c) Save All and Activate your process.

Task 7:
Test your process
1. Test your process and verify it works correctly. To do this you need a business
partner number. You should have a business partner number created from a
previous exercise. If not, ask your instructor for a business partner number.

Continued on next page

186 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Other Block Types

Start your process with the guided procedures runtime. Execute the process
twice to execute each alternative block.
a) Before testing your process, login to your backend system and update
your business partner to have EMEA as the search term. Do this by going
to transaction code BP and changing your business partner. Ask your
instructor if you do not remember how to access your business partner.
b) You can test the process from the design time via the Instantiation tab or
from the runtime. These instructions use the runtime to test the process.
c) Navigate to Guided Procedures → Runtime. Select Initiate a New Process
under the Start a New Process Item.
d) Select your process in NWC120 → Unit 5 → Group## →
AlternativeProcess## .
e) Select Next and Initiate
f) Enter your business partner number with preceding zeros, for example,
0000000101. The business partner number has a length of 10. Click
Complete.
g) Execute the process so that one of the alternative blocks occurs. Then
execute the process again to test the other alternative block.

2008/Q1 © 2008 SAP AG. All rights reserved. 187


Unit 5: Process Blocks NWC120

Lesson Summary
You should now be able to:
• List block types
• Explain when to use pre-/post condition block types
• Discuss when to use the alternative block type

188 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Personal Templates

Lesson: Personal Templates

Lesson Overview
This lesson will explain personal templates

Lesson Objectives
After completing this lesson, you will be able to:
• Recognize the features of personal templates

Business Example
You want to explain options to your department members that will help them to
personalize a guided procedure.

Personal Templates

• Personal Templates
– Guided Procedures Personal Templates enable you to:
Store development objects in a ‘private’ location, unseen from the Gallery.
Enable business users to have their own ‘workspace’.
Can be published to ‘Public’ templates that others can access the templates.
Provides limited functions. Users can create Actions and Processes but
not callable objects.
The Guided Procedures end-user design time and the Personal Templates workset is a
tool with which the end-user can define processes in a simplified environment.
Using this workset, the GP User designs simple processes. The workset is part of the
simplified GP User design time accessible to the GP User portal role (along with GP
runtime). Compared to the GP regular design time it is a restricted workset providing
an easier to use but more limited environment.
The system stores all development objects belonging to the action and the process
template types in this Personal Templates workset.

2008/Q1 © 2008 SAP AG. All rights reserved. 189


Unit 5: Process Blocks NWC120

In particular, if the only role you have is the GP User portal role, you can only use a
specific selection of Callable Objects in the GP User design time when creating your
actions. You can only use those Callable Objects which have been assigned the basic
permission level. Users who have the GP Expert User portal role, however, can see all
elements, that is, all elements from the basic, advanced, and expert levels.

Figure 50: First look at Personal Templates

You can use this function to create your own simple processes without having to use
the highly complex GP design time functionality.
You create your processes simply by using the Action development object type. This
means you do not have to bother about integrating further types (blocks, callable
objects); Callable objects are automatically integrated by the system.
You do not have to pay attention to the versioning aspects which are valid for GP
development objects in the design time.
You do not have to activate your development objects - that is your actions and
process templates manually.
Two wizards are available for creating simple Process template objects (see Supported
types of Processes for details):

190 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Personal Templates

Check List Wizard - a single phase process with parallel activities and a single
processor.
Simple Sequence Wizard - a single phase sequential process with multiple
processors When creating a process, you always create an action as well. Both
wizards include the step Defining Activities that is identical to the Create Action
function.
When creating a process, you always create an action as well. Both wizards include
the step Defining Activities that is identical to the Create Action function.
This Create Process function in the Personal Templates workset is identical to the
Design and Start a Simple Process function in the Runtime environment.
You can use this function to create your own simple processes without having to use
the complex functionality of the GP design time.
Contextual Navigation Panel
Using the links available in the contextual navigation panel, you can create the
objects that are stored in the Personal Templates workset.
Filters and Content Management
Using the available filters, you can choose to display only the selected types
of objects that are stored in the Personal Templates – actions or processes. In
addition, you can create and edit folders, delete and publish objects.
GP Content
The content of the Personal Templates is displayed in the central frame. Here
you can browse the available folders and manage them or their content.

2008/Q1 © 2008 SAP AG. All rights reserved. 191


Unit 5: Process Blocks NWC120

Lesson Summary
You should now be able to:
• Recognize the features of personal templates

192 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Design Time Testing

Lesson: Design Time Testing

Lesson Overview
The purpose of this lesson is to explain how to test a guided procedure process.

Lesson Objectives
After completing this lesson, you will be able to:
• Test the guided procedure process from design time.

Business Example
As a developer, you need to check that your guided procedure works from the design
time screen.

Testing a process

• Testing from Design Time


When building a process and testing, sometimes it is easier to start the process
from the design time instead of always using runtime to start the process.
1. In the Gallery open up your process
2. Select the “Instantiation” tab from the process
3. Select “Start Process Automatically”
4. Select “Generate Instantiate URL”
5. Select “Open Instantiate Application”
Note: If the first step requires the portal (such as an iView), this method
of testing will not work.

In design time, while your process in edit or display mode you can test the process
from the Instantiation tab.Optional: Configure the allowed process instance number
by selecting one of the following:
Multiple instances are permitted
At runtime, you can start multiple processes from the same template
simultaneously; this option is enabled by default
A single running instance is permitted for each user
If a user has initiated a process from this template, he or she cannot start another
instance before the first process is completed

2008/Q1 © 2008 SAP AG. All rights reserved. 193


Unit 5: Process Blocks NWC120

A single instance is permitted


Each user can only start a process once from this process template
Optional: Enable automatic process startup by setting the Process is started
automatically indicator. You can choose to start the process automatically also when
you generate an instantiation URL.
Optional: Generate a URL to start the process.On the Instantiation tab page, you can
enable the following options:
Include Default Parameters
If you have defined default values for any of the process input parameters, these
are included in the URL
Automatically Start the Process
If default values are provided for the input parameters, and users are assigned to
all process roles, the process is automatically started
Generate Instantiate URL should launch the process If the process does not start
automatically, you can start it by choosing Open Instantiate Application.

194 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Design Time Testing

Exercise 14: Testing a process from Design


Time
Exercise Objectives
After completing this exercise, you will be able to:
• Test a Process from Design Time

Business Example
Before handing off your completed guided process to end users, you would like to test
it from the Design Time Environment

Task:
Test your process from Design Time
1. Log in NetWeaver 7.1 CE Portal
2. Navigate to Design Time
3. Test

2008/Q1 © 2008 SAP AG. All rights reserved. 195


Unit 5: Process Blocks NWC120

Solution 14: Testing a process from Design


Time
Task:
Test your process from Design Time
1. Log in NetWeaver 7.1 CE Portal
a) http://host:50000/irj For example: http//twdfXXXX.wdf.sap.corp/50000/irj
2. Navigate to Design Time
a) Guided Procedures → Design Time → NWC120 → Unit 5 - Process Blocks
→ Group ##. → BusinessPartnerUpdateProcess##. and click OPEN
3. Test
a) Click on the Instantiation tab
b) Click Start Process Automatically
c) Click Generate Instantiate URL
d) Click Open Instantiate Application
e) The remainder of the test steps are the same as the previous exercise.

196 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Design Time Testing

Lesson Summary
You should now be able to:
• Test the guided procedure process from design time.

2008/Q1 © 2008 SAP AG. All rights reserved. 197


Unit Summary NWC120

Unit Summary
You should now be able to:
• Describe a sequential block type
• Create a sequential block type.
• Demonstrate how to map parameters between actions within a block.
• List block types
• Explain when to use pre-/post condition block types
• Discuss when to use the alternative block type
• Recognize the features of personal templates
• Test the guided procedure process from design time.

198 © 2008 SAP AG. All rights reserved. 2008/Q1


Unit 6
Email Templates

Unit Overview
In this unit you'll design an email template that can be used within a guided procedure.

Unit Objectives
After completing this unit, you will be able to:

• Create an email template

Unit Contents
Lesson: Email Templates .......................................................... 200
Exercise 15: Creating an Email Template ................................... 207

2008/Q1 © 2008 SAP AG. All rights reserved. 199


Unit 6: Email Templates NWC120

Lesson: Email Templates

Lesson Overview
The lesson introduces you to Guided Procedures (GP) framework which can generate
e-mail messages for notifications.

Lesson Objectives
After completing this lesson, you will be able to:
• Create an email template

Business Example
You require a step within your guided procedure to send an email to an approving
manager. The manager will need to review some of the process specific content to
make a decision.

Email Templates

Figure 51: Why Email Templates?

Since Guided Procedures are often interactive composites that require the input
and cooperation of several actors, there must be a way to communicate vital
information, such as required actions, impending deadlines, approval requests, and
acknowledgements. Users are most comfortable with email, and thus that is a standard
way for CAF GP to link users in processes. It is impossible, however, to know at
design time all of the information which needs to be in the email at runtime; some of
the information will be specific to the sender, recipient, date/time, or specifics of the
process instance. For that reason, CAF GP allows to set up email templates that let
you build the basic message and fill it with process-specific content at runtime.

200 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Email Templates

The Administration workset allows you to manage e-mail templates, which are used
as e-mail notifications in the Guided Procedures (GP) runtime. Guided Procedures
uses e-mails for various purposes. Here are some examples:
• Sending a form (as attachment to an e-mail)
• Sending error reports
• Sending confirmations, for example, of request approvals

• Prerequisite for Email Templates


1. You must have GP administrator permissions to create mail templates.
2. Recipient users must have their email address specified for Identity
Management
Guided Procedures → User Administration
http://host:50000/irjUser Administration → enter user name → select go → highlight
user id line item
You can use the tools in the Administration workset to:
• Create e-mail templates
• Display e-mail templates
• Edit e-mail templates
• Create translated versions of e-mail templates
• Delete e-mail templates

2008/Q1 © 2008 SAP AG. All rights reserved. 201


Unit 6: Email Templates NWC120

Figure 52: Creating Email Templates

• Creating Email Templates


1. Guided Procedures → Administration → General → Maintain Email
Templates
2. New → HTML Template
3. Enter the following data
Master Language
Technical Name
Language - select the translation language of the template
Title
Content - enter HTML code with the text of the email that will be sent.
4. Chose Create

202 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Email Templates

Figure 53: Check the Email Template

Replacement Structures - You can access and use variables based


on roles, built-in system fields, or context parameters in your email
templates. Separate the elements with the dot (.) operator.
Prefixes Prefix Description
ctxt prefix used to access context variabels
role prefix used to access GP process roles
sy prefix used to access built-in
variables, system information
Process Roles Prefix Description
initiator the initiator of the running GP process
overseer the overseer[s] of the running GP
process
participant the recipient[s] of the e-mail generated
from the e-mail template
Process Role Prefix Description
Parameters
firstname the first name of the user

lastname the last name of the user

2008/Q1 © 2008 SAP AG. All rights reserved. 203


Unit 6: Email Templates NWC120

accountname the account name (identifier) of the


user
System Variables Prefix Description
currenttime the current time
processid the process identifier of the running
GP process
workitemmurl the URL of the current work item in
your running GP process

Replacement
a parameter that you can enter in a MIME template at design time. This
parameter is replaced by a custom value at runtime.
You can use replacements when you want to personalize the e-mails that are sent by
Guided Procedures (GP). Using the scripting language, you can define replacements
for the context parameters of the callable object using the e-mail template provided,
the built-in parameters that give system information, and the built-in process roles.
For example, if you want to address the recipient directly in the e-mail, you can
enter a replacement at the beginning of the e-mail, and at runtime the system enters
the relevant name there.

204 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Email Templates

Figure 54: Example Using Replacements

Hint: The seemingly quote symbol is actually the key on the keyboard next to
the number '1'.

• Scripting Language for Replacements


A Scripting language – similar to UNIX scripting languages – is provided to
manipulate data used in replacements.
– Language elements include:
General elements (eg eval, exists, write, writeln)
Flow control elements (eg if…else, switch, while, stop)
String handling functions (eg codeurl, substr, len)
Mathematical functions (eg not, add, sub, div, mod, mul)
Context handling functions (eg set, delete, clear)
Comparison operators (eg =, <, >, <=, >=)
Example

if( exists(ctxt.ProcessDueDate) )
{ writeln(“ Your input to the process is due by “ (ctxt.ProcessDueDate) );
}

2008/Q1 © 2008 SAP AG. All rights reserved. 205


Unit 6: Email Templates NWC120

206 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Email Templates

Exercise 15: Creating an Email Template


Exercise Objectives
After completing this exercise, you will be able to:
• Create an Email Template

Business Example
You would like to create an email template that can be used when approving or
rejecting actions during runtime of a guided procedure process.

Task:
Create an email template.
1. Log in NetWeaver CE Portal
2. Navigate to Maintain Email Templates.
3. Create the email template.

2008/Q1 © 2008 SAP AG. All rights reserved. 207


Unit 6: Email Templates NWC120

Solution 15: Creating an Email Template


Task:
Create an email template.
1. Log in NetWeaver CE Portal
a) http://localhost:50000/irj
2. Navigate to Maintain Email Templates.
a) Guided Procedures → Administration → Maintain E-Mail Templates
3. Create the email template.
a) Click HTML Template
b) Enter the following information.

Technical System DueDateNotification##


Title DueDateNotification##
Content Type HTML
Content read the details below.

Continued on next page

208 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Email Templates

<html>
<head>
<title>DueDate</title>
</head>
<body>
<p>
Dear Mr/Mrs

{
writeln (role.initiator.lastname)
‘,
</p>
<p>
This is to alert you that the due date for your process has arrived, and you
must complete the process or miss the deadline.
</p>
<p>Best Regards,</p>
<p><i>Process Administrator</i></p>

Hint: You must enclose the scripting element in the salutation with
the back tick (‘), not the single quote. It is the key to the left of the
#1, on your keyboard. The back tick,(also known as the grave) is
the unshifted tilde key on English keyboards.

c) Click the check button.


d) Click Create.

2008/Q1 © 2008 SAP AG. All rights reserved. 209


Unit 6: Email Templates NWC120

Lesson Summary
You should now be able to:
• Create an email template

210 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Unit Summary

Unit Summary
You should now be able to:
• Create an email template

2008/Q1 © 2008 SAP AG. All rights reserved. 211


Unit Summary NWC120

212 © 2008 SAP AG. All rights reserved. 2008/Q1


Unit 7
Forms Processing

Unit Overview

Unit Objectives
After completing this unit, you will be able to:

• Discuss the evolution of paper forms to electronic forms.


• Describe how forms can be used within guided procedures.
• Describe how standalone forms can be used to initiate a guided procedure
process.
• Create an interactive form.
• Recognize the possibility to pre-populate fields within the form
• Discuss the option to validate the data entered in the form

Unit Contents
Lesson: Reasons for forms ........................................................ 214
Lesson: Using Forms within Guided Procedures ............................... 219
Exercise 16: Adobe Interactive Form Starts Guided Procedure ......... 225
Exercise 17: Optional: Adobe From Troubleshooting ..................... 241
Lesson: Administrative Task....................................................... 246
Exercise 18: Adobe Remote Form Setting .................................. 251

2008/Q1 © 2008 SAP AG. All rights reserved. 213


Unit 7: Forms Processing NWC120

Lesson: Reasons for forms

Lesson Overview
This lesson will cover the advantages of using electronic forms.

Lesson Objectives
After completing this lesson, you will be able to:
• Discuss the evolution of paper forms to electronic forms.

Business Example
You have to convince your manager of the advantages of using electronic forms over
paper forms.

Paper Forms verses Electronic Forms

• Understanding Forms
– Forms typically offer a service, share knowledge, or collect and provide
answers.
– A form is the document that an end user views or interacts with.
– The form design specifies the layout, data capture, and final presentation
rules for the form

214 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Reasons for forms

Almost all employees within your company deal with some type of form to initiate
a business process or to continue the process or to finally complete/approve the
process. Some typical examples when forms may be used to facilitate a business
process are as follows.

• Business processes that may require forms.


– Personnel change requests
– Requisition request
– Vacation request
– Business travel request
– Vendor request
– Customer request

• Challenges in Forms-Based Processes


– Paper-based form processes have limitations.
Error-prone and easily outdated
Manual data re-entry
Process status is hard to track
High costs (e.g. production, storage)
$30 million per year for a global organization*
– Casual users (including executives) are typically unfamiliar with
enterprise software.
Access to enterprise applications needs to be intuitive.
– External users (suppliers etc.) are disconnected from the process.
System-relevant data capture is cumbersome.
Using forms is a familiar concept for most employees. What is new and continuously
evolving are the possible ways to now use forms more efficiently. Many paper
form-based business processes can realize great benefit by automating the access to

2008/Q1 © 2008 SAP AG. All rights reserved. 215


Unit 7: Forms Processing NWC120

forms and also automating the rendering of user entries from forms. As such, the steps
of the process which require forms can potentially be handled much more efficiently
between users, which can expedite a more rapid closure of the business process.

• Interactive Forms based on Adobe Software - Key Capabilities


1. Integrate interactive PDF documents into business processes driven by
SAP applications
2. Allow forms-based input combined with workflow to start automated
follow-up steps
3. Generate forms that contain data extracted from SAP systems
4. Use dynamic or static forms
5. Complete forms online or offline
6. Submit data from the form back to SAP systems
7. Allow users to print forms
SAP Web AS contains all the required components for both the design and the run
time of Interactive Forms. End users displaying or editing PDF forms in a browser, in
SAP GUI, or on their local hard drives need Adobe Reader 6.0.2 or higher, which can
be downloaded from the Adobe website.
Offline form
A self contained electronic representation of a paper form where end-user
interaction is possible using input fields or action buttons.
Adobe Life Cycle Designer
An easy-to-use form design tool, you can access directly in the development
environments for both ABAP (ABAP Workbench) and Java (SAP NetWeaver
Developer Studio)

216 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Reasons for forms

Adobe document services


A set of Web services that run on the Java engine of SAP Web Application Server.

• Improving Productivity with Interactive Forms


– Eliminate process latency, duplication and errors in paper forms
– Integrate SAP application Data
– Support casual and mobile users
– Minimize training time
– Get the job done faster, and at lower cost

• Form Scenarios - Scenarios for capturing or displaying data in a Form


– Interactive forms
Users complete the form (online/offline)
Select options online to submit the form data to a predefined process
Optional Support for data validations
– Non-interactive forms
Designed to present information to end users
Pre-populated with data
Data can not be added or modified
– Print and fill forms
End user opens and prints the form
Fills it out manually
Returns it by fax or mail

2008/Q1 © 2008 SAP AG. All rights reserved. 217


Unit 7: Forms Processing NWC120

Lesson Summary
You should now be able to:
• Discuss the evolution of paper forms to electronic forms.

218 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Using Forms within Guided Procedures

Lesson: Using Forms within Guided Procedures

Lesson Overview
This lesson will demonstrate how to create and use an interactive form, to start a
guided procedure.

Lesson Objectives
After completing this lesson, you will be able to:
• Describe how forms can be used within guided procedures.
• Describe how standalone forms can be used to initiate a guided procedure
process.
• Create an interactive form.

Business Example
You want your guided procedures to be initiated via an interactive form.

Creating the Interactive Form

Figure 55: Adobe LifeCycle Designer

2008/Q1 © 2008 SAP AG. All rights reserved. 219


Unit 7: Forms Processing NWC120

LiveCycleDesigner is a point-and-click graphical form design tool that simplifies the


creation of XML form designs for distribution as Adobe PDF or HTML forms The
Layout Editor is the main area where you create and maintain the form design The
following tabs represent the canvas on which you assemble and view the components
of the form design:
• Body Pages tab displays the body pages making up the form design.
• XML Source tab displays the XML source code that describes the structure of
the form design and its objects.
• PDF Preview tab displays a PDF form based on the current form design
Palettes provide easy access to the tools without cluttering your workspace

Figure 56: Button properties in the Submit tab

The form designer should implement functionality that enables the user to submit data
back to the GP framework. Sending data from an interactive form to the GP system is
possible when parameter http.server.base.url of service caf/eu/gp/model is configured
to the appropriate value. (not shown)
You need to include a button with the following parameters in the form:
• Control Type - select Submit
• Submit Format -select XML Data (XML)
• Submit to URL -enter the following string:%com.sap.caf.gp.if.PostProces-
sorUrl%

220 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Using Forms within Guided Procedures

At runtime, when the user submits the form back to the system, the above URL string
is replaced by the relevant server-side information, and the data is sent back to the
server in XML format.

Creating a Composite Form inside Guided Procedures

• Interactive Form used with Guided Procedures: Basic Data


Form to Invoke Guided Procedures
1. Create *.xdp form
2. Create Guided Procedure Process
3. Create Composite Form -
3.a. Logical Criteral Step - Browse to select *.xdp form
3.b. Configuration Step - Checkbox - Start Process on Completing and
Select Process
3.c. Configuration Step - Checkbox - Provide Impersonalized Composite
Form
4. Generate *.pdf form
Step 1, the *.xdp form should be created with Adobe LifeCycle Designer.
Steps 2 through 3 are configured from SAP NetWeaver CE 7.1 Portal
http://host:port/irj → Guided Procedures → Design TimeSAP NetWeaver CE 7.1
Portal.
Step 4 is configured from SAP NetWeaver CE 7.1 Portal http://host:port/irj → Guided
Procedures → Administration → Manage Impersonalized Forms

Create Composite Form to Initiate Guided Procedure Process


User adds information –> Guided Procedure appears in your runtime inbox
to form and clicks for you to continue processing.
SUBMIT
* Process must be configured using the Default
Roles tab to forward to appropriate inbox.

2008/Q1 © 2008 SAP AG. All rights reserved. 221


Unit 7: Forms Processing NWC120

Some things to note regarding forms that start a guided procedure process.

• With the process line selected, leave the 'exposed in' field selected for the field
values in the process that will receive data from the form.
• With the process line selected, do not set all actions to be 'initiator'. Remember
the initiator, in this case is the person that submitted the form. Instead, leave the
actions set to 'Initiation Defined'. From the 'Default Roles' tab add a specific user
or users or group or roles. The way when the Guided Procedure server receives
the process, it will know who's inbox should receive the task.
• Logical Configuration (step 6), be prepared to use the browse option to search
for your *.xdpform. Also, in this step, you must first choose save to receive the
define mapping option. Then, you must click define mapping to dictate which
fields on the form you would to be passed through to the guided procedure.
• Configuration (step 7), be prepared to use the browse option to search for the
process, that you wish to invoked from your form. Also, once you select the
appropriate process, you'll have to define mapping between fields of the form
and the guided procedure fields.

• Interactive Form used with Guided Procedures: Basic Data


Form used Inside of Guided Procedure
1. Create *.xdp form
2. Create Composite Form
2.a. Configuration Step - Checkbox - Enable Use In Guided Procedures
3. Create callable object of type Form → Composite Form
4. Create Guided Procedure Process to use callable object in step 3.

Create Composite form to be used within the Guided Procedure Process


Guided Procedure is initiated –> Email with form attached is sent to a
by some source recipient.

In this case, you'll have some actions that execute before the form is updated with
data. The form fields will be filled-in per parameter mappings which indicate which
values to pass into the form. The form is then via email to a recipient. The recipient
will then open their email and the form attachment. When the recipient clicks 'submit',
the form will be sent back to the guided procedure. If you are the guided procedure
owner, you will see the guided procedure appear in your runtime inbox environment.

222 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Using Forms within Guided Procedures

Figure 57: Composite Forms - Configuration - Step 7

When defining the composite form, it is important to understand the options in the
configuration step.
Enable Use in Guided Procedures
The form will be exposed as a callable object that is executed in background
mode. The timeout of the form is handled automatically by the GP framework.
Start Process on Completion
Select a process template that will be initiated upon successful post-processing
of the interactive form.
Choose E-mail Template
The interactive form is generated from the form template, and stored in the
process context. The form is then sent via e-mail to a recipient. The recipient
will click submit to have the form returned to the process.
Define Timeout
if the form is not returned to the system for post-processing before the time-out
expires, it gets invalidated
Provide Impersonalized Composite Form
Create an impersonalized form that is not associated with a particular user
session, and may be submitted to the system multiple times.

2008/Q1 © 2008 SAP AG. All rights reserved. 223


Unit 7: Forms Processing NWC120

224 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Using Forms within Guided Procedures

Exercise 16: Adobe Interactive Form Starts


Guided Procedure
Exercise Objectives
After completing this exercise, you will be able to:
• [Enter an exercise objective. Insert additional objectives if required.]

Business Example
You want to create a business process that will be initiated by someone submitting
a form. Also, you would like to use copy and reuse existing callable objects in you
new process.

Task 1:
Create a process to update a business partner
1. Log into NetWeaver 7.1 CE
2. Log into Design Time
3. Create a sequential block, AdobeBPUpdateBlock
4. Create an action, Adobe_AC1_InputBP_GRP##
5. Create an action, Adobe_AC2_GetBPDetail_GRP##
6. Create an action, Adobe_AC3_UpdateBP_GRP##
7. Insert a step into Adobe_AC1_InputBP_GRP##.

Task 2:
Configure parameter mapping to pass data between the actions.
1. Notice the parameters.
2. Map the business partner.
3. Map the first name.
4. Map the last name.
5. Map the last name.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 225


Unit 7: Forms Processing NWC120

Task 3:
Configure your user id, for all actions in the Default Roles tab
1. Configure default roles.

Note: In previous exercises we configured the roles tab with initiator.


This time we won't use initiator because the initiation is coming via form.

Task 4:
Create the composite form to call the *.xdp file.
1. This exercise MUST be performed from the server.

Task 5:
Generate the pdf file.
1. Create the pdf

Task 6:
Test the interactive form
1. Test the interactive form.

226 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Using Forms within Guided Procedures

Solution 16: Adobe Interactive Form Starts


Guided Procedure
Task 1:
Create a process to update a business partner
1. Log into NetWeaver 7.1 CE
a) http://host:50000/irj
For example: http://twdfXXXX.wdf.sap.corp:50000/irj

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 227


Unit 7: Forms Processing NWC120

2. Log into Design Time


a) Navigate to Guided Procedures → Design Time → NWC120 → Unit 5
Process Blocks → Group ##.
b) Highlight the callable object, CO1_InputBP_GRP##
c) Click Copy
d) Navigate to Guided Procedures → Design Time → NWC120 → Unit 7
Forms Processing→ Group ##.
e) Click Paste and then click ok.
f) Go through the same steps for CO2_GetBPDetail_GRP##, and
CO3_UpdateBP_GRP##
g) Navigate to Guided Procedures → Design Time → NWC120 → Unit 7
Forms Processing→ Group ##.
h) With your folder highlighted, click, Create Process and then accept default
language, en, by clicking onCreate.
i)

Hint: Select the left most button to highlight a line item in the
process flow window.

Make sure to highlight the process line and then enter the following.

Name AdobeToStartBPUp-
dateProcess##
Description AdobeToStartBPUp-
dateProcess##

3. Create a sequential block, AdobeBPUpdateBlock


a) With the Process highlighted, click on the Create New icon.
b) Accept the default value, sequential block and choose select.
c) Highlight the block line item and enter the following information.

Name AdobeBPUpdateBlock##
Description AdobeBPUpdateBlock##

Continued on next page

228 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Using Forms within Guided Procedures

4. Create an action, Adobe_AC1_InputBP_GRP##


a) With your block highlighted, click Create New
b) Highlight your action and enter the following information.

Name Adobe_AC1_InputBP_GRP##
Description Adobe_AC1_InputBP_GRP##

5. Create an action, Adobe_AC2_GetBPDetail_GRP##


a) Ensure that the block is highlighted, click Create New
b) Highlight your action and enter the following information.

Name Adobe_AC2_GetBPDe-
tail_GRP##
Description Adobe_AC2_GetBPDe-
tail_GRP##

6. Create an action, Adobe_AC3_UpdateBP_GRP##


a) Ensure that the block is highlighted, clickCreate New
b) Highlight your action and enter the following information.

Name Adobe_AC3_Up-
dateBP_GRP##
Description Adobe_AC3_Up-
dateBP_GRP##

You have now created all of the necessary actions. At this point, we will
simply insert the callable objects.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 229


Unit 7: Forms Processing NWC120

7. Insert a step into Adobe_AC1_InputBP_GRP##.


a) Highlight Adobe_AC1_InputBP_GRP##
b) Click Insert
c) Navigate to Guided Procedures → Design Time → NWC120 → Unit 7
Forms Processing→ Group ##. → CO1_InputBP_GRP##
d) Click Select.
e) Repeat these same steps for actions 2 and 3, with their respective
callable objects 2 and 3.
f) Save all.

Task 2:
Configure parameter mapping to pass data between the actions.
1. Notice the parameters.
a) Place the cursor on your block and select the tab Parameters.
You should see a list of all parameters for each step. This includes all BAPI
import parameters and all RFC import parameters. Notice the parameters
for each of the actions.

Continued on next page

230 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Using Forms within Guided Procedures

2. Map the business partner.


a) Click Advanced Filter
b) Use the following information.

Filter By Display Name


Pattern *business*

c) click Filter.
You should see 2business parameters in the list from the following actions,
AC1_InputBP_GRPXX, AC2_GetDetailBP_GRPXX
d) Highlight both parameters, using the 'cntrl' key to select multiple lines.
e) Select Group.
f) Accept the default values, for example Name probably has the value
BusinessPartner. Select Create.
At this point if you scroll down to the bottom, you should see
BusinessPartner listed as a <Group>.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 231


Unit 7: Forms Processing NWC120

3. Map the first name.


a) Use the following information.

Filter By Display Name


Pattern *first*

b) click Filter.
You should see several first name parameters in the list from the following
actions but we only need 2.
c) Highlight the following parameters.
• AC2_GetDetailBP_GRP##:Centraldataperson
• AC3_UpdateBP_GRP##

Hint: Remember to use the 'cntrl' to select multiple lines.

d) Select Group.
e) Accept the default values, for example Name probably has the value
FirstName. Select Create.
At this point if you scroll down to the bottom, you should see FirstName
listed as a <Group>.

Continued on next page

232 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Using Forms within Guided Procedures

4. Map the last name.


a) Use the following information.

Filter By Display Name


Pattern *last*

b) click Filter.
You should see several last name parameters in the list from the following
actions but we only need 2.
c) Highlight the following parameters.
• AC2_GetDetailBP_GRP##:Centraldataperson
• AC3_UpdateBP_GRP##

Hint: Remember to use the 'cntrl' to select multiple lines.

d) Select Group.
e) Accept the default values, for example Name probably has the value
LastName. Select Create.
At this point if you scroll down to the bottom, you should see LastName
listed as a <Group>.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 233


Unit 7: Forms Processing NWC120

5. Map the last name.


a) Use the following information.

Filter By Display Name


Pattern *search*

b) click Filter.
You should see several search parameters in the list from the following
actions but we only need 2.
c) Highlight the following parameters.

Hint: Be very careful with your selections. We do not need the


searchterm2's.

• Searchterm1, AC2_GetDetailBP_GRP##:Centraldata
• SearchBy, AC3_UpdateBP_GRP##

Hint: Remember to use the 'cntrl' to select multiple lines.

d) Select Group.
e) Accept the default values, for example Name probably has the value
SearchBy, Select Create.
At this point if you scroll down to the bottom, you should see SearchBy,
listed as a <Group>.

Continued on next page

234 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Using Forms within Guided Procedures

Task 3:
Configure your user id, for all actions in the Default Roles tab
1. Configure default roles.

Note: In previous exercises we configured the roles tab with initiator.


This time we won't use initiator because the initiation is coming via form.

a) Highlight the process.


b) Click Default Roles tab.
c) Notice the current value in the field is Overseer. Click Add Default.
d) On the right side of the screen, Add Users, in the Find field, type your
user idgp-##
e) Choose Go.
f)

Hint: You may have to scroll down.

Choose Add.
g) Notice the current value in the field is Overseer. Click the dropdown to
notice the list of all roles.
h) Repeat the steps to add your user as the default user for each of the
roles.
i) Save All and Activate.
j) Please notice that we did not de-select the 'exposed in input' parameters.
This is so that when the form initiates the process, the first action will
receive the business partner value.

Task 4:
Create the composite form to call the *.xdp file.
1. This exercise MUST be performed from the server.
a) To log into the server: Start → Programs → Accessories → Remote
Desktop Connection

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 235


Unit 7: Forms Processing NWC120

b) Computer is your server name that you've been assigned for the course,
for example, twdf####.
c) User name: should be <ask instructor> and Password should be
<ask instructor>
Now you're logged into the server. If you're not used to logging into a
server from Citrix, please make these observations. At the top, middle of
the screen, you'll notice the server name, within a grey area. Also in this
grey area, you'll notice the minimize button. Use this minimize button to
minimize the server. If you continue to look across the top of the window
you'll notice, in the upper right another minimize. Be careful not to confuse
this minimize icon with the server minimize icon. If you click on the upper
right, minimize button, then you'll be minimizing the entire Citrix window.
Also, when you're finished working on the server, make sure to use the
server start option. Depending on window sizing, you may see two starts
our you may have to scroll down to get to the server start. Anyway, to log
off of the server start →Log Off ce1adm i
d) Log into the NetWeaver CE portal: http://localhost:50000/irj
e) Navigate to Guided Procedures → Design Time → NWC120 → Unit 7
Forms Processing→ Group ##.
f) Click Create Composite Form
g)

Name AdobeFormToStartPro-
cess_Grp##
Description reference *.xdp file.

h) Accept default radio button, Field-Based Template


i) Choose Next.
j) Choose Next several more times until you reach Logical Criteria, step 6.
k) Choose Add Template
l) Choose Browse
m) Navigate to the shared drive I, which is labeled ...'CE71 on
'nwtraining.wdf.sap.corp' (I:)\NWC120' and choose file name
AdobeXMLForm.xdp
n) Choose Open
Continued on next page

236 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Using Forms within Guided Procedures

o) Choose Add Template


p) Click Save.
q) Click Define Mapping
r) In the left window, highlight BusinessPartnerXX
s) Click Add Parameter
t) Choose the tab labeled, Map Input Parameters
u) In the left window, highlight BusinessPartnerXX

Hint: Even though BusinessPartnerXX may have looked


highlighted already, you still have to highlight it.

v) In the right window, drill into [FormContext.LocalParams].Inter-


activeFormFields
w) Highlight BusinessPartnerXX
You should now notice 'Remove Mapping' button is enlightened. This
indicates that your fields are mapped.
x) Choose the tab labeled, Map Output Parameters
y) In the left window, drill into [FormContext.LocalParams].Interac-
tiveFormFields
z) Highlight BusinessPartnerXX
aa) In the right window, highlight BusinessPartnerXX

Hint: Even though BusinessPartnerXX may have looked


highlighted already, you still have to highlight it.

You should now notice 'Remove Mapping' button is enlightened. This


indicates that your fields are mapped.
ab) Choose Save and then choose Next
ac) You're now on the Configuration screen, step 6. Click, Start Process
on Completion
ad) Choose Browse Process Template

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 237


Unit 7: Forms Processing NWC120

ae) NWC120 → Unit 7 Forms Processing→ Group ## →


AdobeToStartBPUpdateProcess##
af) Click Define Mapping
ag) On the left side, scroll all the way down to find and highlight
Businespartner
ah) On right side drill into [FormContext.LocalParams].InteractiveFormFields
ai) Highlight BusinessPartnerXX
You should now notice 'Remove Mapping' button is enlightened. This
indicates that your fields are mapped.
aj) Click Save
ak) Click Select
al) Click Provide Impersonalized Composite Form
am) Choose Next and then choose Finish and Open.
an) Activate.

Continued on next page

238 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Using Forms within Guided Procedures

Task 5:
Generate the pdf file.
1. Create the pdf
a) Navigate to Guided Procedures → Administration → Manage
Impersonalize Forms
b) Highlight the line item AdobeFormToStartProcess##
c) Click Create Form
d) It is okay to leave the fields blank. Click Create
You should now notice a field labeled Download File with the file name of
AdobeXMLForm.pdf
e) Click on the file name AdobeXMLForm.pdf
f) Choose Save
g) Navigate to G:\temp
h) Before you click save, rename the file to AdobeXMLForm##.pdf and
then click Save.
i) Choose Open

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 239


Unit 7: Forms Processing NWC120

Task 6:
Test the interactive form
1. Test the interactive form.
a) Before adding a business partner number and click submit, first check if
you already have a process already open. Toggle to the NetWeaver CE
portal. Go to Guided Procedures → Runtime.
Notice the number for Process which I own.
b) Toggle back to your form.
c) For BusinessParnterNumber, enter the number you had earlier or ask
your instructor for a number
d) Click Submit
e) Toggle back to the Runtime Screen.
f) Refresh the screen by clicking on DesignTime and click on Runtime.
You should the number of processes that I own has increased by 1. If not,
take a break and start trouble-shooting or wait for the next section. Perhaps,
you'll get some troubleshooting ideas.
g) For 'Processes Which I Own', click Incomplete Processes Where Role
Assigned is Owner
h) Click the lineAdobeToStartBPUpdateProcessXX
You should see your business partner number already in the field.

240 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Using Forms within Guided Procedures

Exercise 17: Optional: Adobe From


Troubleshooting
Exercise Objectives
After completing this exercise, you will be able to:
• Troubleshoot a form that is not passing data correctly

Business Example
You've created a process and also an interactive form that can initiate a guided
procedure. The problem is that no value is being sent to the process. You want to usr
NetWeaver Administrator to analyze the problem.

Task:
Use Netweaver Administrator to analyze a problem.
1. Use the form to initiate the process
2. User NetWeaver Administrator to troubleshoot.
3. Examine the Composite Form.

2008/Q1 © 2008 SAP AG. All rights reserved. 241


Unit 7: Forms Processing NWC120

Solution 17: Optional: Adobe From


Troubleshooting
Task:
Use Netweaver Administrator to analyze a problem.
1. Use the form to initiate the process
a) Navigate to G:\NWC120
b) Double-click the file ErrorAdobeXMLForm.pdf
c) Enter your business partner number
d) Click Submit
e) Log into NetWeaver 7.1 CE portal http://host:50000/irj as user = tester1,
pw=basis123
f) Navigate to Guided Procedures → Runtime
g) For Processes Which I Own click on Incomplete Processes Where Role
Assigned is Owner
h) Click on the most recent Process.
You should notice that there the Business Partner Number is blank.

Continued on next page

242 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Using Forms within Guided Procedures

2. User NetWeaver Administrator to troubleshoot.


a) http://localhost:50000/nwa
b) user = GP-##, and your password
c) Navigate to Availability and Performance Management → Process
Monitoring → Guided Procedures → Process Instances
d) There is a field labeled For. Use the drop-down option to select Owner
and in the next field enter tester1
e) Choose Go
f) Highlight the last line item
g) Click Process Instance
h) Drill into AdobeUpdateBlockXX
i) Highlight Adobe_AC1_InputBP_Action_GrpXX
j) Click the tab labeled Input Context.
k) Notice the line BusinessPartnerNumber and the column Value. Notice
<NULL>
We know that the form is indeed initiating the process but it's not passing
an values into the process. If it were, we would see the value here. From
this we can assume the problem has to be in the mapping configuration of
the composite form.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 243


Unit 7: Forms Processing NWC120

3. Examine the Composite Form.


a) Toggle to the Design time
b) Navigate to NWC120 → Unit 7 → GroupXX → Error_AdobeFormToStart-
Process_GrpXX
c) Click Open
d)

Hint: If multiple students have been assigned to the save server,


only one at a time can open the process in edit mode. Please
remember to close the process as soon as you complete the next
step.

Click Toggle Multi-Edit Mode and then click yes


e) Click the tab labeled Configuration
f) Click the Define Mapping button
g) Notice the Remove Mapping button is grayed out. This indicates that
no mappings exist. It is this mapping where we would map the field(s) of
the form to map to the field(s) of the first action.
h) We're not going to change it now, in case fellow students still need to
work this exercise.
i) Please close the screen without saving by clicking in the upper right,
Gallery.

244 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Using Forms within Guided Procedures

Lesson Summary
You should now be able to:
• Describe how forms can be used within guided procedures.
• Describe how standalone forms can be used to initiate a guided procedure
process.
• Create an interactive form.

2008/Q1 © 2008 SAP AG. All rights reserved. 245


Unit 7: Forms Processing NWC120

Lesson: Administrative Task

Lesson Overview
This lesson will cover administrative responsibilities to set up ADS, Adobe Document
Services.

Lesson Objectives
After completing this lesson, you will be able to:
• Recognize the possibility to pre-populate fields within the form
• Discuss the option to validate the data entered in the form

Business Example
As a technical person, you need to know the parameters and/or configuration options
that apply to guided procedures.

Impersonalized Forms

Figure 58: Impersonalized Forms in the Administration Workset

Once you have the *.xdp form and also have created the composite form with Design
Time, it is then time to generate the pdf file. This generated pdf file, is the form, with
the submit button. This is the file, in which the user will click submit so that the file
will be passed to the guided procedures process.

246 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Administrative Task

Figure 59: NetWeaver Administrator: To View GP Configuration Parameters

You can view the gp parameters by accessing the NetWeaver Administrator. There
are 3 main parameters to check. They are as follows:
http.server.base.url
This parameter should have the server host name. This information is used
when as the properties when the xdp file is created and the pdf is generated. Be
careful not to use the value localhost. If localhost is the value then the pdf will
not work from any other host.
smtp.server
Set with your mail server domain.
mail.connector.start.thread
true

2008/Q1 © 2008 SAP AG. All rights reserved. 247


Unit 7: Forms Processing NWC120

Figure 60: Java Administration 1

Figure 61: Java Administration 2 - GP Parameters

If you checked the guided procedure parameters in the NetWeaver Administrator and
found incorrect values, then you can use the Java configuration tool for editing the
parameters. This is typically a responsibility of the basis team.

248 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Administrative Task

Figure 62: Configuration of GP for Adobe forms (Slide 1 of 2)

Prerequisites: You have made sure your system environment provides access to an
SLD system where Adobe Document Services (ADS) are installed, configured, and
running, as described in the ADS Configuration Guide. For more information see
http://www.sdn.sap.com/irj/sdn/adobe

Figure 63: Configuration of GP for Adobe forms (Slide 2 of 2)

2008/Q1 © 2008 SAP AG. All rights reserved. 249


Unit 7: Forms Processing NWC120

In the Visual Administrator, make sure the following (cluster) settings for the Web
Services Security service are correct:
• IntheWeb Services navigation tree, under Web Service Clients, configure
tc~wd~pdfobject
• Destination URL SLD; make sure the url field holds a value
• Authentication Basic
Alternatively, if you choose an option that uses client certification, you need to
configure this certificate for a different port on the client proxy. For more information,
refer to the above-mentioned Adobe Document Services configuration guide.
• User, for example, ADSuser
• Password, for example,ads0815
• System Name, for example, SID.SystemHome.xyz4711
• WS Name, {com.adobe/AdobeDocumentServices}{AdobeDocumentService-
sAssembly.jar}{AdobeDocumentServices}
• WS Port, {com.adobe/AdobeDocumentServices}{AdobeDocumentSer-
vicesAssembly.jar}{AdobeDocumentServices}{urn:AdobeDocumentSer-
vicesWsd}ConfigPort_Document

250 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Administrative Task

Exercise 18: Adobe Remote Form Setting


Exercise Objectives
After completing this exercise, you will be able to:
• Verify parameter setting that is required for adobe form to be executed remotely

Business Example
You would like for your end users to initiate a guided procedure using an Adobe
form, from their desktop

Task:
Verify parameter value
1. Log into NetWeaver Administrator

2008/Q1 © 2008 SAP AG. All rights reserved. 251


Unit 7: Forms Processing NWC120

Solution 18: Adobe Remote Form Setting


Task:
Verify parameter value
1. Log into NetWeaver Administrator
a) http://host:50000/nwa
For example: http://twdfXXXX.wdf.sap.corp:50000/nwa
b) User, GP-##, and your pw
c) Navigate to Availability and Performance Management → Process
Monitoring → Guided Procedures
You should notice the current display is on the Basis tab
d) Notice the following values, with the Basis tab.

Service caf/eu/gp/model (Left (Properties) Right Side


Side)

Server 00 00_50500 htttp.server.base.url =


http://localhost:50000

Note: This parameter value is used upon creation of the adobe xdp
form. Our xdp form was created with this current parameter setting.
Therefore, currently, if you generate the impersonalized form
(pdf) from the server, the submit button will send the data to itself
(localhost). If you, instead generate the impersonalized form (pdf)
from your citrix session and click the submit button from citrix,
then citrix will attempt to deliver the data to itself, thus error out.
This parameter would have to be changed to hold the actual server
name. This way, when the xdp form is created, it will hold the
actual server name as the target for the submit button.
In this NetWeaver Administration window, the screen information
is display only. Typically, the job of changing java parameters
is a basis responsibility. Java parameters are changed in the
configuration screen cluster data → instance ###### → services
→ caf~eu~gp~model. After changing the parameter, then the
system would have to be restarted, for example, via the SAPMMC

252 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Administrative Task

Lesson Summary
You should now be able to:
• Recognize the possibility to pre-populate fields within the form
• Discuss the option to validate the data entered in the form

2008/Q1 © 2008 SAP AG. All rights reserved. 253


Unit Summary NWC120

Unit Summary
You should now be able to:
• Discuss the evolution of paper forms to electronic forms.
• Describe how forms can be used within guided procedures.
• Describe how standalone forms can be used to initiate a guided procedure
process.
• Create an interactive form.
• Recognize the possibility to pre-populate fields within the form
• Discuss the option to validate the data entered in the form

254 © 2008 SAP AG. All rights reserved. 2008/Q1


Unit 8
Special Step Types

Unit Overview

Unit Objectives
After completing this unit, you will be able to:

• Assign users to roles to establish their authorizations for executing the guided
procedure
• Assign dues dates for individual task within a guided procedure
• Discuss ways to deal with unexpected situations that arise during a guided
procedure execution
• Define the options for starting guided procedures
• Design a universal worklist to receive guided procedures actions

Unit Contents
Lesson: Assignment of Users to Process Roles................................ 256
Exercise 19: User Assignment................................................ 261
Lesson: Additional Step Types .................................................... 267
Exercise 20: Due Dates ....................................................... 275
Exercise 21: Optional:Exception Handling .................................. 281

2008/Q1 © 2008 SAP AG. All rights reserved. 255


Unit 8: Special Step Types NWC120

Lesson: Assignment of Users to Process Roles

Lesson Overview
The purpose of this lesson is to describe the options of user assignment for guided
procedure processes.

Lesson Objectives
After completing this lesson, you will be able to:
• Assign users to roles to establish their authorizations for executing the guided
procedure

Business Example
You are responsible for defining the roles for guided procedures and assigning users to
the roles.

User Assignement

Figure 64: Process Roles in Guided Procedures

Here is an example on how process roles is used in guided procedures. An employee


needs to make a business trip to meet a client to close a potential deal. He needs to
book a flight to the destination by entering a travel request. A travel agent then select
the most appropriate flights available for the employee to choose.
The employee chooses the prefer flight and submit back to the travel agency for
booking. Finally, the manager approves the flight. There are altogether 3 parties
(Traveler, Travel Agent and Manager) involve in this collaborated business process.
It is possible to assign users to each of the steps individually during initiation time.

256 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Assignment of Users to Process Roles

However, this will be very slow and tedious if the process is big. Process roles is used
to group steps that are executed by similar user together. And during initiation time,
the initiator just need to assign users to each of the process roles.

• Process Roles in Guided Procedures


– Built-In Process Roles
Administrator, Overseer, and Owner
– Custom Process Roles
defined for the actions and blocks in the process
created from consolidation of roles
role types similar to built-in roles
– Three role characteristics:
Initiation Defined
Initiator
Runtime Defined
Process roles can be built-in or custom process roles.
Process role configuration may include defining when users are assigned to the role,
as well as adding default user assignments at design time.
This is not a required step in the process design. If you do not explicitly configure the
process roles when designing the process, the user assignments for each available role
are done when the process is being initiated. However, you can use this function to
enable better control over the process initiation. 1
You can configure the built-in roles that are created for each process: Administrator,
Overseer, and Owner.

2008/Q1 © 2008 SAP AG. All rights reserved. 257


Unit 8: Special Step Types NWC120

Figure 65: Process Roles in Guided Procedures

Initiation Defined
User assignments for the role are done at process initiation. You can also
configure the following options for the role:
Default Definition Required
With this option selected, you must also define a default user assignment
for the role, as explained in section Defining Defaults.
Overwritable at Runtime
With this option selected, the defaults defined for the role can be
overwritten when the process is being initiated.
Filled from Context Parameter
This option is configurable at block level, whenever input context
parameters are available.
Initiator
The user who initiates the process is assigned to the role.

258 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Assignment of Users to Process Roles

Runtime Defined
User assignments for the role are done during the process lifetime by the
corresponding callable object (for example Assign Users to Process Roles).

• Assignment of Users to Process Roles - Two Role Tabs


1. Roles tab
2. Default Roles tab
Default Roles - requires initiation defined setting within the Roles tab

• Assignment of Users to Process Roles


– Design Time Assignment
Adding Default Process Roles
– Runtime Assignment
Changing Default Process Roles
– User Assignment Restriction
Adding restrictions
You define the roles that are only available for the processes initiated from the process
template. In addition to the standard process roles – owner and initiator, you can
define custom roles, such as Project Manager, Team Assistant, and so on.
Optionally, you consolidate into groups the roles and the parameters defined in the
building blocks of the process template. You can also define the process views
available at runtime, as well as add attachments and info callable objects.
If you have configured a role type to Initiation Defined, you can also assign a default
user to the role. At runtime, this user processes the action or block unless the initiator
modifies the assignment when the process is started.

2008/Q1 © 2008 SAP AG. All rights reserved. 259


Unit 8: Special Step Types NWC120

Assigning defaults is required only if the option Default Definition Required is


selected. Otherwise, you may skip this activity.

• Assignment of Users to Process Roles - Restriction


– Restriction allows process designer to limit only a group of users to be able
to be assigned to the process roles
– The process roles must be defined as “Initiation Defined“
– The restriction only applies during initiation.
– The process should not be started automatically if you want to allow
manual selection during initiation.
If you have configured a role type to Initiation Defined, you can also define a group
of users that can be assigned to this role. During the process instantiation, you can
choose a user for this role only from the group that you have defined; the other users
are not shown.
You can only define a restriction group to process roles of type Initiation Defined.
Users are added in the 'Default Roles' → Add Restrictions
Example: In your process, you have defined the role HR Consultant. You only want
people from the Human Resources team to be assigned to this role. Therefore, you
define a restriction and add the user group for the HR consultants in the company to
it. Whoever initiates the process afterwards is only able to choose a person from
the HR team only.

Figure 66: Assign user to a role exercise

260 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Assignment of Users to Process Roles

Exercise 19: User Assignment


Exercise Objectives
After completing this exercise, you will be able to:
• Assign a different user to a role.

Business Example
You would like a manager to approve a step within the guided procedure.

Task:
Build a Process with a sequential block
1. Create the process, AssignUserToRoleBlockXX
2. Create the block, AssignUserToRoleBlock##
3. Add 3 Actions to the new block.
4. Create callable object, CO_PickUser##, for the action PickUser##.
5. Create callable object, CO_AssignUser##, for the action AssignUserToRole##.
6. Create callable object, CO_DoWork, for the action DoActualWork##
7. Map the UniqueID from PickUser## to User Identifier from
AssignUserToRole##. Map then to the name UserID.
8. Consolidate the roles for steps 2 and 3 to be processed by the same person, and
ensure this role is step to Runtime defined.
9. Test the process

2008/Q1 © 2008 SAP AG. All rights reserved. 261


Unit 8: Special Step Types NWC120

Solution 19: User Assignment


Task:
Build a Process with a sequential block
1. Create the process, AssignUserToRoleBlockXX
a) http://host:50000/irj
For example: http://twdfXXXX.wdf.sap.corp:50000/irj
b) Navigate to Guided Procedures → Design Time → NWC20 → Unit 8
→ Group##
c) With you folder highlighted, click Create Process and click Select to
accept English as the default language.
d) With the process line highlighted, enter the following information.

Name AssignUserToRoleBlockXX
Description work with user
assignments

2. Create the block, AssignUserToRoleBlock##


a) With the process line highlighted, click Create Newand then click Select
to accept Sequential.
b) highlight the block, enter the following information.

Name AssignUserToRoleBlockXX
Description work with user
assignments

Continued on next page

262 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Assignment of Users to Process Roles

3. Add 3 Actions to the new block.


a) With the block, AssignUserToRoleBlock## highlighted, click Create
New 3 times
b) Highlight each actions and enter the following names

Action Name Action Description


PickUser## This action will enable
you to pick a user.
AssignUserToRole## This action will assign
a user to a role.
DoActualWork## This step should route
to the user created
in the 'PickUser##'
action.

c) Highlight the action PickUser## and choose Create New


and
4. Create callable object, CO_PickUser##, for the action PickUser##.
a) Highlight the action PickUser## and choose Create New
b) Use the following information.

Type User Management → Choose User


Name CO_PickUser##
Description Assign user to a
process role

c) Click Next, Next and Finish.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 263


Unit 8: Special Step Types NWC120

5. Create callable object, CO_AssignUser##, for the action AssignUserToRole##.


a) Highlight the action AssignUserToRole## and choose Create New
b) Use the following information.

Type User Management → Assign users


to process role
Name CO_AssignUser##
Description Assign user to a
process role

c) Click Next, Next and Finish.


6. Create callable object, CO_DoWork, for the action DoActualWork##
a) Highlight the action DoActualWork## and choose Create New
b) Use the following information.

Type User Interface → Web Page


Name CO_DoWork
Description Assign user to a
process role

c) Click Next.
d) Enter http://www.sap.com as the URL.
e) Continue through the wizard until you can select Finish
7. Map the UniqueID from PickUser## to User Identifier from
AssignUserToRole##. Map then to the name UserID.
a) Highlight the block and select the tab Parameters.
b) Highlight the following actions, using the control key.
• UniqueID, PickUser
• UserIdentifier, UserList → User Item → UserIdentifier
c) Click Group and for the field Name enter UserId
d) Deselect all 'Exposed in Input' parameters.
e) Save all
Continued on next page

264 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Assignment of Users to Process Roles

8. Consolidate the roles for steps 2 and 3 to be processed by the same person, and
ensure this role is step to Runtime defined.
a) Highlight the process and select the Roles tab.
b) Highlight the following roles, using the 'cntrl' key
• Processor for AssignUserToRole##
• Processor for DoActualWork##
c) In the Consolidate field enter Worker and select Go.
d) Highlight the Worker role, and set the role type to Runtime Defined
e) Set all the other roles to Initiator
f) Save and Activate.
9. Test the process
a) Navigate to Guided Procedures → Runtime and select Initiate a New
Process
b) Navigate to NWC20 → Unit 8 → Group## → AssignUserToRoleProcess##
and select Next and then click Initiate.
c) For the Find field, type Manager-## and click Go.
d) Login as Manager-## and navigate to Guided Procedures → Runtime.
e) Notice the line item 'Task that require my action'.
f) Drill into this area and then click the process and then click Complete.
g) If you now toggle back to your gp-## user session, you'll notice the process
has completed.

2008/Q1 © 2008 SAP AG. All rights reserved. 265


Unit 8: Special Step Types NWC120

Lesson Summary
You should now be able to:
• Assign users to roles to establish their authorizations for executing the guided
procedure

266 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Additional Step Types

Lesson: Additional Step Types

Lesson Overview
The purpose of this lesson is to explain Deadline, Exception Handling step types.

Lesson Objectives
After completing this lesson, you will be able to:
• Assign dues dates for individual task within a guided procedure
• Discuss ways to deal with unexpected situations that arise during a guided
procedure execution
• Define the options for starting guided procedures
• Design a universal worklist to receive guided procedures actions

Business Example
In designing your guided procedure, you've recognized the need for adding in due
dates for approvals. You also need to define how the guided procedure will react to an
unexpected situation. You want to use special step types in your guided procedure.

Due Dates

• Due Date & Notifications - Concepts


– A due date is a time by which an action or a process must have been
completed.
– Notifications can be set before the due date is reached.
– For each notification, a particular callable object can be selected to be
executed.
– Action supports one due date and two alert notification (of the same type as
due date).
– Process supports one due date and unlimited alert notification.
The purpose of due dates is in the Guided Procedure is to define a date by which the
given action or process must be completed. You can also define two more notifications
that are sent before due date expiration.

2008/Q1 © 2008 SAP AG. All rights reserved. 267


Unit 8: Special Step Types NWC120

Send to Drop Down List - Callable object–>Miscellaneous –>Send


Notification –>Set Configuration –>Send to…
Current Processors Notification email will be sent to the processor of the
current action
Initiator Notification email will be sent to the initiator of the
process
Owner Notification email will be sent to the owner of the
process
Overseer Notification email will be sent to the overseer of the
process
Administrator Notification email will be sent to the administrator
of the process
All Contributors Notification email will be sent to all contributors
involved into this process
E-Mail Address Passed as Notification email will be sent to e-mail address
Context Parameter specified as the input parameter of the callable object;
see step 4

As a prerequisite for the action, an e-mail template should be created, for the messages
to be sent. Additionally, a callable object of type Send Notifications must be created.

• Due Date Assignments and Definitions


– Action Definition Due Date
Specific start date Durration
Relative to Action/Process start time
– Process Definition Due Date
Specific start date Durration
Relative to Action/Process start time
In Guided Procedures (GP) design time, you can define and configure notifications to
inform users about approaching activity deadlines. Notifications are available for:
A due date is the point by which an action or a process must have been completed.
You can set notifications that occur before or on the due date.For each notification
you can choose to execute a particular callable object.

268 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Additional Step Types

For a particular process or action, you can create only one due date notification. The
date of this notification is displayed in the GP worklist in the portal. The number of all
other notifications set before the due date is not limited.
• Actions
• Processes
Date
Specify the exact date for the item’s completion.
Duration
Specify the exact period for item’s completion.
On Assign
Available for actions if the notification is not for a due date.
You use this type of notification whenever you want to inform a user that a task
has been assigned to him or her. The task appears as a worklist item in the portal.
On Deassign
Available for actions if the notification is not for a due date.
You use this type of notification whenever you want to inform a user that a task
has been removed from his or her worklist and assigned to a different user.

Exception Handling

• Exception Handling - Concept


– Exceptions are designed to handle unexpected situations that arise
during runtime and disrupt the normal flow of a process.
– When an unexpected situation arises, an additional action, block or process,
called an exception handler will be executed.
– Some callable objects can define exceptions that are propagated to the
block level. In this case, an exception handler and an exception handling
strategy must be defined at block level.
Exceptions are designed to handle unexpected situations that arise during runtime and
disrupt the normal flow of the process. Exceptions deal with the unexpected situation
by executing an additional action, block or process, called an exception handler. Some
callable objects can define exceptions that are propagated to the block level and need
to be processed. For that purpose, you can define an exception handler as well as an
exception handling strategy at block level.

2008/Q1 © 2008 SAP AG. All rights reserved. 269


Unit 8: Special Step Types NWC120

Figure 67: Exception Options

To define what happens after the exception handler is called, select Strategy. You can
choose one of the following entries from the dropdown list box:
Continue
The next step after finalizing the exception handler action is the step after the
action that reported the exception.
Repeat
The next step after finalizing the exception handler action is the action that
reported the exception.
You can map the parameters of the current block to those of the exception handler,
or set default values for them.
• To map the output parameters from the block to the correct input parameters for
the exception handler, choose Map Input Parameters.
• To map the output parameters from the exception handler to the correct input
parameters for the block, choose Map Output Parameters.
Select a parameter in the left-hand table and the parameter that you want to map in
the right-hand table. Repeat this step for all parameters that you want to map and
choose Done.
At runtime, if the system returns an error message, the exception handling mechanisms
activate the exception handler, which continues the process flow according to the
defined strategy.

270 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Additional Step Types

Starting a Guided Procedure

• Starting a Guided Procedure


– Starting from GP Work Center: Design time or Runtime
– Starting with a direct web URL
– Starting using Java API
– Starting through Adobe Form
– Starting via web service
At design time, you can configure process instantiation parameters that define how
many process instances may be created at runtime. In addition, you can choose to start
the process automatically, and generate a URL that you can use to start the process.

• Start Direct Web URL


– From the process definition → Instantiation tab →
Start Automatically
Generate Instantiate URL
– http://host:50000/webdynpro/dis-
patcher/sap.com/caf~eu~gp~ui~inst/AInstantiation?process.tem-
plate.id=59B7E411167511DB8D8300C09F469161&process.autostart=t
Link URL to an iView
Link as a portal favorite
Link to an alert category in the alert framework
Anywhere you can use a URL, link to the GP URL
From the Instantiation tab within a process definition, you can test a process.
Optional: Configure the allowed process instance number by selecting one of the
following:
• Multiple instances are permitted – at runtime, you can start multiple processes
from the same template simultaneously; this option is enabled by default
• A single running instance is permitted for each user – if a user has initiated a
process from this template, he or she cannot start another instance before the first
process is completed
• A single instance is permitted – each user can only start a process once from
this process template

2008/Q1 © 2008 SAP AG. All rights reserved. 271


Unit 8: Special Step Types NWC120

Optional: Enable automatic process startup by setting the Process is started


automatically indicator. You can choose to start the process automatically also when
you generate an instantiation URL.
Include Default Parameters
If you have defined default values for any of the process input parameters, these
are included in the URL
Automatically Start the Process
If default values are provided for the input parameters, and users are assigned to
all process roles, the process is automatically started
You can choose Generate Instantiate URL. If the process does not start automatically,
you can start it by choosing Open Instantiate Application.

Universal Worklist

• Universal Worklist Features at a Glance


– Give users a unified and centralized access to their work and relevant
information. Users do not have to search for their work.
– Aggregate task items from multiple and different systems into one list.
SAP Business Workflow
Collaboration Tasks
Alert Management System
Knowledge Management Notifications
Guided Procedure Actions
UWL provides easy access to a users worklist. UWL provides links to business
workflow, Ad Hoc Workflow, and Alerts.
The UWL can be customized in its appearance and location. Additionally, custom
views can be added for specific tasks. For example, if you need a custom view for
the invoice approval task.
UWL can make it easy for the user to make decisions and take action on items in their
worklist. The users can personalize UWL to fit their specific needs.

272 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Additional Step Types

Expect additional task engines to be integrated into the Universal Worklist in future
releases.

• Actions Appear in UWL


– Configure UWL for Guided Procedures…System Administration →
System Configuration → Universal Worklist → Administrator →
Select the NEW button
System Alias = GPSystem
GuidedProceduresConnector
– Display the universal work list…
Home → Work and you have guided procedure actions in UWL!

2008/Q1 © 2008 SAP AG. All rights reserved. 273


Unit 8: Special Step Types NWC120

274 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Additional Step Types

Exercise 20: Due Dates


Exercise Objectives
After completing this exercise, you will be able to:
• Create a Deadline for a Guided Procedure

Business Example
Your process requires action within a specific time frame. You plan to send deadline
notifications to the responsible person of an action.

Task:
Create a process that uses a deadline step
1. Log into NetWeaver 7.1 CE Portal
2. Check email connection
3. Create a callable object, CO_SendNotification## of type Send
Notification.
4. Create a process, DudeDateProcess##, with a deadline
5. Create a block, Block,DueDateBlock##
6. Insert action, DoActualWork##
7. Add deadline
8. Perform user assignment.
9. Test the process

2008/Q1 © 2008 SAP AG. All rights reserved. 275


Unit 8: Special Step Types NWC120

Solution 20: Due Dates


Task:
Create a process that uses a deadline step
1. Log into NetWeaver 7.1 CE Portal
a) http://host:50000/irj
For example. http://twdfXXXX.wdf.sap.corp:50000/irj
2. Check email connection
a) Navigate to User Administration and enter your user id, GP-## and choose
Go
b) Highlight your name and click Modify
c) Enter your email for the field E-Mail Address
d) Choose Save

Continued on next page

276 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Additional Step Types

3. Create a callable object, CO_SendNotification## of type Send


Notification.
a) Navigate to Guided Procedures → Design Time → NWC20 → Unit 8
→ Group##
b) With your folder highlighted, click Create Callable Object and use the
following information

Type Miscellaneous → Send Notification


Name CO_SendNotification##
Description Send a notification

c) Select Next until you get to Set Configuration.


d) Use the following information.

E-Mail template Process Deadline or you can use


the Due Date Email template that
you created in a previous exercise
Send to Initiator

e) Select Next and Finish and Open


f) Activate
4. Create a process, DudeDateProcess##, with a deadline
a) Navigate to Guided Procedures → Design Time → NWC20 → Unit 8
→ Group##
b) With you folder highlighted, click Create Process and click Select to
accept English as the default language.
c) With the process line highlighted, enter the following information.

Name DueDateProcess##
Description Due date expected

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 277


Unit 8: Special Step Types NWC120

5. Create a block, Block,DueDateBlock##


a) With the process line highlighted, click Create Newand then click Select
to accept Sequential.
b) highlight the block, enter the following information.

Name DueDateBlock##
Description Due date expected

6. Insert action, DoActualWork##


a) With the block line highlighted, click Insertand navigate to Guided
Procedures → Design Time → NWC20 → Unit 8 → Group## →
DoActualWork##

Continued on next page

278 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Additional Step Types

7. Add deadline
a) Highlight the action, DoActualWork##
b) Select Toggle Single Edit Mode to create a new version for your action
c) Select the Due Date tab
d) Chose Add Due Date and use the following information

Title 2 Minute notification


Type Duration –> 2 minutes
Callable Object Click Choose and navigate to
Guided Procedures → Design Time
→ NWC20 → Unit 8 → Group##
→Co_SendNotification##
and the click Select

e) Click Ok
f) Chose Add Notification and use the following information

Title 1 Minute notification


Type Duration –> 1 minute
Callable Object Click Choose and navigate to
Guided Procedures → Design Time
→ NWC20 → Unit 8 → Group##
→Co_SendNotification##
and the click Select

8. Perform user assignment.


a) Highlight the process and click the Roles tab
b) Set all roles to initiator.
9. Test the process
a) Navigate to Guided Procedures → Runtime and select Initiate a New
Process
b) Navigate to NWC20 → Unit 8 → Group## → DueDateProcess## and
select Next and then click Initiate.
c) For now, do not click complete. Wait a couple of minutes to receive your
deadline notification

2008/Q1 © 2008 SAP AG. All rights reserved. 279


Unit 8: Special Step Types NWC120

280 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Additional Step Types

Exercise 21: Optional:Exception Handling


Exercise Objectives
After completing this exercise, you will be able to:
• Use Exception Handling within Guided Procedures

Business Example
You would like to call a bapi to obtain user id detail. If you request a user that does
not exist, you would like for the guided procedure to provide another opportunity to
type in a different user id

Task 1:
Use exception handling to for an BAPI call.

Note: Depending on the support package level of your system, this exception
handling may not work with strategy 'repeat'.

1. Log into NetWeaver 7.1 CE Portal


2. Create a process, ExceptionProcess##
3. Add the action and callable object to retrieve user data from the central ERP
system. Call the action AC_GetUserDetail##. Name the callable object
CO_GetUserDetail##
4. Add the action and callable object to display the user ID and last name. Call the
action AC_DisplayUser##. Name the callable object CO_DisplayUser##.

Task 2:
Create an action for the exception processing and add the exception to the block.
1. Create the action, ACTION:HandleException##
2. Insert the callable object, CO_GetUserID##
3. Insert the new action into your process, ExceptionProcess##

Task 3:
Perform parameter mapping and update you process
1. Perform parameter mapping on the block.
Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 281


Unit 8: Special Step Types NWC120

2. Remove exposed import parameters.


3. Update all roles to Initiator

Task 4:
Test the process
1. Test the process

282 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Additional Step Types

Solution 21: Optional:Exception Handling


Task 1:
Use exception handling to for an BAPI call.

Note: Depending on the support package level of your system, this exception
handling may not work with strategy 'repeat'.

1. Log into NetWeaver 7.1 CE Portal


a) http://host:50000/irj
2. Create a process, ExceptionProcess##
a) Navigate to Guided Procedures → Design Time → NWC20 → Unit 8
→ Group##
b) With your folder highlighted, click Create Process and use the following
information

Name ExceptionProcess##
Description exception process

c) With your process highlighted, click Create New and use the following
information
Make sure the highlight the block.

Name ExceptionBlock##
Description exception block

d) With your block highlighted, click Create New and use the following
information
Make sure the highlight the action.

Name AC_GetUserID##
Description get user id

e) With your action highlighted, click Create New and use the following
information

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 283


Unit 8: Special Step Types NWC120

Type Form → Data Input Form


Name CO_GetUserID##
Description get user id

f) Select Next and select Insert New to enter the field for the use ID.
g) Use the following information

Name: UserID
Technical name: UserID

h) Select Next and Finish.

Continued on next page

284 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Additional Step Types

3. Add the action and callable object to retrieve user data from the central ERP
system. Call the action AC_GetUserDetail##. Name the callable object
CO_GetUserDetail##
a) Highlight the block, click Create New and use the following information
Make sure the highlight the action.

Name AC_GetUserDetail##
Description get user detail

b) With your action highlighted, click Create New and use the following
information

Type Service → External service


Name CO_GetUserDetail##
Description get user detail from
the ECC system

c) Click Next
d) Choose the endpoint given to you by instructor
e) For the field Function type BAPI_USER_GET_DETAIL and click
Search
f) Highlight the bapi and choose Next
g) Select Next until you get to Set Configuration. Enter the following
information

Error handling mode Reported in table


Error table reference: return
Error field name: TYPE
Error values: ”E”(Include the quotes)
Error message field name: TYPE

h) Select Next and Finish

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 285


Unit 8: Special Step Types NWC120

4. Add the action and callable object to display the user ID and last name. Call the
action AC_DisplayUser##. Name the callable object CO_DisplayUser##.
a) Highlight the block, click Create New and use the following information
Make sure the highlight the action.

Name AC_DisplayUser##
Description displayuser detail

b) With your action highlighted, click Create New and use the following
information

Type Form → Data display form


Name CO_DisplayUser##
Description Display user
information

c) Select Next and select Insert New. Insert a total of 2 fields. Use the
following information.

Field 1st Value 2nd Value


Name: UserID LastName
Technical name: UserID LastName

d) Click Next and Finish


e) Save your process

Continued on next page

286 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Additional Step Types

Task 2:
Create an action for the exception processing and add the exception to the block.
1. Create the action, ACTION:HandleException##
a) Click Gallery and then Navigate toGuided Procedures → Design Time
→ NWC20 → Unit 8 → Group##
b) With your folder highlighted, click Create Action
c) Click Select to accept English as the default language.
d) Highlight the action, use the following information.

Name ACTION:HandleExcep-
toin##
Description repeat action

2. Insert the callable object, CO_GetUserID##


a) With the action highlighted, and click Insert New
b) Navigate toGuided Procedures → Design Time → NWC20 → Unit 8 →
Group## → CO_GetUserID## and click Select
c) Save and Activate
3. Insert the new action into your process, ExceptionProcess##
a) Return to the Gallery and open your process , ExceptionProcess##
b) Highlight the block, ExceptionBlock## and select Toggle Multi-Edit
Mode. Select yes to create and inactive version.
c) Select the Exceptions tab. Click on the Return and select Add.
d) Locate your action, ACTION:HandleException## from your folder
and select choose.
e) For Strategy select Repeat
f) Select the Map Output Parameters button. Click once on Username
(under the ExceptionBlock## window) and UserId(under the
ACTION:HandleException## window) to create a mapping. You must
click on the box in front of userName and the box in front of UserID even
though they may appear to be highlighted already. Then select Done.
You should now see a check mark for Output Mapping Defined.

Continued on next page

2008/Q1 © 2008 SAP AG. All rights reserved. 287


Unit 8: Special Step Types NWC120

Task 3:
Perform parameter mapping and update you process
1. Perform parameter mapping on the block.
a) Highlight the block and select Parameters tab.
b) Highlight the following parameters, using the <cntrl>

UserID,AC_GetUserID##
Username,AC_GetUserDetail##
UserID,AC_DisplayUser##

c) Click Group, accept the default and click Create


d) Highlight the following parameters, using the <cntrl>

LastName,AC_GetUserDetail## –>Address
LastName,AC_DisplayUser##

e) Click Group, accept the default and click Create


2. Remove exposed import parameters.
a) While you still have the block highlighted, de-select the check mark from
all parameters that are marked as 'Exposed.in Input'
3. Update all roles to Initiator
a) Highlight the Process
b) Change all roles to initiator.

Continued on next page

288 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Additional Step Types

Task 4:
Test the process
1. Test the process
a) Navigate to Guided Procedures → Runtime
b) Select Initiate a new process
c) Navigate to NWC20 → Unit 8 → Group## → ExceptionProcess##
d) Select Next and initiate your process. For the user ID field, enter
WF_Batch. The user data should then be diplayed.
e) Restart you process. This time for user id type a user that does not exist,
such as , WF-NOT, as the user. The exception should occur and you will
again be asked for a user id.

2008/Q1 © 2008 SAP AG. All rights reserved. 289


Unit 8: Special Step Types NWC120

Lesson Summary
You should now be able to:
• Assign dues dates for individual task within a guided procedure
• Discuss ways to deal with unexpected situations that arise during a guided
procedure execution
• Define the options for starting guided procedures
• Design a universal worklist to receive guided procedures actions

290 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Unit Summary

Unit Summary
You should now be able to:
• Assign users to roles to establish their authorizations for executing the guided
procedure
• Assign dues dates for individual task within a guided procedure
• Discuss ways to deal with unexpected situations that arise during a guided
procedure execution
• Define the options for starting guided procedures
• Design a universal worklist to receive guided procedures actions

2008/Q1 © 2008 SAP AG. All rights reserved. 291


Unit Summary NWC120

292 © 2008 SAP AG. All rights reserved. 2008/Q1


Unit 9
Administration and Monitoring

Unit Overview

Unit Objectives
After completing this unit, you will be able to:

• Discuss monitoring guided procedures


• List the major functions available in guided procedures administration

Unit Contents
Lesson: Administration and Monitoring .......................................... 294

2008/Q1 © 2008 SAP AG. All rights reserved. 293


Unit 9: Administration and Monitoring NWC120

Lesson: Administration and Monitoring

Lesson Overview
The purpose of this lesson is to cover administration and monitoring tools for guided
procedures.

Lesson Objectives
After completing this lesson, you will be able to:
• Discuss monitoring guided procedures
• List the major functions available in guided procedures administration

Business Example
You've been tasked to monitor the guided procedures environment. You want to
analyze the monitoring tools available for guided procedures.

Administration

• Guided Procedures –> Administration –> Administration Workset


– General
– Transport
– Archiving and Deleting
– Administer BMF
– Technical Attributes
– Composite Forms

294 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Administration and Monitoring

The Administration workset is the central administration tool for Guided Procedures
(GP). With the Administration workset, you can:
• Carry out general administration tasks related to the GP design time, runtime
and background frameworks
• Manage transports
• Manage archiving and deleting jobs
• Manage archiving and deleting jobs

• Guided Procedures –> Administration –> Maintain Processes


Search Criteria Tabs
– All Processesl
– Single Processes
– By Template
The Administration workset in Guided Procedures (GP) allows you to perform
activities related to process management. You can facilitate particular tasks executed
by users in the GP design time and runtime. You can also configure background tasks
executed by the GP framework to support the overall process flow.
Using the search function, you can find all relevant process instances. You can choose
between the following search modes:
All Processes
On this tab page, you can search for both multiple-instance and single-instance
processes. To narrow your search, you need to provide information about
process name, status and contributors.
When you create the process template in the design time, you determine whether
the process is going to be a single-instance or a multiple-instance process at
runtime.
Single process
This tab page helps you find single-instance processes only. To perform the
search, provide an instance name and a process contributor.
By Template
On this tab page, you can view all available process templates and use them to
filter instances by template.

2008/Q1 © 2008 SAP AG. All rights reserved. 295


Unit 9: Administration and Monitoring NWC120

Guided Procedures –> Adminstration–> Transport


Activity Location
Create a transport request by selecting Transport → Create Request
transport content that you want to export
to another system.
Import GP content to your system Transport → Import Transport Request
Make transported GP content available Transport → Manage Imported Objects
on your system

This function allows you to make complete categories of the design time available
for other users and SAP Systems. A transport request collects these objects for the
export to another SAP System or to your local computer.
Export to Local Computer
The transport request is exported to your local computer in the file format .sda
(Software Deployment Archive). You can then forward this transport request by
e-mail, for example, to other users who may need it. The transport request is
made available in other SAP Systems using the deployment function provided
by the Software Deployment Manager (SDM) of the SAP J2EE Engine.
Export to Another SAP System
By connecting to other SAP Systems, you can directly provide the transport
request in these systems and make it available for general access.
Creating a transport request comprises three steps:
Basic Data:
Entry of the basic data
Select Objects:
Selection of the objects to be exported
Export:
Selection of the export type and creation of the transport request 24

296 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Administration and Monitoring

Monitoring

• Monitoring in Guided Procedures: Features


– The GP Monitor allows you to:
Check the status of the GP applications and libraries.
Monitor the transport requests created in the Admin Workset, including
the GP objects they contain.
Find activated and deprecated templates.
Find process instances and their activities.
Display the content of queues of incoming interactive forms.
The GP Monitor allows you to monitor the process flow of the functions provided
by the framework of Guided Procedures and thus detect any problems that might
occur. In particular, you can:
• Check the status of the GP applications and libraries.
• Monitor the transport requests created in the Admin Workset, including the GP
objects they contain.
• Find activated templates.
• Find process instances and their activities.
• Display the content of queues of incoming interactive forms. F
The GP Monitor is a read-only tool. It is only in combination with the Administration
workset and the GP design time that you can effectively perform administrative tasks
and fix existing problems.

• Monitoring Process Instances


– http://host:port:/nwa → Availability and Performance Monitoring →
Process Monitoring
Basic Information
Transports
GP Content
Process Instances
Queues Composite Forms

2008/Q1 © 2008 SAP AG. All rights reserved. 297


Unit 9: Administration and Monitoring NWC120

You can search the runtime for all types of process instances and display detailed
information about their attributes. You can monitor the interaction between actions
within a block and between callable objects within an action. You can also examine
the step-by-step data flow and distribution between process items and analyze possible
problems in parameter mapping and consolidation.
When you select a process instance in the result list, the system displays several
details. On the Process Tree screen you can see which actions and blocks are executed
in the process. By selecting each of the process items, you see the following details:
Basic Data
Detailed information about the process instance, time period of execution,
processor and exceptions.
Input Context
Detailed information about all input parameters, their type and value.
Output Context
Detailed information about all output parameters, their type and value.
Local Context
Detailed information about all local parameters, their type and value.
Processors
List of all the processors assigned to the selected activity.
Attachments
List and detailed information about attachments, if any.

298 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Administration and Monitoring

Lesson Summary
You should now be able to:
• Discuss monitoring guided procedures
• List the major functions available in guided procedures administration

2008/Q1 © 2008 SAP AG. All rights reserved. 299


Unit Summary NWC120

Unit Summary
You should now be able to:
• Discuss monitoring guided procedures
• List the major functions available in guided procedures administration

300 © 2008 SAP AG. All rights reserved. 2008/Q1


Unit 10
Appendix: Development resources

Unit Overview

Unit Objectives
After completing this unit, you will be able to:

• Discuss development topics.

Unit Contents
Lesson: Development Resources ................................................ 302

2008/Q1 © 2008 SAP AG. All rights reserved. 301


Unit 10: Appendix: Development resources NWC120

Lesson: Development Resources

Lesson Overview
How to stay current with Guided Procedures

Lesson Objectives
After completing this lesson, you will be able to:
• Discuss development topics.

Business Example
As a developer, you would like to stay current with the latest Guided Procedures
documentation.

Web Sites
Business Process Expert community at SDN: http://bps.sap.com
NetWeaver at SDN:http://www.sdn.sap.com/irj/sdn/nw-ce
Online help: http://help.sap.com
Adobe topics: http://www.sdn.sap.com/irj/sdn/adobe

302 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Lesson: Development Resources

Lesson Summary
You should now be able to:
• Discuss development topics.

2008/Q1 © 2008 SAP AG. All rights reserved. 303


Unit Summary NWC120

Unit Summary
You should now be able to:
• Discuss development topics.

304 © 2008 SAP AG. All rights reserved. 2008/Q1


NWC120 Course Summary

Course Summary
You should now be able to:

• Explain how guided procedures fit within SAP NetWeaver


• Explain the guided procedures architecture
• Demonstrate how to use callable objects, actions, blocks, and processes
• Build complete guided procedures
• Use SAP Interactive Forms by Adobe with guided procedures
• Discuss the options for assigning users at runtime
• Demonstrate how to manage due dates
• Integrate guided procedure actions into Universal Worklist
• Discuss special options when building guided procedures

2008/Q1 © 2008 SAP AG. All rights reserved. 305


Course Summary NWC120

306 © 2008 SAP AG. All rights reserved. 2008/Q1


Feedback
SAP AG has made every effort in the preparation of this course to ensure the accuracy
and completeness of the materials. If you have any corrections or suggestions for
improvement, please record them in the appropriate place in the course evaluation.

2008/Q1 © 2008 SAP AG. All rights reserved. 307

You might also like