SAP R/3 форум ABAP консультантов
Russian ABAP Developer's Club

Home - FAQ - Search - Memberlist - Usergroups - Profile - Log in to check your private messages - Register - Log in - English
Blogs - Weblogs News

FAQ



 
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> SAP Business Workflow
View previous topic :: View next topic  
Author Message
admin
Администратор
Администратор



Joined: 01 Sep 2007
Posts: 1636

PostPosted: Fri Oct 12, 2007 9:11 am    Post subject: FAQ Reply with quote

How-to-do Tutorials

Business Workflow - Tutorials
http://www.saptechnical.com/Tutorials/Workflow/Workflow.htm

These tutorials introduce you to Business Workflow, its fundamental principles, its operation, and some of its functions.

Transactions

swo1 - Business Object Builder
swdd - Workflow builder
swi1 - Selection report for workflows
swdm - Business Workflow Explorer
swpc - Continue Workflow
swpr - Restart Workflow
swus - Test Workflow
swel - Display Event Trace
SWETYPV - maintain triggering or terminating events

AWUV - Wizard for event creation Definition tools -> Event creation -> Set up with wizard
MCA1 - Workflow Information System Reporting -> Workflow Information System (WIS)
OOAW - Evaluation paths
PFAC - Maintain standard roles
PFAC_CHG - Change roles Definition tools -> Standard roles -> Change
PFAC_DEL - Delete roles Definition tools -> Standard roles -> Delete
PFAC_DIS - Display roles Definition tools -> Standard roles -> Display
PFAC_INS - Create roles Definition tools -> Standard roles -> Create
PFOM - Maintain assignment to SAP organizational objects Definition tools -> SAP org. objects -> Create assignments
PFOS - Display assignment to SAP organizational objects Definition tools -> SAP org. objects -> Display assignments
PFSO - Organizational environment of a user
PFT - Maintain customer task
PFTC - General task maintenance
PFTC_CHG - Change tasks Definition tools -> Task/Task groups -> Change
PFTC_COP - Copy tasks Definition tools -> Task/Task groups -> Copy
PFTC_DEL - Delete tasks Definition tools -> Task/Task groups -> Delete
PFTC_DIS - Display tasks Definition tools -> Task/Task groups -> Display
PFTC_INS - Create tasks Definition tools -> Task/Task groups -> Create
PFTR - Standard task for transaction
PFTS - Standard task
PFWF - Maintain workflow task (customer)
PFWS - Maintain workflow template
PPOC - Create organizational plan Definition tools -> Organizational plan -> Create
PPOM - Maintain organizational plan Definition tools -> Organizational plan -> Change
PPOS - Display organizational plan Definition tools -> Organizational plan -> Display
SWDA - Ongoing Settings Administration -> Settings
SWDC - Workflow editor administration data
SWDM - Business Workflow Explorer Definition tools -> Business Workflow Explorer
SWE2 - Display and maintain event type linkage Utilities -> Events -> Type linkages
SWE3 - Display instance linkages Utilities -> Events -> Instance linkages
SWE4 - Switch event log on/off Utilities -> Events -> Event/log -> On/Off
SWEC - Link change documents to events Definition tools -> Event creation -> Change documents -> Linkage
SWED - Assignment of change document objects to object types Definition tools -> Event creation -> Change documents -> Define workflow properties
SWEL - Display event log Utilities -> Events -> Event log -> Display
SWF3 - Workflow Wizard Explorer Definition tools -> Wizards -> Workflow Wizard Explorer
SWF4 - Workflow Wizard Repository Definition tools -> Wizards -> Workflow Wizard Repository
SWI1 - Selection report for workflows Utilities -> Work item selection
SWI2 - Work item analysis Reporting -> Work item analysis
SWI3 - Workflow outbox Runtime tools -> Workflow outbox
SWI4 - Task analysis Reporting -> Task analysis
SWI5 - Workload analysis Reporting -> Workload analysis
SWI6 - Object links Runtime tools -> Object links
SWI7 - Workflow resubmission folder From Integrated Inbox or Workflow Outbox
SWI8 - Error overview Part of administration of workflow runtime system (transaction SWUF)
SWL1 - Settings for dynamic columns Customizing, part of ongoing settings
SWLC - Check tasks for agents Utilities -> Consistency check -> Organizational assignment
SWLD - Workbench for Workflow 4.0
SWLP - Copy plan version
SWLV - Maintain work item views Customizing, part of ongoing settingS
SWLW - Workbench for Workflow 3.0
SW01 - Business Object Builder Definition tools -> Business Object Builder
SW06 - Customizing object types From Business Object Builder, choose Settings -> Delegate -> System-wide
SWU0 - Event simulation Utilities -> Events -> Simulate event
SWU2 - RFC monitor Utilities -> Workflow RFC monitor
SWU3 - Customizing consistency check Utilities -> Customizing
SWU4 - Consistency check for standard tasks Utilities -> Consistency check -> Task -> Standard task
SWU5 - Consistency check for customer tasks Utilities -> Consistency check -> Task -> Customer task
SWU6 - Consistency check for workflow tasks Utilities -> Consistency check -> Task -> Workflow task
SWU7 - Consistency check for workflow templates Utilities -> Consistency check -> Task -> Workflow template
SWU8 - Switch technical trace on/off Utilities -> Technical trace -> On/off
SWU9 - Display technical trace Utilities -> Technical trace -> Display
SWUD - Diagnostic tools Utilities -> Diagnosis
SWUE - Trigger event Utilities -> Events -> Generate event
SWUF - Runtime system administration Administration -> Runtime system
SWUG - Workflow start transactions Definition tools -> Workflow start transactions
SWUI - Start workflows From the R/3 initial screen, choose Office -> Start Workflow
SWUS - Start tasks Runtime tools -> Start workflow
SWUY - Wizard for message linkage to workflow Definition tools -> Wizards -> Create "Call workflow from message"
SWX1 - Create notification of absence
SWX2 - Change notification of absence
SWX3 - Display notification of absence
SWX4 - Approve notification of absence
SWXF - Form applications: Access point Environment -> Demo examples -> Fill out form

Debugging
Testing and Debugging Workflows by Susan Keohan from MIT
SAPTips: Workflow Troubleshooting and Debugging

Reports

RSWWWIDE – Delete work items
RHSOBJCH to fix PD Control Tables

Tables

SWW_OUTBOX - Lists Workflows in outbox together with status
SWW_CONT - Container Contents for Work Item Data Container
SWW_CONTOB- Container Cont. for Work Item Data Container (Only Objects)
SWWLOGHIST- History of a work item
SWWORGTASK- Assignment of WIs to Org.Units and Tasks
SWWUSERWI - Current Work Items Assigned to a User
SWWWIHEAD - Header Table for all Work Item Types

Important function modules

For locking of work items against execution, use the function module SWW_WI_DISABLE.

For unlocking of work items against execution, use the function module SWW_WI_ENABLE.

To read the container elements of a particular work item, use the function module SWW_WI_CONTAINER_READ.

We can change the attributes of the deadline monitoring for a particular work item by using the function module SWW_WI_DEADLINES_CHANGE.

Повседневные обязанности администратора Workflow
1. Проверять собственный почтовый ящик в SAP - туда приходят сообщения об ошибках workflow
2. Смотреть ошибки при помощи SWI2_DIAG – удобство этого отчета в том, что из него можно workflow перезапустить; кроме того, он делит ошибки на категории:
• Agents – ошибки при определении агентов (ответственных пользователей) для шага workflow, например, роль AC90600006 не настроена для орг.объектов, упоминаемых в PO
• Binding – ошибки передачи параметров из workflow в задачу, например, пытаемся передать имя пользователя, а пользователь не существует
• Misc – прочие прикладные ошибки
3. Смотреть повисшие шаги без агентов при помощи SWI2_ADM1, при необходимости – пересылать любым выбранным исполнителям.
4. Если обстоятельства позволяют (или вынуждают), любой шаг Workflow может быть явно выполнен администратором при помощи отчета SWIA
Полезные рекомендации по повседневному администрированию
Workflow можно найти также в книге «Practical Workflow for SAP»:
• Day in the Life of Workflow Administrator (p. 161)
• Step-by-Step Troubleshooting Guide (p. 505)
• Administrator’s First Aid Guide (p. 519)

Introduction

If you have no or only limited experience of Business Workflow, work through the following two tutorials first:
Tutorial: Workflow Modeling
Tutorial: Maintaining the Organizational Plan
We also recommend that you work through these tutorials as preparation for taking part in an SAP training course.

Events

If you are particularly interested in options for event creation, refer to the following tutorial:
Tutorial: Event Creation Upon Status Changes and Creation of "Mails"
Raising ABAP OO events for workflow

Object types

Object type definitions are covered in a separate tutorial:
Tutorial: Workflow Programming

Programming knowledge is a prerequisite for this tutorial. It is therefore only suitable for advanced users.
Using ABAP OO methods in Workflow Tasks

Input conventions

At several points in the tutorials, you are requested to enter names, descriptions, or texts. These inputs are shown in bold letters. You can replace entries in pointed parentheses (<example>) with your own texts.

You can choose your own IDs and descriptions. All of the abbreviations and IDs you use in this tutorial should start with the same character string, for example, your initials. This will help you to find your own definitions. The points at which an input is required are indicated by the character string ini.

Options and outputs from the SAP System are indicated in a different typeface.

Prerequisites

To work through this tutorial successfully, you have to be familiar with the basic terms in Business Workflow.
You do not have to have any practical experience with Business Workflow.
You must be able to carry out all of the individual steps in the system directly.

Cross-client objects

You will be shown how to create cross-client objects. You will only be able to work through this tutorial on the system if you are authorized to create these objects.

Customizing

All of the Customizing settings must be defined for Business Workflow. To check these settings, choose Tools ® Business Workflow ® Development ® Tools ® Automatic Workflow Customizing.

For more information, see Automatic Workflow Customizing.

You do not need to check the settings if you are already using Business Workflow. You can use the automatic workflow Customizing function more than once, since existing settings are not overwritten.

GOS - Generic Object Services
How to Attach Documents to Any Custom Program Using Generic Object Services
Developing SAP Applications
Generic Object Services (BC-SRV-GBT)

Tips and Tricks by Morten Hjorth Nielsen, Denmark
Source from: http: //www.mortenhjorthnielsen.dk/SAPWorkflow.html

1) Have you ever needed a "where-used" list for methods ? This isn't provided standard by SAP, but try to have a look at table HRS1201.

2) If you have a workflow rule, of the type "responsibility", that you would like to maintain directly in production ? you may have noticed that, this is not possible in transaction PFAC. Try instead the transaction OOCU_RESP. Or even better create a parameter transaction around OOCU_RESP in transaction SE93, by doing this you can create dedicated transactions for agent maintenance.

3) Problems with asynchronous/secundairy methods getting out of sync e.g. in invoice approval workflows ? I have often seen solutions where the image linked to the last invoice processed is shown instead of the image the to the current invoice. In this case, try the report RSWO_CLEAR_ASYNC_DATA (See note 316812)

4) Do you need to work with an instance of your business object in your workflow, when the only thing you have got is the object key ? well then try the method genericinstantiate on the business object System

5) If your workflow fails when, based on error in the agent resolution, it could be an authorization error. If the user generating the next dialog step hasn't got the correct authorization, this next step will fail. The required authorization, in this case is object PLOG: PFCODE=DISP, PLVAR=01, OTYPE=AC, INFOTYP=1001, SUBTYP=B240, ISTAT=*

6) Do you know that you can assign the allowed agent in HR through transaction PP01 and infortype 1217

7) If you want to see all the workflow that has been working on a specific instance of a business object - take a look at SWI14.

Cool Do you need to delete workflow documents (WF_DOC), created by a workflow - try transaction SWUO_DEL

9) Do you need to maintain substitute centrally ? Try transaction RMPS_SET_SUBSTITUTE

FAQ

1. Is there a good book about this subject?
Yes, "Practical Workflow for SAP" by Rickayzen, Dart, Brennecke and Schneider. Available from SAP press at the end of July. A german translation of this workflow book is also available directly from Galileo-Press, the publisher.

2. How do I convince my company to use workflow?
Feedback from user groups emphasizes that although the competitive advantage gained by using workflow eclipses the financial savings, it is the financial savings that are the deciding factor when obtaining support from senior management. Projects getting the blessing at the CEO level are much easier to manage, and far more likely to reach their goal within the project time frame. So plan well, and don't neglect the business case.
Because the following questions deal with the financial case in more detail, this section will finish by listing the competitive advantages.
The quality of the process is assured by pushing the relevant information together with links to related transactions directly to the user. Managers don't have the time to search for information so give them what they need to reach the correct decision.
Cycle time is reduced by pushing the process directly to the users. The users receive notification of a task immediately and can even be prioritized by the system.
The tasks are performed consistently and diligently by the users. The workflow system pushes all the necessary information needed to perform a task, including a clear description of what has to be done, how to do it and the impact this task has on the business process for your company. At any time, the user can check the list of tasks pending and determine at a glance which are the important tasks, and which tasks can be completed the next day without any negative impact.
The process instance is transparent. Any user can check at any time how far the process has progressed and which stage the process has reached. For example the call center can immediately see the status of a purchase order, an employee requisitioning a purchase would see at a glance if a colleague has been sitting on it for too long, the ad hoc notes made when approving an engineering change request are visible long after the request has gone into production.
The process is flexible, allowing it to be changed on the fly without retraining everyone involved. The description accompanying the change takes care of on-the-fly process improvements.
Deadline handing ensures that users perform the tasks within the time planned. Escalation measures ensure that the failure to meet a deadline can be corrected by other means.
Intelligent reporting highlights the weaknesses of a process. Often there is a simple cure to such weaknesses such as reeducating the users involved in the bottleneck or providing additional information (automatically). The difficulty of a non-automated process is identifying such bottlenecks.
The process definition is transparent. You can see at a glance how the process works and who will be selected to perform the different tasks. Think of the workflow as the process book. If you can spot the pattern and define the process without headaches, you can create a workflow definition effortlessly. However, don't forget that if a company has business processes that are erratic and lack a consistent pattern, the company is very likely to be losing a lot of money in terms of lost contracts, labor intensive administration and low customer confidence. It is my personal opinion that automating exactly this type of processes will yield the best returns, but only if you limit yourself to automating the basic skeleton of the process first. Don't get bogged down in the detailed exception handling. That can be done in the next phase once you've checked the process statistics and determined which exceptions are worth tackling.
As with most software the reasons for automating business processes are primarily to increase the competitive edge of your company and to cut costs. Although the increase in competitively gained by radically reducing process times is by far the most insignificant gain from workflow, you should not ignore the cost savings. The cost saving calculations are needed by upper management in order to approve workflow projects. This upper management signature will be very useful in different phases of the project and cannot be underestimated.

3. How do I calculate the cost saved by workflow?
Calculate the cost of the manual process in terms of man hours. Don't neglect the time spent gathering information. Ask the following questions:
Is the user forced to log into different systems, or scan through printed documentation....?
Does a skilled user spend time on parts of a task, where less skilled (less expensive) user could do the groundwork? I.e. Can a single task be split into skilled and unskilled tasks to free the skilled worker for work where his/her skills are really needed?
Is time spent researching the progress of a process (usually done by someone not involved in the process directly)?
Is time spent determining who to give the task to next?
Probably the most significant cost will the be the cost of failure?
How often does the process fail?
What is the real cost of failure? Loss of a contract? Loss of a customer? Law suit?
If the failure can be rectified, how labor intensive is it?

4. What are typical costs saved by workflow?
A manually processed accounts payable invoice will cost about 25 USD. After workflow enabling about 15 USD (one example based on customer feedback from a user group meeting).

5. What are typical reductions in processing time caused by workflow?
A traditional paper based approval process involving three people will typically take seven days to complete. The automated process will take one day (results based on customer feedback).

6. What do customers say are the strengths of SAP WebFlow?
WebFlow is the internet functionality of SAP Business Workflow. Based on customer feedback from the various regional users groups, the main strengths of SAP Business Workflow are:
Robust production workflow system, (upgrade continuity with the rest of the SAP system, versioning, scalability, no gluing....)
Standard workflow templates delivered by SAP can be used out-of-the-box or tweaked to deliver the optimum business process for your company. Workflows can be up and running including training in under a day (thanks to the knowledgeware delivered as part of the template packet).
Seamlessly integrated into the SAP environment, be it R/3, Business to Business Procurement, CRM, APO, mySAP.com.... Examples of integration are:
Business Reporting (WIS),
Context sensitive availability at any time through the system menu (available anytime, anywhere)
More and more standard SAP functionality is being provided by using SAP Business Workflow so your homegrown workflows fit the landscape exactly,
More and more workflow functionality is available directly within the SAP transaction or Web MiniApp.
WebFlow is becoming more and more important because companies are no longer being judged by their own performance but by the combined performance of the company AND its partners. In other words it is not enough that the business processes within your company run smoothly and faster than your competitors. You have to ensure that the processes between you and your partners are also as fast, efficient and flexible as possible. WebFlow delivers this.

7. How are users notified about their work pending?
The users are informed by a work item which you may think of as being very like an e-mail. The difference is the work item contains intelligence and by executing the work item you will be taken to the form or SAP transaction that makes up the step in the workflow. This form or transaction could be a decision, a request for information or a request for confirmation that a particular task has been performed.
The work item is usually accompanied by a description of what has to be done, where to refer to when assistance is needed (help desk, intranet...) and a summary of information about the business object or process which enables the operator to attack the task immediately.
This work item can be received and executed in MS OutlookТ, Lotus NotesТ, mySAP Workflow MiniApp or the SAP integrated inbox. If this is not enough, the workflow system can transmit e-mail notifications directly to any mail system, informing the user of the need to log in to the SAP system to execute the task. The e-mail notification is done on a subscription basis so that users can de-subscribe from this service if they already check their work item inbox regularly.

8. What workflow reporting is available and is it useful?
Standard workflow reports exist which allow the administrator to check statistics such as the frequency and average duration of the workflow processes. However the real strength of the workflow reporting is that it allows reports to be configured which analyze the process statistics in combination with the data involved within the workflow process and the organizational units associated with the process. For example you can determine the average time invested in a failed contract renewal request, the time taken to create material masters in different plants or the frequency of rejected purchase requisitions on a department to department basis. Often, big reducations in cost or cycle time can be obtained without touching the workflow definitions. Reeducating a particular group of users or incorporating supplementary information in a work item description can often cause dramatic improvements on the cycle times of particularly critical subsets of the process. It is not unusual that this may have a big impact on specific products, plants or organizational units. This will show up in the WebFlow reporting in LIS or the Business Warehouse but it might not show up in traditional statistical workflow reporting. Even though the average time does not change significantly, the impact on costs and profit can be dramatic.

9. How do I choose who to distribute the tasks to?
A work item is assigned to one or more users. Whoever reserves or executes the task first wins and the work item vanishes from the other users' inboxes. This eliminates the need to assign the user to one single user. I.e. No need for complicated algorithms to determine which single user will receive the work item and no need to worry about what will happen when one user is ill for the week (also taken care of by sophisticated substitution mechanisms which can be linked to the SAP organizational model).
Tasks can be assigned to an organizational unit but the strength of the workflow system is to enable business rules which select users according to the data being processed. For example, you might have one group of users associated with one quality notification type. The workflow can be configured to query the QM module directly to determine the users. You can define fallbacks using the default role associated with a task and allow agents to be specified on the fly by a supervisor.
Tasks can be assigned to office distribution lists which is useful when you want your users to subscribe or unsubscribe to a particular task. A typical use of this would be where you have a work rote or want to reduce user maintenance to an absolute minimum. The users subscribe or unsubscribe by joining or leaving an office distribution list (one mouse click).

10. What happens when a deadline is missed?
This depends on your workflow definition. In the simplest case an e-mail is sent to another user by the system (typically your supervisor so watch out!). However in more sophisticated scenarios a missed deadline can redirect that path that the workflow takes. One customer uses deadlines to automatically make an approval if the deadline is missed (at about the eighth approval level!!!). This gives the user the chance to make rejections but does not force him/her to go into the system to approve the other 99.9% of the requests. In safety critical environments the workflow might trigger off preventative action when a deadline is missed or might put other processes on hold. There is no limit as to how you can use this functionality.

11. What deadlines can be monitored?
Many different types of deadlines can monitored. At the single workflow step level you can define deadlines which trigger when the work item has not completed within a certain time and other deadlines when no one starts working on the work item within a given time. You can specify the task deadline statically (e.g. 1 week) or dynamically (e.g. 1 week for material type A and 2 weeks for all the other materials). The offset can be related to the step (e.g. you have 1 week to complete this step) or related to the process (e.g. complete within 2 weeks of the complete process starting, irrespective of how long your colleagues have hogged the previous steps).
Last but not least, deadlines can be set for sub-processes, which is often more important than the deadline of a single step in a workflow.

12. How can I check the status of a workflow?
This is one of the very cool features of SAP Business Workflow. You can usually navigate directly from the business object to check the workflow progress. For example, while viewing a purchase order you can select "workflow" from the system menu or toolbar and you will see a list of workflows related to the purchase order. Usually just one, but if you have created a few of your own and these have been triggered you will see the status of these too. And that is not all. You also see a simplified summary of all the steps that have taken place so far including who performed them, when they were executed and which ad hoc notes were attached.

13. How are workflows triggered?
Workflows can be triggered automatically by changes in the system or manually by an operator. Manually triggered workflows are good for processes that remedy a problem the operator has noticed or for dealing with a forms-based requests (E.g. my PC won't boot). Automatically triggered workflows are useful because the operator does not even have to be aware of the workflow's existence to trigger it. In addition to triggers embedded in transactions there are also generic triggering mechanisms such as a change in the status of a business object or a change in the HR data. Irrespective of how the workflow is triggered, it is linked to the business object as described in the previous answer and can be tracked easily. Because WebFlow is part of the basis system, this triggering is reliable and easy to implement.
Workflows may be triggered by events but this is not essential. The event-handling makes it easy to trigger workflows from transactions and system changes without you having to make modifications. If you are creating your own report or transaction which triggers a workflow, avoid events and trigger the workflow directly with the WAPI function call. This is particularly important when triggering a workflow from outside the SAP system. This method reduces flexibility (the workflow ID is hard-coded) but increases performance if this is an issue (we're talking about 50 000 work items a day here!).
Any exception handling workflows that are intended to be triggered manually can be triggered from the system menu when viewing the relevant transaction. The SAP system has the intelligence to suggest workflows that can be triggered manually based on the authorization of the operator and the context that the operator is working in. No additional customizing is needed here.

14. What open interfaces are supported?
The most significant interface supported is the Wf-XML standard from the Workflow Management Coalition. This is an independent organization of which SAP is a funding member, along with most other major workflow vendors. The Wf-XML interface is based on XML and allows workflows from different vendors to communicate with each other. A detailed description of the interface is available on the WfMCs web site at www.wfmc.org.

15. What is Wf-XML used for?
Although a company is far better off workflow enabling their system with SAP WebFlow when SAP software is used anywhere within the process, a collaborative process can take place between partners using different software platforms employing different workflow systems. To support SAP customers in this situation, WebFlow offers the open interface Wf-XML. This allows Business Processes enabled using different tools to communicate and control each other. Any workflow tool offering this interface can connect up with other tools that also offer this interface.
Wf-XML is the only open interface for supporting interoperability of business processes, independent of what the business process being integrated.

16. Where does Wf-XML come from?
Wf-XML comes from the Workflow Management Coalition, an independent body of workflow vendors, customers and higher education establishments.

17. How does the workflow call procedures from non-SAP systems?
The Actional control broker integrates directly into SAP WebFlow enabling proxy objects to be called directly from the workflow step. When called, the proxy method will make a call to the outside system either as a background task or as a dialogue step. These proxy objects are generated in the SAP system using a converter which converts the objects interface (DCOM, CORBA...) to the SAP syntax. A syntax converter also lets developers view any object in any of the participating systems in the developer's preferred language.

18. How can I get the workflow initiator information in my task?
1) From your triggering event to the workflow, bind the event creator element to the workflow initiator element.
2) Create a workflow container element based on USR01.
3) Add a step based on USR01.FINDUSERFROMAGENTSTRUCTURE to convert your initiator to a USR01 object.
4) Pass the USR01 object to each task you want to display the details.
Mailing

19. What differences are there between a work item and a notification mail?
a) The work item cannot be used to notify several users.
Mails can be routed to several users, just like work items. When a mail is sent, and one recipient reads and deletes the mail, all other recipients will still have access to their own copy in their own inbox. However, when a work item is processed by one of the recipients it will automatically disappear from all the other inboxes. So you can see that a work item is unsuitable for notifying several users.
It is also worth noting that a mail can be forwarded in many different ways (fax, internet...) whereas the work item cannot.
b) The work item holds up the workflow
When the workflow sends a mail (usually as a background step) it continues with the process immediately after transmitting the mail. When a work item is generated, the workflow will not continue until the work item has been processed. This slows down the process. Occasionally this is what is intended (using the work item as an approval step without the ability to reject) but usually you will better off using mails for notifications.
Note: You can send business objects as references with the mail either as a business object reference attached to the mail or as an URL (ABAP required).

What is the difference between sending a mail to a recipient list compared to sending individual mails via a dynamic loop?
Performance. Sending 1 mail to 20 recipients will cost considerably less performance than sending 20 individual mails. If the mail is sent as a SAP Office mail (as opposed to e-mail, fax...) disk space will also be a factor because the SAP office mail will only exist once in the database, with references being created for each of the recipients.

The only time you need to consider individual mails with a dynamic loop is when the text of the mail varies from one recipient to another.

20. How do I send a standard text as an e-mail from workflow?
It is very easy sending standard text , which may include data from the workflow. You simply create a background step which sends the work item description. This may include variables which will be substituted when mail is sent.
In early releases you have to create your own task based on the method SELFITEM SendTaskDescription. In later releases a wizard is available for creating the step and in release 4.6 there is even a step type which does this all for you automatically.
Whichever path you take, there is very good online documentation describing exactly what has to be done.

21. How do I send a complex text from the workflow?
You may create mails using SAPscript. These mails can include conditions which are evaluated in order to determine which text blocks which are used in the mail. Workflow variables can be used in these conditions and workflow variables can be substituted into the body of the e-mail text.

22. How do I send really complex mails from the workflow?
If you this is not enough for you will probably want to write your own ABAP routines for generating the text and generating the attachments to go with the text.
Use the function group SO01 which contains functions of the form SO_*_API1 which are ideal for creating your own sophisticated messages. There are plenty of advantages of how these are used within the SAP system.

23. How do I send reports?
There are wizards (Release 3.1) which will create workflows for you to send reports to a distribution list. You can specify whether the results should be transmitted or evaluated at the time the recipient wishes to view the report. It is usually better to send the evaluation because this allows the recipient to see the results instantaneously, without having to wait for the report to execute first.
Deadlines

24. How can I configure the workflow so that different types of messages are sent out to different people depending on how late the processing is?
Follow these steps:
1. Specify a deadline period for the step.
2. Specify a name for the event. This adds new branch from the step.
3. Add a new step to the branch which sends a mail message.
4. Add another step to the branch which sends out the second deadline warning (see mail steps above). Use deadlines in this step to configure an earliest start so that the second message is not sent until a further time has elapsed.
5. Repeat step 5 as often as you like.

25. How can I configure the workflow so that when the deadline is missed the workflow step is simply skipped?
This is tricky to explain but easy to implement once you know how.
Follow these steps (in later releases there is a wizard which takes you through the steps):
1. In the terminating events view of the workflow step activate the "obsolete" event and give it a name.
2. Specify a deadline period for the step.
3. Specify a name for the event. This adds new branch from the step.
4. Add a new step to the deadline path. This step must be of type "process control".
5. Select the control "Make step obsolete" and use the search help to specify the workflow step that has the deadline. Only steps with obsolete paths defined will be displayed (see step 1).

26. How do I trigger a workflow with an e-mail?
You can customize the system to call a BOR method when an external mail (fax, e-mail...) arrives in the system. You BOR method should either trigger the e-mail directly or trigger an event. To customize this user exit use the transaction SCOT.

27. How can I make sure that user's access their tasks via the workflow and not via the menu or launch pad?
The routing mechanism for work items uses roles and organizational assignments to determine who receives which work item. However the routing does not provide extra authorization checks based on the routing configuration. If you want to ensure that the tasks are executed within the workflow, and not via the standard transaction, service or MiniApp, then you will have to apply your own protection.
The simplest way of doing this is to remove the standard transaction from the user's menu or Workplace role (but include it in the supervisor's role, just in case).
If you want to allow the user to execute the task from the menu if and only if they have received the work item then you should replace the standard transaction with your own custom built transaction. Your own transaction simply calls the standard transaction but performs it's own authorization check first, based on the routing mechanism used in the workflow. Tip: Add a second (ored) authorization check to make sure that a supervisor can execute the transaction in an emergency.

28. What is a workflow? What is a single-step task?
A single-step task is based on an object type from the object business repository (BOR) (for example, a purchase order) and a method for the object (for example, change). A workflow can contain several single-step tasks and activities such as loops and forks. Through a workflow, you create a logical sequence for the single-step tasks. The tool for creating or changing these types of workflows (workflow template) is the Workflow Builder (transaction SWDD).

29. What is a work item (important terms)?
A work item is the runtime object of a workflow or of a single-step task.You can execute dialog work items with the inbox (transaction SBWP). Each workflow and single-step task started is assigned a unique number known as the work item ID.

30. How is an event triggered from the application and a workflow then started?
An event can be triggered from the application in three different ways:

Directly:
Within the application, the SWE_EVENT_CREATE function module or the SWE_EVENT_CREAT_IN_UPD_TASK function module, for example, generates an event in the update.

With a change document:
Change documents are written within the application when you change application objects in the update. You can link events that have the same key with these types of change documents via transaction SWEC.

With status management:
The SWE_EVENT_CREATE_STATUS function module triggers an event in the same way as the direct method when a status is changed. This event contains the object type (for example, purchase order), the object key (for example, purchase order 4711) and other information. Using transaction PFTC, you can assign the event to a specific workflow or single-step task. More settings are available in transaction SWE2.

31. How are the responsible agents determined?
You can assign agents to a single-step task in transaction PFTC. For example, you can do this using organizational units, work center roles or positions. Within a workflow pattern, you can assign specific agents for this workflow to a single-step task. The overlap between both numbers of 'possible agents' represents the number of agents ('selected agents') who have the work item in the inbox later.

32. What is the difference of between an e-mail and a work item?
E-mails and work items are two completely separate things. They just happen to be displayed in the same inbox. An e-mail is a message sent to one or several people. However, a work item is a runtime object of a single-step task or workflow. Consequently, a work item cannot be deleted from the inbox of a user. In this case in fact, you have to adjust the agent assignment or delete the work item as described in note 49545.

33. PFAC no longer works for my role responsibility setup...
Use tx: OOCU_RESP

34. How do I transport workflow definitions and agent assignments?
When transporting workflows, you have to differentiate between the workflow definition and the agent assignment.
A workflow definition is a workbench request. When you save the workflow, a workflow version is created and a request written. Further information about the transport or about the status management is provided in note 378487 and in the notes mentioned there under related notes.
However, where the agent assignment is concerned, this is a Customizing request. To allow transport of agent assignments, the value of the semantic abbreviation CORR for the TRSP group name must be empty in table T77S0.

35. How do you debug a background workflow process?
In your method write the following code:
Code:
data exit.
Do.
 if exit = 'X'.
  exit.
 endif.
enddo.


Run the workflow, causing an infinite loop on that step, and then go to SM50.
Here you can debug the process.

36. What is the Workflow basic Customizing?
Before you can use the Workflow module, you must first execute the basic Customizing in transaction SWU3. All of the listed points should be green (the number range for customer tasks is no longer required). A detailed description of the activities is provided in the relevant information buttons. You can also execute some (but not all) of the points using the Automatic Customizing button. See the online documentation for an exact description of what happens there. The RFC destination must work correctly and the user (usually WF BATCH) should have the SAP_ALL profile.

37. What options do I have as a user to configure the inbox individually?
You have the following options:
You can create separate user-dependent or user-independent layouts so that you can adapt the displayed columns individually. You can access the function in the Workplace via an application function key.
You can set filters to set certain criteria for individual columns or several columns simultaneously, according to which specific work items are then filtered.
You can add dynamic columns in the layout that then display dynamic elements for certain tasks and users from the work item container. However, this is only possible if all tasks in the inbox belong to just one task. If they have several tasks in the inbox, filtering serves no useful purpose because all tasks are first completely read once. You can define these dynamic columns using transaction SWL1.

38. What does the substitute rule system look like in the workflow?
You have a choice of two different substitute rulings:
Active substitute ruling (for example, for absence due to vacations): In this case, the items belonging to the absent person are automatically assigned to the substitutes inbox (in addition to his own work items).
Passive substitution (for example, for absence due to illness): the substitute must explicitly assume the substitution and can only view the items of the absent person in this mode.
For other questions, you must also refer to note 74000.

39. How can users be automatically notified that new work items are available for processing?
Unfortunately, the dialog box that informs users of new work items which appears in SAPoffice is not available within SAP Systems.
However, the following two options are provided:

In the Workflow Builder, you can designate the item as an express item via additional data. The user then receives a corresponding express dialog box.
The RSWUWFML report (note 131795) is a more flexible option. This report sends an e-mail to an external Internet address to notify the user of new work items.

40. Can I set deadlines for the latest processing of work items?
This is where you can use deadline monitoring for work items. In the Workflow Builder, you can set dates for a requested/latest start/end date for each individual step. You must schedule the SWWDHEX job via transaction SWU3 for this. Schedule the job permanently in the production system otherwise it is difficult for the job to schedule individual deadline monitoring scenarios when workflow is heavy.

41. Can I also execute work items with external programs such as Outlook?
You can use the Web GUI for HTML instead of the Windows GUI. However, note that some functions do no work in the WEB GUI, due to technical restrictions in the browser. You must refer to note 487649 on this subject.
SAP also provides interfaces which allow you to process work items with external programs such as Lotus Notes or Microsoft Outlook. Refer to notes 77099, 98408 and 454845 for details.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> SAP Business Workflow All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


All product names are trademarks of their respective companies. SAPNET.RU websites are in no way affiliated with SAP AG.
SAP, SAP R/3, R/3 software, mySAP, ABAP, BAPI, xApps, SAP NetWeaver and any other are registered trademarks of SAP AG.
Every effort is made to ensure content integrity. Use information on this site at your own risk.