点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好,
我正尝试编写一个查询,以最初列出所有使用仪器序列号的项目,以及此时此刻是否有货。
我们正在MSSQL 2014上运行SAP 9.2(9.20.170)pl:07 hotfix1(32-BIT)。
我正在查看表OSRI和SRI1中的序列号交易行。
我想列出所有租用零件编号" AA-MUr"的序列号,以及它们的进出顺序(方向0或1)。 我的问题是似乎无法返回每个仪器序列号的最后一条记录,max似乎无法正常工作,limit也没有(至少当我尝试过它们时::-))。
表之间的联接可能存在错误,并且有24种工具,并且我使用以下代码返回48条记录。 这显示了每个序列号的进出移动。
我到目前为止最接近的代码如下:
选择不同的T0。[IntrSerial],T0。[ItemCode],T0。[SysSerial],T0。[BaseEntry],案例T1。[Direction]当0 THEN'IN'时1 THEN'OUT'ELSE'' 从OSRI T0内连接SRI1 T1到T0,以"运动状态"结尾。[SysSerial] = T1。[SysSerial] W0位置。 ]
任何帮助表示赞赏,最好能了解我要去哪里。
认为可能需要一个子查询,但是经过几个小时的测试(尤其是对于连接),在编写它们时遇到了问题。
嗨,
我有两个问题可以更好地理解这一点:
最好的问候
Clas Hortien
嗨,Clas,
感谢您的答复。
因此,最新输入是当前进/出状态。 这是此表中的"方向"," 0进入"和" 1退出"。
所有移动都在SRI1表中,其中有数千个。
有一条BsDocEntry行,因此在每次移动时都可能引用此行。
因此,对于AA-MUr,OSRI中有24条记录(24种乐器)
SRI1的动作很多,但是我只想返回每种乐器的当前状态
因此,要使OSRI中的24种仪器(行)与SRI1中每个序列号的最新移动相匹配
我可以为最近的记录返回最新的机芯,但是不确定如何针对每个序列号进行操作。
到目前为止的代码:
使用MAXTEST AS(SELECT *,ROW_NUMBER()覆盖(按BsDocEntry排序)AS条目来自SRI1)SELECT BsDocEntry,SysSerial,ItemCode,(从OSRI的SELECT IntrSerial,其中OSRI.ItemCode = MAXTEST.ItemCode和OSRI.SysSerial = MAXTEST .SysSerial)AS'Serial No',DocDate,case方向何时0然后'IN'当1然后'OUT'ELSE''结束作为'从最大运动的运动'条目=(从最大的选择MAX(条目))和ItemCode = 'AA-MUr'
我将继续研究可能会围绕OSRI表进行一次循环,以查看尚未触及的记录数量。
一周热门 更多>