Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
laxmanakumar_appana
Active Contributor
0 Kudos

When we want to add business objects in a task , we have seen that most of the discussions are based on the BOR Object "System" method -"GenericInstantiate" . If we want to add more number of business objects or different types of business objects in a task , then we have to repeat the steps with standard task based on BOR Object "System" .Creating the business objects in a class based workflow with BOR object, we may end up seeing binding errors like below:

There are many blogs explaining how to develop a workflow based on custom class , here I concentrated mostly to achieve our goal without complete class development. My approach is to show that we can add multiple business objects without creating a custom task using BOR Object "System" or using a standard task with BOR Object "System"  and also to have an error free task .

For example , a service engineer has to take approval from the manager to replace certain products .System sends a workflow task to the manager based on the products mentioned in the service order .  When manager wants to check certain things in the service order products before approving the task , then associated business objects ( in SAP CRM Web UI ) or objects and attachments ( in business workplace inbox ) are helpful in the task.  These objects will give comprehensive view of the service order without having to navigate any further to know the details.


Service order products :

For the above requirement scenario , the final workflow will look like below :

This workflow is a class based workflow .  I created a class "Z_WF_ADHOC_OBJECTS" with required interfaces and implemented the interface methods .

Global attributes of the class are like below , for our goal,  I created a variable "GT_BO_OBJ" of table type SIBFLPORBT to hold required business objects.

Created a method "CREATE_ADHOC_OBJECTS"  in the class for getting the multiple business objects ( here products ) based on the service order , the method parameters are like below :

IV_SERVICE_ORD_NOImportingTypeCRMT_OBJECT_ID_DB
ET_BO_OBJSExportingTypeSIBFLPORBT

Import parameter takes service order number , reads service order data , prepares data with corresponding BOR object type ( here it is product "BUS1178 " ) and exports data in a table type parameter .

I created an activity ,"Create Adhoc Objects" ,and attached task with class method "CREATE_ADHOC_OBJECTS" like :

Task container elements are like :

Task and activity bindings are as follows :

Created a user decision step and added captured business objects ( class global variable &WF_CLASS.GT_BO_OBJS& ) to '&_ADHOC_OBJECTS&" system parameter , then the binding will be like :

Finally , activated the workflow and executed with sample service order,  the generated task in CRM Web UI worklist or in user inbox will be like :

Now from task, user can easily navigate the objects to check the details ( here objects are products ) . By clicking on the corresponding product , product displays as follows :


I believe , if a requirement needs more details in a task , then my approach is simple and very helpful.

4 Comments
Labels in this area