Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 按时间间隔计算金额_Sql_Navision - Fatal编程技术网

Sql 按时间间隔计算金额

Sql 按时间间隔计算金额,sql,navision,Sql,Navision,我有来自Navision的以下代码 PrintLine := FALSE; LineTotalVendAmountDue := 0; FOR i := 1 TO 5 DO BEGIN DtldVendLedgEntry.SETCURRENTKEY("Vendor No.","Initial Entry Due Date"); DtldVendLedgEntry.SETRANGE("Vendor No.","No."); DtldVendLedgEntry.SETRANGE("Init

我有来自Navision的以下代码

PrintLine := FALSE;
LineTotalVendAmountDue := 0;
FOR i := 1 TO 5 DO BEGIN
  DtldVendLedgEntry.SETCURRENTKEY("Vendor No.","Initial Entry Due Date");
  DtldVendLedgEntry.SETRANGE("Vendor No.","No.");
  DtldVendLedgEntry.SETRANGE("Initial Entry Due Date",PeriodStartDate[i],PeriodStartDate[i + 1] - 1);
  DtldVendLedgEntry.CALCSUMS("Amount (LCY)");
  VendBalanceDue[i] := DtldVendLedgEntry."Amount (LCY)";
  VendBalanceDueLCY[i] := DtldVendLedgEntry."Amount (LCY)";
  IF VendBalanceDue[i] <> 0 THEN
    PrintLine := TRUE;
  LineTotalVendAmountDue := LineTotalVendAmountDue + VendBalanceDueLCY[i];
  TotalVendAmtDueLCY := TotalVendAmtDueLCY + VendBalanceDueLCY[i];
END;

我必须将上面的代码翻译成SQL server,但我不能理解它。我是Navision的新手

即使在没有上下文的情况下也很难转换为SQL,但本质上:

对于5个日期间隔,PeriodStartDate数组中指定的每个间隔的开始日期相加:

SELECT SUM([Amount (LCY)]) 
FROM [Company$Detailed Vendor Ledg. Entry] 
WHERE [Vendor No.] = $1 -- particular Vendor No.
AND [Initial Entry Due Date] BETWEEN $2 and $3 -- period start/end, inclusive
LineTotalVendAmountDue设置为特定供应商的总共5个间隔


TotalVendAmtDueLCY设置为报告总计。

首先在Navision文档中查找各个指令。你知道SETCURRENTKEY做什么吗?设定范围?您知道变量DtldVenLedgEntry与哪个表相关吗?我们在这里帮助您解决特定问题,而不是完成您的工作:上面描述的查询有一个错误的from表;详细的客户信息。莱德。条目不包含供应商编号。应使用:详细供应商Ledg。进入