我在abap中取表bsak中凭证日期最大但凭证类型是re的记录。如果可以使用函数max()更好。
3个回答
展开全部
如果日期在a列,类型在b列,参考 数组公式:
=MAX((A3:A25)*(B3:B25="re"))
输入完后按 ctrl+shift+enter 一起结束输入(正确输入后公式两端有 { } 符号)
a3:a25是假定数据范围,自己调整,需要对应调整b列的数据
=MAX((A3:A25)*(B3:B25="re"))
输入完后按 ctrl+shift+enter 一起结束输入(正确输入后公式两端有 { } 符号)
a3:a25是假定数据范围,自己调整,需要对应调整b列的数据
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-04-08
展开全部
先用凭证类型是re(条件)去bsak中取数到内表中,对此内表的凭证日期做降序排序,读取内表的第一条数据,就得到你要的数了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
DATA: ls_bsak TYPE bsak,
lt_bsak TYPE STANDARD TABLE OF bsak.
CLEAR: lt_bsak[],ls_bsak.
SELECT * FROM bsak INTO TABLE lt_bsak UP TO 1 ROWS
WHERE blart = 'RE'
ORDER BY bldat DESCENDING.
IF sy-subrc = 0 AND lt_bsak[] IS NOT INITIAL.
READ TABLE lt_bsak INTO ls_bsak INDEX 1.
ENDIF.
lt_bsak TYPE STANDARD TABLE OF bsak.
CLEAR: lt_bsak[],ls_bsak.
SELECT * FROM bsak INTO TABLE lt_bsak UP TO 1 ROWS
WHERE blart = 'RE'
ORDER BY bldat DESCENDING.
IF sy-subrc = 0 AND lt_bsak[] IS NOT INITIAL.
READ TABLE lt_bsak INTO ls_bsak INDEX 1.
ENDIF.
追问
如何看is_bsak中的数据
追答
ls_bsak是一个结构变量;
访问它里面的字段方法:
ls_bsak-BUKRS 就取到了公司代码;
ls_bsak-BBELNR就取到了会计凭证号;
其它的字段类似!~
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询