多值关联过滤

场景

在项目中做查询表单或者填报表时,经常会有动态关联的业务需求,比如省市区的关联,润乾填报 / 参数表单报表不仅可以实现单个省市区的动态关联,还可以实现多省市区的动态关联。

下面我们就以润乾报表示例数据库现有的数据表—客户表和订单表 为例,来举例介绍一下数据多选的动态关联。

最终效果

实现步骤

  1. 绘制主表,这里是一个简单的网格表单 统计不同城市的客户量以及销售额。

单元格表达式如下图

** 其中,** 报表数据集及参数设置如下

  1. 制作参数表单,如下

其中

数据集 SQL 如下

重点设置为 C2、E2、G2 单元格实现国家 省 市 的多选关联过滤,具体设置如下:

C2 单元格:设置 web 变量名为 arg1,同时设置编辑风格为 下拉数据集 取值 ds2. 国家,如下

E2 单元格:设置 web 变量名为 province,同时设置编辑风格为 下拉数据集 取值 ds2. 省份,关联过滤表达式:(‘,’+C2.toString()+‘,’).indexOf(‘,’+ 国家 +‘,’) >= 0,触发关联过滤单元格为 C2,如下

G2 单元格:设置 web 变量名为 city,同时设置编辑风格为 下拉数据集 取值 ds2. 城市,关联过滤表达式:(‘,’+E2.toString()+‘,’).indexOf(‘,’+ 省份 +‘,’) >= 0,触发关联过滤单元格为 E2,如下

  1. 确认保存,分别将主表和参数表单保存为:dzglgl.rpx dzglgl_arg.rpx。

到这里我们就完成了数据多选的动态关联。

本文要点

掌握关联过滤表达式的用法,以 E2 的表达式为例解析如下:

E2 关联过滤表达式:(‘,’+C2.toString()+‘,’).indexOf(‘,’+ 国家 +‘,’) >= 0

意为:从 E2 中检索与 C2 所选国家相符的省份。

此关联表达式灵活结合了 javascript 的 indexOf() 方法,方法说明:

在Wireshark中过滤**关联帧(Association Frames)**的指令如下: --- ### **1. 基础过滤指令** - **关联请求帧(Association Request)**: ```plaintext wlan.fc.type_subtype == 0x0000 ``` - Type=0(管理帧),Subtype=0。 - **关联响应帧(Association Response)**: ```plaintext wlan.fc.type_subtype == 0x0001 ``` - Type=0(管理帧),Subtype=1。 --- ### **2. 扩展过滤场景** - **过滤特定BSSID的关联请求**(如监控目标AP的连接行为): ```plaintext wlan.fc.type_subtype == 0x0000 && wlan.bssid == aa:bb:cc:dd:ee:ff ``` - **过滤特定客户端的关联响应**(按MAC地址筛选): ```plaintext wlan.fc.type_subtype == 0x0001 && wlan.da == 11:22:33:44:55:66 ``` - **分析关联状态码(Status Code)**: ```plaintext wlan.fc.type_subtype == 0x0001 && wlan.fixed.status_code == 0 ``` - `0`表示成功,其他如`12`(不支持请求的速率)等表示失败原因。 --- ### **3. 关键字段解析** 关联帧包含以下可过滤字段: - **Capability信息**: ```plaintext wlan.fixed.capabilities.ess == 1 # 客户端请求接入ESS网络 ``` - **支持的速率集**: ```plaintext wlan.tag.number == 1 # Supported Rates IE ``` - **RSN(WPA2/WPA3安全信息)**: ```plaintext wlan.tag.number == 48 # RSN IE ``` --- ### **4. 实战应用示例** - **检测关联泛洪攻击**(大量关联请求): ```plaintext wlan.fc.type_subtype == 0x0000 && frame.count > 50 ``` - **分析客户端兼容性**(过滤HT/VHT能力声明): ```plaintext wlan.fc.type_subtype == 0x0000 && wlan.tag.number == 45 # HT Capabilities IE ``` - **排查关联失败原因**: ```plaintext wlan.fc.type_subtype == 0x0001 && wlan.fixed.status_code != 0 ``` --- ### **5. 注意事项** - **加密流量处理**: 若关联过程使用WPA3-SAE,需导入PMKSA密钥解密关联帧内容。 - **时间窗口**: 关联请求/响应通常成对出现,时间差过大可能表明网络问题。 --- ### **6. 关联过滤** - **认证帧(Authentication)**: ```plaintext wlan.fc.type_subtype == 0x000b # Open System认证 ``` - **重关联帧(Reassociation)**: ```plaintext wlan.fc.type_subtype == 0x0002 # 请求,0x0003为响应 ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值