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. SAP also provides interfaces which allow you to process work items with external programs such as Lotus Notes or Microsoft Outlook.
How do you trace the workflow?
Symptoms worth investigating with the workflow trace : An event fails to trigger a workflow
Inconsistent data in the workflow A workflow step does not execute Starting points for Investigation
Is the binding performed correctly?
Is the target container being filled as you expected?
Are warnings recorded when the condition is evaluated?
RESOLVING WORKFLOW INSTANCE ERRORS Wrong Version in active.
No workflow definition is active Binding Errors
Workflow appears to be successful but the work has not been done.
WHY DUPLICATE /MULTIPLE WORKFLOWS ARE TRIGGERED Two Workflows are triggered by the same event.
Disable one of the event linkage
Start condition are used to determine which workflow should be triggered by a particular event, but the start conditions overlap.
Correct the Start conditions
One workflow is triggered by a subtype event, and the other workflow is triggered by the super type event.
Use delegation so that just on event is raised / disable one of the event linkages or use start condition (Check Function Module) to decide which workflow should be started.
Workflow is triggered directly by a customizing table and also by an event
Check the online documentation for this workflow and if necessary disable the event linkage.
1. In a workflow process all the users in an Org. unit has to be displayed and a single user for approval should be selected from that list. What object and how that can be done?
2. A workflow task is pointing to a background job. If there is some error in the background process how will you notify it to the user? Explain the process.
3. To which agent the task goes first.
4. If the possible agents r not assigned where the workflow will go. Will it be an error?
5. In order to keep the work item even after it’s executed what to be done.
6. For asynchronous does the terminating event should be given.
7. Is there any relationship between asynchronous and the work item being removed from the inbox, after it is executed.
8. Approve/Reject should be given after the work item is executed and the transaction is called. What to be done (use the function module popup_*)
9. What to be done in Role Resolution.
10. Web flow.
11. ITS
12. Workflow event log trace.
13. Done any monitoring other than deadline monitoring.
14. Agent assignment is done in workflow or standard task.
15. Extending events
16. Can we start a WF without using event?
17. Diff between hierarchy and dynamic hierarchy.
18. To add document by the user during the WF process- attach document activity 19. Use 'process control activity' - to skip the work item and continue the WF process.
20. To terminate the WF (will completely stop the WF process and its associated WF's) 21. To cancel the WF (will stop the current WF process alone and not its associated WF's) 22. When & where to use set & get parameters
23. When set container is used whether get container is a must.
24. What are the various ways to trigger an event?
25. What is the diff b/w workflow task and workflow template?
26. What is the diff b/w standard task and customer task?
27. What is the name of the Fun Mod, which is used to create event?
28. What are the various ways to trigger an event?
29. Diff between Version Dependent and Independent Workflow 30. What is Notification
31. What is Modeled Deadline
32. What is Receiver Type FM and Receiver FM?
33. What is Check FM?
34. What are possible ways in which can be assign to a task?
35. Can a Terminating Event be a starting event for another workflow or task if so how?
36. What is Adoption Workflow 37. Diff. type of role resolution?
38. Diff. between rule and role?
39. Consistency check for a standard task?
40. What work queue workitem?
41. What is Position Related substation agent?
42. Which container element is used to store the Administrator?
43. Why we used object type WF_TASK?
44. Who is the agent for background task? WF_BATCH 45. Completely explain one workflow process.
46. Diff between possible agents & responsible agents.
47. If the possible agents r not assigned where the workflow will go. Will it be an error.
48. In order to keep the work item even after its executed what to be done.
49. For asynchronous does the terminating event should be given.
BUSINESS OBJECTS –SWO1
A business object is a problem-domain entity that you model in the SAP system, such as SalesOrder, BillingDocument, and Employee. The BOR stores all the objects in the R/3 system. The repository is a group of all the objects in the R/3 system.
ATTRIBUTES
A business object is primarily represented by its attributes. You perform actions, such as create, update, or delete on the attributes by calling the methods of the object.
FIGURE1ATTRIBUTE NETVALUE OF OBJECT BUS2032(SALESORDER).
The majority of attributes are data-dictionary fields (for example, the NetValue attribute is defined by VBAK-NETWR). When you access an attribute of an object, you execute a SQL statement that retrieves the corresponding field in the database.
FIGURE2DEFINITION OF ATTRIBUTE NETVALUE.
You can also define attributes that do not exist in the data dictionary. These attributes are called virtual attributes. For example, a business partner has an attribute called BirthDate that is stored in the data dictionary. You can add a virtual attribute to the BusinessPartner object called Age. The age of a business partner is not stored in the database, but you can calculate it using the current date and the birth date of the business partner. If you
implement the ABAP code that calculates Age, every time you access the Age attribute, the code executes and returns the business partners age.
FIGURE3DEFINITION OF VIRTUAL ATTRIBUTE AGE.
The BOR lets you define multi-line attributes. These attributes define one-to-many
relationships between an object and other fields. These objects can be defined in the data dictionary or can also be virtual attributes.
An attribute that uniquely defines an object in the system is called a key attribute. In the case of a SalesOrder, the key attribute is VBAK-VBELN (the TableName and FieldName). It is not uncommon for an object to have several key fields. An example of this is object is the SalesArea (BUS000603) object type which has SalesOrganization (TVTA-VKORG), DistributionChannel (TVTA-VTWEG) and Division (TVTA-SPARTE) as key fields.
METHODS
As mentioned earlier, the methods of an object represent the actions you take with objects attributes. An action in this example would include retrieving the status of one or more sales orders based on specific criteria. Methods are analogous to function modules in that they have importing and exporting parameters as well as exceptions, which you view by selecting a method and clicking on the toolbar button. This allows external systems (or internal developments) to pass and accept parameters from these methods just as if they were using function modules -- allowing external systems to call methods.
FIGURE4METHODS OF SALES ORDER.
DELEGATION AND SUBTYPING
One of the most complex concepts in object-oriented development is that of inheritance.
This concept lets you extend core functionality by creating a child of the parent object that inherits all of its attributes and methods. For example, a Manager object is a subtype (child) of the Employee object. The Manager object has all the attributes of an Employee object (such as EmployeeID or Name) but also has some extra attributes (such as CompanyCar or Parking Space). SAP has not implemented inheritance in the BOR. However, it has provided subtyping and delegation, which offer an alternative way to extend R/3 functionality.
SUBTYPING
A subtype of an object is another object whose creation is based upon a parent object (see the preceding manager/employee example). The subtype maintains references to all the attributes and methods of its parent object. This means that any methods and attributes defined on the parent can be executed and accessed on the child object. I have often heard less-experienced developers refer to subtyping as copying the parent object. Although the effects can be similar, in order to achieve an understanding of some of the more advanced concepts, such as interface inheritance, it is important to realize that this is not accurate.
If a subtype object were merely a copy of its parent, then all the code contained within the parent would be physically copied to the child. This is not the case. The subtype simply maintains references to its parents methods and attributes. The real difference is that the subtype lets you redefine these methods and attributes. You can easily add your own business rules to the parent methods by redefining the subtypes method.
FIGURE5REDEFINITION OF CHANGE PASSWORD METHOD.
It is imperative that once you redefine the method it still behaves in a similar manner. You are allowed to add extra business logic, but the method must still change the password rather than do something unexpected, like delete a customer. This is particularly important when SAP is being accessed from external systems. The external system will expect a method to provide certain functionality. The developer should take care to ensure that this expectation is met.
Delegation
Now that you have implemented a new CHANGEPASSWORD method, you need to tell the SAP system to use the redefined version of CHANGEPASSWORD and not the version that was delivered on the KNA1 object. This is similar to object-oriented inheritance but the two concepts do have fundamental differences.
FIGURE6DELEGATION FOR OBJECTS.
By making an entry in the delegation table, you tell R/3 that before executing a method on KNA1, it should first check if that method has been redefined on the subtype. If it has, then the system executes the redefined method. If it hasn't, then the system executes the original method.
FIGURE7EXECUTION FLOW FOR METHODS WITH DELEGATION.
This delegation is powerful because it lets you implement your own business logic without modifying any SAP code. As long as the objects are properly delegated, your method will be executed.
ROLE RESOLUTION AGENTS DETERMINATION
Role
Organizational Unit
Job
Position
Work center
User
Expression
Workflow Initiator (Expression)
Superior of workflow Initiator (Role) ROLE RESOLUTION
Responsibility Rules
Evaluation Paths
Function Modules
SAP Organizational Objects AGENTS DETERMINATION
PFTC
RESPONSIBILITY RULES