制作简单账表

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

制作简单账表

[原贴参考1](https://wenku.my7c.com/article/148691?productLineId=1) [原贴参考2](https://wenku.my7c.com/article/81696654923133440?productLineId=1) [原贴参考3](https://wenku.my7c.com/article/1094?productLineId=1) [原贴参考4](https://wenku.my7c.com/article/209963869630678016?productLineId=1) 上面的原贴1、2、3几乎是一样的,以避免原贴失效所以3个都贴出来。因为原贴1有红字加粗看着方便,所以推荐原题1. 上面的原贴参考4学习到过滤方法(因为1、2、3中没有讲过滤) 开发环境: 1、客户机电脑是win7 64位旗舰版。 2、测试环境用金蝶是8.1版本,BOS也是8.1,代码引用的DLL是8.0版本 3、VS2010 ,.NET4 4、服务器是WIN10,SQL SERVER2008 ========================== 分割线 ========================== # 一、准备界面 ### 1、新建简单账表 ![image.webp](/download/010052ec6124ecbe4379b79d294002d35694.webp) ![image.webp](/download/0100567ec59a59f34ee2bacebaa6c01586ab.webp) ### 2、新建公共过滤 ![image.webp](/download/0100f26bcc8b41494dc595a6e05a071b2753.webp) ### 3、把公共过滤捆绑到简单账表 ![image.webp](/download/0100ab8bc68762aa4f68a59f2696a28a7450.webp) ![image.webp](/download/0100cf8e91d38ac24febb5b42b4cdc80a502.webp) ### 4、公共过滤拖一个文本控件 ![image.webp](/download/0100549b041b9fad455a83f36ecb9a2bc442.webp) # 二、代码 ![image.webp](/download/0100ab9e3ee10ac54b19b20a4914182bbcec.webp) ![image.webp](/download/0100ef3d7fefa96543db9073848c21c66c1e.webp) ``` using System; using System.Collections.Generic; using System.Linq; using System.Text; using Kingdee.BOS; using Kingdee.BOS.Util; using Kingdee.BOS.Core; using Kingdee.BOS.Core.Report; using Kingdee.BOS.Core.Report.PlugIn; using Kingdee.BOS.Core.Report.PlugIn.Args; using Kingdee.BOS.Core.List; using Kingdee.BOS.Contracts.Report; using Kingdee.BOS.App.Data; using Kingdee.BOS.Orm.DataEntity; using System.ComponentModel; using System; using System.Collections.Generic; using System.Linq; using System.Text; using Kingdee.BOS; using Kingdee.BOS.Core.Bill.PlugIn; //添加引用后,缩写函数 using Kingdee.BOS.Core.DynamicForm.PlugIn.Args; using System.ComponentModel; using Kingdee.BOS; using Kingdee.BOS.Util; using Kingdee.BOS.Core.Bill.PlugIn; using System.ComponentModel; //数据库 using Kingdee.BOS.App.Data; using Kingdee.BOS.Orm.DataEntity; using Kingdee.BOS.Core.DynamicForm; using System.Data; namespace JDSample.ServicePlugIn.Report { [Description("自定义简单账表")] public class S151016MySysReport : SysReportBaseService { /***********事件执行顺序************* 2015/8/31 18:04:12 : Initialize 2015/8/31 18:04:12 : GetTableName 2015/8/31 18:04:15 : BuilderReportSqlAndTempTable 2015/8/31 18:04:15 : GetIdentityFieldIndexSQL 2015/8/31 18:04:15 : ExecuteBatch 2015/8/31 18:04:19 : GetReportHeaders 2015/8/31 18:04:19 : GetReportTitles 2015/8/31 18:04:27 : GetTableName 2015/8/31 18:04:27 : GetIdentityFieldIndexSQL 2015/8/31 18:04:28 : ExecuteBatch 2015/8/31 18:04:28 : AnalyzeDspCloumn 2015/8/31 18:04:28 : AfterCreateTempTable 2015/8/31 18:04:28 : GetSummaryColumnInfo 2015/8/31 18:04:28 : GetSummaryColumsSQL 2015/8/31 18:04:28 : GetTableName 2015/8/31 18:04:28 : GetTableName 2015/8/31 18:04:29 : ExecuteBatch 2015/8/31 18:04:29 : GetIdentityFieldIndexSQL 2015/8/31 18:04:29 : ExecuteBatch 2015/8/31 18:04:29 : CreateGroupSummaryData 2015/8/31 18:04:29 : GetListData 2015/8/31 18:04:30 : GetReportData 2015/8/31 18:04:30 : GetRowsCount 2015/8/31 18:04:30 : GetListData */ /// /// 初始化事件:在此事件中,设置报表基本属性 public override void Initialize() { base.Initialize(); // 简单账表类型:普通、树形、分页 this.ReportProperty.ReportType = ReportType.REPORTTYPE_NORMAL; // 报表名称 this.ReportProperty.ReportName = new LocaleValue("日采购报表", base.Context.UserLocale.LCID); // this.IsCreateTempTableByPlugin = true; // this.ReportProperty.IsUIDesignerColumns = false; // this.ReportProperty.IsGroupSummary = true; // this.ReportProperty.SimpleAllCols = false; // 单据主键:两行FID相同,则为同一单的两条分录,单据编号可以不重复显示 //this.ReportProperty.PrimaryKeyFieldName = "FID"; // this.ReportProperty.IsDefaultOnlyDspSumAndDetailData = true; } public override void BuilderReportSqlAndTempTable(IRptParams filter, string tableName) { base.BuilderReportSqlAndTempTable(filter, tableName); // 拼接过滤条件 : filter DynamicObject dyFilter = filter.FilterParameter.CustomFilter;//快捷页签过滤条件 var strMingCheng = ObjectUtils.Object2String(dyFilter["F_XLJR_Text"]); // 默认排序字段:需要从filter中取用户设置的排序字段 string seqFld = string.Format(base.KSQL_SEQ, " m.fmaterialid "); string sql= string.Format(@"/*dialect*/ select distinct m.fmaterialid , ml.fname , {0} into {1} FROM t_bd_material m, t_bd_material_l ml WHERE m.fmaterialid = ml.fmaterialid and ml.fname like '%{2}%'", seqFld, tableName, strMingCheng); DBUtils.ExecuteDynamicObject(this.Context, sql); } public override ReportHeader GetReportHeaders(IRptParams filter) { ReportHeader header = new ReportHeader(); var status = header.AddChild("fmaterialid", new LocaleValue("idid")); status.ColIndex = 0; var billNo = header.AddChild("fname", new LocaleValue("ming")); billNo.ColIndex = 1; return header; } public override ReportTitles GetReportTitles(IRptParams filter) { var result = base.GetReportTitles(filter); DynamicObject dyFilter = filter.FilterParameter.CustomFilter; if (dyFilter != null) { if (result == null) { result = new ReportTitles(); } //result.AddTitle("F_JD_Date", Convert.ToString(dyFilter["F_JD_Date"])); result.AddTitle("F_JD_Date", "2022-12-12"); } return result; } /* public override List<SummaryField> GetSummaryColumnInfo(IRptParams filter) { var result = base.GetSummaryColumnInfo(filter); result.Add(new SummaryField("FQty", Kingdee.BOS.Core.Enums.BOSEnums.Enu_SummaryType.SUM)); result.Add(new SummaryField("FALLAMOUNT", Kingdee.BOS.Core.Enums.BOSEnums.Enu_SummaryType.SUM)); return result; } */ } } ``` # 三、复制DLL、注册DLL、重启IIS ### 1复制DLL到bin文件夹 ![image.webp](/download/01008a695f3a996841b2913aa703c883d82c.webp) ### 2、注册DLL ![image.webp](/download/0100da40387acd884bec928b811cdaf3555a.webp) ![image.webp](/download/0100142d01983ac3436183f817d800188381.webp) ### 3、重启IIS ![image.webp](/download/010091cebf3b4b524209836a751afce44377.webp) 发布到主控台略 # 四、运行看效果 ![image.webp](/download/01006485c155742c43ac8b608a2f7f4ddd4c.webp) ![image.webp](/download/0100f05465918b3a4916b5f63656b6e722ba.webp) ![image.webp](/download/0100ed8980ee410046a3812e5ac8ebb5fc68.webp)

制作简单账表

[原贴参考1](https://wenku.my7c.com/article/148691?productLineId=1)[原贴参考2](https://wenku.my7c.com/article/81696654923133440?pro...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息