电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

二开案例.基础资料.过滤

来源:金蝶云社区作者:金蝶2024-09-2313

二开案例.基础资料.过滤

【应用场景】给单据上的基础资料字段,设置额外的过滤条件。

【案例演示】给采购订单的供应商字段,设置不同的过滤条件,并观察其影响范围。

【基础知识】

<1>单据上的础资料字段,可设置三种过滤条件,分别是过滤、高级过滤和过滤界面条件。

过滤:专用于在单据中进行基础资料查询,最终会和高级过滤的条件合并在一起使用。

高级过滤:专用于在单据中进行基础资料查询,最终会和过滤的条件合并在一起使用。

过滤界面条件:专用于在单据的列表过滤界面中进行基础资料查询,包括过滤条件表格,批量过滤条件表格,快捷过滤等。


<2>单据中的基础资料字段的过滤条件来源有:基础资料.过滤、基础资料.高级过滤、BeforeF7Select事件(https://vip.kingdee.com/article/104945110479021056)等。

列表过滤界面中的基础资料字段的过滤条件来源有:基础资料.过滤界面条件、BeforeFilterGridF7Select事件(https://vip.kingdee.com/article/104956800675357696)等。






实操1-基础资料.过滤

<1>BOSIDE扩展采购订单,选中供应商字段,将过滤属性设置为:FNumber like '%GY%',保存元数据,如下图所示。

此过滤条件的含义为:只查询编码包含GY的供应商,过滤条件需要遵循SQL语法,用于查询的字段名必须使用字段的标识

<2>登录业务站点,打开采购订单,观察供应商字段的模糊查询结果,此时返回的查询结果都是编码包含GY的供应商。

<3>数据库抓包SQL如下:

SELECT TOP 5

        t0.FNUMBER AS FNumber ,

        t0_L.FNAME AS FName ,

        t0.FSUPPLIERID AS FSupplierId

 FROM   T_BD_SUPPLIER t0

        LEFT JOIN T_BD_SUPPLIERBASE t1 ON ( t0.FSUPPLIERID = t1.FSUPPLIERID )

        LEFT JOIN T_BD_SUPPLIER_L t0_L ON ( t0.FSUPPLIERID = t0_L.FSUPPLIERID

                                            AND t0_L.FLOCALEID = 2052

                                          )

 WHERE  ( (( t0.FNUMBER LIKE '%GY%' )

          AND ( t1.FSUPPLYCLASSIFY <> 'WW' ))

        )

        AND t0.FUSEORGID = 100003

        AND t0.FDOCUMENTSTATUS = 'C'

        AND t0.FFORBIDSTATUS = 'A'

 ORDER BY t0.FNUMBER;




实操2-基础资料.高级过滤

<1>在实操1的基础上继续,BOSIDE扩展采购订单,选中供应商字段,将高级过滤的前提条件设置为:FPurchaseOrgId.FNumber = '101.2',将前置条件成立时的过滤条件设置为:FName like '%YS%',保存元数据,如下图所示。


<2>登录业务站点,打开采购订单,观察供应商字段的模糊查询结果,此时返回的查询结果是编码包含GY且名称包含YS的供应商。

<3>数据库抓包SQL如下:

SELECT TOP 5

        t0.FNUMBER AS FNumber ,

        t0_L.FNAME AS FName ,

        t0.FSUPPLIERID AS FSupplierId

 FROM   T_BD_SUPPLIER t0

        LEFT JOIN T_BD_SUPPLIERBASE t1 ON ( t0.FSUPPLIERID = t1.FSUPPLIERID )

        LEFT JOIN T_BD_SUPPLIER_L t0_L ON ( t0.FSUPPLIERID = t0_L.FSUPPLIERID

                                            AND t0_L.FLOCALEID = 2052

                                          )

 WHERE  ( (( ( t0.FNUMBER LIKE '%GY%' )

             AND ( t0_L.FNAME LIKE N'%YS%' )

           )

          AND ( t1.FSUPPLYCLASSIFY <> 'WW' ))

        )

        AND t0.FUSEORGID = 100003

        AND t0.FDOCUMENTSTATUS = 'C'

        AND t0.FFORBIDSTATUS = 'A'

 ORDER BY t0.FNUMBER;

----------------------------------------------------------------------------------------------

观察上面的SQL可知,高级过滤条件会和过滤条件合并在一起。




实操3-基础资料.过滤界面条件

<1>BOSIDE扩展采购订单,选中供应商字段,将过滤界面条件属性设置为:FName like N'%新宇%',保存元数据,如下图所示。

<2>登录业务站点,打开采购订单列表的过滤界面,观察供应商字段的模糊查询结果,此时返回的查询结果是名称包含新宇的供应商。

<3>数据库抓包SQL如下:

SELECT TOP 5

        t0.FNUMBER AS FNumber ,

        t0_L.FNAME AS FName ,

        t0.FSUPPLIERID AS FSupplierId

 FROM   T_BD_SUPPLIER t0

        LEFT JOIN T_BD_SUPPLIER_L t0_L ON ( t0.FSUPP

二开案例.基础资料.过滤

【应用场景】给单据上的基础资料字段,设置额外的过滤条件。【案例演示】给采购订单的供应商字段,设置不同的过滤条件,并观察其影响范围。...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

已经是第一篇
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信