先放一下我做的测试模板的界面 希望达到的效果是在明细的新增、更新和删除时都能对<本期发出>内除数量外的列和<期末结存>内数据进行自动进行计算(<本期收入>内的数据和<本期发出>的数量由采购和销售的模板业务公式插入进来) 计算内容如下: 一、第一条记录:一般都是采购入库,所以很简单,<本期发出>内的数据都是0,<期末结存>内的数据都等于<本期收入>。这个已实现 二、非第一条记录:1.<本期发出>中的【单价】,对应的发出数量是0时,单价为0;当数量<>0时,单价为上一笔<期末结存>的【单价】 2.<本期发出>中的【金额】,对应的发出数量*单价 3.<期末结存>中的【数量】,对应的收入数量-对应的发出数量+上一笔<期末结存>的【数量】 4.<期末结存>中的【金额】,对应的收入金额-对应的发出金额+上一笔<期末结存>的【金额】 5.<期末结存>中的【单价】,对应的结存数量<=0时,单价为上一笔<期末结存>的【单价】;当对应的结存数量>0时,单价为对应的期末结存金额/期末结存数量 完成后的结果如下图: 目前能想到的唯一办法是用明细做数据源,过滤条件为具体的行,如:本表单.明细.序号=1,然后对本表单.明细进行更新,匹配条件为数据源的下一行,如:本表单.明细.序号=2,如下图 但是,这个办法肯定不是解决办法,如果有几千条的明细,就要添加几千条的公式了 求大神们指点!!!!谢谢 |
+10
11 条回帖
不太清楚你那边是怎么做触发的,我这边做了个填表公式示例,你看一下对你有没有帮助: 1.首先我这边是用单号触发的,单号填写完就计算每行结存,然后第一行结存是另外做一个公式 2.然后第二个是做了一个临时值做判断,临时值做成整数类型,行号用excel函数,row()获取,当触发当前行后,我需要获取上一行的数据来扣减,所以临时值这边就减一是为了做数据源明细判断获取 4.获取好后,我们明细就有针对性数据获取了,就只要上一行明细,计算当前结存 5.这个就是效果图了 |
+12
最近谁赞过
本帖最后由 160307202399534 于 2021-1-20 16:50 编辑 非第一条记录:1.<本期发出>中的【单价】,对应的发出数量是0时,单价为0;当数量<>0时,单价为上一笔<期末结存>的【单价】如果发出数量是可以实时同步更新的话,就可以将数量和单价在明细表中直接填写为0,合计数值也直接在表中计算。 |
+10
160307202399534 发表于 2021-1-20 16:46 对应的发出数量是从哪里来的 |
+10
介于你需要明细的新增、更新和删除时都能对表单进行实时处理,建议你尝试下新建报表,而不是新建模板。这样应该会容易一点。通过数据接口对你的入库和出库的最新信息来进行查询。计算按钮为点击后更新表单即可,至于你的单价问题数据接口也可以完成,注意查询条件和数据匹配条件即可。多尝试下不同的方法应该是可以完成的。 |
+10