通用插件方法--创建临时表名原创
金蝶云社区-湖南客户成功吴双得
湖南客户成功吴双得
50人赞赏了该文章 572次浏览 未经作者许可,禁止转载编辑于2023年04月17日 16:28:39

插件中使用系统临时表,借用标准的实体临时表模式

创建时表名

        /// <summary>
        /// 申请临时表名
        /// </summary>
        /// <param name="context"></param>
        /// <param name="count">申请的个数</param>
        /// <returns></returns>
        public static string[] CreateTemporaryTableNames(Context context, int count)
        {
            return Kingdee.BOS.App.ServiceHelper.GetService<Kingdee.BOS.Contracts.IDBService>().CreateTemporaryTableName(context, count);
        }

标记删除临时表名

        /// <summary>
        /// 标识需要删除的临时表
        /// </summary>
        /// <param name="context"></param>
        /// <param name="temptableNames"></param>
        /// <returns></returns>
        public static bool DeleteTemporaryTableNames(Context context, string[] temptableNames)
        {
            return ServiceHelper.GetService<IDBService>().DeleteTemporaryTableName(context, temptableNames);
        }

标记删除临时表名,实际并没有删除当前临时表,只是在T_BAS_TEMPORARYTABLENAME 表中标识了。

查看可以删除的临时表名

select count(*) from T_BAS_TEMPORARYTABLENAME where FPROCESSTYPE=1

系统会通过执行计划来删除临时表

赞 50