Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Issue with Parallel Processing

Former Member
0 Likes
735

Hi All,

I am doing parallel processing in METHOD SAVE_AND_PUBLISH_DOCUMENT. Please refer below piece of code.

CALL FUNCTION 'ZZBAPI_GOODSMVT_CREATE' STARTING NEW TASK lv_task

       CALLING RETURN_INFO ON END OF TASK

        EXPORTING

          goodsmvt_header = lt_goodsmvt_header

          goodsmvt_code   = lt_goodsmvt_code

        TABLES

          goodsmvt_item   = lt_goodsmvt_item

          return          = lt_return.

      lv_task = lv_task + 1.

method RETURN_INFO.


DATA:   lt_messages  TYPE          bapiret2_t,   "messages from each process..


        gv_msg(220)  TYPE c VALUE SPACE.


  RECEIVE RESULTS FROM FUNCTION 'BAPI_GOODSMVT_CREATE'

  TABLES

    et_messages   = lt_messages

  EXCEPTIONS

    communication_failure = 1 MESSAGE gv_msg

    system_failure = 2 MESSAGE gv_msg.

endmethod.

My issue is call to method return_info is not getting triggered. Please suggest.

Thanks,

Vikas Badhan


1 ACCEPTED SOLUTION
Read only

tolga_polat
Active Participant
0 Likes
516

Hi Vikas,

1)     Not this :

vikas badhan wrote:

method RETURN_INFO.


DATA:   lt_messages  TYPE          bapiret2_t,   "messages from each process..


        gv_msg(220)  TYPE c VALUE SPACE.


  RECEIVE RESULTS FROM FUNCTION 'BAPI_GOODSMVT_CREATE'

  TABLES

    et_messages   = lt_messages

  EXCEPTIONS

    communication_failure = 1 MESSAGE gv_msg

    system_failure = 2 MESSAGE gv_msg.

endmethod.


Function name "RECEIVE RESULTS FROM FUNCTION 'ZZBAPI_GOODSMVT_CREATE'" must be same.

and declare your method like this :

methods : return_info

                         importing p_task type clike.

2) In one case, i used Asynchronous RFC and i needed to know, function finished its proccess. I did that like this.


CALL FUNCTION 'ZFI_TFRS_DOCUMENT_POST'

         STARTING NEW TASK tfrs

         PERFORMING handle_subrc_post ON END OF TASK

         EXPORTING

           is_header = ls_header

           it_item   = lt_item.

WAIT UNTIL gv_finish EQ 'X'.

CLEAR : gv_finish.

*

*

*

FORM handle_subrc_post USING p_task TYPE clike.

RECEIVE RESULTS FROM FUNCTION 'ZFI_TFRS_DOCUMENT_POST'

                      IMPORTING

                        e_finish = gv_finish

                      EXCEPTIONS

                        error_post            = 1

                        system_failure        = 2

                        communication_failure = 3

                        resource_failure      = 4

                        OTHERS                = 5.

ENDFORM.                    "handle_subrc_post

I hope this will help

1 REPLY 1
Read only

tolga_polat
Active Participant
0 Likes
517

Hi Vikas,

1)     Not this :

vikas badhan wrote:

method RETURN_INFO.


DATA:   lt_messages  TYPE          bapiret2_t,   "messages from each process..


        gv_msg(220)  TYPE c VALUE SPACE.


  RECEIVE RESULTS FROM FUNCTION 'BAPI_GOODSMVT_CREATE'

  TABLES

    et_messages   = lt_messages

  EXCEPTIONS

    communication_failure = 1 MESSAGE gv_msg

    system_failure = 2 MESSAGE gv_msg.

endmethod.


Function name "RECEIVE RESULTS FROM FUNCTION 'ZZBAPI_GOODSMVT_CREATE'" must be same.

and declare your method like this :

methods : return_info

                         importing p_task type clike.

2) In one case, i used Asynchronous RFC and i needed to know, function finished its proccess. I did that like this.


CALL FUNCTION 'ZFI_TFRS_DOCUMENT_POST'

         STARTING NEW TASK tfrs

         PERFORMING handle_subrc_post ON END OF TASK

         EXPORTING

           is_header = ls_header

           it_item   = lt_item.

WAIT UNTIL gv_finish EQ 'X'.

CLEAR : gv_finish.

*

*

*

FORM handle_subrc_post USING p_task TYPE clike.

RECEIVE RESULTS FROM FUNCTION 'ZFI_TFRS_DOCUMENT_POST'

                      IMPORTING

                        e_finish = gv_finish

                      EXCEPTIONS

                        error_post            = 1

                        system_failure        = 2

                        communication_failure = 3

                        resource_failure      = 4

                        OTHERS                = 5.

ENDFORM.                    "handle_subrc_post

I hope this will help