QUOTE:
原帖由
lisa1017 于 2008-9-3 09:28 发表

BDC的不会写呢,怎么写啊?
参考以下代码:
DATA: bdcdata LIKE bdcdata OCCURS 100 WITH HEADER LINE .
FORM extendlocation USING p_material p_plant p_location.
CLEAR bdcdata.
REFRESH bdcdata.
PERFORM bdc_dynpro USING 'SAPMM03M' '0105'.
PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
PERFORM bdc_field USING 'RM03M-MATNR' p_material.
PERFORM bdc_field USING 'RM03M-WERKS' p_plant.
PERFORM bdc_field USING 'RM03M-NFLAG' 'X'.
PERFORM bdc_dynpro USING 'SAPMM03M' '0195'.
PERFORM bdc_field USING 'BDC_OKCODE' 'BU'.
PERFORM bdc_field USING 'RM03M-LGORT(01)' p_location.
CALL TRANSACTION 'MMSC' USING bdcdata MODE tmod UPDATE 'S'.
CLEAR bdcdata. REFRESH bdcdata.
DATA: de TYPE i.
DO 999 TIMES. ADD 1 TO de. ENDDO.
ENDFORM.
*---------------------------------------------------------------
*FORM BDC_DYNPRO
*----------------------------------------------------------------
FORM bdc_dynpro USING program dynpro.
CLEAR bdcdata.
bdcdata-program = program.
bdcdata-dynpro = dynpro.
bdcdata-dynbegin = 'X'.
APPEND bdcdata.
ENDFORM.
*----------------------------------------------------------
*FORM BDC_FIELD
*---------------------------------------------------------
FORM bdc_field USING fnam fval.
IF fval <> ''.
CLEAR bdcdata.
bdcdata-fnam = fnam.
bdcdata-fval = fval.
APPEND bdcdata.
ENDIF.
ENDFORM.