K3Cloud 简单账表双表头解决方案以及35列解决方案

//简单帐表---
//实现双表头有两种方式:
1、在boside中配置,字段用“1层标题&2层标题1”,“1层标题&2层标题2”表示。
2、动态生成列时,在服务端插件的GetReportHeaders方法里写。
public override ReportHeader GetReportHeaders(IRptParams filter)
{
ReportHeader hs = new ReportHeader();

hs.AddChild("FPrdLineName", new LocaleValue("生产线", this.Context.UserLocale.LCID));

//合并表头
ListHeader curMonOrSea = hs.AddChild();
curMonOrSea.Caption = new LocaleValue("本月", this.Context.UserLocale.LCID);
curMonOrSea.AddChild("FPlanQuantityCurMonOrSea", new LocaleValue("计划量", this.Context.UserLocale.LCID), SqlStorageType.SqlDecimal);
curMonOrSea.AddChild("FPassedQuantityCurMonOrSea", new LocaleValue("合格量", this.Context.UserLocale.LCID), SqlStorageType.SqlDecimal);
return hs;
}

 

解决35列问题。

public class CostCalHorizonRptBuilderPlugIn : AbstractDynamicWebFormBuilderPlugIn
    {
        public override void CreateControl(BOS.Core.DynamicForm.PlugIn.Args.CreateControlEventArgs e)
        {
            if (e.ControlAppearance.Key.EqualsIgnoreCase("FList"))
            {
                e.Control["enforcemerge"] = true;
            }

            base.CreateControl(e);
        }
    }

报表在IDE中是没有构建插件的注册的,需要自己打开XML,修改XML注册构建插件,XML的格式可以参考单据的构建插件注册

<WebFormBuilderPlugins>
            <PlugIn ElementType="0" ElementStyle="0">
              <ClassName>Kingdee.K3.FIN.CB.Report.PlugIn.CostCalHorizonRptBuilderPlugIn, Kingdee.K3.FIN.CB.Report.PlugIn</ClassName>
              <OrderId>1</OrderId>
            </PlugIn>
          </WebFormBuilderPlugins>

 

posted @ 2018-09-26 09:57  嘿嘿嘿~  阅读(1287)  评论(0编辑  收藏  举报