SAP Function Modules

WF_PROCESS SAP Function module - Transaction dispatcher (simulates an ASM controlled via TWFSA and TWF







WF_PROCESS is a standard SAP function module available within R/3 SAP systems depending on your version and release level. Below is the pattern details for this FM showing its interface including any import and export parameters, exceptions etc as well as any documentation contributions (Comments) specific to the object.

See here to view full function module documentation and code listing, simply by entering the name WF_PROCESS into the relevant SAP transaction such as SE37 or SE80.

Associated Function Group: WFDP
Released Date: Not Released
Processing type: Normal fucntion module
Normal function module settings


Pattern for FM WF_PROCESS - WF PROCESS





CALL FUNCTION 'WF_PROCESS' "Transaction dispatcher (simulates an ASM controlled via TWFSA and TWF
  EXPORTING
    process_id =                " wfprck        Transaction ID
  IMPORTING
    last_status_reached =       " wfnv-state    last status achieved automatically
  EXCEPTIONS
    COMPONENT_NOT_AVAILABLE = 1  "              Processing is inactive
    DIALOG_NEEDED_TO_CONTINUE = 2  "            next action requires online!
    FOREIGN_LOCK = 3            "               other user locks the transaction
    INCONSISTENT_RULE = 4       "               Rule in TWFSA or TWFNS is incorrect
    NO_MATCHING_RULE = 5        "               no appropriate processing rule in the current status
    OPERATION_NO_AUTHORIZATION = 6  "           User without authorization for next task
    PARAMETER_ERROR = 7         "               Parameter combination is invalid
    PROCESS_NOT_EXIST = 8       "               Transaction does not exist
    PROCESS_NO_AUTHORIZATION = 9  "             User without authorization for the transaction
    SYSTEM_INVALID = 10         "               The external system is not configured
    UNMATCHED_RETURNCODE = 11   "               Process function module provided return code without rule
    UPDATE_TASK_INCOMPLETE = 12  "              Update task is still running or was cancelled
    USER_NOT_EXIST = 13         "               User does not exist
    .  "  WF_PROCESS

ABAP code example for Function Module WF_PROCESS





The ABAP code below is a full code listing to execute function module WF_PROCESS including all data declarations. The code uses the latest in-line data DECLARATION SYNTAX but I have included an ABAP code snippet at the end to show how declarations would look using the original method of declaring data variables up front. This will allow you to compare and fully understand the new inline method. Please note some of the newer syntax such as the @DATA is not available until a later 4.70 service pack (SP8).

DATA:
ld_last_status_reached  TYPE WFNV-STATE .

DATA(ld_process_id) = 'Check type of data required'. . CALL FUNCTION 'WF_PROCESS' EXPORTING process_id = ld_process_id IMPORTING last_status_reached = ld_last_status_reached EXCEPTIONS COMPONENT_NOT_AVAILABLE = 1 DIALOG_NEEDED_TO_CONTINUE = 2 FOREIGN_LOCK = 3 INCONSISTENT_RULE = 4 NO_MATCHING_RULE = 5 OPERATION_NO_AUTHORIZATION = 6 PARAMETER_ERROR = 7 PROCESS_NOT_EXIST = 8 PROCESS_NO_AUTHORIZATION = 9 SYSTEM_INVALID = 10 UNMATCHED_RETURNCODE = 11 UPDATE_TASK_INCOMPLETE = 12 USER_NOT_EXIST = 13 . " WF_PROCESS
IF SY-SUBRC EQ 0. "All OK ELSEIF SY-SUBRC EQ 1. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 2. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 3. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 4. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 5. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 6. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 7. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 8. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 9. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 10. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 11. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 12. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 13. "Exception "Add code for exception here ENDIF.







ABAP code to compare 7.40 inline data declaration with original syntax

The below ABAP code uses the older none in-line data declarations. This allows you to see the coding differences/benefits of the later inline syntax. It may also be useful if you are using an older version of SAP as some of the newer syntax above, such as the @DATA is not available until 4.70 EHP 8.

DATA:
ld_last_status_reached  TYPE WFNV-STATE ,
ld_process_id  TYPE WFPRCK .

ld_process_id = 'Check type of data required'.

Contribute (Add Comments)

Please help keep this info upto date and use the comments section below to add useful hints, tips and information specific to this SAP function. This will then be available for you and other users to easily find by simply searching on the object name WF_PROCESS or its description.