如何在 DataWindow 之外制作计算字段(求和)? (公告 11.5)

How to make a computed field (sum) outside a DataWindow? (PB 11.5)

我正在尝试将一列 (sum(#2 for all)) 的总和输入外部 SingleLineEdit 控件(与 DataWindow 在同一个 sheet 上,但不在其中)但我不知道how/where 实现计算,因为 sum() 不是脚本 "function"。

那么是否有可能将数据窗口 sum() 从数据窗口本身馈送到控件中?如果是这样,它是如何完成的?我需要用循环手动计算总和吗?

感谢您的帮助!

您使用 sum(#2 for all) 函数在数据窗口中创建了一个计算字段。为该字段命名,例如 "mySum" 或其他名称。将该计算字段放在其中一个带区中,例如页眉或页脚。

现在,在 event/function 脚本中,执行 dw.GetItemNumber( 1, "mySum" )

您可以使用任何您想要的行号,但您可以肯定在结果集中有第 1 行。

-保罗-

如果您想在没有计算字段的情况下进行计算(dw.Describe('Evaluate(...)') 非常通用):

string expressionText, sumAsText, formattedSum

expressionText = 'sum(#2 for all)'
sumAsText= dw_data.Describe('Evaluate("' + expressionText + '", 0)')

// Formatting of your choice
sle_sum.Text = string(dec(sumAsText), "#,##0.00") 

/MicKr-