填报应用 >> 行式填报表 >> 自动匹配

自动匹配

顶( )
最后更新日期: 人发表评论 (点击查看)
自动匹配值、选择一个值后面的值自动出来、自匹配
1. 问题描述
有如下图情况,只给出一系列的编号,根据编号自动在数据库中匹配出对应的数据,然后再对数据进行修改操作:
2. 实现思路
在对应的单元格中,通过sql公式取出对应的值,然后在公式的单元格中设置插入行策略为原值即可。
3. 示例
3.1 模板制作
如下图,新建一张模板,模板样式如下图:
3.2 修改模板
按照如下表格,在单元格中插入公式:
B3设置为下拉框,数据来自FRDemo中的产品表,实际值和显示值都是产品ID设置从下到下扩展,通过下拉框选择产品编号
C3=if(len(B3) = 0, "", sql("FRDemo", "select 产品名称 from 产品 where 产品ID=" + B3, 1, 1))获取产品表中产品ID对应的产品名称
D3=if(len(B3) = 0, "", sql("FRDemo", "select 供应商ID from 产品 where 产品ID=" + B3, 1, 1))获取产品表中产品ID对应的供应商ID
E3=if(len(B3) = 0, "", sql("FRDemo", "select 类别ID from 产品 where 产品ID=" + B3, 1, 1))获取产品表中产品ID对应的类别ID
F3=if(len(B3) = 0, "", sql("FRDemo", "select 成本价 from 产品 where 产品ID=" + B3, 1, 1))获取产品表中产品ID对应的成本价
G3=if(len(B3) = 0, "", sql("FRDemo", "select 单价 from 产品 where 产品ID=" + B3, 1, 1))获取产品表中产品ID对应的单价
H3=if(len(B3) = 0, "", sql("FRDemo", "select 库存量 from 产品 where 产品ID=" + B3, 1, 1))获取产品表中产品ID对应的库存量
I3=if(len(B3) = 0, "", sql("FRDemo", "select 订购量 from 产品 where 产品ID=" + B3, 1, 1))获取产品表中产品ID对应的订购量
J3=if(len(B3) = 0, "", sql("FRDemo", "select 再订购量 from 产品 where 产品ID=" + B3, 1, 1))获取产品表中产品ID对应的再订购量
K3=if(len(B3) = 0, "", sql("FRDemo", "select 中止 from 产品 where 产品ID=" + B3, 1, 1))获取产品表中产品ID对应的中止
3.3 插入行策略设置
设置C3-K3单元格的插入行策略为原值,即保留原有的公式。
3.4 保存模板
点击填报预览即可查看效果。在线查看模板效果请点击LineForm6.cpt
具体的设置可参考模板:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Form\LineForm\LineForm6.cpt
 
 
 
 
   
文明发言,用心评论
 
应用此篇文章,您:
不费力
研究了一会
琢磨了好久
 
查看全部条>>
Copyright©2019 帆软软件有限公司
苏ICP备18065767号-3