二开案例.列表插件.使用物理表进行列表查询

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:2

二开案例.列表插件.使用物理表进行列表查询

【应用场景】

通过插件的方式,干预列表查询返回的数据包。


【案例演示】

采购订单,列表查询,将前10行的采购数量调整为888888。


【实现步骤】

<1>编写列表插件,代码如下。

using Kingdee.BOS.App.Data;

using Kingdee.BOS.Core.List.PlugIn;

using Kingdee.BOS.Core.List.PlugIn.Args;

using Kingdee.BOS.Util;

using System.ComponentModel;


namespace Jac.XkDemo.BOS.Business.PlugIn

{

    /// <summary>

    /// 【列表插件】使用物理表进行列表查询

    /// </summary>

    [Description("【列表插件】使用物理表进行列表查询"), HotUpdate]

    public class GetListDataByTableListPlugIn : AbstractListPlugIn

    {

        public override void PrepareFilterParameter(FilterArgs e)

        {

            base.PrepareFilterParameter(e);

            // 调整列表取数方式,将列表查询结果缓存至物理临时表。

            e.SQLType = 0;

        }


        public override void BeforeGetDataForTempTableAccess(BeforeGetDataForTempTableAccessArgs e)

        {

            base.BeforeGetDataForTempTableAccess(e);

            //var sql = string.Format("SELECT * FROM {0}", e.TableName);

            //var ds = DBUtils.ExecuteDataSet(Context, sql);

            // 通过修改临时表数据的方式,影响列表界面数据的最终显示。

            // 修改采购数量

            var sql2 = string.Format("UPDATE {0} SET FQTY=888888 WHERE FIDENTITYID<10", e.TableName);

            DBUtils.Execute(Context, sql2);

        }

    }

}


<2>拷贝插件组件到应用站点的WebSite\Bin目录下,重启IIS。


<3>BOSIDE扩展采购订单,注册列表插件,保存元数据,开发完毕。


【功能验证】

<1>登录业务站点,打开采购订单列表,此时采购数量前10行的数据已被修改。

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













【金蝶云星空BOS二次开发案例演示】https://vip.kingdee.com/article/94751030918525696

二开案例.列表插件.使用物理表进行列表查询

【应用场景】通过插件的方式,干预列表查询返回的数据包。【案例演示】采购订单,列表查询,将前10行的采购数量调整为888888。【实现步骤】...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息