SAP HANA SQL SCRIPT索引超出范围:参数索引超出了参数大小0,但是1

2020-09-05 15:31发布

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

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


你好;

我编写这段代码,但遇到此错误:索引超出范围:参数索引超出了参数大小0,但为1

我无法理解为什么以及如何解决?

我的代码在这里:

 DO
 开始
 声明Begindate DATE;
 声明结束日期DATE;
 声明laboursum numeric(18,2);
 声明productionsum数值(18,2);
 声明数量summarynumerical(18,2);
 声明subsum numeric(18,2);
 声明数量数值(18,2);
 声明bweightsum numeric(18,2);
 声明iweightsum numeric(18,2);
 声明sweightsum numeric(18,2);
 声明资源和数字(18,2);
 开始日期:='2018-02-01';
 结束日期:='2018-02-28';
 创建列表temp0 AS(SELECT IGN1。" ItemCode",MAX(ign1。" Dscription")AS" dsc",SUM(当IFNULL(OWHS。" U_isProdCostQty",'N')='N'时
 THEN ign1。"数量"(否则为0结束)为"总计",SUM(当IFNULL(OWHS。" U_isProdCostQty",'N')='N'时的情况
 然后ign1。" Quantity"否则为0 END * OITM。" BWeight1")AS" bweightsum",
 SUM(在IFNULL(OWHS。" U_isProdCostQty",'N')='N'THEN ign1的情况下。" Quantity" ELSE 0 END * OITM。" IWeight1")
 AS" iweightsum",SUM(当IFNULL(OWHS。" U_isProdCostQty",'N')的情况下='N'THEN ign1。"数量" ELSE 0
 结束* OITM。" SWeight1"),作为OIGN上OIGN内连接IGN1的" sweightsum"。" DocEntry" = IGN1。" DocEntry"
 OITM上的内部联接OITM。" ItemCode" = IGN1。" ItemCode" oitb上的内部联接" OITB"。" ItmsGrpCod" = oitm。" ItmsGrpCod"
 在OWHS上进行内部联接。" WhsCode" = IGN1。" WhsCode" WHERE OIGN。" DocDate"> =开始日期
 AND OIGN。" DocDate" <=结束日期AND IFNULL(IGN1。" BaseLine",-1)= -1 AND IGN1。" BaseType" = 202 AND
 IFNULL(oitb。" U_isProdCost",'N')<>'Y'GROUP BY IGN1。" ItemCode" UNION ALL SELECT IGE1。" ItemCode",
 MAX(IGE1。" Dscription")AS" dsc",-SUM(在IFNULL(OWHS。" U_isProdCostQty",'N')='N'的情况下
 THEN ige1。" Quantity" ELSE 0 END)as" sumquantity",-SUM(当IFNULL(OWHS。" U_isProdCostQty",'N')='N'时
 THEN ige1。"数量"其他0结束* OITM。" BWeight1")
 AS" bweightsum",-SUM(当IFNULL(OWHS。" U_isProdCostQty",'N')='N'时为ige1。"数量" ELSE 0
 END * OITM。" IWeight1")AS" iweightsum",-SUM(当IFNULL(OWHS。" U_isProdCostQty",'N')='N'时的情况
 THEN ige1。"数量"其他0结束* OITM。" SWeight1")作为"权重和",来自OIGE内部联接IGE1
 在OIGE上。" DocEntry" = IGE1。" DocEntry"在OITM上的内部联接OITM。" ItemCode" = IGE1。" ItemCode"在" OITB"的内部联接
 在oitb上。" ItmsGrpCod" = oitm。" ItmsGrpCod"在OWHS上内部加入OWHS。" WhsCode" = IGE1。" WhsCode"
 其中IFNULL(IGE1。" BaseLine",-1)= -1 AND IGE1。" BaseType" = 202 AND IFNULL(oitb。" U_isProdCost",'N')<>'Y'
 AND OIGE。" DocDate"> =开始日期AND OIGE。" DocDate" <=结束日期GROUP BY IGE1。" ItemCode");
 结束;
 

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

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


你好;

我编写这段代码,但遇到此错误:索引超出范围:参数索引超出了参数大小0,但为1

我无法理解为什么以及如何解决?

我的代码在这里:

 DO
 开始
 声明Begindate DATE;
 声明结束日期DATE;
 声明laboursum numeric(18,2);
 声明productionsum数值(18,2);
 声明数量summarynumerical(18,2);
 声明subsum numeric(18,2);
 声明数量数值(18,2);
 声明bweightsum numeric(18,2);
 声明iweightsum numeric(18,2);
 声明sweightsum numeric(18,2);
 声明资源和数字(18,2);
 开始日期:='2018-02-01';
 结束日期:='2018-02-28';
 创建列表temp0 AS(SELECT IGN1。" ItemCode",MAX(ign1。" Dscription")AS" dsc",SUM(当IFNULL(OWHS。" U_isProdCostQty",'N')='N'时
 THEN ign1。"数量"(否则为0结束)为"总计",SUM(当IFNULL(OWHS。" U_isProdCostQty",'N')='N'时的情况
 然后ign1。" Quantity"否则为0 END * OITM。" BWeight1")AS" bweightsum",
 SUM(在IFNULL(OWHS。" U_isProdCostQty",'N')='N'THEN ign1的情况下。" Quantity" ELSE 0 END * OITM。" IWeight1")
 AS" iweightsum",SUM(当IFNULL(OWHS。" U_isProdCostQty",'N')的情况下='N'THEN ign1。"数量" ELSE 0
 结束* OITM。" SWeight1"),作为OIGN上OIGN内连接IGN1的" sweightsum"。" DocEntry" = IGN1。" DocEntry"
 OITM上的内部联接OITM。" ItemCode" = IGN1。" ItemCode" oitb上的内部联接" OITB"。" ItmsGrpCod" = oitm。" ItmsGrpCod"
 在OWHS上进行内部联接。" WhsCode" = IGN1。" WhsCode" WHERE OIGN。" DocDate"> =开始日期
 AND OIGN。" DocDate" <=结束日期AND IFNULL(IGN1。" BaseLine",-1)= -1 AND IGN1。" BaseType" = 202 AND
 IFNULL(oitb。" U_isProdCost",'N')<>'Y'GROUP BY IGN1。" ItemCode" UNION ALL SELECT IGE1。" ItemCode",
 MAX(IGE1。" Dscription")AS" dsc",-SUM(在IFNULL(OWHS。" U_isProdCostQty",'N')='N'的情况下
 THEN ige1。" Quantity" ELSE 0 END)as" sumquantity",-SUM(当IFNULL(OWHS。" U_isProdCostQty",'N')='N'时
 THEN ige1。"数量"其他0结束* OITM。" BWeight1")
 AS" bweightsum",-SUM(当IFNULL(OWHS。" U_isProdCostQty",'N')='N'时为ige1。"数量" ELSE 0
 END * OITM。" IWeight1")AS" iweightsum",-SUM(当IFNULL(OWHS。" U_isProdCostQty",'N')='N'时的情况
 THEN ige1。"数量"其他0结束* OITM。" SWeight1")作为"权重和",来自OIGE内部联接IGE1
 在OIGE上。" DocEntry" = IGE1。" DocEntry"在OITM上的内部联接OITM。" ItemCode" = IGE1。" ItemCode"在" OITB"的内部联接
 在oitb上。" ItmsGrpCod" = oitm。" ItmsGrpCod"在OWHS上内部加入OWHS。" WhsCode" = IGE1。" WhsCode"
 其中IFNULL(IGE1。" BaseLine",-1)= -1 AND IGE1。" BaseType" = 202 AND IFNULL(oitb。" U_isProdCost",'N')<>'Y'
 AND OIGE。" DocDate"> =开始日期AND OIGE。" DocDate" <=结束日期GROUP BY IGE1。" ItemCode");
 结束;
 
付费偷看设置
发送
1条回答
bbpeas
1楼-- · 2020-09-05 16:05

参考链接:

http: //www.kodyaz.com/sap-abap/create-table-dynamically-using-sqlscript-on-sap-hana-database.aspx

例如:

开始

DECLARE PAY_PERIOD NVARCHAR(250)='MAY-2019';

DECLARE Qry VARCHAR(8000)='';

选择"创建全局临时表" NewTableName" AS(从" @INPR_OPPM"中选择"代码","名称",其中"代码" ='''|| PAY_PERIOD ||'''))"

从Dummy进入Qry;

立即执行:Qry;

END

一周热门 更多>