本帖最后由 罗半夜 于 2022-2-14 19:44 编辑
对数据源只有一个要求:数据源必须首先排序,最好是用SQL语句查询时排序,分类小计与累计不需要在数据源中进行,数据源只需要用SQL语句排序。 变量名 | 类 型 | 静态 | 数组 | 备 注 | 句柄 | 整数型 | | | 上一条姓名 | 文本型 | | | 当前姓名 | 文本型 | | | 数量 | 文本型 | | | 金额 | 文本型 | | | 数量小计 | 整数型 | | | 金额小计 | 整数型 | | | 数量合计 | 整数型 | | | 金额合计 | 整数型 | | | 行次 | 整数型 | | | 同类条数 | 整数型 | | |
句柄 = 库. 查询 (“SELECT * FROM 测试表 ORDER BY 姓名 DESC”)库. 到首记录 (句柄 )上一条姓名 = 库. 读 (句柄, “姓名”) 行次 = 1 高级表格1.行数 = 1 判断循环首 (库. 尾记录后 (句柄 ) = 假)当前姓名 = 库. 读 (句柄, “姓名”)数量 = 库. 读 (句柄, “数量”)金额 = 库. 读 (句柄, “金额”)数量合计 = 数量合计 + 到整数 (数量 )金额合计 = 金额合计 + 到整数 (金额 )如果真 (上一条姓名 = 当前姓名 )高级表格1. 插入行 (, )高级表格1. 置数据 (行次, 0, 1, 到文本 (行次 )) 高级表格1. 置数据 (行次, 1, 1, 当前姓名 )高级表格1. 置数据 (行次, 2, 1, 数量 )高级表格1. 置数据 (行次, 3, 1, 金额 )行次 = 行次 + 1 同类条数 = 同类条数 + 1 数量小计 = 数量小计 + 到整数 (数量 )金额小计 = 金额小计 + 到整数 (金额 )如果真 (上一条姓名 ≠ 当前姓名 ) 如果 (同类条数 > 1 ) 高级表格1. 插入行 (, )高级表格1. 插入行 (, )高级表格1. 置数据 (行次, 0, 1, 到文本 (行次 )) 高级表格1. 置数据 (行次, 1, 1, 上一条姓名 + “ 小计”)高级表格1. 置数据 (行次, 2, 1, 数量小计 )高级表格1. 置数据 (行次, 3, 1, 金额小计 )高级表格1. 置数据 (行次, 4, 1, “共 ” + 到文本 (同类条数 ) + “ 条”)高级表格1. 置单元格背景颜色 (行次, 0, 行次, 高级表格1.列数, #粉红 )数量小计 = 0 金额小计 = 0 行次 = 行次 + 1 高级表格1. 置数据 (行次 - 1, 4, 1, “共 ” + 到文本 (同类条数 ) + “ 条”)高级表格1. 置单元格背景颜色 (行次 - 1, 0, 行次 - 1, 高级表格1.列数, #粉红 )数量小计 = 0 金额小计 = 0 同类条数 = 0 高级表格1. 插入行 (, )高级表格1. 置数据 (行次, 0, 1, 到文本 (行次 )) 高级表格1. 置数据 (行次, 1, 1, 当前姓名 )高级表格1. 置数据 (行次, 2, 1, 数量 )高级表格1. 置数据 (行次, 3, 1, 金额 )行次 = 行次 + 1 同类条数 = 同类条数 + 1 数量小计 = 数量小计 + 到整数 (数量 )金额小计 = 金额小计 + 到整数 (金额 )库. 到后一记录 (句柄 )上一条姓名 = 当前姓名 判断循环尾 ()库. 关闭记录集 (句柄 ) 如果 (同类条数 > 1 )高级表格1. 置数据 (行次, 0, 1, 到文本 (行次 )) 高级表格1. 置数据 (行次, 1, 1, 上一条姓名 + “ 小计”)高级表格1. 置数据 (行次, 2, 1, 数量小计 )高级表格1. 置数据 (行次, 3, 1, 金额小计 )高级表格1. 置数据 (行次, 4, 1, 到文本 (同类条数 + 1 )) 高级表格1. 置单元格背景颜色 (行次, 0, 行次, 高级表格1.列数, #粉红 )数量小计 = 0 金额小计 = 0 高级表格1. 置单元格背景颜色 (行次 - 1, 0, 行次 - 1, 高级表格1.列数, #粉红 )高级表格1. 置数据 (行次 - 1, 4, 1, “共 ” + 到文本 (同类条数 ) + “ 条”) 高级表格1. 置数据 (行次, 0, 1, 到文本 (行次 )) 高级表格1. 置数据 (行次, 1, 1, “累计”)高级表格1. 置数据 (行次, 2, 1, 到文本 (数量合计 )) 高级表格1. 置数据 (行次, 3, 1, 到文本 (金额合计 )) 高级表格1. 置单元格背景颜色 (行次, 0, 行次, 高级表格1.列数, #褐绿 ) 变量循环首 (高级表格1.行数, 1, -1, 行次 )如果真 (到文本 (高级表格1. 取数据 (行次, 1 )) = “”)高级表格1. 删除行 (行次 )变量循环尾 () |