February 13, 2007, 12:40 PM
getithow to use SAP function module
Hi,
we have a function module in sap which if we pass order number will return the status. We created a sysnonym for this and are able to run it by itself.
TABLE FILE Z_SD_SALES_ORDER_STATUS
PRINT
T_SO_ZVBELN
T_SO_ZORDSTAT
T_SO_ZDESC
WHERE VBELN EQ '&VBELN';
But how do we pass a bunch of values into this function module and get the status without looping one by one.??
For example if we have a Hold file with just order numbers and we want to get status for all those?
I tried joining and it did not work? Any ideas?
Thanks.
June 06, 2007, 01:33 PM
Leo LYeah, I don't think you're the only one that would like to join a table into SAP. All we ended up doing is looping the hold file into 1 long WHERE statement. We only were using it for a 10-100 "orders" so it wasn't that big of an issue.
Here's the code in case you were thinking of doing something similar:
-SET &NUMLINES = &LINES;
-READ HOLD NOCLOSE &CUSTOMER.A7.
-SET &IFCUST = '''' || &CUSTOMER || '''';
-TOPLOOP
-READ HOLD NOCLOSE &CUSTOMER.A7.
-SET &NUMLINES = &NUMLINES - 1;
-IF &NUMLINES LT 1 THEN GOTO ENDLOOP;
-SET &IFCUST = &IFCUST || ' OR ' | '''' || &CUSTOMER || '''';
-GOTO TOPLOOP;
-ENDLOOP
-CLOSE HOLD