Acumatica中PXProcessing与PXFilteredProcessing的区别是什么?
PXProcessing与PXFilteredProcessing的核心区别
核心定位与用途
- PXProcessing:基础款批量处理控件,专门用来直接处理一组明确的记录(比如从数据库直接读取的固定数据集),本身不带筛选界面。适合不需要用户额外筛选、直接处理预设数据集的场景。
- PXFilteredProcessing:带筛选功能的增强版批量处理控件,集成了「筛选面板+处理列表」的组合结构。用户可以先通过筛选条件缩小目标范围,再对符合条件的记录做批量操作,适合需要用户自主筛选数据的批量处理场景。
界面结构差异
- PXProcessing:界面只有处理记录列表和操作按钮(比如「处理」「取消」),没有筛选区域。代码里直接绑定要处理的DAC即可:
public PXProcessing<MyTargetDAC> MyProcessing; - PXFilteredProcessing:界面自动生成筛选栏(对应自定义的筛选DAC)和下方的处理列表,用户输入筛选条件后列表会动态更新。代码需要同时定义筛选DAC和目标处理DAC:
public PXFilteredProcessing<MyTargetDAC, MyFilterDAC> MyFilteredProcessing;
数据加载逻辑
- PXProcessing:数据一般在初始化时直接加载,或者通过代码手动填充,不会自动根据用户输入动态过滤。如果需要筛选,得自己额外写查询逻辑实现。
- PXFilteredProcessing:框架会自动联动筛选栏的输入条件,动态查询数据库并加载符合条件的记录到处理列表,不需要手动编写过滤查询代码。
灵活性与复杂度
- PXProcessing:轻量简单,代码量少,适合逻辑直白的批量处理场景,不用操心筛选相关的逻辑。
- PXFilteredProcessing:功能更全面,但需要额外定义筛选DAC、处理筛选条件验证等,不过能快速实现带筛选的批量处理需求,减少重复造轮子的工作。
内容的提问来源于stack exchange,提问作者Hemendra Yadav
相关产品推荐
相关产品推荐

