Wednesday, November 25, 2009

How To Make A Gir Outfit

Tips & Tricks for troubleshooting workflow issues

agent assignment [1] / agent determination
[2] Workflow Hanging
[3] Performance in SAP Business Workplace (SBWP)
[4] Events
[5] Transport of workflow patterns
[6] Extended Notifications
[7] transactions for debugging
---- -------------------------------------------------- ------------------------------
[1] Agent Assignment / agent determination

work items are not the correct user or all users in the system assigned. You must correct the error. Identify the workflow patterns and the step in which the problem occurs, and check the following: Possible
agent

Determine the step in the workflow model of the Workflow Editor assigned task and click the button 'Edit Assignment'. The screen 'Agent Assignment &' for the object is displayed. (Alternatively, you can view the task of transaction PFTS or double-click the task ID in the crotch. Please use the menu path Additional Data => Agent Assignment => Maintain or ads.)

If the job is not possible agents are assigned or the task is not the Status 'General' (available for all users) has, this is most likely the cause of the problem in the processor assignment. You must be the task of users / posts / organizational units, etc. Assign them to be regarded the 'General' can.
Request handlers

Request handlers are assigned to the workflow step in the 'Edit'. Typically you will see posts, expressions or rules for determining the responsible agents. You need to check if processor is returned at run time. If the processor assignment is possible in your job right, you have to consider the request handlers. Go to the troubleshooting as follows:

o Rule If you use a rule, you can 'simulate rule resolution', the regular version of the print button simulate PFAC. A rule receives at run-time data from the workflow container. You should therefore check the flow of data in the workflow definition to which data from the workflow container to the control container to be passed. Then select the work item instance in which the problem occurs, and use the data from the workflow container for your simulation. Enter when using the simulation option in the Test Container PFAC F4 data. If not expected this task are returned, you must check the rule implementation, for example, whether you use a custom function module or responsibilities have maintained. If the return of the agents during the simulation run smoothly, but problems occur at run time, see SAP Note 755,767th


SAP Note 755 767 Description

special privileges in the workflow expression

o If you use to specify the responsible agents an expression, you must check the work item instance in which the problem occurred, and look what value in the expression in the workflow container. In the event of an unexpected value, you must determine where the Workflow, the term is filled to examine why the value is incorrect. A good way to figure out, exactly what steps to use a particular container element is to click the right mouse button on the container element in the Workflow Builder and select the "Show-reference" graphic. In this way, all steps are highlighted, in which the term is used Container-Element/der.

Useful transactions

* PFAC - Maintain / Display the default rule

* PFTC - Maintain / View tasks

* SWDD - Workflow Builder

PPOSW * - shows the organizational structure




[2] Workflow Hanging


This area is divided into four sections.

o Work Item enqueue

o SM58/SWU2

o Short dump during method execution

o transactions for restart of faulty work item


work item ENQUEUE

When a work item is running and tried the workflow run-time system, on the work item access, this does not work, because for the work item is currently a lock or enqueue. Some examples: Example 1


A user performs an asynchronous task. During the execution of the work item raised the terminating event in the system and tried to put the Workitemstatus to COMPLETE. However, this is due to the lock / enqueue not possible. In this case, the event in the event queue is buffered. Once the work item is released, it immediately delivers the buffered event. For more information, see SAP Note 749,945th


Example 2
you use parallel processing with a parallel section with 2 branches (one branch is required to complete). In a branch is a dialogue activity step and the other with a 'Wait for Ereignis' step. While dialogue step is performed by a user, the 'Wait to receive Ereignis'-step his event, and continues along the branch and terminates the parallel section (to remember: only one branch is required to complete). When the end of the parallel section is reached, the dialogue should work item on the status be set to "logically deleted". Because of the lock / enqueue the work item during the execution by the user this does not happen, however. Since a workflow needs to further embodiment, a callback, this callback is stopped (stored in the table SWP_SUSPEN). These callbacks can be restarted using the report RSWWERRE. If you are not scheduled the report RSWWERRE remain, the work items in the table SWP_SUSPEN received no call back and are therefore discontinued.


Troubleshooting

When hanging work items, look for the table SWP_SUSPEN whether the corresponding work item ID is available there. If so, make sure that the job RSWWERRE is engineered to deliver the work item again. If RSWWERRE is executed and the entry will not be extradited, search using the keywords "RSWWERRE" and "SWP_SUSPEN" to the SAP notes. If no entry exists in SWP_SUSPEN, check in the workflow definition, whether the work item is asynchronous, ie, whether it needs a terminating event as in Example 1 above. Check with transaction SWEQADM whether the terminating event in The event queue is buffered. If so, it should automatically be delivered again. Search through the SAP notes after the event queue.

SM58 or SWU2


may occasionally hang work items in case of network problems, system crashes and tRFC and qRFC problems in the system. In the technical workflow log, see work items with status "In Progress" or "Complete" will not continue with the next step. Search in transaction SM58 for entries relating to the tRFC execution in this case the best.

If you want to find that the work item corresponding entry in SM58, double-click the entry under 'Transaction ID'. Here you can find useful information such as the standard task, the business object, the object instance, the corresponding event and the work item ID. These details are not always indicated. However, you should receive sufficient information to identify the work item ID. For example, if the task ID is specified, call SWI1, enter the task ID and the date and time of the entry and you should work item identifier can find out.

Useful information

The entries in SM58 may be restarted when the problem because they are present in the list has been fixed. Select the entry from the list and go to the menu: Edit => LUW run to start a new entry. If you want to process more than one entry, go to the Edit menu, run => LUWs or schedule the report RSARRCEX one with the right data.

Short dump during method execution


Check in ST22 whether short dumps exist in respect of the related work item. If you look in ST22, both by date and time the work item execution and after the user running or WF-BATCH, you can usually figure out exactly where the dump occurred and whether it is custom code or standard SAP code. A short dump can be done in custom Code due to poor exception handling occur in the method code. In this case the best option, the object method of transaction SWO1 with the data from the work item container is to test, you can see the workflow log.

If it is the object method to SAP standard code, you need to find out what application is responsible for the object method and create a message in this component.

Useful information
Call SWO1, enter the business object and click the button "Show". Then click on the button "basic data". Here is listed with the business object associated program name. Run the report RSSTATUS therefore, to the component to which the object belongs to find objects such as FORMABSENC.

Program name: SWUFORMA
Run the report RSSTATUS of: component BC-BMT

transactions for restart of faulty work item

* SWPR - Workflow Restart After Error

* SWPC - resuming workflow after crash

* SWF_ADM_SUSPEND - restart of stalled workflow callbacks

SWF_ADM_SWWWIDH * - restart of stalled appointment callbacks




[3] Performance in SAP Business Workplace (SBWP)

The overall performance of SBWP can be achieved by Number of factors are controlled, which are listed below.

o Archiving

o table access and performance

o Performance of SBWP (available BAdIs)

o RFC


archiving

Insert a WORKITEM archiving strategy to maintain control over the size of your workflow table . Use transaction SARA and the archiving object WORKITEM to archive work items. Thus, the affected tables are listed. For more information, see SAP Note 573,656th The lower the number of entries in the workflow runtime tables, the better the performance the workflow engine.
SAP Note 573 656 Description
collective note for archiving in the workflow 621 258
archiving WORKITEM unifications
table access and performance


read and play the following SAP Notes.
SAP Note Description
98 407 Performance Workflow
799 002 Missing CLIENT in the database index
72 873 Performance of the workflow system, recommendations
72 923 performance of the business workflow, collecting information
861 380 SWW_CONTOB after SWW_WI2OBJ migration

performance SBWP (available BAdIs)

If you experience performance problems in SBWP, see SAP Note 764 707, some causes this. The main reason is that users far too many work items (several thousands) in their inputs. For the business end of some customers, it is necessary, all work items in the input rather than to have a more precise processor assignment used (call center scenario). Therefore, several BAdIs were provided to improve performance, eg by reducing the number of work items in the user inputs.

o WF_BWP_SELECT_FILTER the number of work items displayed will be limited by filtering with this BAdI. It is especially suitable for scenarios where all users on the same pool of work items are working (eg call center). (See SAP Note 765 783)

o WF_BWP_DYN_COLUMN the performance can be improved in the Business Workplace By hiding the dynamic columns. If this is not possible, you can implement the BAdI WF_BWP_DYN_COLUMN to the values of the dynamic columns to determine directly from the application data. The BAdI is provided with SAP Note 848 382 available.

o WF_BWP_OBJ_ATTRIBUTE this BAdI it is possible to set the default attributes of the leading object (_WI_Object_ID) and the grouping feature (_WI_Group_ID). The default attributes for grouping by content, grouping used for order term and to hide the column group object and work item contents. The BAdI is provided with SAP Note 848 382 available.

SAP Note Description
76 578 BADI for Business Workplace
764 707 Performance in the Business Workplace
848 382 BAdIs to improve performance in the Business Workplace


RFC

Be careful when implementing the proposals from SAP Note 888,279th If you register the target, your RFC-parameters have been set correctly, so that no delays occur in processing the work item executed by a lack of available dialog processes and so on.
SAP Note Description
888 279 regulation / distribution workflow load
98 407 Performance Workflow
[4] Events

disabling event linkage


If the event linkage is disabled, sent an e-mail to the SBWP the WF-administrator in the specified cause of the error is. Usually the cause of the surrender of bad data from the object event to the event consumers the workflow template. Check the input (not the workflow input) of the WF administrator about the time of deactivation. There you should find the answer.

Did you remember to use the event queue (transaction SWEQADM)? Use the
Event queue, you can try to balance the load of the triggered workflow. The event queue stores the results of the event linkage in a temporary database table after the start conditions and the test functions are evaluated (if you use start conditions).
You can also use event queue to store events, and these errors again after the correction to be delivered.

Set in SWE2 'enable event queue' the indicator in the event linkage.
Place beyond 'behavior on error feedback' to 'Coupling mark as incorrect'.

you can use the basic data of the event queue with the transaction SWEQADM set.
troubleshooting concerning the deactivation

Enable Event Trace (transaction Swel). If the coupling is turned off again, check the event trace with transaction SWEL. It should contain an entry for all the successful entries and an entry for the entry that has turned off the power. If you double-click it, you should receive information about the cause of deactivation. (It is not recommended, turned on the event trace during the production of long leave, as this can lead to performance problems. Turn it off once the connection is disabled.)

What event will trigger the workflow? Is this a standard system event or a custom event? For customer-specific events may occasionally occur that not all information on the event lead to the consumer / workflow to pass, so to deactivation.

To analyze the event container you should proceed as follows: Define a new entry in SWE2:

enter the event, you give the consumer type a username (your user name) and for the receiver function module SWE_EVENT_MAIL. You will receive for each event, the event container via e-mail and can see if data is missing. It is possible that a mandatory Input element in the workflow is not passed by the Ereingis.

Useful transactions

* Swel - Switching the event trace

SWEL * - View the event trace

* SWU0 - Event Simulation

* SWUe - Create an event

SWEQADM * - Event queue

* SWETYP - type couplings

* Sveinn - Instance couplings




[5] Transport of workflow patterns

First, read SAP Note 571 302 and make sure that you have recorded all of the above SAP Notes into your system .
SAP Note Description
571 302 Collective Note for archiving in the workflow
versions and activation

This section explains how versions work in relation to the transport of workflow patterns.

o Create or change a workflow in your development system and transport it to the test.

o If the workflow is already available in test instances are running and it is a new version of the workflow created in test. This is done to ensure that the existing instances the old version and new, can be used by the transportation authorities created the new version. If the workflow exists, but no instances (in test) are present, he is simply overwritten by the transport.


It is NOT necessary to synchronize versions between the systems.

troubleshooting in terms of versions and activation

o Is the clock of the source and target systems match?

o If you create new container elements in your workflow, make sure that their data references are also present in the test system.

o Have you created new challenges and added them to the workflow in the development system? If so make sure you that you have transported the object also in the quality system. O Have

In the target system with transaction swdm - looked> Transported Workflows -> Others? If there are problems, this is indicated in red.

o

Useful transactions

* swdm - Business Workflow Explorer


[6] Extended Notifications and Delta pull

If you are having SWN_SELSEN RSWNUWLSEL or performance problems, consider the following comments:
SAP Note Description
WF Notif
1105696: memory usage and performance of SWN_SELSEN

* The selection of the Notification / work item is tracked using the application log. You can log-in transaction level SWNCONFIG . Influence To do this, the transaction SWNCONFIG on and navigate to the General settings (General Settings). There you will find the setting MAX_PROBCLASS. Example, if you log level 1, only very important information logged. A change in the log-levels can have a positive impact on performance.

* The following are the main tasks of the program RSWNUWLSEL filter (in mode FULL):

o selection of all open dialog and deadline work items in the system. "Open" means they have the status READY, SELECTED, STARTED and COMMITTED.

o establishing the application of these work items.

o Notifications Add (relation of the work item to the user)

o save the notifications in the table SWN_NOTIF. This means the insertion of new, obsolete logical deletion and updating of existing notifications.


Check the following: o If

open work items available that are part of tasks that may be a problem with the processor assignment is, for example, if one or more tasks assigned to a position that does not exist anymore. If so, RSWNUWLSEL tried to set the editor for this work item, but to no avail and with slower performance. To determine this, run the transaction SWI2_ADM1 and check whether it contains a lot of work item without agent. If so, please re-organize the work items in your system. Also check whether the work items are relevant, and if not, they can be archived or deleted. For more information about deleting and archiving of work items, see SAP Note 573,656th

o Furthermore, there is the program RSWNNOTIFDEL. This deletes these entries from the table SWN_NOTIF which have the status "logically deleted". A Notification is given the status "logically deleted" if the corresponding work items completed (processed) are. So the number of entries keep in SWN_NOTIF as low as possible, plan RSWNNOTIFDEL a regular basis. It is recommended to run the program with the default value of 10 days. If this is not enough, you can change the value at a later date.



[7] transactions for debugging *

SWUD - Workflow diagnostic

* swdm - Business Workflow Explorer

SWUS * - test the workflow

* SWU8/SWF_TRC - workflow trace on / off

* SWU9/SWF_TRC - View the workflow trace

SWF_APPL_DISPLAY * - View the Application Log

* SWU0 - Event Simulation

* Swel - Event Trace On / Off

* SWEL - View the event trace

* SWPR - Workflow Restart After Error

* SWPC - resuming workflow after crash

* SWI2_DIAG - Diagnosis of Workflows with errors

* SWU2/SM58 - Workflow RFC Monitor

0 comments:

Post a Comment