简单账表列以*号显示原创
金蝶云社区-碎
5人赞赏了该文章 685次浏览 未经作者许可,禁止转载编辑于2020年06月05日 18:05:22

通过报表字段授权可以让某张开发的报表某列以*号显示,写在这个方法里面public override ReportHeader GetReportHeaders(IRptParams filter)

var businessInfo = MetaDataServiceHelper.GetFormMetaData(this.Context, formId).BusinessInfo;

                    for (int i = 0; i < datas2.Tables[0].Rows.Count; i++)

                    {

                        BusinessObject permissonObject = new BusinessObject()

                        {

                            PermissionControl = businessInfo.GetForm().SupportPermissionControl,

                            Id = formId

                        };

                        var authResult = PermissionServiceHelper.GetAllowFieldList(this.Context, permissonObject, FieldInv.View);

                        bool isAllow = authResult.Any(f => f.FieldAllow(datas2.Tables[0].Rows[i]["FFieldName"].ToString()));

                        if (isAllow)

                        {

                            //有权限查看

                            代码。。。

                            

                        }

                        else

                        {

                            //没有权限查看

                             代码。。。

                        }

                        

                     

                    }

引用有点多大家自行删除吧!

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.ComponentModel;

using Kingdee.BOS;

using Kingdee.BOS.Util;

using Kingdee.BOS.Core;

using Kingdee.BOS.DataEntity;

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 Kingdee.BOS.ServiceHelper;

//公共过滤引用

using Kingdee.BOS.Core.DynamicForm;

using Kingdee.BOS.Core.DynamicForm.PlugIn;

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


using Kingdee.BOS.Core.Metadata;

using Kingdee.BOS.Core.Metadata.ControlElement;

using Kingdee.BOS.Core.Metadata.FieldElement;

using Kingdee.BOS.Core.CommonFilter;

using Kingdee.BOS.Core.CommonFilter.PlugIn;

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

using Kingdee.BOS.Contracts;

using Kingdee.BOS.Core.SqlBuilder;


using Kingdee.BOS.App.Data;

using Kingdee.BOS.Core.DynamicForm.PlugIn;

using Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel;

using Kingdee.BOS.Orm.Metadata.DataEntity;

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

using Kingdee.BOS.Core.DynamicForm;

using Kingdee.BOS.ServiceHelper;

using Kingdee.BOS.App;

using Kingdee.BOS.Contracts;

using Kingdee.BOS.Core;

using Kingdee.BOS.Core.Bill;

using System;

using System.Data;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using Kingdee.BOS.Orm.DataEntity;

using Kingdee.BOS;

using Kingdee.BOS.JSON;

using Kingdee.BOS.App.Data;

using Kingdee.BOS.Core.DynamicForm.PlugIn;

using Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel;

using Kingdee.BOS.Orm.Metadata.DataEntity;

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

using Kingdee.BOS.Core.DynamicForm;

using Kingdee.BOS.ServiceHelper;

using Kingdee.BOS.App;

using Kingdee.BOS.Contracts;

using Kingdee.BOS.Core;

using Kingdee.BOS.Core.Bill;

using Kingdee.BOS.Core.Bill.PlugIn;

using Kingdee.BOS.Core.Interaction;

using Kingdee.BOS.Core.Metadata;

using Kingdee.BOS.Core.Metadata.EntityElement;

using Kingdee.BOS.Core.Metadata.FormElement;

using Kingdee.BOS.Orm;

using System.ComponentModel;

using Kingdee.BOS.BusinessEntity.BusinessFlow;

using System.Net;

using System.IO;

using Kingdee.BOS.Util;

using Kingdee.BOS.Core.Permission;


赞 5