SQL JDT1未显示所有JE行详细信息

2020-09-15 16:37发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家

我有一个查询,其中显示了所有经过简化以显示该问题的JE行。 当我在没有针对特定JE的JDT1。[LineID]的情况下运行此查询时,它显示18行(缺少1行)。 当我将JDT1。[LineID]字段添加到查询中时,它显示所有19行....

(相关,但现在不是我的问题:同一查询上的JDT1.ShortName字段也发生了类似的情况-添加该字段后,所有缺少的行都会显示出来...。)

附件中的文本文件显示了我添加JDT1后的SQL结果。[LineID]-这是掉账的借方$ 250行之一(有3条)。

选择
 " SAP"即SAP,
 T0。[FormatCode] AS FormatCodeKey,
 " ST" AS公司,
 T2。[TransID],
 T2。[RefDate],
 T0。[FormatCode],
 T0。[AcctName],
 T0。[Segment_0],
 T0。[GroupMask],
 T0。[Segment_1],
 T3。[ShortName],
 T3。[名称],
 T0.Segment_2,
 T4。[ShortName],
 T4。[名称],
 T0.Segment_3,
 T5。[ShortName],
 T5。[名称],
 T0.Segment_4,
 T6。[ShortName],
 T6。[名称],
 T1。[项目],
 T8。[TrnsCode],
 T8。[TrnsCodDsc],
 T2。[备忘],
 T2。[Ref1],
 T2。[Ref2],
 T2。[Ref3],
 T1。[LineMemo],
 T1。[Ref1],
 T1。[Ref2],
 T1。[Ref3Line],
 T7。[MainCurncy],
 T1。借方
 T1.Credit,
 T1。[FCCurrency],
 T1。[FCDebit],
 T1。[FCCredit],
 T7。[SysCurrncy],
 T1。[SYSCred],
 T1。[SYSDeb],
 T1.ShortName,
 T1。[Line_ID]

                      从
 A.dbo.OACT T0内接头
  A.dbo.JDT1 T1开启T0.AcctCode = T1.Account INNER JOIN
  A.dbo.OJDT T2 ON T1.TransId = T2.TransId右外连接
  A.dbo.OASC T3打开T0.Segment_1 = T3。代码RIGHT OUTER JOIN
  A.dbo.OASC T4 ON T0.Segment_2 = T4.Code右外连接
  A.dbo.OASC T5打开T0.Segment_3 = T5。代码RIGHT OUTER JOIN
  A.dbo.OASC T6 ON T0.Segment_4 = T6。代码左外联接
  A.dbo.OTRC T8开启T2。[TransCode] = T8。[TrnsCode],
 dbo.OADM T7


                      哪里
 T2.RefDate在'06 -01-2017'和'06 -30-2017'之间
 AND(T3.SegmentId = 1)
 AND(T4.SegmentId = 2)
 AND(T5.SegmentId = 3)
 AND(T6.SegmentId = 4)
 AND(T2。[TransID] ='340813')

 通过...分组
 T2.RefDate,T2。[TransID],T1。[Line_ID],T0.GroupMask,T0.FormatCode,T0.AcctName,T0。[Segment_0],T0.Segment_1,T0.Segment_2,T0.Segment_3,T0.Segment_4,  T5。[名称],T4。[名称],T3。[名称],T6。[名称],T1。[项目],T3。[ShortName],T4。[ShortName],T5。[ShortName],T6。  [ShortName],T1.ShortName,T1.Debit,T1.Credit,T1。[FCCurrency],T1。[FCDebit],T1。[FCCredit],T1。[SYSCred],T1。[SYSDeb],T7。[MainCurncy  ],T7。[SysCurrncy],T8。[TrnsCode],T8。[TrnsCodDsc],T2。[备注],T1。[LineMemo],T2。[Ref1],T2。[Ref2],T2。[Ref3],  T1。[Ref1],T1。[Ref2],T1。[Ref3Line]
 

je-340813.txt

je-340813.txt (6.9 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家

我有一个查询,其中显示了所有经过简化以显示该问题的JE行。 当我在没有针对特定JE的JDT1。[LineID]的情况下运行此查询时,它显示18行(缺少1行)。 当我将JDT1。[LineID]字段添加到查询中时,它显示所有19行....

(相关,但现在不是我的问题:同一查询上的JDT1.ShortName字段也发生了类似的情况-添加该字段后,所有缺少的行都会显示出来...。)

附件中的文本文件显示了我添加JDT1后的SQL结果。[LineID]-这是掉账的借方$ 250行之一(有3条)。

选择
 " SAP"即SAP,
 T0。[FormatCode] AS FormatCodeKey,
 " ST" AS公司,
 T2。[TransID],
 T2。[RefDate],
 T0。[FormatCode],
 T0。[AcctName],
 T0。[Segment_0],
 T0。[GroupMask],
 T0。[Segment_1],
 T3。[ShortName],
 T3。[名称],
 T0.Segment_2,
 T4。[ShortName],
 T4。[名称],
 T0.Segment_3,
 T5。[ShortName],
 T5。[名称],
 T0.Segment_4,
 T6。[ShortName],
 T6。[名称],
 T1。[项目],
 T8。[TrnsCode],
 T8。[TrnsCodDsc],
 T2。[备忘],
 T2。[Ref1],
 T2。[Ref2],
 T2。[Ref3],
 T1。[LineMemo],
 T1。[Ref1],
 T1。[Ref2],
 T1。[Ref3Line],
 T7。[MainCurncy],
 T1。借方
 T1.Credit,
 T1。[FCCurrency],
 T1。[FCDebit],
 T1。[FCCredit],
 T7。[SysCurrncy],
 T1。[SYSCred],
 T1。[SYSDeb],
 T1.ShortName,
 T1。[Line_ID]

                      从
 A.dbo.OACT T0内接头
  A.dbo.JDT1 T1开启T0.AcctCode = T1.Account INNER JOIN
  A.dbo.OJDT T2 ON T1.TransId = T2.TransId右外连接
  A.dbo.OASC T3打开T0.Segment_1 = T3。代码RIGHT OUTER JOIN
  A.dbo.OASC T4 ON T0.Segment_2 = T4.Code右外连接
  A.dbo.OASC T5打开T0.Segment_3 = T5。代码RIGHT OUTER JOIN
  A.dbo.OASC T6 ON T0.Segment_4 = T6。代码左外联接
  A.dbo.OTRC T8开启T2。[TransCode] = T8。[TrnsCode],
 dbo.OADM T7


                      哪里
 T2.RefDate在'06 -01-2017'和'06 -30-2017'之间
 AND(T3.SegmentId = 1)
 AND(T4.SegmentId = 2)
 AND(T5.SegmentId = 3)
 AND(T6.SegmentId = 4)
 AND(T2。[TransID] ='340813')

 通过...分组
 T2.RefDate,T2。[TransID],T1。[Line_ID],T0.GroupMask,T0.FormatCode,T0.AcctName,T0。[Segment_0],T0.Segment_1,T0.Segment_2,T0.Segment_3,T0.Segment_4,  T5。[名称],T4。[名称],T3。[名称],T6。[名称],T1。[项目],T3。[ShortName],T4。[ShortName],T5。[ShortName],T6。  [ShortName],T1.ShortName,T1.Debit,T1.Credit,T1。[FCCurrency],T1。[FCDebit],T1。[FCCredit],T1。[SYSCred],T1。[SYSDeb],T7。[MainCurncy  ],T7。[SysCurrncy],T8。[TrnsCode],T8。[TrnsCodDsc],T2。[备注],T1。[LineMemo],T2。[Ref1],T2。[Ref2],T2。[Ref3],  T1。[Ref1],T1。[Ref2],T1。[Ref3Line]
 

je-340813.txt

je-340813.txt (6.9 kB)
付费偷看设置
发送
2条回答
哎,真难
1楼 · 2020-09-15 17:14.采纳回答

玛莉,你好

如果不需要对结果进行分组,为什么还要使用GROUP BY子句? Line_ID是主键(TransId + Line_ID)的一部分,因此,如果按没有主键的所有部分(或唯一约束)的字段分组,则如果您的group by语句中的所有字段都相同,则可以合并某些行 值。

让我们将查询简化为

 SELECT TransId,帐户,SUM(借方)
 从JDT1
 其中JDT1.TransId = 1
 GROUP BY TransId,帐户

让我们假设我们的JE有4行:

TransId | Line_ID | 帐号| 借记

---------- ++ ------------ + ------------ + --------

1 | 0 | 100001 | 100

1 | 1 | 400001 | 0

1 | 2 | 100001 | 200

1 | 3 | 200001 | 200

您的结果将是(TransId和帐户被分组,借方被汇总)

TransId | 帐号| 借记

---------- ++ ------------ + --------

1 | 100001 | 300

1 | 400001 | 0

1 | 200001 | 200

huskylover
2楼-- · 2020-09-15 17:34

首先删除所有联接并仅在SAP问题出现问题时检查OJDT和JDT1,否则查询中存在错误

一周热门 更多>