任何人都可以指导我如何避免错误'公式已超出我允许的最大内存使用量。'在我的应用程序中,我使用@Formulas编写了几个复杂的逻辑。
在我的应用程序中,当用户点击按钮时,正在执行几项不同的活动(执行多次计算,验证检查,更新与当前文档相关的多个文档等)。执行这些活动的代码大约有600行(用公式语言编写),还有几个循环,if-else是在这里使用的。
在少数情况下,没有。相关文档(当用户点击按钮时会更新)很高(超过100),系统在执行几行代码后会引发此错误。
我删除了一些没用的代码。现在系统正在处理更多的代码行,错误出现在一些不同的代码行上。
请建议我如何避免此问题,因为这是一个非常关键的系统,用户因此问题无法进行任何更新。
以下是完整的代码:
while
由于
答案 0 :(得分:0)
找出错误的原因。
以下行引发异常,因为字符串的长度超出了允许的限制:
** shift1Remarks:= @ Implode(@GetDocField(componentsUNID [tmpKtr];" RemarksA");",");
............
............
shift1Remarks:= @Explode(shift1Remarks +"," + @If(@Trim(Remarks_A)="";" - &#34 ;; @文本(Remarks_A));"&#34); **
修改了这些行。修改后的代码如下:
** shift1Remarks:= @GetDocField(componentsUNID [tmpKtr];"备注A");
............
............
shift1Remarks:= shift1Remarks:@If(@Trim(Remarks_A)="&#34 ;;" - &#34 ;; @ Text(Remarks_A)); **
由于