190 likes | 316 Views
Workflow Tips & Tricks. Ulrich Mende Mende EDV Beratung. Session Code: 3206. Deadline Calculation with SAP Calendar Functions Deadline calculation should be based on the active factory calendar in the SAP system. Working time should be used as the Offsets in deadline calculation.
E N D
WorkflowTips & Tricks Ulrich Mende Mende EDV Beratung Session Code: 3206
Deadline Calculation with SAP Calendar Functions Deadline calculation should be based on the active factory calendar in the SAP system. Working time should be used as the Offsets in deadline calculation. Weekends and holidays have to be omitted. Example: In case an Approver did not complete his/her workitem after 2 working days deadline processing will send a mail to a responsible person. Workitem arrives: Monday, 4:00 p.m. Mail should arrive: Wednsday, 4:00 p.m. Workitem arrives: Friday, 4:00 p.m. Mail should arrive: Tuesday, 4:00 p.m. (not Sunday 4:00 p.m.)
Use radio box „Expression“ for your own calculation of deadline date and time Expression for deadline date Expression for deadline time
Notes for the solution • An agent can execute the workitem only after it arrived in his inbox a calculation regarding workitem creation time is of interest • Workitem creation time is not known at workflow creation time deadlines can not be calculated before starting the workflow • Deadline calculation must be carried out in the workflow at runtime ABAP coding in an BOR object type (method or virtual property) is needed • Deadlines should be set for tasks of several BOR object types (FIPP, MARA ...), but these types should not be changed or subtyped • Consequence: Special object type for deadline calculation
Special BOR object type ZDEADLINE Numerical offset relating to workitem creation time Time unit for offset (minutes, hours, days) Factory calendar for calculation (table TFACD) Calculates date for deadline using factory calendar ( FM END_TIME_DETERMINE) Calculates time for deadline using factory calendar ( FM END_TIME_DETERMINE)
Set up key values for ZDEADLINE object by „Triggering events“ or by „Initial values“ F4
Use virtual properties of ZDEADLINE object as deadline expressions
ABAP code of object type ZDEADLINE Text file
Workitem Selection in a productive system Lots of workflow- and object instances in the list Workitems are sorted by ID
Workitem hierarchy, modelled in table SWWWIHEAD Find a toplevel WI to a givenBOR object instance In table SWW_CONTOB F 13007 STARTED WI_CHCKID = 13007 E 13008 STARTED W 13009 COMPLETED F 13234 STARTED Find a toplevel WI to a given WI going up the hierarchy by field WI_CHECKID WI_CHCKID = 13234 W 13236 COMPLETED B 13413 COMPLETED W 13414 READY Find all WIs, related to a toplevel WI going down the hierarchy recursively Multi step items (Subworkflows) Single step Items
Selection screen of report Z_FILTER_WF A n y WI-ID, if not toplevel, toplevel is found STARTED, COMPLETED, CANCELLED, ERROR Task of Type WS or WF BOR object type Key of BOR object instancewildcards are allowed Date and time of workflow creation
Basic list of report Z_FILTER_WF (ALV-list of toplevel workflows) Task and object type are corresponding Full key of object instance Toplevel IDs Type is always „F“ Count of WIs in the workflow
Workitem Selection for the result of report Z_FILTER_WF 6 days between creation of workflow and last WI 22.000 WI-IDs between workflow and last WI
ABAP code of filter report Z_FILTER_WF for workitem selection Text file
Thank you for attending! Please remember to complete and return your evaluation form following this session (session code = 3206).