需要帮助添加ORDR和RDR1信息以进行查询(销售报告)

2020-09-02 06:06发布

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

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


我想在查询中包括销售订单号和销售订单日期(如果有),但不太确定如何联接表。 预先感谢!

 SELECT T2.CardCode AS'BP代码',T2.CardName AS'客户名称',T2.FrozenFor AS'无效',T0。[地址2] AS'运送到',T5.CityS AS'城市',T5  .StateS AS'State',T7。[IndName] AS" Industry",T3.SlpName AS'SalesRep on Inv',T9.SlpName AS" Current Rep",T2.CardFName AS'Consultant','Invoice'AS'DocType  ',''+ CAST(T0.DocNum AS nVarChar)AS'DocNum',T0.DocDate,T6.ItemType AS'项目类型',T8.ItmsGrpNam AS'项目组',T6.FrgnName AS'产品',T1。  ItemCode AS'项目编号',T1.Dscription AS'项目描述',T1.U_SrvcProj AS'服务项目',(T1.LineNum +1)AS'LineNum',T1.Quantity,T1.Price AS'单位销售', 案例T1.0时的数量0否则((T1.Quantity * T1.Price)-T1.GrssProfit)/T1.Quantity END AS'单位成本',(T1.Quantity * T1.Price)AS'总销售额',  (((T1.Quantity * T1.Price)-T1.GrssProfit)AS'总成本',T1.GrssProfit AS'毛利润
                                   当T1。[LineTotal] = 0然后1
                                   ELSE T1。[LineTotal]
                                 END)* 100 AS'毛利润%',T1.TaxCode AS'Tax Code',T1。[VatPrcnt],T1。[VatSumSy] AS'Tax Amount',T4。[FormatCode]
 从OINV T0内联接INV1 T1到T0.DocEntry = T1.DocEntry
 内联接OCRD T2开启T0.CardCode = T2.CardCode
 内连接OSLP T3开启T0.SlpCode = T3.SlpCode
 T1.AcctCode = T4.AcctCode上的内联接OACT T4
 左外连接OITM T6在T1.ItemCode = T6.ItemCode
 T6.ItmsGrpCod = T8.ItmsGrpCod的左外侧联接OITB T8
 左外联接INV12 T5在T0.DocEntry = T5.DocEntry
 T2上的左外部联接T7.IndustryC = T7.IndCode
 内连接OSLP T9开启T2.SlpCode = T9.SlpCode
 在哪里(T0.DocDate> = CONVERT(varchar(25),[%0],101)和T0.DocDate <= CONVERT(varchar(25),[%1],101))和T1.ItemCode不像'%  %Paid %%'AND T1.ItemCode不像'%% Freight %%'AND T2.CardCode <>'KIS01'AND T2.CardCode不像'%% ZZZ %%'AND T2.GroupCode ='100'AND T4  。[FormatCode]不喜欢'%% 21600 %%'AND T4。[FormatCode]不喜欢'%% 22100 %%'AND T8.ItmsGrpNam不喜欢'%% Clearing %%'和T8.ItmsGrpNam不喜欢'%% 无需劳动的%%'UNION SELECT T2.CardCode AS'BP代码',T2.CardName AS'客户名称',T2.FrozenFor AS'无效',T0。[地址2] AS'运送到',T5.CityS AS'  City",T5.StateS AS"州",T7。[IndName] AS" Industry",T3.SlpNameAS" InsSalesRep",T9.SlpNameAS" Current Rep",T2.CardFNameAS" Consultant"," Credit 备注'AS'DocType',''+ CAST(T0.DocNum AS nVarChar)AS'DocNum',T0.DocDate,T6.ItemType AS'Item Type',T8.ItmsGrpNam AS'Item Group',T6.FrgnName AS' 产品",T1.ItemCode AS"项目编号",T1.Dscription AS"项目说明",T1.U_SrvcProj AS"服务项目",(  T1.LineNum +1)AS'LineNum',(T1。[Quantity] * -1)AS'Quantity',(T1。[Price] * -1)AS'Unit Sales',案例T1.Quantity当0然后0  ELSE((((((T1。[数量] * T1。[价格]]-T1。[GrssProfit])/T1。[数量])* -1)END AS'单位成本',(((T1。[数量] *  T1。[Price])* -1)AS'Total Sales',((((T1。[Quantity] * T1。[Price])-T1.GrssProfit)* -1)AS'Total Cost',(T1。[  [GrssProfit] * -1)AS'Gross Profit,(T1。[GrssProfit]/T1。[LineTotal] = 0时的情况,然后1
                                   ELSE T1。[LineTotal]
                                 END)* -100 AS'Gross Profit%',T1.TaxCode AS'Tax Code',(T1。[VatPrcnt] * -1)AS'VatPrcnt',(T1。[VatSumSy] * -1)AS'Tax Amount  ',T4。[FormatCode] FROM ORIN T0内部联接RIN1 T1开启T0.DocEntry = T1.DocEntry
 内联接OCRD T2开启T0.CardCode = T2.CardCode
 内连接OSLP T3开启T0.SlpCode = T3.SlpCode
 T1.AcctCode = T4.AcctCode上的内联接OACT T4
 左外连接OITM T6在T1.ItemCode = T6.ItemCode
 T6.ItmsGrpCod = T8.ItmsGrpCod的左外侧联接OITB T8
 左外连接RIN12 T5在T0.DocEntry = T5.DocEntry
 T2上的左外部联接T7.IndustryC = T7.IndCode
 T2.SlpCode = T9.SlpCodeWHERE(T0.DocDate> = CONVERT(varchar(25),[%0],101)和T0.DocDate <= CONVERT(varchar(25),[%1],  101))AND T1.ItemCode不喜欢'%% Pad %%'AND T1.ItemCode不喜欢'%% Freight %%'AND T2.CardCode <>'KIS01'AND T2.CardCode不喜欢'%% ZZZ %%  'AND T2.GroupCode ='100'AND T4。[FormatCode]不喜欢'%% 21600 %%'AND T4。[FormatCode]不喜欢'%% 22100 %%'AND T8.ItmsGrpNam不喜欢'%% Clearing%  %'和T8.ItmsGrpNam不喜欢'%% Labor-Unearned %%'
 按T3.SLPName,DocType,T0.DocDate,"客户名称"订购

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

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


我想在查询中包括销售订单号和销售订单日期(如果有),但不太确定如何联接表。 预先感谢!

 SELECT T2.CardCode AS'BP代码',T2.CardName AS'客户名称',T2.FrozenFor AS'无效',T0。[地址2] AS'运送到',T5.CityS AS'城市',T5  .StateS AS'State',T7。[IndName] AS" Industry",T3.SlpName AS'SalesRep on Inv',T9.SlpName AS" Current Rep",T2.CardFName AS'Consultant','Invoice'AS'DocType  ',''+ CAST(T0.DocNum AS nVarChar)AS'DocNum',T0.DocDate,T6.ItemType AS'项目类型',T8.ItmsGrpNam AS'项目组',T6.FrgnName AS'产品',T1。  ItemCode AS'项目编号',T1.Dscription AS'项目描述',T1.U_SrvcProj AS'服务项目',(T1.LineNum +1)AS'LineNum',T1.Quantity,T1.Price AS'单位销售', 案例T1.0时的数量0否则((T1.Quantity * T1.Price)-T1.GrssProfit)/T1.Quantity END AS'单位成本',(T1.Quantity * T1.Price)AS'总销售额',  (((T1.Quantity * T1.Price)-T1.GrssProfit)AS'总成本',T1.GrssProfit AS'毛利润
                                   当T1。[LineTotal] = 0然后1
                                   ELSE T1。[LineTotal]
                                 END)* 100 AS'毛利润%',T1.TaxCode AS'Tax Code',T1。[VatPrcnt],T1。[VatSumSy] AS'Tax Amount',T4。[FormatCode]
 从OINV T0内联接INV1 T1到T0.DocEntry = T1.DocEntry
 内联接OCRD T2开启T0.CardCode = T2.CardCode
 内连接OSLP T3开启T0.SlpCode = T3.SlpCode
 T1.AcctCode = T4.AcctCode上的内联接OACT T4
 左外连接OITM T6在T1.ItemCode = T6.ItemCode
 T6.ItmsGrpCod = T8.ItmsGrpCod的左外侧联接OITB T8
 左外联接INV12 T5在T0.DocEntry = T5.DocEntry
 T2上的左外部联接T7.IndustryC = T7.IndCode
 内连接OSLP T9开启T2.SlpCode = T9.SlpCode
 在哪里(T0.DocDate> = CONVERT(varchar(25),[%0],101)和T0.DocDate <= CONVERT(varchar(25),[%1],101))和T1.ItemCode不像'%  %Paid %%'AND T1.ItemCode不像'%% Freight %%'AND T2.CardCode <>'KIS01'AND T2.CardCode不像'%% ZZZ %%'AND T2.GroupCode ='100'AND T4  。[FormatCode]不喜欢'%% 21600 %%'AND T4。[FormatCode]不喜欢'%% 22100 %%'AND T8.ItmsGrpNam不喜欢'%% Clearing %%'和T8.ItmsGrpNam不喜欢'%% 无需劳动的%%'UNION SELECT T2.CardCode AS'BP代码',T2.CardName AS'客户名称',T2.FrozenFor AS'无效',T0。[地址2] AS'运送到',T5.CityS AS'  City",T5.StateS AS"州",T7。[IndName] AS" Industry",T3.SlpNameAS" InsSalesRep",T9.SlpNameAS" Current Rep",T2.CardFNameAS" Consultant"," Credit 备注'AS'DocType',''+ CAST(T0.DocNum AS nVarChar)AS'DocNum',T0.DocDate,T6.ItemType AS'Item Type',T8.ItmsGrpNam AS'Item Group',T6.FrgnName AS' 产品",T1.ItemCode AS"项目编号",T1.Dscription AS"项目说明",T1.U_SrvcProj AS"服务项目",(  T1.LineNum +1)AS'LineNum',(T1。[Quantity] * -1)AS'Quantity',(T1。[Price] * -1)AS'Unit Sales',案例T1.Quantity当0然后0  ELSE((((((T1。[数量] * T1。[价格]]-T1。[GrssProfit])/T1。[数量])* -1)END AS'单位成本',(((T1。[数量] *  T1。[Price])* -1)AS'Total Sales',((((T1。[Quantity] * T1。[Price])-T1.GrssProfit)* -1)AS'Total Cost',(T1。[  [GrssProfit] * -1)AS'Gross Profit,(T1。[GrssProfit]/T1。[LineTotal] = 0时的情况,然后1
                                   ELSE T1。[LineTotal]
                                 END)* -100 AS'Gross Profit%',T1.TaxCode AS'Tax Code',(T1。[VatPrcnt] * -1)AS'VatPrcnt',(T1。[VatSumSy] * -1)AS'Tax Amount  ',T4。[FormatCode] FROM ORIN T0内部联接RIN1 T1开启T0.DocEntry = T1.DocEntry
 内联接OCRD T2开启T0.CardCode = T2.CardCode
 内连接OSLP T3开启T0.SlpCode = T3.SlpCode
 T1.AcctCode = T4.AcctCode上的内联接OACT T4
 左外连接OITM T6在T1.ItemCode = T6.ItemCode
 T6.ItmsGrpCod = T8.ItmsGrpCod的左外侧联接OITB T8
 左外连接RIN12 T5在T0.DocEntry = T5.DocEntry
 T2上的左外部联接T7.IndustryC = T7.IndCode
 T2.SlpCode = T9.SlpCodeWHERE(T0.DocDate> = CONVERT(varchar(25),[%0],101)和T0.DocDate <= CONVERT(varchar(25),[%1],  101))AND T1.ItemCode不喜欢'%% Pad %%'AND T1.ItemCode不喜欢'%% Freight %%'AND T2.CardCode <>'KIS01'AND T2.CardCode不喜欢'%% ZZZ %%  'AND T2.GroupCode ='100'AND T4。[FormatCode]不喜欢'%% 21600 %%'AND T4。[FormatCode]不喜欢'%% 22100 %%'AND T8.ItmsGrpNam不喜欢'%% Clearing%  %'和T8.ItmsGrpNam不喜欢'%% Labor-Unearned %%'
 按T3.SLPName,DocType,T0.DocDate,"客户名称"订购
付费偷看设置
发送
6条回答
bbpeas
1楼-- · 2020-09-02 06:26

嗨。

如果销售(OINV)基于订单(ORDR),请使用以下字段。

例如:

选择
  t0.itemcode
 ,t0.dscription
 ,t3.docnum
 ,t2。数量
 ,t1.DocNum
 ,t1.docnum
 从INV1 T0
 t1.DocEntry = t0.DocEntry上的内部联接OINV T1
 内部联接RDR1 t2在t2.DocEntry = t0.BaseEntry和t2.LineNum = t0.BaseLine和t2.TargetType = '13'
 在t3.DocEntry = t2.DocEntry上进行内部联接ORDR t3
 

问候。

Brenno Coimbra。

野沐沐
2楼-- · 2020-09-02 06:21

好的,但是您尝试在SSMS中运行我的代码? 我调整了您的代码并完成了示例,可以包含请求的字段。

问候。

Brenno Coimbra

My梦
3楼-- · 2020-09-02 06:31

嗨,

可以添加销售订单详细信息。 您是否总是根据销售订单创建AR发票?

问候

Nagarajan

callcenter油条
4楼-- · 2020-09-02 06:41

嗨,Nagarajan! 对于大多数发票,可以。 但是有些发票可能来自于交货。

Cikesha
5楼-- · 2020-09-02 06:35

嗨,

尝试第一部分,

选择T2.CardCode AS'BP Code',T2 .CardName AS'客户名称',T2.FrozenFor AS'无效',T0。[Address2] AS'运送到',T5.CityS AS'城市',T5.StateS AS'状态',T7。[IndName] AS" 行业",T3.SlpName AS'Ins销售代表,T9.SlpName AS"当前代表",T2.CardFName AS'顾问,'发票'AS'DocType',''+ CAST(T0.DocNum AS nVarChar)AS 'DocNum',T0.DocDate,T6.ItemType AS'项目类型',T8.ItmsGrpNam AS'项目组',T6.FrgnName AS'产品',T1.ItemCode AS'项目编号',T1.Dscription AS'项目描述 ',T1.U_SrvcProj AS'服务项目',(T1.LineNum +1)AS'LineNum',T1.Quantity,T1.Price AS'单位销售额',案例T1.Quantity当0 THEN 0 ELSE((T1.Quantity * T1.Price)-T1.GrssProfit)/T1.Quantity END AS'单位成本',(T1.Quantity * T1.Price)AS'总销售额',((T1.Quantity * T1.Price)-T1.GrssProfit )AS'总成本',T1.GrssProfit AS'毛利润 当T1。[LineTotal] = 0然后1 ELSE T1。[LineTotal] END)* 100 AS'毛利润%',T1.TaxCode AS'Tax Code',T1。[VatPrcnt],T1。[VatSumSy] AS'Tax Amount',T4。[FormatCode] ORDR T100内连接RDR1 T101在T100上。[DocEntry] = T101。[DocEntry]左连接 T1上的INV1 T1。[BaseEntry] = T101。[DocEntry]和T1。[BaseLine] = T101。[LineNum]和T1。[BaseType] = 17 T2上的INNER JOIN OINV T0。[DocEntry] = T3。[DocEntry] T100.CardCode = T2.CardCode的内部联接OCRD T2 T100.SlpCode = T3.SlpCode上的内部联接OSLP T3 T1.AcctCode = T4.AcctCode上的内联接OACT T4 左外连接OITM T6在T1.ItemCode = T6.ItemCode T6.ItmsGrpCod = T8.ItmsGrpCod的左外侧联接OITB T8 左外联接INV12 T5在T0.DocEntry = T5.DocEntry T2上的左外部联接T7.IndustryC = T7.IndCode 内连接OSLP T9开启T2.SlpCode = T9.SlpCode 在哪里(T0.DocDate> = CONVERT(varchar(25),[%0],101)和T0.DocDate <= CONVERT(varchar(25),[%1],101))和T1.ItemCode不像'% %Paid %%'和T1.ItemCode不喜欢'%% Freight %%'AND T2.CardCode <>'KIS01'和T2.CardCode不喜欢'%% ZZZ %%'AND T2.GroupCode ='100'AND T4 。[FormatCode]不喜欢'%% 21600 %%'AND T4。[FormatCode]不喜欢'%% 22100 %%'AND T8.ItmsGrpNam不喜欢'%% Clearing %%'和T8.ItmsGrpNam不喜欢'%% Labor-Unearned %%'

当学会了学习
6楼-- · 2020-09-02 06:32

您好,Nagarajan,感谢您的代码! 出现语法错误,但这可能是我的错..我很抱歉..我的原始代码未完全按照查询中的内容进行复制。.我再次粘贴了它,但仅粘贴了第一部分。

选择T2.CardCode AS'BP代码',T2.CardName AS'客户
 名称",T2.FrozenFor AS,"无效",T0。[地址2] AS,"运送至",T5.CityS,AS
 'City',T5.StateS AS'State',T7。[IndName] AS" Industry",T3.SlpName
 AS'SalesRep on Inv',T9.SlpName AS" Current Rep",T2.CardFName AS
 '顾问','发票'AS'DocType',''+ CAST(T0.DocNum AS nVarChar)AS
 'DocNum',T0.DocDate,T6.ItemType AS'项目类型',T8.ItmsGrpNam AS'Item
 组",T6.FrgnName AS"产品",T1.ItemCode AS"产品编号",T1.Dscription AS
 '项目说明',T1.U_SrvcProj AS'服务项目',(T1.LineNum +1)AS
 'LineNum',T1.Quantity,T1.Price as'Unit Sales',案例T1.Quantity when when the then
 0 ELSE((T1.Quantity * T1.Price)-T1.GrssProfit)/T1.Quantity END AS'单位
 成本",(T1。数量* T1。价格)AS'总销售量,((T1。数量* T1。价格)-
 T1.GrssProfit)"总费用",T1.GrssProfit AS"毛利润$",
 (T1。[GrssProfit]/案例
 T1。[LineTotal] = 0然后1否则T1。[LineTotal] END)* 100 AS'Gross Profit%',
 T1.TaxCode AS'Tax Code',T1。[VatPrcnt],
 T1。[VatSumSy] AS"税额",T4。[FormatCode]

 从OINV T0内部
 将INV1 T1接通T0.DocEntry = T1.DocEntry 
内连接OCRD T2接通T0.CardCode = T2.CardCode
内连接OSLP T3接通T0.SlpCode = T3.SlpCode
内连接OACT T4接通T1 .AcctCode = T4.AcctCode
左外部联接OITM T6上T1.ItemCode = T6.ItemCode
左外部联接OITB T8上T6.ItmsGrpCod = T8.ItmsGrpCod
左外部联接INV12 T5上T0.DocEntry = T5.DocEntry
左外部联接T7在T2.IndustryC = T7.IndCode <内在联接OSLP T9在T2.SlpCode = T9.SlpCode 在哪里(T0.DocDate> = CONVERT(varchar(25),[%0],101)和T0.DocDate <= CONVERT(varchar(25),[%1],101))和 T1.ItemCode不喜欢'%% Pad %%'AND T1.ItemCode不喜欢'%% Freight %%'AND T2.CardCode <>'KIS01'AND T2.CardCode不像'%% ZZZ %%'并且 T2.GroupCode ='100'AND T4。[FormatCode]不像'%% 21600 %%'并且 T4。[FormatCode]不喜欢'%% 22100 %%'和T8.ItmsGrpNam不喜欢'%% Clearing %%' AND T8.ItmsGrpNam不喜欢'%% Labor-Unearned %%'

一周热门 更多>