指令碼中如何做填報資料校驗

2021-10-01 18:50:15 字數 1420 閱讀 9474

首先,了解基本情況及要求:

展現效果:

要求:報表資料**於資料庫,其中 a 列指標名稱是從資料庫擴充套件取出的,要求各項計算結果滿足分組內各值相加等於分組小計(比如:要求本年本月累計項中,指標** 2 = 指標** 3 + 指標** 4),如果不滿足則給出提示資訊,要求進行修改,滿足則可以正常提交。

報表設計介面如下:

其中

資料去向:

資料處理部分直接通過嚮導生成,這裡不多做說明了。

分析難點:

由於分組小計(指標** 2) 和 分組各項(指標** 3+ 指標** 4)都是從同乙個字段「指標名稱」擴充套件而來,報表不能準確定位取到參與計算單元格的位置並進行計算,故報表層面很難實現這種小計校驗。

那麼,就沒辦法實現了嗎?(壞笑)對於潤幹報表來說,顯然那是不可能的。下面重點介紹這個神技能 :指令碼校驗

什麼?指令碼校驗沒聽過?沒關係,往下看…

操作:從回填指令碼中取出需要計算值;

按照要求結合集算器的 if 函式進行校驗(提交時觸發)。

資料去向指令碼修改如下

其中第 3-5 行,利用 a.select() 函式分別定位找出了需要參與校驗的值;

第 6 行,按照原始需求利用 if 函式,進行資料校驗,如果判斷條件 a3!=a4+a5 成立,則在提交時通過 return 返回錯誤提示資訊。

效果:

到這裡,我們可以看出來,在報表層不好處理的小計校驗,在指令碼中很輕鬆就可以搞定了,是不是對指令碼有那麼一丟丟喜愛了,那就持續關注吧,畢竟人家是潛力股。

最最後,技術要點分享

1. 巧用嚮導生成填報指令碼

資料處理,右側 【使用嚮導生成指令碼】可以零**完成普通填報表的資料處理

2. 熟知集算器常用函式

a.select() 選出序列中符合條件的成員。

r.field(f) 取得記錄中某個欄位的字段值。

指令碼中如何做填報資料校驗

首先,了解基本情況及要求 展現效果 要求 報表資料 於資料庫,其中 a 列指標名稱是從資料庫擴充套件取出的,要求各項計算結果滿足分組內各值相加等於分組小計 比如 要求本年本月累計項中,指標 2 指標 3 指標 4 如果不滿足則給出提示資訊,要求進行修改,滿足則可以正常提交。報表設計介面如下 其中 資...

指令碼中如何做填報資料校驗

首先,了解基本情況及要求 展現效果 要求 報表資料 於資料庫,其中 a 列指標名稱是從資料庫擴充套件取出的,要求各項計算結果滿足分組內各值相加等於分組小計 比如 要求本年本月累計項中,指標 2 指標 3 指標 4 如果不滿足則給出提示資訊,要求進行修改,滿足則可以正常提交。報表設計介面如下 其中 資...

指令碼中如何做填報資料校驗

首先,了解基本情況及要求 展現效果 要求 報表資料 於資料庫,其中 a 列指標名稱是從資料庫擴充套件取出的,要求各項計算結果滿足分組內各值相加等於分組小計 比如 要求本年本月累計項中,指標 2 指標 3 指標 4 如果不滿足則給出提示資訊,要求進行修改,滿足則可以正常提交。報表設計介面如下 其中 資...