Synchronous Method It reports back to the
QUESTIONS AND ANSWERS
What is the table for USER MASTER, WORKFLOW LOG, WORKFLOW CONTAINER, WORKFLOW DEFINITION and AGENT OF WORKFLOW?
USER-MASTER - USR01
WORKFLOW LOG - SWWLOGHIST WORKFLOW CONTAINER – SWD_WFCONT
WORKLOW DEFINITION - SWDSHEADER
AGENT OF WORKFLOW - SWWWIAGENT 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.
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.
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.
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.
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
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?
1. Specify a deadline period for the step.
2. Specify a name for the event. This adds new branch from the step. More... 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.
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. More...
2. Specify a deadline period for the step.
3. Specify a name for the event. This adds new branch from the step. More... 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.
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-meil directly or trigger an event. To customize this user exit use the transaction SCOT.
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
Is it possible to execute a work item automatically (lying in inbox)... automatically when deadline is missed...If so how will you perform it?
When deadline is missed, u can trigger another work item.
Give time constrain to Latest Start and it branches one more outcome (with a clock symbol) in WF template. Here create an activity and assign the same task to this activity and do it as a background process.
A work item is in a users inbox. If the user wants to do a particular process manually without executing the work item what will happen to the work item? The WI stays in the inbox.
For killing the WI, u can use Process Control Step. (try fork) How will u delete a work item, which is in the inbox? Use SWWL transaction
Use RSWWWIDE Standard Report
Use Process Control Step in Workflow template Use SWUF (Workflow Admin)
What is Check Function Module and where it is used?
Check Function Module, if used, is responsible for triggering a workflow under som conditions. It will check the condition before triggering the workflow and if the condition is not satisfied it terminates the flow. Developer has to create this function module (if not provided by SAP). This is given in SWE2. (Select the linkage and see details)
What is Receiver Function Module and where it is used?
SWW_WI_CREATE_VIA_EVENT is the Receiver function module, which is responsible for triggering the workflows (for all Workflows in SWE2). This will be assigned automatically when the linkage (SWE2) is created. This function module is common for all.
How can I pass parameters from an ABAP program to the workflow container? SWW_WI_START_SIMPLE is the Function Module used for triggering workflow from ABAP. (Try also SWW_WI_CREATE_VIA_EVENT)
How to Trigger another workflow from a workflow in process? Explain the process and steps involved in it?
Workflow is in process. Upon creation of an event, the workflow should end. How to design this process?
Can use Process Control Activity with the necessary logic.
Depending upon various field values, workflow should be triggered? How to do it? Field Restriction in SWEC
List some standard FM used for Role Resolution and explain where it is used and how parameters are passed?
SWX_GET_MANAGER – Gives the Superior (output from function module) of the user (input to function module).
What are the macros used by you in the workflow development? DATA: <Object> TYPE SWC_OBJECT.
SWC_CREATE_OBJECT <Object> <Object Type> <Object Key>. SWC_REFRESH_OBJECT <Object>.
SWC_GET_OBJECT_TYPE <Object> <Object Type>. SWC_GET_OBJECT_KEY <Object> <Object Key>.
SWC_CALL_METHOD <Object> <Method> <Container>. SWC_CONTAINER <Container>.
SWC_CREATE_CONTAINER <Container>.
SWC_GET_PROPERTY <Object> <Attribute> <Attribute Value>.
SWC_GET_TABLE_PROPERTY <Object> <Attribute> <Attribute Value>. EXIT_RETURN <Exception> <Var1> <Var2> <Var3> <Var4>. Have you used the Role Resolution? How did you do that?
There are various ways of defining roles. You can use the following:
Function modules
You use a function module to define standard roles if the agent for a task must be found according to extremely complex selection criteria. If you define roles using function modules, the system finds agents by executing the function. How data is obtained varies from function to function. You can use predefined functions, or create your own functions.
Organizational data
You use organizational data to define standard roles if your business processes are managed on the basis of your organization model. If you define roles using
organizational data, role resolution traces the possible agents for a task by using the relationships between the task, the objects in Organizational Management, and the
SAP organizational objects. Responsibilities
You use responsibilities to define standard roles if you need more precise selection criteria to find agents, but do not want to use function modules. You can also use the organization model to find possible agents using jobs, positions, etc.
Explain the workflows developed by you. Explain from starting point to end point of workflow development (Technical point of view).
Design Process
Which responsibilities do you have for the scenario?
Design the Multistep task
How must the single-step tasks be defined?
How must the object type be defined?
Which functionality should the method involve?
On the single step level you define the greatest possible set of agents.
On the Multistep level you define the responsible agents. 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.
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.
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.
How can users be automatically notified that new work items are available for processing?
Answer: 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 is a more flexible option. This report sends an e-mail to an external Internet address to notify the user of new work items.