我已经在上发布了这个问题,但是它是一个墓地,我希望我能在这里得到一个答案。我正在使用Logi Info v12.2.116。
我正在使用一个存储过程来获取数据来填充我的报告。存储过程调用RPG程序。我已经做了很多次了,但是今天当我创建一个新的存储过程、一个新的报告时,由于某种原因,参数不匹配。我也重新启动了Logi ..。有时,在重新启动之前,它不会选择新的存储过程,但这也不起作用。我以前从未见过这样的错误:
设置或注册的参数值数与参数数不匹配。
下面是我的参数的代码:
<DataLayer Type="SP" Command="myStoredProcedure">
<SPParameters NullValue="'">
<SPParameter SPParamDirection="Input" ID="GAct" SPParamSize="2" SPParamType="dt-129" Value="RE" />
<SPParameter SPParamDirection="Input" ID="rsDetail" SPParamType="dt-129" Value="N" SPParamSize="1" />
<SPParameter SPParamDirection="Input" ID="rsFromDate" SPParamSize="10" SPParamType="dt-7" Value="@ Request.paramFromDate~" />
<SPParameter SPParamDirection="Input" ID="rsToDate" SPParamSize="10" SPParamType="dt-7" Value="@ Request.paramToDate~" />
<SPParameter SPParamDirection="Input" ID="rsDepts" SPParamSize="256" SPParamType="dt-129" Value="@ Request.paramAllDepartments~" />
</SPParameters>以下是存储过程定义:
1 IN GACT CHARACTER 2 No default
2 IN RSDETAIL CHARACTER 1 No default
3 IN RSFROMDATE DATE No default
4 IN RSTODATE DATE No default
5 IN RSDEPTS CHARACTER 256 No default世界上是什么导致了这个问题?是的,我正在连接到同一个分区/库。是的,当被调用到Logi之外时,程序和存储过程工作得非常好。是的,我打电话给正确的存储过程。
发布于 2018-10-16 14:55:53
更改:
<SPParameter SPParamDirection="Input" ID="GAct" SPParamSize="2" SPParamType="dt-129" Value="RE" />至:
<SPParameter SPParamDirection="Input" ID="GAct" SPParamSize="2" SPParamType="dt-200" Value="RE" />Char通常被认为是一个单一的字符,很可能是导致您的问题的原因。此外,也不相关,但我通常只在所有SPParams上使用0大小来避免截断问题。
https://stackoverflow.com/questions/52103416
复制相似问题