2013 Nov 26 12:36 PM
Hi,
I have create ZFM of POSTING_INTERFACE_CLEARING which is remote enabled,
bt still can't execute in background task when call this ZFM in report.....plz help me out.....
2013 Nov 26 12:56 PM
Hello Tiya,
what is the error are you receiving? Could you build the Z-RFC correctly?
2013 Nov 27 4:45 AM
When I call this ZFM in background it couldn't work...and no error msg I received.
2013 Nov 27 5:38 AM
Hi Tiya
In order to receive results from it there is a way to receive results.
Create gloable variable GV_FLAG
Call your ZFM in background task
PERFORMING get_result ON END OF TASK.
Wait until gv_flag = 'X'.
Create a subroutine GET_RESULT
FORM GET_RESULT USING TASKNAME.
RECEIVE RESULTS FROM FUNCTION ZFM
IMPORTING abcd
gv_flag = 'X'.
ENDFORM.
2013 Nov 27 6:45 AM
Hello Mr. Madan,
I call ZFM in this way bt it dosen't work...
CALL FUNCTION 'ZPOSTING_INTERFACE_CLEARING' IN BACKGROUND TASK AS SEPARATE UNIT DESTINATION NONE
EXPORTING
I_AUGLV = 'UMBUCHNG'
I_TCODE = 'FB05'
I_SGFUNCT = 'C'
I_NO_AUTH = ' '
IMPORTING
* E_MSGID =
* E_MSGNO =
E_MSGTY = V_MSGTY
E_MSGV1 = V_MSGV1
E_MSGV2 = V_MSGV2
E_MSGV3 = V_MSGV3
E_MSGV4 = V_MSGV4
* E_SUBRC =
TABLES
T_BLNTAB = I_BLNTAB
T_FTCLEAR = I_FTCLEAR
T_FTPOST = I_FTPOST
T_FTTAX = I_FTTAX
EXCEPTIONS
CLEARING_PROCEDURE_INVALID = 1
CLEARING_PROCEDURE_MISSING = 2
TABLE_T041A_EMPTY = 3
TRANSACTION_CODE_INVALID = 4
AMOUNT_FORMAT_ERROR = 5
TOO_MANY_LINE_ITEMS = 6
COMPANY_CODE_INVALID = 7
SCREEN_NOT_FOUND = 8
NO_AUTHORIZATION = 9
OTHERS = 10
.
IF SY-SUBRC <> 0.
COMMIT WORK.
* Implement suitable error handling here
ENDIF.
2013 Nov 27 6:51 AM
Do like this
add your commit work in Z function module
CALL FUNCTION 'ZPOSTING_INTERFACE_CLEARING' IN BACKGROUND TASK AS SEPARATE UNIT DESTINATION NONE
PERFORMING get_result ON END OF TASK
EXPORTING
I_AUGLV = 'UMBUCHNG'
I_TCODE = 'FB05'
I_SGFUNCT = 'C'
I_NO_AUTH = ' '
IMPORTING
* E_MSGID =
* E_MSGNO =
E_MSGTY = V_MSGTY
E_MSGV1 = V_MSGV1
E_MSGV2 = V_MSGV2
E_MSGV3 = V_MSGV3
E_MSGV4 = V_MSGV4
* E_SUBRC =
TABLES
T_BLNTAB = I_BLNTAB
T_FTCLEAR = I_FTCLEAR
T_FTPOST = I_FTPOST
T_FTTAX = I_FTTAX
EXCEPTIONS
CLEARING_PROCEDURE_INVALID = 1
CLEARING_PROCEDURE_MISSING = 2
TABLE_T041A_EMPTY = 3
TRANSACTION_CODE_INVALID = 4
AMOUNT_FORMAT_ERROR = 5
TOO_MANY_LINE_ITEMS = 6
COMPANY_CODE_INVALID = 7
SCREEN_NOT_FOUND = 8
NO_AUTHORIZATION = 9
OTHERS = 10
.
Wait until gv_flag = 'X'.
FORM GET_RESULT USING TASKNAME.
RECEIVE RESULTS FROM FUNCTION ZPOSTING_INTERFACE_CLEARING
IMPORTING
* E_MSGID =
* E_MSGNO =
E_MSGTY = V_MSGTY
E_MSGV1 = V_MSGV1
E_MSGV2 = V_MSGV2
E_MSGV3 = V_MSGV3
E_MSGV4 = V_MSGV4
gv_flag = 'X'.
ENDFORM.
2013 Nov 27 7:11 AM
Hello Mr. Madan,
Syntax error message raised in
CALL FUNCTION 'ZPOSTING_INTERFACE_CLEARING' IN BACKGROUND TASK AS SEPARATE UNIT DESTINATION NONE
PERFORMING get_result ON END OF TASK
2013 Nov 27 7:17 AM
My mistake..here is the correct syntax
DATA
gv_flag TYPE c.
FORM
get_result USING taskname."GET_RESULT
2013 Nov 27 7:31 AM
Ya it work in foreground bt i want to execute it in backgound.
2013 Nov 27 7:34 AM
2013 Nov 27 7:36 AM
2013 Nov 27 7:38 AM
2013 Nov 27 7:45 AM
Then you can simply use BACKGROUND task but there is no importing/changing parameters allowed in that case. Please read SAP help for pros and cons of the BACKGROUND task. If you are least bother about importing/changing then you can simply put a commit work after the call of function in background task and it will get executed
Nabheet
2013 Nov 27 7:56 AM
2013 Nov 28 4:50 AM
Hi Tiya,
Check again whether it is remotely enabled or not?
or you can go for foreground task.
2013 Nov 28 4:59 AM
2013 Nov 28 5:02 AM
It cant work means it does not return you document number..?
2013 Nov 28 5:23 AM
Ya u r correct it can't receive any value in
IMPORTING
* E_MSGID =
* E_MSGNO =
E_MSGTY = V_MSGTY
E_MSGV1 = V_MSGV1
E_MSGV2 = V_MSGV2
E_MSGV3 = V_MSGV3
E_MSGV4 = V_MSGV4
* E_SUBRC =
2013 Nov 28 5:25 AM
Yes that is the way this calling function in background task works..you can use the other syntax...to achiveve the results
Nabheet