*&---------------------------------------------------------------------*
*& Report ZVWORKFLOW_MAIL
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZVWORKFLOW_MAIL.
TABLES SSCRFIELDS.
*--------------------------------------------------------------*
*Selection-Screen
*--------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS : P_MDT AS CHECKBOX,
P_MDLOAD AS CHECKBOX,
P_MUPLAD AS CHECKBOX .
SELECTION-SCREEN:PUSHBUTTON /60(10) BUTTON1 USER-COMMAND but1,
PUSHBUTTON 75(10) BUTTON2 USER-COMMAND but2.
SELECTION-SCREEN END OF BLOCK b1.
*--------------------------------------------------------------*
*Initialization
*--------------------------------------------------------------*
INITIALIZATION.
button1 = 'SEND'.
button2 = 'CANCEL'.
** *--------------------------------------------------------------*
*At Selection-Screen
*--------------------------------------------------------------*
AT SELECTION-SCREEN.
CASE sscrfields.
WHEN 'BUT1'.
PERFORM mail.
MESSAGE 'Mail Sent Succesfully' TYPE 'I'.
WHEN 'BUT2'.
MESSAGE 'Your Action Cancelled' TYPE 'I'.
ENDCASE.
*&---------------------------------------------------------------------*
*& Form mail
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM mail .
IF p_mdt = 'X'.
DATA : lt_container TYPE TABLE OF swr_cont,
ls_container TYPE swr_cont.
*test to get the value throught the pgm
ls_container-element = 'FLAG1'.
ls_container-value = 'X'.
APPEND ls_container TO lt_container.
ls_container-element = 'FLAG2'.
ls_container-value = 'Y'.
APPEND ls_container TO lt_container.
DATA : P_TASK TYPE swr_struct-task.
P_TASK = 'WS90000032'.
*****This function Module is to start the process
CALL FUNCTION 'SAP_WAPI_START_WORKFLOW'
EXPORTING
task = p_task
* LANGUAGE = SY-LANGU
* DO_COMMIT = 'X'
* USER = SY-UNAME
* START_ASYNCHRONOUS = ' '
* DESIRED_START_DATE =
* DESIRED_START_TIME =
* DESIRED_START_ZONLO = SY-ZONLO
* IFS_XML_CONTAINER =
* IMPORTING
* RETURN_CODE =
* WORKITEM_ID =
* NEW_STATUS =
TABLES
input_container = lt_container
* MESSAGE_LINES =
* MESSAGE_STRUCT =
* AGENTS =
.
*This is to run the work flow
CALL FUNCTION 'EWW_WORKFLOW_START'
EXPORTING
x_task = p_task
* X_START_DATE = NO_DATE
* X_START_TIME = NO_TIME
* IMPORTING
* Y_WORKFLOW_ID =
* TABLES
* X_CONTAINER =
* X_AGENTS =
* EXCEPTIONS
* INVALID_TASK = 1
* NO_ACTIVE_PLVAR = 2
* START_FAILED = 3
* GENERAL_ERROR = 4
* OTHERS = 5
.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDIF.
IF P_MDLOAD = 'X'.
P_TASK = 'WS90000051'.
***
****This function Module is to start the process
CALL FUNCTION 'SAP_WAPI_START_WORKFLOW'
EXPORTING
task = p_task
* LANGUAGE = SY-LANGU
* DO_COMMIT = 'X'
* USER = SY-UNAME
* START_ASYNCHRONOUS = ' '
* DESIRED_START_DATE =
* DESIRED_START_TIME =
* DESIRED_START_ZONLO = SY-ZONLO
* IFS_XML_CONTAINER =
* IMPORTING
* RETURN_CODE =
* WORKITEM_ID =
* NEW_STATUS =
TABLES
input_container = lt_container
* MESSAGE_LINES =
* MESSAGE_STRUCT =
* AGENTS =
.
*This is to run the work flow
CALL FUNCTION 'EWW_WORKFLOW_START'
EXPORTING
x_task = p_task
* X_START_DATE = NO_DATE
* X_START_TIME = NO_TIME
* IMPORTING
* Y_WORKFLOW_ID =
* TABLES
* X_CONTAINER =
* X_AGENTS =
* EXCEPTIONS
* INVALID_TASK = 1
* NO_ACTIVE_PLVAR = 2
* START_FAILED = 3
* GENERAL_ERROR = 4
* OTHERS = 5
.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDIF.
IF P_MUPLAD = 'X'.
P_TASK = 'WS90000052'.
*This function Module is to start the process
CALL FUNCTION 'SAP_WAPI_START_WORKFLOW'
EXPORTING
task = p_task
* LANGUAGE = SY-LANGU
* DO_COMMIT = 'X'
* USER = SY-UNAME
* START_ASYNCHRONOUS = ' '
* DESIRED_START_DATE =
* DESIRED_START_TIME =
* DESIRED_START_ZONLO = SY-ZONLO
* IFS_XML_CONTAINER =
* IMPORTING
* RETURN_CODE =
* WORKITEM_ID =
* NEW_STATUS =
TABLES
input_container = lt_container
* MESSAGE_LINES =
* MESSAGE_STRUCT =
* AGENTS =
.
*This is to run the work flow
CALL FUNCTION 'EWW_WORKFLOW_START'
EXPORTING
x_task = p_task
* X_START_DATE = NO_DATE
* X_START_TIME = NO_TIME
* IMPORTING
* Y_WORKFLOW_ID =
* TABLES
* X_CONTAINER =
* X_AGENTS =
* EXCEPTIONS
* INVALID_TASK = 1
* NO_ACTIVE_PLVAR = 2
* START_FAILED = 3
* GENERAL_ERROR = 4
* OTHERS = 5
.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDIF.
ENDFORM. " mail
*
*& Report ZVWORKFLOW_MAIL
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZVWORKFLOW_MAIL.
TABLES SSCRFIELDS.
*--------------------------------------------------------------*
*Selection-Screen
*--------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS : P_MDT AS CHECKBOX,
P_MDLOAD AS CHECKBOX,
P_MUPLAD AS CHECKBOX .
SELECTION-SCREEN:PUSHBUTTON /60(10) BUTTON1 USER-COMMAND but1,
PUSHBUTTON 75(10) BUTTON2 USER-COMMAND but2.
SELECTION-SCREEN END OF BLOCK b1.
*--------------------------------------------------------------*
*Initialization
*--------------------------------------------------------------*
INITIALIZATION.
button1 = 'SEND'.
button2 = 'CANCEL'.
** *--------------------------------------------------------------*
*At Selection-Screen
*--------------------------------------------------------------*
AT SELECTION-SCREEN.
CASE sscrfields.
WHEN 'BUT1'.
PERFORM mail.
MESSAGE 'Mail Sent Succesfully' TYPE 'I'.
WHEN 'BUT2'.
MESSAGE 'Your Action Cancelled' TYPE 'I'.
ENDCASE.
*&---------------------------------------------------------------------*
*& Form mail
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM mail .
IF p_mdt = 'X'.
DATA : lt_container TYPE TABLE OF swr_cont,
ls_container TYPE swr_cont.
*test to get the value throught the pgm
ls_container-element = 'FLAG1'.
ls_container-value = 'X'.
APPEND ls_container TO lt_container.
ls_container-element = 'FLAG2'.
ls_container-value = 'Y'.
APPEND ls_container TO lt_container.
DATA : P_TASK TYPE swr_struct-task.
P_TASK = 'WS90000032'.
*****This function Module is to start the process
CALL FUNCTION 'SAP_WAPI_START_WORKFLOW'
EXPORTING
task = p_task
* LANGUAGE = SY-LANGU
* DO_COMMIT = 'X'
* USER = SY-UNAME
* START_ASYNCHRONOUS = ' '
* DESIRED_START_DATE =
* DESIRED_START_TIME =
* DESIRED_START_ZONLO = SY-ZONLO
* IFS_XML_CONTAINER =
* IMPORTING
* RETURN_CODE =
* WORKITEM_ID =
* NEW_STATUS =
TABLES
input_container = lt_container
* MESSAGE_LINES =
* MESSAGE_STRUCT =
* AGENTS =
.
*This is to run the work flow
CALL FUNCTION 'EWW_WORKFLOW_START'
EXPORTING
x_task = p_task
* X_START_DATE = NO_DATE
* X_START_TIME = NO_TIME
* IMPORTING
* Y_WORKFLOW_ID =
* TABLES
* X_CONTAINER =
* X_AGENTS =
* EXCEPTIONS
* INVALID_TASK = 1
* NO_ACTIVE_PLVAR = 2
* START_FAILED = 3
* GENERAL_ERROR = 4
* OTHERS = 5
.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDIF.
IF P_MDLOAD = 'X'.
P_TASK = 'WS90000051'.
***
****This function Module is to start the process
CALL FUNCTION 'SAP_WAPI_START_WORKFLOW'
EXPORTING
task = p_task
* LANGUAGE = SY-LANGU
* DO_COMMIT = 'X'
* USER = SY-UNAME
* START_ASYNCHRONOUS = ' '
* DESIRED_START_DATE =
* DESIRED_START_TIME =
* DESIRED_START_ZONLO = SY-ZONLO
* IFS_XML_CONTAINER =
* IMPORTING
* RETURN_CODE =
* WORKITEM_ID =
* NEW_STATUS =
TABLES
input_container = lt_container
* MESSAGE_LINES =
* MESSAGE_STRUCT =
* AGENTS =
.
*This is to run the work flow
CALL FUNCTION 'EWW_WORKFLOW_START'
EXPORTING
x_task = p_task
* X_START_DATE = NO_DATE
* X_START_TIME = NO_TIME
* IMPORTING
* Y_WORKFLOW_ID =
* TABLES
* X_CONTAINER =
* X_AGENTS =
* EXCEPTIONS
* INVALID_TASK = 1
* NO_ACTIVE_PLVAR = 2
* START_FAILED = 3
* GENERAL_ERROR = 4
* OTHERS = 5
.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDIF.
IF P_MUPLAD = 'X'.
P_TASK = 'WS90000052'.
*This function Module is to start the process
CALL FUNCTION 'SAP_WAPI_START_WORKFLOW'
EXPORTING
task = p_task
* LANGUAGE = SY-LANGU
* DO_COMMIT = 'X'
* USER = SY-UNAME
* START_ASYNCHRONOUS = ' '
* DESIRED_START_DATE =
* DESIRED_START_TIME =
* DESIRED_START_ZONLO = SY-ZONLO
* IFS_XML_CONTAINER =
* IMPORTING
* RETURN_CODE =
* WORKITEM_ID =
* NEW_STATUS =
TABLES
input_container = lt_container
* MESSAGE_LINES =
* MESSAGE_STRUCT =
* AGENTS =
.
*This is to run the work flow
CALL FUNCTION 'EWW_WORKFLOW_START'
EXPORTING
x_task = p_task
* X_START_DATE = NO_DATE
* X_START_TIME = NO_TIME
* IMPORTING
* Y_WORKFLOW_ID =
* TABLES
* X_CONTAINER =
* X_AGENTS =
* EXCEPTIONS
* INVALID_TASK = 1
* NO_ACTIVE_PLVAR = 2
* START_FAILED = 3
* GENERAL_ERROR = 4
* OTHERS = 5
.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDIF.
ENDFORM. " mail
*