ABAP-OO Workflow for PO-release

Mike Pokraka wug at workflowconnections.com
Wed Apr 16 07:47:25 EDT 2008


Hi Florin,

Events are probably the least developed part of WF-OO and have a couple of
areas where they are not 100% supported even in the latest greatest
version.

Nevertheless, this is completely irrelevant to your question and by no
means a reason not to go down this route.

Events are raised by the app. Having a new type of event doesn't mean the
po will automatically raise it, it is still BUS2012 (and probably always
will be). Think of it as having a new BO (e.g. PURCHORD) available to
represent a PO. In other words there is no translation.

It's annoying that you will still need to work with BOs for the eventing
part, but there are two alternatives:
* Trigger your WF from the event and instantiate a class object in the
first step of your WF. This is quick and simple and works well.
* Use a custom receiver to forward the event to your class.

The second option is only really useful if you need to massage event info
along the way. The problem is that e.g. ME23N's GOS will still look for
BUS2012, so you will still need a BUS2012 in your WF as a container
element.

Stick with OO. I am currently on my first project in years where I'm
forced to use BOR and it's not nice. I would violate posting guidelines if
I said what I really think :-)

Have fun,
Mike


On Wed, April 16, 2008 10:25 am, Florin Wach wrote:
> Hi folk,
>
> I have the great opportunity to make a complete re-design of a workflow
> implementation for the release procedure of purchase orders (that one that
> is about release-codes, etc.)
>
> I remember some previous postings that generally say that it's a very nice
> thing to make (more) use of ABAP-OO classes and such and read through the
> white paper "ABAP OO for SAP Business Workflow (including 6.40)" written
> by Jocelyn Dart
> <https://wiki.sdn.sap.com/wiki/display/HOME/2.+Design+and+Development#2.DesignandDevelopment-HowcanIuseABAPOOClassesinWorkflow%3F>
> as found in the FAQ-Wiki within the SDN:
> <https://wiki.sdn.sap.com/wiki/display/HOME/SAP+Business+Workflow+FAQ>
>
> I stumbled over something that says in chapter 6:
> "Events of ABAP Classes are used in workflow in a similar way to BOR
> events. When including an event of an ABAP Class in an event linkage, the
> following differences are noticeable:
> • The “Object Category” must be set to “ABAP Class”
> • The ABAP Class name is specified as the “Object Type”
> The event linkage acts as an event handler for the ABAP Class event.
> To call events from programs use the class CL_SWF_EVT_EVENT. There’s
> also an interface for adding event parameters – check the SAP Library
> help."
>
> Now I wonder, what the standard transactions are doing here, as the events
> for the Business Object BUS2012.ReleaseStepCreated (the most important
> one) and BUS2012.Released are called within those transactions.
>
> I have rummaged through the classes via the reference of the interface
> IF_WORKFLOW, but it seems that there could be something available for
> purchase requisitions, but I didn't find anything about purchase orders.
> Apparently I didn't find pretty much ABAP-OO classes at all.
>
> ===QUESTION===
> Q: How are (SAP Standard) events from Business-Object-Types translated
> into ABAP-OO events?  (Including any parameters passed, which then can be
> used in the event type linkage)
>
>
> Best regards,
>    Florin
>
> _______________________________________________
> SAP-WUG mailing list
> SAP-WUG at mit.edu
> http://mailman.mit.edu/mailman/listinfo/sap-wug
>





More information about the SAP-WUG mailing list