客户信用额报告

2020-09-13 12:37发布

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

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


嗨,

我需要在报告中填写以下字段。

客户编号

客户名称

客户外来名称

客户信用额度

客户余额

当前

0-30

31-60

61-90

91-120

121 +

总数

客户风险评级

最近3个月的总销售量(当年年初至今的销售量)

最近12个月的销售总额

最近12个月的平均销售量

已批准的销售订单总值

由于违反信用额度而"冻结"了销售订单的总价值

付款条件

业务部门


选择T1.CardCode,T1.CardName,T1.CardFName,

T1.CreditLine,T0.RefDate,T0.Ref1'Document Number',T1.GroupNum,

T0.TransType = 13时为'发票'

当T0.TransType = 14然后是"贷方通知单"

T0.TransType = 30时为"日记"

T0.TransType = 24时'收据'结尾为'文档类型',

T2。[RefDate],(T0.Debit- T0.Credit)"余额",

ISNULL((SELECT T0.Debit-T0.Credit WHERE DateDiff(day,T2。[RefDate],GETDATE())> = 0和DateDiff(day,T2。[RefDate],GETDATE())<= 30 ),0)'0-30天'

ISNULL((SELECT T0.Debit-T0.Credit WHERE DateDiff(day,T2。[RefDate],GETDATE())> 30和DateDiff(day,T2。[RefDate],GETDATE())<= 60) ,0)'31 -60天',

ISNULL((SELECT T0.Debit-T0.Credit WHERE DateDiff(day,T2。[RefDate],getdate())> 60 and DateDiff(day,T2。[RefDate],GETDATE())<= 90) ,0)'61 -90天',

ISNULL((SELECT T0.Debit-T0.Credit WHERE DateDiff(day,T2。[RefDate],getdate())> 90 and DateDiff(day,T2。[RefDate],GETDATE())<= 120) ,0)'91 -120天',

ISNULL((SELECT T0.Debit-T0.Credit WHERE DateDiff(day,T2。[RefDate],GETDATE())> = 121),0)'121+天'

来自JDT1 T0内连接OCRD T1于T0.ShortName = T1.CardCode内连接OJDT T2于T2.Transid = T0.TransID WHERE(T0.MthDate为NULL或T0.MthDate> getdate())和T0.RefDate <= getdate()AND T1.CardType ='C'按T1.CardCode,T2。[RefDate],T0.Ref1

排序

到目前为止,我能够开发出如此多的查询,但无法弄清楚如何在" 121+"之后获取字段。 快速的帮助将不胜感激。

感谢和问候,

Vivek

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

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


嗨,

我需要在报告中填写以下字段。

客户编号

客户名称

客户外来名称

客户信用额度

客户余额

当前

0-30

31-60

61-90

91-120

121 +

总数

客户风险评级

最近3个月的总销售量(当年年初至今的销售量)

最近12个月的销售总额

最近12个月的平均销售量

已批准的销售订单总值

由于违反信用额度而"冻结"了销售订单的总价值

付款条件

业务部门


选择T1.CardCode,T1.CardName,T1.CardFName,

T1.CreditLine,T0.RefDate,T0.Ref1'Document Number',T1.GroupNum,

T0.TransType = 13时为'发票'

当T0.TransType = 14然后是"贷方通知单"

T0.TransType = 30时为"日记"

T0.TransType = 24时'收据'结尾为'文档类型',

T2。[RefDate],(T0.Debit- T0.Credit)"余额",

ISNULL((SELECT T0.Debit-T0.Credit WHERE DateDiff(day,T2。[RefDate],GETDATE())> = 0和DateDiff(day,T2。[RefDate],GETDATE())<= 30 ),0)'0-30天'

ISNULL((SELECT T0.Debit-T0.Credit WHERE DateDiff(day,T2。[RefDate],GETDATE())> 30和DateDiff(day,T2。[RefDate],GETDATE())<= 60) ,0)'31 -60天',

ISNULL((SELECT T0.Debit-T0.Credit WHERE DateDiff(day,T2。[RefDate],getdate())> 60 and DateDiff(day,T2。[RefDate],GETDATE())<= 90) ,0)'61 -90天',

ISNULL((SELECT T0.Debit-T0.Credit WHERE DateDiff(day,T2。[RefDate],getdate())> 90 and DateDiff(day,T2。[RefDate],GETDATE())<= 120) ,0)'91 -120天',

ISNULL((SELECT T0.Debit-T0.Credit WHERE DateDiff(day,T2。[RefDate],GETDATE())> = 121),0)'121+天'

来自JDT1 T0内连接OCRD T1于T0.ShortName = T1.CardCode内连接OJDT T2于T2.Transid = T0.TransID WHERE(T0.MthDate为NULL或T0.MthDate> getdate())和T0.RefDate <= getdate()AND T1.CardType ='C'按T1.CardCode,T2。[RefDate],T0.Ref1

排序

到目前为止,我能够开发出如此多的查询,但无法弄清楚如何在" 121+"之后获取字段。 快速的帮助将不胜感激。

感谢和问候,

Vivek

付费偷看设置
发送
6条回答
SAP砖家
1楼-- · 2020-09-13 12:58

嗨,

任何人请提出解决方案。

谢谢

野沐沐
2楼-- · 2020-09-13 13:14

嗨,阿卜杜勒·曼南

谢谢您的建议,我一定会尝试的。

但是,由于我是SAP b1的新手,并且对SQL的经验较少,所以如果您可以将建议纳入上述查询中,您可以这样做吗?

谢谢

Vivek

土豆飞人
3楼-- · 2020-09-13 13:03

请说明在大于121的值中面临的问题是什么?

悠然的二货
4楼-- · 2020-09-13 13:19

您好阿卜杜勒·曼南

如果需要任何帮助,我会进行处理,并尽快与您联系。

谢谢

Vivek

Tong__Ming
5楼-- · 2020-09-13 13:13

请说明在大于121的值中面临的问题是什么?

暮风yp
6楼-- · 2020-09-13 12:53

请参阅此查询末尾的示例,您将了解。

在T0.TransType = 13时选择T1.CardCode,T1.CardName,T1.CardFName,T1.CreditLine,T0.RefDate,T0.Ref1'Document Number',T1.GroupNum,CASE。 TransType = 14则在T0.TransType = 30时为"贷方通知单",然后T0.TransType = 24则在"凭证类型"中为"收据"(END)作为"文档类型",T2。[RefDate],(T0.Debit-T0.Credit) 'Balance',ISNULL((SELECT T0.Debit-T0.Credit WHERE DateDiff(day,T2。[RefDate],GETDATE())> = 0和DateDiff(day,T2。[RefDate],GETDATE())<= 30),0)'0-30天',ISNULL((SELECT T0.Debit-T0.Credit WHERE DateDiff(day,T2。[RefDate],GETDATE())> 30 and DateDiff(day,T2。[RefDate] ,GETDATE())<= 60),0)'31 -60 Days',ISNULL((SELECT T0.Debit-T0.Credit WHERE DateDiff(day,T2。[RefDate],getdate())> 60 and DateDiff( day,T2。[RefDate],GETDATE()<= 90),0)'61 -90 Days',ISNULL((SELECT T0.Debit-T0.Credit WHERE DateDiff(day,T2。[RefDate],getdate( ))> 90和DateDiff(day,T2。[RefDate],GETDATE())<= 120),0)'91 -120 Days',ISNULL((SELECT T0.Debit-T0.Credit WHERE DateDiff(day,T2 。[RefDate],GETDATE())> = 121),0)'121+天',(从OINV中选择总和(OINV.DocTotal),其中OINV.DocDate = Dateadd(Day,-30,OINV.DocDate)和OINV.CardCode = T1.CardCode)作为'最后销售' 30天",(从OINV中选择总和(OINV.DocTotal),其中OINV.DocDate = Dateadd(Day,-365,OINV.DocDate)和OINV.CardCode = T1.CardCode)作为"最近365天销售",(选择平均 (OINV.DocTotal)来自OINV,其中OINV.DocDate = Dateadd(Day,-365,OINV.DocDate)和OINV.CardCode = T1.CardCode)作为"平均销售持续365天",从JDT1 T0内连接OCRD T1到T0。 ShortName = T1.CardCode T2.Transid = T0.TransID WHERE(T0.MthDate为NULL或T0.MthDate> getdate())AND T0.RefDate <= getdate()AND T1.CardType = T ORDER BY T1.CardCode,T2。[RefDate],T0.Ref1

一周热门 更多>

点击此处---> EasySAP.com 一起学习S4 HANA ...

相关问答