
在SAP中用ABAP显示出一个物料凭证的清单出来
要怎么样才能显示一个物料凭证的清单出来呢要用到ALVGRID函数要把物料凭证去出来然后再用函数显示....
要怎么样才能显示一个物料凭证的清单出来呢
要用到 ALV GRID 函数 要把物料凭证去出来然后再用函数显示 . 展开
要用到 ALV GRID 函数 要把物料凭证去出来然后再用函数显示 . 展开
4个回答
展开全部
"内表自己定义吧
DATA: L_FIELDCAT TYPE SLIS_FIELDCAT_ALV,*一列描述
G_FIELDCAT_ALV TYPE SLIS_T_FIELDCAT_ALV,*列描述内表,列清单
G_LAYOUT TYPE SLIS_LAYOUT_ALV,
G_REPID LIKE SY-REPID VALUE SY-REPID.
start-of-selection.
perform frm_getdata. 1、取数据
perform frm_setlayout. 2、设置layout格式
perform frm_set_columns. 3、设置表头
perform frm_alv_display. 4、显示ALV界面
FORM FRM_GETDATA . " 1、取数据
"根据实据需要的字段取数
SELECT
mblnr
mjahr
zeile
FROM mseg
INTO CORRESPONDING FIELDS OF TABLE it_main.
FORM FRM_setlayout. " 2、设置layout格式
G_LAYOUT-ZEBRA = 'X'.
G_LAYOUT-DETAIL_POPUP = 'X'.
G_LAYOUT-F2CODE = '&ETA'.
G_LAYOUT-NO_VLINE = 'X'.
G_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
G_LAYOUT-BOX_FIELDNAME = 'FLAG'.
G_LAYOUT-DETAIL_INITIAL_LINES = 'X'.
G_LAYOUT-DETAIL_TITLEBAR = TEXT-041.
ENDFORM. " FRM_ALV_LAYOUT_BUILD
FORM FRM_SET_COLUMNS . "3、设置表头
DATA: L_POS TYPE I VALUE 0.
REFRESH G_FIELDCAT_ALV.
CLEAR L_FIELDCAT.
L_POS = 0.
L_FIELDCAT-COL_POS = L_POS.
L_FIELDCAT-FIELDNAME = 'MBLNR'.
L_FIELDCAT-SELTEXT_L = '物料凭证编号'.
APPEND L_FIELDCAT TO G_FIELDCAT_ALV.
CLEAR L_FIELDCAT.
L_POS = L_POS + 1.
L_FIELDCAT-COL_POS = L_POS.
L_FIELDCAT-FIELDNAME = 'MJAHR'.
L_FIELDCAT-SELTEXT_L = '物料凭证年度'.
APPEND L_FIELDCAT TO G_FIELDCAT_ALV.
"根据要显示的字段来按同样的方法写
ENDFORM.
FORM FRM_ALV_DISPLAY_DATA . "4、显示ALV界面
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY' "你说的函数吧。
EXPORTING
I_CALLBACK_PROGRAM = G_REPID
I_CALLBACK_PF_STATUS_SET = 'FRM_STATUS_ALV'
I_CALLBACK_USER_COMMAND = 'FRM_USER_COMMAND_ALV'
IS_LAYOUT = G_LAYOUT
IT_FIELDCAT = G_FIELDCAT_ALV[]
IF SY-SUBRC <> 0.
ENDIF.
ENDFORM. " FRM_ALV_DISPLAY_DATA
DATA: L_FIELDCAT TYPE SLIS_FIELDCAT_ALV,*一列描述
G_FIELDCAT_ALV TYPE SLIS_T_FIELDCAT_ALV,*列描述内表,列清单
G_LAYOUT TYPE SLIS_LAYOUT_ALV,
G_REPID LIKE SY-REPID VALUE SY-REPID.
start-of-selection.
perform frm_getdata. 1、取数据
perform frm_setlayout. 2、设置layout格式
perform frm_set_columns. 3、设置表头
perform frm_alv_display. 4、显示ALV界面
FORM FRM_GETDATA . " 1、取数据
"根据实据需要的字段取数
SELECT
mblnr
mjahr
zeile
FROM mseg
INTO CORRESPONDING FIELDS OF TABLE it_main.
FORM FRM_setlayout. " 2、设置layout格式
G_LAYOUT-ZEBRA = 'X'.
G_LAYOUT-DETAIL_POPUP = 'X'.
G_LAYOUT-F2CODE = '&ETA'.
G_LAYOUT-NO_VLINE = 'X'.
G_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
G_LAYOUT-BOX_FIELDNAME = 'FLAG'.
G_LAYOUT-DETAIL_INITIAL_LINES = 'X'.
G_LAYOUT-DETAIL_TITLEBAR = TEXT-041.
ENDFORM. " FRM_ALV_LAYOUT_BUILD
FORM FRM_SET_COLUMNS . "3、设置表头
DATA: L_POS TYPE I VALUE 0.
REFRESH G_FIELDCAT_ALV.
CLEAR L_FIELDCAT.
L_POS = 0.
L_FIELDCAT-COL_POS = L_POS.
L_FIELDCAT-FIELDNAME = 'MBLNR'.
L_FIELDCAT-SELTEXT_L = '物料凭证编号'.
APPEND L_FIELDCAT TO G_FIELDCAT_ALV.
CLEAR L_FIELDCAT.
L_POS = L_POS + 1.
L_FIELDCAT-COL_POS = L_POS.
L_FIELDCAT-FIELDNAME = 'MJAHR'.
L_FIELDCAT-SELTEXT_L = '物料凭证年度'.
APPEND L_FIELDCAT TO G_FIELDCAT_ALV.
"根据要显示的字段来按同样的方法写
ENDFORM.
FORM FRM_ALV_DISPLAY_DATA . "4、显示ALV界面
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY' "你说的函数吧。
EXPORTING
I_CALLBACK_PROGRAM = G_REPID
I_CALLBACK_PF_STATUS_SET = 'FRM_STATUS_ALV'
I_CALLBACK_USER_COMMAND = 'FRM_USER_COMMAND_ALV'
IS_LAYOUT = G_LAYOUT
IT_FIELDCAT = G_FIELDCAT_ALV[]
IF SY-SUBRC <> 0.
ENDIF.
ENDFORM. " FRM_ALV_DISPLAY_DATA

2024-12-04 广告
数据清洗、对账及分析是数据处理的关键环节。数据清洗指对原始数据进行预处理,包括去除重复、纠正错误、填补缺失值等,以确保数据质量。对账则是将不同来源的数据进行比对,核实数据的一致性,常用于财务、库存管理等领域的核对工作。分析则基于清洗后的数据...
点击进入详情页
本回答由面向科技提供
展开全部
在MSEG里面抓物料凭证的数据到内表然后用reuse_alv_grid_display 的FM显示就可以了
没有什么特殊要求其实可以直接SE11然后TABLE MSEG 显示然后输入查询条件就可以啦
没有什么特殊要求其实可以直接SE11然后TABLE MSEG 显示然后输入查询条件就可以啦
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的意思是说通过ABAP开发一个报表,这个报表就是物料凭证清单吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
参考MB5B的程序。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询