Coding
Coding
172.17.54.33
255.255.255.0
172.17.54.1
172.17.54.1
8.8.8.8
END OF ty_rseg,
BEGIN OF ty_mara,
matnr TYPE matnr,
mtart TYPE mtart,
matkl TYPE matkl,
meins TYPE meins,
END OF ty_mara,
BEGIN OF ty_makt,
matnr TYPE matnr,
spras TYPE spras,
maktx TYPE maktx,
END OF ty_makt,
BEGIN OF ty_t023t,
spras TYPE spras,
matkl TYPE matkl,
wgbez TYPE wgbez,
wgbez60 TYPE wgbez60,
END OF ty_t023t,
BEGIN OF ty_ekpo,
ebeln TYPE ebeln,
ebelp TYPE ebelp,
txz01 TYPE txz01,
netpr TYPE bprei,
banfn TYPE banfn,
END OF ty_ekpo,
BEGIN OF ty_ekko,
ebeln TYPE ebeln,
bsart TYPE esart,
waers TYPE waers,
bedat TYPE bedat,
END OF ty_ekko,
BEGIN OF ty_eban,
banfn TYPE banfn,
bnfpo TYPE bnfpo,
afnam TYPE afnam,
END OF ty_eban,
BEGIN OF ty_zdept,
deptno TYPE zdeptno1,
deptname TYPE zdeptname,
END OF ty_zdept,
BEGIN OF ty_t007s,
spras TYPE spras,
kalsm TYPE kalsm_d,
*&---------------------------------------------------------------------*
*& Selection screen
*&---------------------------------------------------------------------*
SELECTION-SCREEN : BEGIN OF BLOCK b WITH FRAME TITLE text-001.
SELECT-OPTIONS : s_werks FOR g_werks NO INTERVALS NO-EXTENSION OBLIGATORY,
s_lifnr FOR g_lifnr,
s_bldat FOR g_bldat,
s_budat FOR g_budat OBLIGATORY,
s_matnr FOR g_matnr,
s_mtart FOR g_mtart,
s_bsart FOR g_bsart.
SELECTION-SCREEN END OF BLOCK b.
AT SELECTION-SCREEN.
PERFORM valid_input.
START-OF-SELECTION.
PERFORM get_bkpf.
PERFORM get_bset.
PERFORM get_bseg.
PERFORM get_ven_dtl.
PERFORM get_t001w.
PERFORM get_miro_dtl.
PERFORM get_migo_dtl.
PERFORM get_po_pr_dtl.
PERFORM get_final.
PERFORM build_fieldcat.
* PERFORM get_mseg.
* PERFORM get_final1.
*&---------------------------------------------------------------------*
*&
Form VALID_INPUT
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM valid_input .
SELECT COUNT(*) FROM t001w WHERE werks IN s_werks.
IF sy-subrc NE 0.
MESSAGE 'Plese enter valid plant' TYPE 'E'.
ENDIF.
IF s_lifnr IS NOT INITIAL.
SELECT COUNT(*) FROM lfa1 WHERE lifnr IN s_lifnr.
IF sy-subrc NE 0.
MESSAGE 'Please enter valid vendor' TYPE 'E'.
ENDIF.
ENDIF.
IF s_matnr IS NOT INITIAL.
SELECT COUNT(*) FROM mara WHERE matnr IN s_matnr.
IF sy-subrc NE 0.
MESSAGE 'Please enter valid material' TYPE 'E'.
ENDIF.
ENDIF.
ENDFORM.
" VALID_INPUT
*&---------------------------------------------------------------------*
*&
Form GET_BKPF
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM get_bkpf .
FIELD-SYMBOLS: <ls_bkpf> LIKE LINE OF it_bkpf.
SELECT bukrs
belnr
gjahr
bldat
budat
xblnr
awkey
FROM bkpf
INTO CORRESPONDING FIELDS OF TABLE it_bkpf
WHERE bukrs = '1000'
AND budat IN s_budat
AND blart = 'RE'.
LOOP AT it_bkpf ASSIGNING <ls_bkpf>.
<ls_bkpf>-zmrno = <ls_bkpf>-awkey+0(10).
<ls_bkpf>-zmryr = <ls_bkpf>-awkey+10(4).
ENDLOOP.
ENDFORM.
" GET_BKPF
*&---------------------------------------------------------------------*
*&
Form GET_BSET
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM get_bset .
IF it_bkpf IS NOT INITIAL.
SELECT bukrs
belnr
gjahr
buzei
mwskz
hkont
txgrp
shkzg
hwbas
hwste
ktosl
kschl
kbetr
FROM bset
INTO TABLE it_bset
FOR ALL ENTRIES IN it_bkpf
ENDFORM.
" GET_BSET
*&---------------------------------------------------------------------*
*&
Form GET_BSEG
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM get_bseg .
FIELD-SYMBOLS: <ls_bseg> LIKE LINE OF it_bseg.
IF it_bkpf IS NOT INITIAL.
SELECT bukrs
belnr
gjahr
buzei
buzid
koart
shkzg
dmbtr
hkont
lifnr
mwskz
txgrp
ebeln
ebelp
xref3
werks
FROM bseg
INTO CORRESPONDING FIELDS OF TABLE it_bseg
FOR ALL ENTRIES IN it_bkpf
WHERE bukrs = it_bkpf-bukrs
AND belnr = it_bkpf-belnr
AND gjahr = it_bkpf-gjahr
AND lifnr IN s_lifnr.
SORT it_bseg.
LOOP AT it_bseg ASSIGNING <ls_bseg> WHERE xref3 IS NOT INITIAL.
<ls_bseg>-zmgno = <ls_bseg>-xref3+4(10).
<ls_bseg>-zmgyr = <ls_bseg>-xref3+0(4).
ENDLOOP.
it_bseg1[] = it_bseg[].
DELETE it_bseg1 WHERE lifnr IS INITIAL.
IF sy-subrc = 0.
SELECT spras
kalsm
mwskz
text1
FROM t007s
INTO TABLE it_t007s
FOR ALL ENTRIES IN it_bseg
WHERE spras = 'E'
AND kalsm = 'ZTAXIN'
AND mwskz = it_bseg-mwskz.
ENDIF.
ENDIF.
ENDFORM.
" GET_BSEG
*&---------------------------------------------------------------------*
*&
Form GET_VEN_DTL
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM get_ven_dtl .
IF it_bseg IS NOT INITIAL.
SELECT lifnr
name1
ort01
regio
adrnr
FROM lfa1
INTO TABLE it_lfa1
FOR ALL ENTRIES IN it_bseg1
WHERE lifnr = it_bseg1-lifnr.
IF it_lfa1 IS NOT INITIAL.
SELECT lifnr
j_1iexcd
j_1iexrn
j_1iexrg
j_1icstno
j_1ilstno
j_1ipanno
j_1ivtyp
j_1isern
FROM j_1imovend
INTO TABLE it_j_1imovend
FOR ALL ENTRIES IN it_lfa1
WHERE lifnr = it_lfa1-lifnr.
SELECT spras
land1
bland
bezei
FROM t005u
INTO TABLE it_t005u
FOR ALL ENTRIES IN it_lfa1
WHERE spras = 'EN'
AND land1 = 'IN'
AND bland = it_lfa1-regio.
ENDIF.
ENDIF.
ENDFORM.
" GET_VEN_DTL
*&---------------------------------------------------------------------*
*&
Form GET_T001W
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM get_t001w .
SELECT werks
regio
FROM t001w
INTO TABLE it_t001w
WHERE werks IN s_werks.
ENDFORM.
" GET_T001W
*&---------------------------------------------------------------------*
*&
Form GET_MIRO_DTL
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM get_miro_dtl .
IF it_bkpf IS NOT INITIAL.
SELECT belnr
gjahr
buzei
ebeln
ebelp
matnr
menge
meins
werks
wrbtr
lfbnr
lfgja
FROM rseg
INTO CORRESPONDING FIELDS OF TABLE it_rseg
FOR ALL ENTRIES IN it_bkpf
WHERE belnr = it_bkpf-zmrno
AND gjahr = it_bkpf-zmryr
AND werks IN s_werks.
ENDFORM.
" GET_MIRO_DTL
*&---------------------------------------------------------------------*
*&
Form GET_MIGO_DTL
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM get_migo_dtl .
IF it_rseg IS NOT INITIAL.
SELECT mblnr
mjahr
bldat
xblnr
FROM mkpf
INTO TABLE it_mkpf
FOR ALL ENTRIES IN it_bkpf
WHERE xblnr = it_bkpf-xblnr.
*
AND mjahr = it_rseg-lfgja.
SELECT mblnr
mjahr
bwart
budat_mkpf
FROM mseg
INTO TABLE it_mseg
FOR ALL ENTRIES IN it_mkpf
WHERE mblnr = it_mkpf-mblnr
AND mjahr = it_mkpf-mjahr
AND bwart = '122'.
IF it_mseg IS INITIAL.
MESSAGE 'No data exist for given selection' TYPE 'I'.
leave LIST-PROCESSING.
ENDIF.
ENDIF.
ENDFORM.
" GET_MIGO_DTL
*&---------------------------------------------------------------------*
*&
Form GET_PO_PR_DTL
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM get_po_pr_dtl .
IF it_rseg IS NOT INITIAL.
SELECT ebeln
ebelp
txz01
netpr
banfn
FROM ekpo
INTO TABLE it_ekpo
FOR ALL ENTRIES IN it_rseg
WHERE ebeln = it_rseg-ebeln
AND ebelp = it_rseg-ebelp.
IF it_ekpo IS NOT INITIAL.
SELECT ebeln
bsart
waers
bedat
FROM ekko
INTO TABLE it_ekko
FOR ALL ENTRIES IN it_ekpo
WHERE ebeln = it_ekpo-ebeln.
SELECT banfn
bnfpo
afnam
FROM eban
INTO TABLE it_eban
FOR ALL ENTRIES IN it_ekpo
WHERE banfn = it_ekpo-banfn.
IF it_eban IS NOT INITIAL.
SELECT deptno
deptname
FROM zdept
INTO TABLE it_zdept
FOR ALL ENTRIES IN it_eban
WHERE deptno = it_eban-afnam.
ENDIF.
ENDIF.
ENDIF.
ENDFORM.
" GET_PO_PR_DTL
*&---------------------------------------------------------------------*
*&
Form GET_FINAL
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM get_final .
IF wa_rseg-werks IS INITIAL.
CONTINUE.
ELSE.
"""""""""""""""""""""""""""""""
""""""""""""""""""""""""""""""
loop at it_rseg into wa_rseg.
"""""""""""""""""""""""""""""
"""""""""""""""""""""""""""""""
wa_final-mjahr = wa_mseg-mjahr.
ELSE.
CONTINUE.
ENDIF.
"""""""""""""""""""""""""""
""""""""""""""""""""""""""
ENDLOOP.
"""""""""""""""""""""""
""""""""""""""""""""""
wa_final-werks = wa_rseg-werks.
wa_final-menge = wa_rseg-menge.
wa_final-inv_rate = wa_rseg-wrbtr / wa_rseg-menge.
"Plant
"Quantity
"Invoice Rate
*
*
*
*
*
*
*
*
*
CLEAR wa_mkpf.
READ TABLE it_mkpf INTO wa_mkpf WITH KEY mblnr = wa_rseg-lfbnr
mjahr = wa_rseg-lfgja.
IF sy-subrc = 0.
wa_final-bldat1 = wa_mkpf-bldat.
"CODE ADDED BY AMAR
wa_final-mblnr = wa_mkpf-mblnr.
wa_final-mjahr = wa_mkpf-mjahr.
"CODE ADDED BY AMAR
"MRR date
ENDIF.
ENDIF.
READ TABLE it_bseg1 INTO wa_bseg1 WITH KEY belnr = wa_bseg-belnr
gjahr = wa_bseg-gjahr.
IF sy-subrc = 0.
READ TABLE it_lfa1 INTO wa_lfa1 WITH KEY lifnr = wa_bseg1-lifnr.
IF sy-subrc = 0.
wa_final-lifnr = wa_lfa1-lifnr.
"Vendor No
wa_final-name1 = wa_lfa1-name1.
"Vendor Name
wa_final-ort01 = wa_lfa1-ort01.
"City
wa_final-regio = wa_lfa1-regio.
"Region
READ TABLE it_t001w INTO wa_t001w WITH KEY werks = s_werks-low.
IF sy-subrc = 0.
IF wa_final-regio = wa_t001w-regio.
"Category
wa_final-catg = 'STATE'.
ELSE.
wa_final-catg = 'EX-S'.
ENDIF.
ENDIF.
READ TABLE it_t005u INTO wa_t005u WITH KEY bland = wa_lfa1-regio.
IF sy-subrc = 0.
wa_final-bezei = wa_t005u-bezei.
"Region Description
ENDIF.
READ TABLE it_j_1imovend INTO wa_j_1imovend WITH KEY lifnr = wa_lfa1-lifnr.
IF sy-subrc = 0.
wa_final-j_1iexcd = wa_j_1imovend-j_1iexcd.
"ECC Number
wa_final-j_1iexrn = wa_j_1imovend-j_1iexrn.
"Excise Registration Number
wa_final-j_1iexrg = wa_j_1imovend-j_1iexrg.
"Excise Range
wa_final-j_1icstno = wa_j_1imovend-j_1icstno.
"Central Sales Tax Number
wa_final-j_1ilstno = wa_j_1imovend-j_1ilstno.
"Local Sales Tax Number
wa_final-j_1ipanno = wa_j_1imovend-j_1ipanno.
"Permanent Account Number
wa_final-j_1ivtyp = wa_j_1imovend-j_1ivtyp.
"Type of Vendor
wa_final-j_1isern = wa_j_1imovend-j_1isern.
"Service Tax Registration Number
ENDIF.
ENDIF.
ENDIF.
ENDIF.
CLEAR: wa_ekpo, wa_ekko, wa_eban, wa_zdept.
READ TABLE it_ekpo INTO wa_ekpo WITH KEY ebeln = wa_bseg-ebeln
ebelp = wa_bseg-ebelp.
IF sy-subrc = 0.
wa_final-ebeln = wa_ekpo-ebeln.
"PO Number
wa_final-netpr = wa_ekpo-netpr.
"Rate
IF wa_final-matnr IS INITIAL.
wa_final-maktx = wa_ekpo-txz01.
ENDIF.
"Material Description
"Tax code
"MIGO No.
CLEAR wa_t007s.
READ TABLE it_t007s INTO wa_t007s WITH KEY mwskz = wa_bseg-mwskz.
IF sy-subrc = 0.
wa_final-text1 = wa_t007s-text1.
"Tax code Description
ENDIF.
""""""""""""
CLEAR: lv_index, wa_bset1.
READ TABLE it_bset INTO wa_bset1 WITH KEY belnr = wa_bseg-belnr
gjahr = wa_bseg-gjahr
txgrp = wa_bseg-txgrp.
IF sy-subrc = 0.
lv_index = sy-tabix.
"""""""""""""
IF wa_bset-shkzg = 'H'.
wa_bset-hwbas = wa_bset-hwbas * -1.
wa_bset-hwste = wa_bset-hwste * -1.
ENDIF.
CASE wa_bset-kschl.
"Excise duty
IF wa_final-werks IS INITIAL.
CLEAR: wa_bseg, wa_final.
CONTINUE.
ELSEIF wa_final-lifnr NOT IN s_lifnr.
CLEAR: wa_bseg, wa_final.
CONTINUE.
ELSE.
APPEND wa_final TO it_final.
CLEAR: wa_bseg, wa_final, wa_bset.
ENDIF.
ENDLOOP.
DELETE ADJACENT DUPLICATES FROM it_final COMPARING ALL FIELDS.
ENDFORM.
" GET_FINAL
*&---------------------------------------------------------------------*
*&
Form BUILD_FIELDCAT
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM build_fieldcat .
DATA : lv_budat_low TYPE char10,
lv_budat_high TYPE char10.
PERFORM sub_fill_fieldcat USING : l_col 'WERKS'
'Plant'
''
l_col 'XBLNR'
'Bill No'
'' '' '10',
l_col 'BLDAT'
'Bill Date'
'' '' '10',
l_col 'MATNR'
'Item No.'
'' '' '12',
l_col 'MAKTX'
'Item Name'
'' '' '20',
l_col 'WGBEZ'
'Material Grp Des'
'' '' '10',
l_col 'MEINS'
'UOM'
'' '' '3',
l_col 'BANFN'
'PR Number'
'' '' '10',
l_col 'DEPTNAME' 'Department'
'' '' '10',
l_col 'LIFNR'
'Party'
'' '' '10',
l_col 'NAME1'
'Party Name'
'' '' '15',
l_col 'ORT01'
'City'
'' '' '8',
l_col 'REGIO'
'Region'
'' '' '5',
l_col 'BEZEI'
'Region Desc'
'' '' '8',
l_col 'J_1IEXCD' 'ECC Number'
'' '' '10',
l_col 'J_1IEXRN' 'Excise Reg No'
'' '' '10',
l_col 'J_1IEXRG' 'Excise Range'
'' '' '10',
l_col 'J_1ICSTNO' 'CST No'
'' '' '10',
l_col 'J_1ILSTNO' 'LST No'
'' '' '10',
l_col 'J_1IPANNO' 'PAN No'
'' '' '10',
''
'5',
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
l_col
SELECT SINGLE butxt FROM t001 INTO g_bukrs_text WHERE bukrs = '1000'.
IF s_budat-high IS NOT INITIAL.
CONCATENATE s_budat-low+6(2) '.' s_budat-low+4(2) '.' s_budat-low+0(4) INTO lv_budat_low.
CONCATENATE s_budat-high+6(2) '.' s_budat-high+4(2) '.' s_budat-high+0(4) INTO lv_budat_high.
CONCATENATE lv_budat_low 'to' lv_budat_high INTO g_budat_text SEPARATED BY space.
ELSE.
CONCATENATE s_budat-low+6(2) '.' s_budat-low+4(2) '.' s_budat-low+0(4) INTO g_budat_text.
ENDIF.
PERFORM build_list_header USING : 'H' ''
'PURCHASE REGISTER',
'S' g_bukrs_text
' ',
'S' 'Plant:'
s_werks-low,
'S' 'Posting date: ' g_budat_text.
PERFORM display_alv.
ENDFORM.
" BUILD_FIELDCAT
*&---------------------------------------------------------------------*
*&
Form SUB_FILL_FIELDCAT
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
*
-->P_1209 text
*
-->P_1210 text
*
-->P_1211 text
*
-->P_1212 text
*
-->P_1213 text
*----------------------------------------------------------------------*
FORM sub_fill_fieldcat USING p_cpos TYPE i
p_fnam TYPE any
p_stx TYPE any
p_htspt TYPE c
p_key TYPE char1
p_len LIKE dd03p-outputlen.
wa_fcat-col_pos = p_cpos.
wa_fcat-fieldname = p_fnam.
wa_fcat-seltext_l = p_stx.
wa_fcat-hotspot = p_htspt.
wa_fcat-key
= p_key.
wa_fcat-outputlen = p_len.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ENDFORM.
" SUB_FILL_FIELDCAT
*&---------------------------------------------------------------------*
*&
Form BUILD_LIST_HEADER
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
*
-->P_2080 text
*
-->P_2081 text
*
-->P_2082 text
*----------------------------------------------------------------------*
FORM build_list_header USING p1 TYPE any
p2 TYPE any
p3 TYPE any.
wa_top_of_page-typ = p1.
wa_top_of_page-key = p2.
wa_top_of_page-info = p3.
APPEND wa_top_of_page TO it_top_of_page.
CLEAR wa_top_of_page.
ENDFORM.
" BUILD_LIST_HEADER
*&---------------------------------------------------------------------*
*&
Form DISPLAY_ALV
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM display_alv .
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
* I_INTERFACE_CHECK
=''
* I_BYPASSING_BUFFER
=''
* I_BUFFER_ACTIVE
=''
i_callback_program
= sy-cprog
* I_CALLBACK_PF_STATUS_SET = ' '
i_callback_user_command = 'SUB_USER_COMMAND'
i_callback_top_of_page = 'TOP_OF_PAGE'
is_layout
= wa_layout
it_fieldcat
= it_fcat
i_save
= 'X'
it_events
= gt_events
TABLES
t_outtab
= it_final1
EXCEPTIONS
program_error
=1
OTHERS
= 2.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.
ENDFORM.
" DISPLAY_ALV
*&---------------------------------------------------------------------*
*&
Form SUB_USER_COMMAND
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
FORM sub_user_command USING r_ucomm TYPE sy-ucomm
r_selfield TYPE slis_selfield.
IF r_selfield-fieldname = 'BELNR'.
CLEAR wa_final .
READ TABLE it_final INTO wa_final INDEX r_selfield-tabindex .
IF sy-subrc = 0.
SET PARAMETER ID 'RBN' FIELD r_selfield-value.
SET PARAMETER ID 'GJR' FIELD wa_final-gjahr.
CALL TRANSACTION 'MIR4' AND SKIP FIRST SCREEN.
ENDIF.
ELSEIF r_selfield-fieldname = 'BELNR_MIRO'.
CLEAR wa_final .
READ TABLE it_final INTO wa_final INDEX r_selfield-tabindex .
IF sy-subrc = 0.
SET PARAMETER ID 'BLN' FIELD r_selfield-value.
SET PARAMETER ID 'BUK' FIELD wa_final-bukrs.
SET PARAMETER ID 'GJR' FIELD wa_final-gjahr.
CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.
ENDIF.
ELSEIF r_selfield-fieldname = 'LFBNR'.
CLEAR wa_final .
READ TABLE it_final INTO wa_final INDEX r_selfield-tabindex .
IF sy-subrc = 0.
CALL FUNCTION 'MIGO_DIALOG'
EXPORTING
i_action = 'A04'
i_refdoc = 'R02'
i_mblnr = wa_final-lfbnr
i_mjahr = wa_final-lfgja.
IF sy-subrc <> 0.
*
Implement suitable error handling here
ENDIF.
ENDIF.
ELSEIF r_selfield-fieldname = 'EBELN'.
SET PARAMETER ID 'BES' FIELD r_selfield-value.
CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.
ENDIF.
ENDFORM.
" SUB_USER_COMMAND
*&---------------------------------------------------------------------*
*&
Form TOP_OF_PAGE
*&---------------------------------------------------------------------*
*
Top of page of ALV display
*----------------------------------------------------------------------*
FORM top_of_page .
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = it_top_of_page.
ENDFORM.
" TOP_OF_PAGE
**&---------------------------------------------------------------------*
**&
Form GET_MSEG
**&---------------------------------------------------------------------*
**
text
**----------------------------------------------------------------------*
** --> p1
text
** <-- p2
text
**----------------------------------------------------------------------*
*FORM get_mseg .
*
* IF it_mkpf IS NOT INITIAL.
* SELECT mblnr
*
mjahr
*
bwart
*
FROM mseg
*
INTO TABLE it_mseg
*
FOR ALL ENTRIES IN it_mkpf
*
WHERE mblnr = it_mkpf-mblnr
*
AND mjahr = it_mkpf-mjahr
*
AND werks in s_werks
*
AND bwart = '122'
*
.
*
* ENDIF.
*
*ENDFORM.
" GET_MSEG
**&---------------------------------------------------------------------*
**&
Form GET_FINAL1
**&---------------------------------------------------------------------*
**
text
**----------------------------------------------------------------------*
** --> p1
text
** <-- p2
text
**----------------------------------------------------------------------*
*FORM get_final1 .
*
* loop at it_final into wa_final.
*
*
READ TABLE it_mseg INTO wa_mseg WITH KEY mblnr = wa_final-mblnr
*
mjahr = wa_final-mjahr.
* IF sy-subrc = 0.
*
MOVE-CORRESPONDING wa_final to wa_final1.
"Material Description
*
ENDIF.
* append wa_final1 to it_final1.
*
*
* endloop.
*
*
*ENDFORM.
" GET_FINAL1