填报需求:页面显示固定行数据,不足时补空记录

本文介绍了一种在报表中动态填充固定行数的方法,即使数据库中的数据不足也能通过插入空记录来达到预设的行数,便于用户直接在报表上进行数据添加和修改。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

需求描述

填报表每次固定显示一定的行数。 比如, 数据库有三条数据, 填报表需要显示十行内容, 多余显示出来的 7 行内容留着备用。 如果需要增加数据的时候, 可以直接在多余出的行内添加内容。点击提交, 将新增的内容保存到数据库中。

实现原理

在来源脚本里进行动态判断处理,判断当前取出来的记录数是否够 10 条,如果够,那么直接按照已有数据展现到页面进行修改,否则将剩余行数用空记录补足。

实现过程

1、来源脚本


imagepng

A1:=connect(“demo”)// 连接数据源
B1:=A1.query(“SELECT TOP 10 订单 ID, 客户, 员工 ID, 订购日期, 销售额 FROM 客户销售表 where 员工 ID =?”,arg1) // 从数据库里取前 10 条数据
A2:if B1.len()==10 // 判断数据是否够 10 条
B2:> 客户销售表 =B1 // 如果够,那么就按照这 10 条数据显示
B3:for 10-B1.len() // 当不满足条件的时候,我们需要插入对应条数的空记录,这里计算需要插入的条数
C3:>B1.insert(0) // 插入空记录
B4:> 客户销售表 =B1 // 把处理好的序表给对象
A5:>A1.close() // 关闭数据源连接

2、去向脚本


imagepng

B1:>A1.update@k(客户销售表: 客户销售表 _old, 客户销售表, 订单 ID, 客户, 员工 ID, 订购日期, 销售额; 订单 ID) // 吧新旧对象的差异数据更新到客户销售表中,主键字段是订单 ID

3、填报表制作


这里为了方便测试填写所有数据,所以直接用了行式填报,自己制作时,根据需求修改脚本和填报表设置(这时基本都是微调了,了解了原理就好做了)。

imagepng

4、示例下载


点击 hangbuzu.zip进行下载。

示例使用的是内置数据库,需要开启内置数据库服务(点击上方菜单栏“本地应用”—“启动示例数据库”)
当参数值是 5 时,有满足条件的 10 条记录,当参数值是 99 时,会补足 10 条空白记录。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值