脚本填报表的条件查询

在上一篇《脚本模式下的填报表制作》中,我们详细讲述了如何使用脚本进行数据处理、制作填报表,今天我们盘道一下脚本模式下如何实现条件查询。

一、需求描述

然后再进行增删改操作。例如,先过滤出所关心城市的客户信息,然后再对查询结果进行更新操作。那么,实现这个需求需要解决两个问题:

1. 如何让条件录入更加人性化

2. 脚本模式下如何实现参数的接收处理和数据过滤?

二、实现难点

多城市值传入时,脚本中如何处理参数并实现数据过滤;

参数模板中如何实现地区和城市之间的关联过滤。

三、操作步骤

第一步  制作行式填报表

我们先使用行式填报制作向导制作一个简单的行式填报表,如下图所示:

小技巧

如果对采集规则不熟悉,可以对第二行每个单元格设置字段名称:对象. 字段

第二步  定义参数

在填报–参数配置页面中新增需要的参数,本文需要定义城市参数,所以我们新增一个 city 参数,如下图所示:

第三步  修改脚本,实现数据过滤

这里着重讲解下 A2 执行语句:

对象 1=A1.query(“select * from 客户 where 城市 in (?)”,city.split(“,”))

用户可以传递多个城市值,所以检索条件部分我们需要使用 in;

因为允许用户传递多个城市值,所以检索条件部分我们需要使用 in;

填报表的参数是没有数据类型的,所以我们需要将接收到的参数值处理成我们需要的格式,例如通过 split 函数将 city 参数值处理成数组形式:city.split(“,”)。

小技巧

在不确定如何处理数据或者检查计算结果时,我们可以使用 debug()或者 output() 函数输出需要检查的信息,通过观察控制台结果来判断。

第四步  制作参数模板

新建空白统计表,设置报表类型为参数模板,绘制如下图所示的效果:

其中,

C1 单元格为辅助单元格,其意义是方便用户选择城市数据

设置 C1 单元格的 web 变量名为:area,编辑风格为下拉数据集:

E1 单元格的 web 变量名为 city,编辑风格为下拉数据集,同时设置关联过滤表达式,用户在选择了省份后,可以选择对应省份下的城市数据:

至此,我们就实现了脚本模式下填报表的数据查询以及填报更新设置,这里需要理解的是 query 函数的使用,不过也是比较简单的哦 ~ 当我们遇到需要用脚本进行数据处理的情况,不要害怕,盘它就对了,盘的多了,你会发现原来脚本是很有意思的一种处理方式。

原文地址:https://www.cnblogs.com/shiGuangShiYi/p/12111252.html

时间: 2024-10-11 17:15:44

脚本填报表的条件查询的相关文章

脚本模式下的填报表制作

填报是报表工具不可或缺的功能之一,润乾报表不仅提供了多源 SQL 填报方式,而且提供了脚本模式填报,以便适应不同的填报数据处理需求.在线教程中对多源 SQL 方式做了详细的配置说明,这里就不再赘述了.(附在线教程地址:http://doc.raqsoft.com.cn/report/input/zzygwgstbb.html) 今天小编将带领大家解锁另外一种填报处理方式——脚本模式 以行式填报表实现雇员信息维护为例,我们来看一下脚本模式如何实现数据处理,请紧随小编的步伐: 第一步 新建填报表,编

如何用报表工具实现树状层级结构的填报表

需求说明 对于带有层级结构的数据中,用户为了能够更加清晰直观地查看,往往需要在数据展示时将层级展示出来,比如常见的省.市.县结构,或者一些科目中也会带有层级.通常,我们管这种形式叫做树状报表.在查询统计类报表中可以使用报表的左主格来实现,但是由于填报模型更加侧重于数据处理,格式设计上有别于查询统计报表,往往较难实现树状报表. 下面,我们通过一个层级科目的例子介绍一下在填报表中如何实现这个需求.首先,我们看一下报表展示的结果: 这个报表是一个按照科目录入数据的填报表,科目分不同等级,比如 1001

固定格式填报表的制作

在前面几篇文章中,我们学习了多种类型填报表的制作,对润乾报表的填报机制有了一定的了解.今天我们来研究一下如何制作固定格式填报表,同时检验下自己之前学习的内容是否已熟练掌握. 今天要学习的固定格式填报表效果图如下所示: 左侧为固定内容,蓝色部分是需要客户填写的内容,最后将整个页面数据更新到数据库表中. 这里的难点在于,如何把左侧固定内容也更新到数据库中,也就是如何设置单元格分区. 带着这个问题我们来看一下具体实现步骤: 第一步 新建填报表 编辑填报表内容和样式,如下图所示: 一般这类报表会对应一个

基于Struts2+Hibernate的Criteria多条件查询

Hibernate 定义了CriteriaSpecification接口规范用来完成面向对象的条件查询,Criteria 和 DetachedCriteria 就是CriteriaSpecification的子接口. 在进行本篇的内容之前,我们先来大致说一说Criteria 和 DetachedCriteria 的主要区别: Criteria 和 DetachedCriteria 的创建的形式不一样, Criteria 是在线的,所以它是由 Hibernate Session 进行创建的:而 D

SQL——处理页面多条件查询

以前处理多条件查询,主要是两种方法,第一种是在条件里面判断要填入条件的字段,然后判断传入参数是否为空,如果为空,就用1=1替代这个条件:第二种方法,先判断传入参数是否为空,如果不为空,将条件拼接到一个字符里面,最后再使用exec执行字符串:最近又要做这个东西,感觉还是挺熟悉的,额,,其实是挺无聊的.但是在做的过程中跟旁边大哥闲扯的时候,他又给我写了一种case...when...end..的方式,贴出来给大家看看: ALTER PROCEDURE [dbo].[sp_LoadSellerData

Powershell对象条件查询筛选

在 Windows PowerShell 中,与所需的对象数量相比,通常生成的对象数量以及要传递给管道的对象数量要多得多.可以使用 Format cmdlet 来指定要显示的特定对象的属性,但这并不能帮您解决从显示中删除整个对象的问题.您可能希望在管道结束之前筛选对象,因此只能在最初生成的对象子集上执行操作. 利用 Windows PowerShell 中的 Where-Object cmdlet,可以测试管道中的所有对象,并将符合特定测试条件的对象通过管道进行传递.没有通过测试的对象将从管道中

PowerShell多日志多条件查询

做乙方的,免不了一个月去客户那里巡检一次.无非就是翻翻日志,排排错啥的.直接说场景需求吧: 每月一次翻日志(三十天内),范围是application和system(也许更多),事件类型只看Error和Warning. 多日志名环境,使用WMIobject来干,-filter后面接的语句是WQL标准,运算符按照WQL的来,最后生成个List的HTML. powershell语句如下(PS3.0请用Get-CimInstance: get-wmiobject -class Win32_NTlogEv

SM-MyBatis-13:Mybatis中多条件查询

------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 实体类 public class Book { private Integer bookID; private String bookName; private String bookAuthor; private Integer bookPrice; public Book() { } public Integer getBookID() { return this.bookID; } public vo

人事管理系统登录验证以及多条件查询的实现

我选的题目是人事管理系统 刚开始系统有个默认的管理员(自己设定),然后管理员将员工信息录入数据库,员工信息(员工表)有一个权限的字段,拥有权限的人也可以以管理员的身份登录 思路不难,就是,从数据库里取出账号,密码,还有权限三个字段,将他们分别存放在三个列表里,然后先匹配账号和密码然后验证权限: 好了,上代码: public Boolean isAdmin() {//判断是不是管理员 try{ connection = (Connection)DriverManager.getConnection