历史版本20 :根据控件值自动匹配数据 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 问题描述编辑

有如下图情况,只给出一系列的编号,根据编号自动在数据库中匹配出对应的数据,然后再对数据进行修改操作:
222

2. 解决思路编辑

在对应的单元格中,通过 SQL 公式取出对应的值,然后在公式的单元格中设置插入行策略为原值即可。

3. 解决步骤编辑

1)如下图,新建一张模板,模板样式如下图:

222

2)如下所示,设置产品id的下拉框属性:
222
3)设置产品名称公式,公式为:sql("FRDemo","select 产品名称 from 产品 where 产品id="+A3,1,1),如下图:

222

注:函数的用法可参考:SQL 函数

4)同理设置C3,D3,E3,F3单元格的公式,如下:

C3:sql("FRDemo","select 单位数量 from 产品 where 产品id="+A3,1,1)

D3:sql("FRDemo","select 成本价 from 产品 where 产品id="+A3,1,1)

E3:sql("FRDemo","select 单价 from 产品 where 产品id="+A3,1,1)

F3:sql("FRDemo","select 库存量 from 产品 where 产品id="+A3,1,1)

注:这里的产品编号 A3 单元格的内容为数字,所以公式里的 A3 不需要加'' 

若产品编号为字符串,则 A3 需要加'',相应公式应修改为:sql("FRDemo","select 产品名称 from 产品 where 产品id='"+A3+"'",1,1)

5)设置 B3:F3 元格的插入行策略为原值,即保留原有的公式。

222

6)点击填报预览即可查看效果

在线查看模板效果请点击:自动匹配.cpt

已完成模板,可参考:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Form\LineForm\自动匹配.cpt