WSUCSTAT
来源:互联网 发布:聚游网络散人 编辑:程序博客网 时间:2024/06/16 04:56
report wsucstat .
type-pools: slis.
include fv50utyp.
include rvdirekt.
tables: vbuk, likp, vbak, vbka, vbuv, vbup, tvuvs, tvuvf, v_tvuvf.
*-----------------------------------------------------------------------
* selection screen
*-----------------------------------------------------------------------
selection-screen begin of block b_uvstat with frame title t_uvstat.
select-options uvall for tvuvs-uvall.
select-options uvprs for tvuvs-uvprs.
select-options uvvlk for tvuvs-uvvlk.
select-options uvpik for tvuvs-uvpik.
select-options uvpak for tvuvs-uvpak.
select-options uvwak for tvuvs-uvwak.
select-options uvfak for tvuvs-uvfak.
selection-screen end of block b_uvstat.
selection-screen begin of block b_statg with frame title t_statg.
select-options statg for tvuvf-statg.
selection-screen end of block b_statg.
selection-screen begin of block b_uvdat with frame title t_uvdat.
select-options fehgr for tvuvf-fehgr.
select-options tbnam for v_tvuvf-tbnam.
select-options fdnam for v_tvuvf-fdnam.
select-options tdid for vbuv-tdid.
select-options parvw for vbuv-parvw.
selection-screen end of block b_uvdat.
selection-screen begin of block b_vbtyp with frame title t_vbtyp.
select-options vbtyp for vbuk-vbtyp.
selection-screen end of block b_vbtyp.
selection-screen begin of block b_vstat with frame title t_vstat.
select-options lfgsk for vbuk-lfgsk.
select-options wbstk for vbuk-wbstk.
select-options fkstk for vbuk-fkstk.
select-options gbstk for vbuk-gbstk.
selection-screen end of block b_vstat.
selection-screen begin of block b_vbdat with frame title t_vbdat.
select-options vbeln for vbuv-vbeln.
select-options posnr for vbuv-posnr.
*---these are the common fields of likp, vbak, vbka:
select-options vkorg for vbak-vkorg memory id vko.
select-options ernam for vbak-ernam . "DEFAULT SY-UNAME.
select-options erdat for vbak-erdat default ' ' to sy-datlo.
select-options erzet for vbak-erzet.
select-options aedat for vbak-aedat default ' ' to sy-datlo.
selection-screen end of block b_vbdat.
initialization.
t_uvstat = 'Unvollständig bezüglich Folgefunktion:'(010).
t_statg = 'Gruppen von Unvollständigkeitsstatus'(020).
t_uvdat = 'Unvollständige Daten'(030).
t_vbtyp = 'Belegarten'(040).
t_vstat = 'Belegstatus'(060).
t_vbdat = 'allgemeine Belegdaten'(050).
start-of-selection.
*-----------------------------------------------------------------------
* data declaration
*-----------------------------------------------------------------------
data: xtvuvs like tvuvs occurs 100 with header line.
data: xvbuv like vbuv occurs 0 with header line.
*---heder table
data: begin of xlisth occurs 0.
include structure vbuk.
data: vbtyp_name like dd07v-ddtext,
end of xlisth.
*---depending table
data: begin of xlistp occurs 0.
include structure tvuvs.
data: ddtext type shp_pvbuv-ddtext,
tdobject type shp_pvbuv-tdobject,
fdnam like tvuvf-fdnam,
tbnam like tvuvf-tbnam,
tdid like vbuv-tdid,
parvw like vbuv-parvw,
fehgr like tvuvf-fehgr,
posnr like vbuv-posnr,
vbeln like vbuv-vbeln,
end of xlistp.
*---help data
data: no_more,
lv_tdobject type shp_pvbuv-tdobject,
ls_ucpar type ucdl_ucpar.
data: call_programm like sy-repid.
call_programm = sy-repid.
*--listviewer interface:
data: lv_keyinfo type slis_keyinfo_alv.
data: lv_fieldcat type slis_fieldcat_alv.
data: lv_t_fieldcat type slis_t_fieldcat_alv.
data: lv_special_groups type slis_sp_group_alv.
data: lv_t_special_groups type slis_t_sp_group_alv.
data: lv_layout type slis_layout_alv.
data: lv_colpos like sy-tabix value 1.
data: lv_t_event_exit type slis_t_event_exit.
data: lv_event_exit type slis_event_exit.
*-prepare saving of user specific list variants:
data: lv_variant like disvariant.
lv_variant-report = sy-repid.
lv_variant-handle = 'UCRV'.
lv_variant-username = sy-uname.
*-----------------------------------------------------------------------
* Selections
*-----------------------------------------------------------------------
select * from tvuvs into table xtvuvs where
statg in statg and
uvall in uvall and
uvvlk in uvvlk and
uvfak in uvfak and
uvprs in uvprs and
uvwak in uvwak and
uvpak in uvpak and
uvpik in uvpik
order by primary key.
select * from vbuv into table xvbuv where
statg in statg and
fdnam in fdnam and
tbnam in tbnam and
tdid in tdid and
parvw in parvw and
fehgr in fehgr and
posnr in posnr and
vbeln in vbeln
order by primary key.
data: lt_dd07v like dd07v occurs 10 with header line.
call function 'DDUT_DOMVALUES_GET'
exporting
name = 'VBTYP'
langu = sy-langu
texts_only = ' '
tables
dd07v_tab = lt_dd07v
exceptions
illegal_input = 1
others = 2.
*-----------------------------------------------------------------------
* processing: fill head- and depending tables
*-----------------------------------------------------------------------
data: table_name like vbuv-tbnam.
loop at xvbuv.
at new vbeln.
no_more = space.
clear table_name.
select single * from vbuk into corresponding fields of
xlisth where
vbeln eq xvbuv-vbeln and
lfgsk in lfgsk and
wbstk in wbstk and
fkstk in fkstk and
gbstk in gbstk and
vbtyp in vbtyp.
if sy-subrc ne 0.
no_more = 'X'.
continue.
endif.
if xlisth-vbtyp ca vbtyp_verk.
table_name = 'VBAK'.
elseif xlisth-vbtyp ca vbtyp_kontakt.
table_name = 'VBKA'.
elseif xlisth-vbtyp ca vbtyp_lief or
xlisth-vbtyp ca vbtyp_mmli.
table_name = 'LIKP'.
endif.
if table_name is initial.
no_more = 'X'.
continue.
endif.
select single vbeln from (table_name) into likp-vbeln where
vbeln eq xlisth-vbeln and
erdat in erdat and
erzet in erzet and
ernam in ernam and
vkorg in vkorg and
aedat in aedat.
if sy-subrc ne 0.
no_more = 'X'.
continue.
endif.
read table lt_dd07v with key domvalue_l = xlisth-vbtyp.
xlisth-vbtyp_name = lt_dd07v-ddtext.
append xlisth.
endat.
check no_more ne 'X'.
clear xlistp. "n_533916
read table xtvuvs with key statg = xvbuv-statg binary search.
if sy-subrc eq 0. "n_533916
move-corresponding xtvuvs to xlistp.
endif. "n_533916
move-corresponding xvbuv to xlistp.
if xlistp-tdid ne space.
if xlistp-posnr eq posnr_low.
xlistp-tdobject = 'VBBK'.
else.
xlistp-tdobject = 'VBBP'.
endif.
endif.
perform read_dd03p(sapfv50u) using ls_ucpar
xlistp-parvw
xlistp-tdid
xlistp-tbnam
xlistp-fdnam
xlistp-tdobject
changing
xlistp-ddtext.
append xlistp.
endloop.
*-----------------------------------------------------------------------
* listviewer: relation between head- and depending table
*-----------------------------------------------------------------------
perform fill_lv_keyinfo.
*-----------------------------------------------------------------------
* header:
*-----------------------------------------------------------------------
perform fill_lv_fieldcat_header.
*-----------------------------------------------------------------------
* Items
*-----------------------------------------------------------------------
perform fill_lv_fieldcat_items.
*-we want to have our own F1 for some fields:
lv_event_exit-ucomm = '&ELP'.
lv_event_exit-before = 'X'.
append lv_event_exit to lv_t_event_exit.
*LV_LAYOUT-MAX_LINESIZE = 80.
*lV_SPECIAL_GROUPS-SP_GROUP = 'K'.
*LV_SPECIAL_GROUPS-TEXT = 'Kopfeigene Status'(100).
*APPEND LV_SPECIAL_GROUPS TO LV_T_SPECIAL_GROUPS.
lv_layout-f2code = '&ETA'.
call function 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
exporting
* I_INTERFACE_CHECK = ' '
i_callback_program = call_programm
i_callback_pf_status_set = 'LV_STATUS_SET'
i_callback_user_command = 'LV_USER_COMMAND'
is_layout = lv_layout
it_fieldcat = lv_t_fieldcat
* IT_EXCLUDING =
it_special_groups = lv_t_special_groups
* IT_SORT =
* IT_FILTER =
* IS_SEL_HIDE =
* I_SCREEN_START_COLUMN = 0
* I_SCREEN_START_LINE = 0
* I_SCREEN_END_COLUMN = 0
* I_SCREEN_END_LINE = 0
* I_DEFAULT = 'X'
i_save = 'A'
is_variant = lv_variant
* IT_EVENTS =
it_event_exit = lv_t_event_exit
i_tabname_header = 'XLISTH'
i_tabname_item = 'XLISTP'
* I_STRUCTURE_NAME_HEADER =
* I_STRUCTURE_NAME_ITEM =
is_keyinfo = lv_keyinfo
* IS_PRINT =
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER =
* ES_EXIT_CAUSED_BY_USER =
tables
t_outtab_header = xlisth
t_outtab_item = xlistp
exceptions
program_error = 1
others = 2.
*&---------------------------------------------------------------------*
*& Form LV_STATUS_SET
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
form lv_status_set using p_cua_exclude
type slis_t_extab.
set pf-status 'STANDARD_ALV' of program sy-repid
excluding p_cua_exclude.
endform. " UC_PF_STATUS_SET
*&---------------------------------------------------------------------*
*& Form LV_USER_COMMAND
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
form lv_user_command using p_fcode like sy-ucomm
p_selfield type slis_selfield.
*DATA: LV_VBELN LIKE LIKP-VBELN.
*FIELD-SYMBOLS: <FS>.
case p_fcode.
when 'UCCH'.
if p_selfield-tabname eq 'XLISTP'.
read table xlistp index
p_selfield-tabindex.
read table xlisth with key vbeln = xlistp-vbeln.
else.
read table xlisth index
p_selfield-tabindex.
endif.
call function 'RV_CALL_CHANGE_TRANSACTION'
exporting
* BUKRS = ' '
* FCODE = ' '
* GJAHR = '0000'
* LGNUM = ' '
* POSNR = '000000'
vbeln = xlisth-vbeln
vbtyp = xlisth-vbtyp
exceptions
others = 0.
when 'UCDS'.
if p_selfield-tabname eq 'XLISTP'.
read table xlistp index
p_selfield-tabindex.
read table xlisth with key vbeln = xlistp-vbeln.
else.
read table xlisth index
p_selfield-tabindex.
endif.
if xlisth-vbtyp eq '.'.
select single aufnr from vbak into vbak-aufnr
where vbeln eq xlisth-vbeln.
endif.
call function 'RV_CALL_DISPLAY_TRANSACTION'
exporting
* BUKRS = ' '
* FCODE = ' '
* GJAHR = '0000'
* LGNUM = ' '
* POSNR = '000000'
vbeln = xlisth-vbeln
aufnr = vbak-aufnr
vbtyp = xlisth-vbtyp
exceptions
others = 0.
when '&ELP'.
*---------F1 for the ddtxt field ?
check p_selfield-sel_tab_field eq 'XLISTP-DDTEXT'.
clear p_fcode. "get control !!!
read table xlistp index p_selfield-tabindex.
call function 'HELP_DOCU_SHOW_FOR_FIELD'
exporting
* DISPLAY = ' '
fieldname = xlistp-fdnam
* FIELDVALUE = ' '
* KEYWORD = ' '
tabname = xlistp-tbnam
help_in_popup = 'X'
exceptions
others = 0.
endcase.
endform. " uc_lv_USER_COMMAND
*&---------------------------------------------------------------------*
*& Form FILL_LV_KEYINFO
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
form fill_lv_keyinfo.
lv_keyinfo-header01 = 'VBELN'.
lv_keyinfo-item01 = 'VBELN'.
lv_keyinfo-item02 = 'POSNR'.
lv_keyinfo-item03 = 'TBNAM'.
lv_keyinfo-item04 = 'TDID'.
lv_keyinfo-item05 = 'PARVW'.
endform. " FILL_LV_KEYINFO
*&---------------------------------------------------------------------*
*& Form FILL_LV_FIELDCAT_HEADER
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
form fill_lv_fieldcat_header.
data: lv_ddictxt like lv_fieldcat-ddictxt value 'S'.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'VBELN'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUV'.
lv_fieldcat-key = 'X'.
lv_fieldcat-col_pos = lv_colpos.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'VBTYP_NAME'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ref_fieldname = 'VBTYP'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-col_pos = lv_colpos.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
data: da_fieldcat like lv_fieldcat occurs 0.
call function 'REUSE_ALV_FIELDCATALOG_MERGE'
exporting
i_program_name = call_programm
i_internal_tabname = 'XLISTH'
i_structure_name = 'VBUK'
* I_CLIENT_NEVER_DISPLAY = 'X'
* I_INCLNAME =
changing
ct_fieldcat = da_fieldcat
exceptions
inconsistent_interface = 1
program_error = 2
others = 3.
loop at da_fieldcat into lv_fieldcat.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-no_out = 'X'.
modify da_fieldcat from lv_fieldcat.
check lv_fieldcat-fieldname eq 'VBELN'.
delete da_fieldcat.
endloop.
append lines of da_fieldcat to lv_t_fieldcat.
exit. " yuck
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVALS'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVVLS'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVFAS'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
*placeholder
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPRS'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVWAS'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPIS'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPAS'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVALL'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-sp_group = 'K'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVVLK'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-sp_group = 'K'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVFAK'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-sp_group = 'K'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
*placeholder
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPRS'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-sp_group = 'K'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVWAK'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-sp_group = 'K'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPIK'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPAK'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-sp_group = 'K'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
endform. " FILL_LV_FIELDCAT_HEADER
*&---------------------------------------------------------------------*
*& Form FILL_LV_FIELDCAT_ITEMS
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
form fill_lv_fieldcat_items.
lv_colpos = 1.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'POSNR'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'VBUV'.
lv_fieldcat-key = 'X'.
lv_fieldcat-col_pos = lv_colpos.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'DDTEXT'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'DD04T'.
lv_fieldcat-key = ' '.
lv_fieldcat-fix_column = 'X'.
lv_fieldcat-col_pos = lv_colpos.
* LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVALL'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVS'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVVLK'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVS'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVFAK'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVS'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPRS'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVS'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVWAK'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVS'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPIK'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVS'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPAK'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVS'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'FEHGR'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVF'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
lv_fieldcat-no_out = 'X'.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'TBNAM'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVF'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
lv_fieldcat-no_out = 'X'.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'FDNAM'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVF'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
lv_fieldcat-no_out = 'X'.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'PARVW'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'VBUV'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
lv_fieldcat-no_out = 'X'.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'TDID'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'VBUV'.
lv_fieldcat-key = ' '.
lv_fieldcat-no_out = 'X'.
lv_fieldcat-col_pos = lv_colpos.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'STATG'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVS'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
lv_fieldcat-no_out = 'X'.
append lv_fieldcat to lv_t_fieldcat.
endform. " FILL_LV_FIELDCAT_ITEMS
type-pools: slis.
include fv50utyp.
include rvdirekt.
tables: vbuk, likp, vbak, vbka, vbuv, vbup, tvuvs, tvuvf, v_tvuvf.
*-----------------------------------------------------------------------
* selection screen
*-----------------------------------------------------------------------
selection-screen begin of block b_uvstat with frame title t_uvstat.
select-options uvall for tvuvs-uvall.
select-options uvprs for tvuvs-uvprs.
select-options uvvlk for tvuvs-uvvlk.
select-options uvpik for tvuvs-uvpik.
select-options uvpak for tvuvs-uvpak.
select-options uvwak for tvuvs-uvwak.
select-options uvfak for tvuvs-uvfak.
selection-screen end of block b_uvstat.
selection-screen begin of block b_statg with frame title t_statg.
select-options statg for tvuvf-statg.
selection-screen end of block b_statg.
selection-screen begin of block b_uvdat with frame title t_uvdat.
select-options fehgr for tvuvf-fehgr.
select-options tbnam for v_tvuvf-tbnam.
select-options fdnam for v_tvuvf-fdnam.
select-options tdid for vbuv-tdid.
select-options parvw for vbuv-parvw.
selection-screen end of block b_uvdat.
selection-screen begin of block b_vbtyp with frame title t_vbtyp.
select-options vbtyp for vbuk-vbtyp.
selection-screen end of block b_vbtyp.
selection-screen begin of block b_vstat with frame title t_vstat.
select-options lfgsk for vbuk-lfgsk.
select-options wbstk for vbuk-wbstk.
select-options fkstk for vbuk-fkstk.
select-options gbstk for vbuk-gbstk.
selection-screen end of block b_vstat.
selection-screen begin of block b_vbdat with frame title t_vbdat.
select-options vbeln for vbuv-vbeln.
select-options posnr for vbuv-posnr.
*---these are the common fields of likp, vbak, vbka:
select-options vkorg for vbak-vkorg memory id vko.
select-options ernam for vbak-ernam . "DEFAULT SY-UNAME.
select-options erdat for vbak-erdat default ' ' to sy-datlo.
select-options erzet for vbak-erzet.
select-options aedat for vbak-aedat default ' ' to sy-datlo.
selection-screen end of block b_vbdat.
initialization.
t_uvstat = 'Unvollständig bezüglich Folgefunktion:'(010).
t_statg = 'Gruppen von Unvollständigkeitsstatus'(020).
t_uvdat = 'Unvollständige Daten'(030).
t_vbtyp = 'Belegarten'(040).
t_vstat = 'Belegstatus'(060).
t_vbdat = 'allgemeine Belegdaten'(050).
start-of-selection.
*-----------------------------------------------------------------------
* data declaration
*-----------------------------------------------------------------------
data: xtvuvs like tvuvs occurs 100 with header line.
data: xvbuv like vbuv occurs 0 with header line.
*---heder table
data: begin of xlisth occurs 0.
include structure vbuk.
data: vbtyp_name like dd07v-ddtext,
end of xlisth.
*---depending table
data: begin of xlistp occurs 0.
include structure tvuvs.
data: ddtext type shp_pvbuv-ddtext,
tdobject type shp_pvbuv-tdobject,
fdnam like tvuvf-fdnam,
tbnam like tvuvf-tbnam,
tdid like vbuv-tdid,
parvw like vbuv-parvw,
fehgr like tvuvf-fehgr,
posnr like vbuv-posnr,
vbeln like vbuv-vbeln,
end of xlistp.
*---help data
data: no_more,
lv_tdobject type shp_pvbuv-tdobject,
ls_ucpar type ucdl_ucpar.
data: call_programm like sy-repid.
call_programm = sy-repid.
*--listviewer interface:
data: lv_keyinfo type slis_keyinfo_alv.
data: lv_fieldcat type slis_fieldcat_alv.
data: lv_t_fieldcat type slis_t_fieldcat_alv.
data: lv_special_groups type slis_sp_group_alv.
data: lv_t_special_groups type slis_t_sp_group_alv.
data: lv_layout type slis_layout_alv.
data: lv_colpos like sy-tabix value 1.
data: lv_t_event_exit type slis_t_event_exit.
data: lv_event_exit type slis_event_exit.
*-prepare saving of user specific list variants:
data: lv_variant like disvariant.
lv_variant-report = sy-repid.
lv_variant-handle = 'UCRV'.
lv_variant-username = sy-uname.
*-----------------------------------------------------------------------
* Selections
*-----------------------------------------------------------------------
select * from tvuvs into table xtvuvs where
statg in statg and
uvall in uvall and
uvvlk in uvvlk and
uvfak in uvfak and
uvprs in uvprs and
uvwak in uvwak and
uvpak in uvpak and
uvpik in uvpik
order by primary key.
select * from vbuv into table xvbuv where
statg in statg and
fdnam in fdnam and
tbnam in tbnam and
tdid in tdid and
parvw in parvw and
fehgr in fehgr and
posnr in posnr and
vbeln in vbeln
order by primary key.
data: lt_dd07v like dd07v occurs 10 with header line.
call function 'DDUT_DOMVALUES_GET'
exporting
name = 'VBTYP'
langu = sy-langu
texts_only = ' '
tables
dd07v_tab = lt_dd07v
exceptions
illegal_input = 1
others = 2.
*-----------------------------------------------------------------------
* processing: fill head- and depending tables
*-----------------------------------------------------------------------
data: table_name like vbuv-tbnam.
loop at xvbuv.
at new vbeln.
no_more = space.
clear table_name.
select single * from vbuk into corresponding fields of
xlisth where
vbeln eq xvbuv-vbeln and
lfgsk in lfgsk and
wbstk in wbstk and
fkstk in fkstk and
gbstk in gbstk and
vbtyp in vbtyp.
if sy-subrc ne 0.
no_more = 'X'.
continue.
endif.
if xlisth-vbtyp ca vbtyp_verk.
table_name = 'VBAK'.
elseif xlisth-vbtyp ca vbtyp_kontakt.
table_name = 'VBKA'.
elseif xlisth-vbtyp ca vbtyp_lief or
xlisth-vbtyp ca vbtyp_mmli.
table_name = 'LIKP'.
endif.
if table_name is initial.
no_more = 'X'.
continue.
endif.
select single vbeln from (table_name) into likp-vbeln where
vbeln eq xlisth-vbeln and
erdat in erdat and
erzet in erzet and
ernam in ernam and
vkorg in vkorg and
aedat in aedat.
if sy-subrc ne 0.
no_more = 'X'.
continue.
endif.
read table lt_dd07v with key domvalue_l = xlisth-vbtyp.
xlisth-vbtyp_name = lt_dd07v-ddtext.
append xlisth.
endat.
check no_more ne 'X'.
clear xlistp. "n_533916
read table xtvuvs with key statg = xvbuv-statg binary search.
if sy-subrc eq 0. "n_533916
move-corresponding xtvuvs to xlistp.
endif. "n_533916
move-corresponding xvbuv to xlistp.
if xlistp-tdid ne space.
if xlistp-posnr eq posnr_low.
xlistp-tdobject = 'VBBK'.
else.
xlistp-tdobject = 'VBBP'.
endif.
endif.
perform read_dd03p(sapfv50u) using ls_ucpar
xlistp-parvw
xlistp-tdid
xlistp-tbnam
xlistp-fdnam
xlistp-tdobject
changing
xlistp-ddtext.
append xlistp.
endloop.
*-----------------------------------------------------------------------
* listviewer: relation between head- and depending table
*-----------------------------------------------------------------------
perform fill_lv_keyinfo.
*-----------------------------------------------------------------------
* header:
*-----------------------------------------------------------------------
perform fill_lv_fieldcat_header.
*-----------------------------------------------------------------------
* Items
*-----------------------------------------------------------------------
perform fill_lv_fieldcat_items.
*-we want to have our own F1 for some fields:
lv_event_exit-ucomm = '&ELP'.
lv_event_exit-before = 'X'.
append lv_event_exit to lv_t_event_exit.
*LV_LAYOUT-MAX_LINESIZE = 80.
*lV_SPECIAL_GROUPS-SP_GROUP = 'K'.
*LV_SPECIAL_GROUPS-TEXT = 'Kopfeigene Status'(100).
*APPEND LV_SPECIAL_GROUPS TO LV_T_SPECIAL_GROUPS.
lv_layout-f2code = '&ETA'.
call function 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
exporting
* I_INTERFACE_CHECK = ' '
i_callback_program = call_programm
i_callback_pf_status_set = 'LV_STATUS_SET'
i_callback_user_command = 'LV_USER_COMMAND'
is_layout = lv_layout
it_fieldcat = lv_t_fieldcat
* IT_EXCLUDING =
it_special_groups = lv_t_special_groups
* IT_SORT =
* IT_FILTER =
* IS_SEL_HIDE =
* I_SCREEN_START_COLUMN = 0
* I_SCREEN_START_LINE = 0
* I_SCREEN_END_COLUMN = 0
* I_SCREEN_END_LINE = 0
* I_DEFAULT = 'X'
i_save = 'A'
is_variant = lv_variant
* IT_EVENTS =
it_event_exit = lv_t_event_exit
i_tabname_header = 'XLISTH'
i_tabname_item = 'XLISTP'
* I_STRUCTURE_NAME_HEADER =
* I_STRUCTURE_NAME_ITEM =
is_keyinfo = lv_keyinfo
* IS_PRINT =
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER =
* ES_EXIT_CAUSED_BY_USER =
tables
t_outtab_header = xlisth
t_outtab_item = xlistp
exceptions
program_error = 1
others = 2.
*&---------------------------------------------------------------------*
*& Form LV_STATUS_SET
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
form lv_status_set using p_cua_exclude
type slis_t_extab.
set pf-status 'STANDARD_ALV' of program sy-repid
excluding p_cua_exclude.
endform. " UC_PF_STATUS_SET
*&---------------------------------------------------------------------*
*& Form LV_USER_COMMAND
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
form lv_user_command using p_fcode like sy-ucomm
p_selfield type slis_selfield.
*DATA: LV_VBELN LIKE LIKP-VBELN.
*FIELD-SYMBOLS: <FS>.
case p_fcode.
when 'UCCH'.
if p_selfield-tabname eq 'XLISTP'.
read table xlistp index
p_selfield-tabindex.
read table xlisth with key vbeln = xlistp-vbeln.
else.
read table xlisth index
p_selfield-tabindex.
endif.
call function 'RV_CALL_CHANGE_TRANSACTION'
exporting
* BUKRS = ' '
* FCODE = ' '
* GJAHR = '0000'
* LGNUM = ' '
* POSNR = '000000'
vbeln = xlisth-vbeln
vbtyp = xlisth-vbtyp
exceptions
others = 0.
when 'UCDS'.
if p_selfield-tabname eq 'XLISTP'.
read table xlistp index
p_selfield-tabindex.
read table xlisth with key vbeln = xlistp-vbeln.
else.
read table xlisth index
p_selfield-tabindex.
endif.
if xlisth-vbtyp eq '.'.
select single aufnr from vbak into vbak-aufnr
where vbeln eq xlisth-vbeln.
endif.
call function 'RV_CALL_DISPLAY_TRANSACTION'
exporting
* BUKRS = ' '
* FCODE = ' '
* GJAHR = '0000'
* LGNUM = ' '
* POSNR = '000000'
vbeln = xlisth-vbeln
aufnr = vbak-aufnr
vbtyp = xlisth-vbtyp
exceptions
others = 0.
when '&ELP'.
*---------F1 for the ddtxt field ?
check p_selfield-sel_tab_field eq 'XLISTP-DDTEXT'.
clear p_fcode. "get control !!!
read table xlistp index p_selfield-tabindex.
call function 'HELP_DOCU_SHOW_FOR_FIELD'
exporting
* DISPLAY = ' '
fieldname = xlistp-fdnam
* FIELDVALUE = ' '
* KEYWORD = ' '
tabname = xlistp-tbnam
help_in_popup = 'X'
exceptions
others = 0.
endcase.
endform. " uc_lv_USER_COMMAND
*&---------------------------------------------------------------------*
*& Form FILL_LV_KEYINFO
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
form fill_lv_keyinfo.
lv_keyinfo-header01 = 'VBELN'.
lv_keyinfo-item01 = 'VBELN'.
lv_keyinfo-item02 = 'POSNR'.
lv_keyinfo-item03 = 'TBNAM'.
lv_keyinfo-item04 = 'TDID'.
lv_keyinfo-item05 = 'PARVW'.
endform. " FILL_LV_KEYINFO
*&---------------------------------------------------------------------*
*& Form FILL_LV_FIELDCAT_HEADER
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
form fill_lv_fieldcat_header.
data: lv_ddictxt like lv_fieldcat-ddictxt value 'S'.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'VBELN'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUV'.
lv_fieldcat-key = 'X'.
lv_fieldcat-col_pos = lv_colpos.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'VBTYP_NAME'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ref_fieldname = 'VBTYP'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-col_pos = lv_colpos.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
data: da_fieldcat like lv_fieldcat occurs 0.
call function 'REUSE_ALV_FIELDCATALOG_MERGE'
exporting
i_program_name = call_programm
i_internal_tabname = 'XLISTH'
i_structure_name = 'VBUK'
* I_CLIENT_NEVER_DISPLAY = 'X'
* I_INCLNAME =
changing
ct_fieldcat = da_fieldcat
exceptions
inconsistent_interface = 1
program_error = 2
others = 3.
loop at da_fieldcat into lv_fieldcat.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-no_out = 'X'.
modify da_fieldcat from lv_fieldcat.
check lv_fieldcat-fieldname eq 'VBELN'.
delete da_fieldcat.
endloop.
append lines of da_fieldcat to lv_t_fieldcat.
exit. " yuck
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVALS'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVVLS'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVFAS'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
*placeholder
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPRS'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVWAS'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPIS'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPAS'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVALL'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-sp_group = 'K'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVVLK'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-sp_group = 'K'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVFAK'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-sp_group = 'K'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
*placeholder
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPRS'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-sp_group = 'K'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVWAK'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-sp_group = 'K'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPIK'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPAK'.
lv_fieldcat-tabname = 'XLISTH'.
lv_fieldcat-ref_tabname = 'VBUK'.
lv_fieldcat-ddictxt = lv_ddictxt.
lv_fieldcat-sp_group = 'K'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
endform. " FILL_LV_FIELDCAT_HEADER
*&---------------------------------------------------------------------*
*& Form FILL_LV_FIELDCAT_ITEMS
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
form fill_lv_fieldcat_items.
lv_colpos = 1.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'POSNR'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'VBUV'.
lv_fieldcat-key = 'X'.
lv_fieldcat-col_pos = lv_colpos.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'DDTEXT'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'DD04T'.
lv_fieldcat-key = ' '.
lv_fieldcat-fix_column = 'X'.
lv_fieldcat-col_pos = lv_colpos.
* LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVALL'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVS'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVVLK'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVS'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVFAK'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVS'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPRS'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVS'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVWAK'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVS'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPIK'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVS'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'UVPAK'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVS'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
*LV_FIELDCAT-OUTPUTLEN = 5.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'FEHGR'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVF'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
lv_fieldcat-no_out = 'X'.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'TBNAM'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVF'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
lv_fieldcat-no_out = 'X'.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'FDNAM'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVF'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
lv_fieldcat-no_out = 'X'.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'PARVW'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'VBUV'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
lv_fieldcat-no_out = 'X'.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'TDID'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'VBUV'.
lv_fieldcat-key = ' '.
lv_fieldcat-no_out = 'X'.
lv_fieldcat-col_pos = lv_colpos.
append lv_fieldcat to lv_t_fieldcat.
add 1 to lv_colpos.
clear lv_fieldcat.
lv_fieldcat-fieldname = 'STATG'.
lv_fieldcat-tabname = 'XLISTP'.
lv_fieldcat-ref_tabname = 'TVUVS'.
lv_fieldcat-key = ' '.
lv_fieldcat-col_pos = lv_colpos.
lv_fieldcat-no_out = 'X'.
append lv_fieldcat to lv_t_fieldcat.
endform. " FILL_LV_FIELDCAT_ITEMS
0 0
- WSUCSTAT
- linux重启mysql
- nginx+tomcat+redis集群环境搭建
- poj3181 Dollar Dayz (DP+大数)
- 多个Button绑定监听事件,简化代码方法
- Java Annotation 必须掌握的特性
- WSUCSTAT
- 2.2 多项式变量
- https ssl 加密原理
- 【JavaScript】跨源资源共享CORS和其他跨域技术(Comet、JSONP、SSE、Web Sockets)
- MongoDB Capped Collections
- Android 教你打造炫酷的ViewPagerIndicator 不仅仅是高仿MIUI
- mysql 导入数据 Got a packet bigger than ‘max_allowed_packet’ bytes的解决方法
- The Flash
- Java 性能优化