[60034] in SAPr3-news
Re: MD06
daemon@ATHENA.MIT.EDU (Tony)
Mon Oct 8 02:33:13 2007
To: sapr3-news@mit.edu
Date: Sun, 07 Oct 2007 23:33:03 -0700
From: Tony <reeflex@gmx.de>
Message-ID: <1191825183.473236.138780@57g2000hsv.googlegroups.com>
Hallo Volker,
Vielleicht hilft es dir ja. Wenn nicht, freut sich vielleicht jemand
anderes dr=FCber.. :-)
Gruss
Tony
source:
report_zvs_bom.
INCLUDE zvs_strukturen.
TYPES: BEGIN OF itab_it .
* INCLUDE STRUCTURE STPOB.
INCLUDE STRUCTURE capp_itm.
TYPES: END OF itab_it.
TYPES: itab TYPE STANDARD TABLE OF itab_it.
DATA g_wa_itab TYPE itab_it.
DATA: gi_itab TYPE itab,
gj_itab TYPE itab.
DATA: l_count(10) TYPE p
,l_index(2) TYPE c
,stlnr1 LIKE stko-stlnr
.
INCLUDE zvs_bidata.
INCLUDE zvs_bifunc.
SELECTION-SCREEN BEGIN OF BLOCK bl_001 WITH FRAME TITLE text-001.
PARAMETERS: matnr LIKE mast-matnr OBLIGATORY "DEFAULT ''
,werks LIKE mast-werks OBLIGATORY " DEFAULT ''
,stlan LIKE mast-stlan OBLIGATORY DEFAULT '1'
,stlal LIKE mast-stlal OBLIGATORY DEFAULT '1'
.
SELECTION-SCREEN END OF BLOCK bl_001.
START-OF-SELECTION.
PERFORM read_bom.
PERFORM bom_execute.
*&--------------------------------------------------------------------
*
*& Form read_bom
*&--------------------------------------------------------------------
*
* text
*---------------------------------------------------------------------
*
FORM read_bom.
SELECT SINGLE stlnr FROM mast
INTO stlnr1
WHERE matnr EQ matnr
AND werks EQ werks
AND stlan EQ stlan
AND stlal EQ stlal.
IF sy-subrc EQ '4'.
IF sy-langu EQ 'D'.
CALL FUNCTION 'POPUP_TO_DISPLAY_TEXT'
EXPORTING
textline1 =3D 'Es wurde keine St=FCckliste gefunden'.
LEAVE TO TRANSACTION 'ZBOM'.
ELSE.
CALL FUNCTION 'POPUP_TO_DISPLAY_TEXT'
EXPORTING
textline1 =3D 'No BOM could be found.'.
LEAVE TO TRANSACTION 'ZBOM'.
ENDIF.
ENDIF.
CALL FUNCTION 'CABM_READ_BOM_ITEM'
EXPORTING
i_stlty =3D 'M'
i_stlnr =3D stlnr1
i_stlal =3D stlal
i_date_from =3D sy-datum
i_date_to =3D sy-datum
i_werks =3D werks
TABLES
exp_bom_item =3D gi_itab
EXCEPTIONS
no_record_found =3D 01.
ENDFORM. "read_bom
*&--------------------------------------------------------------------
*
*& Form bom_execute
*&--------------------------------------------------------------------
*
* text
*---------------------------------------------------------------------
*
FORM bom_execute.
DATA: l_tcode TYPE sy-tcode
,l_ok LIKE flg_ok
,l_mode(1) TYPE c
,l_count(10) TYPE p
,l_dynfld(20) TYPE c
,l_bismt(18) TYPE c
,l_verid(4) TYPE c
,l_matnr(18) TYPE c
,field(30) TYPE c
,l_index TYPE string
.
* break anba.
l_mode =3D 'E'.
l_tcode =3D 'RWBE'.
PERFORM bi_init_dynpro USING 'RWBEST01' '1000'.
PERFORM bi_fill_dynpro_field USING 'BDC_OKCODE' '=3DDIS_LIST'.
PERFORM bi_fill_dynpro_field USING 'P_VKORG' ' '.
PERFORM bi_fill_dynpro_field USING 'P_VTWEG' ' '.
PERFORM bi_fill_dynpro_field USING 'S_WERKS-LOW' werks.
PERFORM bi_fill_dynpro_field USING 'P_KZLSO' 'X'.
PERFORM bi_fill_dynpro_field USING 'P_KZLON' 'X'.
PERFORM bi_init_dynpro USING 'RWBEST01' '1000'.
PERFORM bi_fill_dynpro_field USING 'BDC_OKCODE' '=3D%003'.
PERFORM bi_fill_dynpro_field USING 'BDC_CURSOR' 'P_KZVST0'.
PERFORM bi_fill_dynpro_field USING 'P_KZVST0' 'X'.
PERFORM bi_fill_dynpro_field USING 'P_KZNUL' ' '.
PERFORM bi_fill_dynpro_field USING 'P_KZBWG' 'X'.
PERFORM bi_fill_dynpro_field USING 'P_KZWER' 'X'.
PERFORM bi_fill_dynpro_field USING 'P_KZLGO' 'X'.
PERFORM bi_fill_dynpro_field USING 'P_KZSON' 'X'.
* PERFORM bi_fill_dynpro_field USING 'BDC_CURSOR' 'RSCSEL-
SLOW_I(04)'.
LOOP AT gi_itab INTO g_wa_itab.
ADD 1 TO l_count.
l_index =3D l_count.
l_index =3D 1.
PERFORM bi_init_dynpro USING 'SAPLALDB' '3000'.
PERFORM bi_fill_dynpro_field USING 'BDC_OKCODE' '=3DLINS'.
PERFORM bi_fill_dynpro_field USING 'BDC_CURSOR' 'RSCSEL-
SLOW_I(01)'.
CONCATENATE 'RSCSEL-SLOW_I(' l_index ')' INTO field.
PERFORM bi_fill_dynpro_field USING field g_wa_itab-idnrk.
ENDLOOP.
PERFORM bi_init_dynpro USING 'SAPLALDB' '3000'.
PERFORM bi_fill_dynpro_field USING 'BDC_OKCODE' '=3DACPT'.
PERFORM bi_init_dynpro USING 'RWBEST01' '1000'.
PERFORM bi_fill_dynpro_field USING 'BDC_OKCODE' '=3DONLI'.
PERFORM bi_init_dynpro USING 'RWBEST01' '0800'.
PERFORM bi_fill_dynpro_field USING 'BDC_OKCODE' '=3D/00'.
PERFORM bi_call_trans USING l_tcode l_mode 'X'
CHANGING l_ok.
ENDFORM. "bom_execute