在ABAP 中用ALV做报表怎么实现要在数据库两个表中字段现示到报表中
4个回答
展开全部
TYPES:BEGIN OF itable,
bldat TYPE mkpf-bldat, "制单日期
xblnr TYPE mkpf-xblnr, "送货单或报关单号
usnam TYPE mkpf-usnam, "制单人
mblnr TYPE mseg-mblnr, "物料凭证
END OF itable.
*MKPF 抬头:物料凭证
*MSEG 凭证段:物料
DATA: itab TYPE itable.
SELECT a~bldat a~xblnr a~usnam b~mblnr INTO CORRESPONDING FIELDS OF TABLE itab
FROM mkpf AS a
INNER JOIN mseg AS b ON b~mblnr = a~mblnr AND b~mjahr = a~mjahr
WHERE a~mblnr = p_mblnr
AND a~mjahr = p_mjahr.
*call function 'REUSE_ALV_GRID_DISPLAY'
* exporting
* it_events = event_tb[]
* tables
* t_outtab = itab[] .
bldat TYPE mkpf-bldat, "制单日期
xblnr TYPE mkpf-xblnr, "送货单或报关单号
usnam TYPE mkpf-usnam, "制单人
mblnr TYPE mseg-mblnr, "物料凭证
END OF itable.
*MKPF 抬头:物料凭证
*MSEG 凭证段:物料
DATA: itab TYPE itable.
SELECT a~bldat a~xblnr a~usnam b~mblnr INTO CORRESPONDING FIELDS OF TABLE itab
FROM mkpf AS a
INNER JOIN mseg AS b ON b~mblnr = a~mblnr AND b~mjahr = a~mjahr
WHERE a~mblnr = p_mblnr
AND a~mjahr = p_mjahr.
*call function 'REUSE_ALV_GRID_DISPLAY'
* exporting
* it_events = event_tb[]
* tables
* t_outtab = itab[] .
追问
非常感谢你,终于做出来了。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先把两个表的数据SELECT出来放到内表中
然后调用函数
call function 'REUSE_ALV_GRID_DISPLAY'
exporting
it_events = event_tb[]
tables
t_outtab = itab[] 放数据的内表
然后调用函数
call function 'REUSE_ALV_GRID_DISPLAY'
exporting
it_events = event_tb[]
tables
t_outtab = itab[] 放数据的内表
追问
TYPES:BEGIN OF ITABLE,
BlDAT TYPE MKPF-BlDAT, "制单日期
xblnr TYPE MKPF-xblnr, "送货单或报关单号
USNAM TYPE MKPF-USNAM, "制单人
MBLNR TYPE MSEG-MBLNR, "物料凭证
END OF ITABLE.
这是一个内表 怎么把两个表的某些字段数据放到内表中 怎么做啊 非常谢谢
追答
data: begin of gwa_tab1,
num type num04,“学号
name1 type string,”姓名
end of gwa_tab1
data: begin of gwa_tab2,
num type num04,“学号
fens type p,”分数
end of gwa_tab3.
data: begin of gwa_tab3,
num type num04,“学号
name1 type string,”姓名
fens type p,“分数
end of gwa_tab3.
data: gwa_tab1 like table of gwa_tab1,"内表1
data: gwa_tab2 like table of gwa_tab2,"内表2
data: gwa_tab3 like table of gwa_tab3,"内表3
我现在把内表1和内表2的数据放到内表3中
loop at gt_tab1 into gwa_tab1.
MOVE-CORRESPONDING gwa_tab1 to gwa_tab3."把相同的字段的值复制到gwa_tab3中
read table gwa_tab2 into gwa_tab2 with key num = gwa_tab1-num.
if sy-subrc eq 0
gwa_tab3-fens = gwa_tab2-fens.
endif.
append gwa_tab3 to gt_tab3.
endloop.
这样就把两个表中 的数据放到一个表中了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
定义一个内表含有你想显示的字段 call alv function 时的t_outtab = 你定义的内表
更多追问追答
追问
你qq号多少啊 可以加你吗?
追答
我Q工作时候上不了 我就提示下 比如你追问的BlDAT xblnr来自tab1,USNAM MBLNR来自tab2
TYPES:BEGIN OF ITABLE,
BlDAT TYPE MKPF-BlDAT, "制单日期
xblnr TYPE MKPF-xblnr, "送货单或报关单号
USNAM TYPE MKPF-USNAM, "制单人
MBLNR TYPE MSEG-MBLNR, "物料凭证
END OF ITABLE.
data: lt_outtab type table of itable,
lw_outtab type itable.
select bidat xblnr into (lw_outtab-bidat,lw_outtab-xblnr) from tab1 where ~~
select usnam mblnr into (lw_outtab-usnam,lw_outtab-mblnr) from tab2 where~~
append lw_outtab to lt_outtab.
然后调用alv函数时 t_outtab = lt_outtab
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我不知道你问的是把数据显示在ALV 还是从数据库抽取两个表的字段?
追问
是从数据库中抽取两个表的字段的数据显示在ALV报表中 怎么操作 谢谢 本人非常急用!!!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询