电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

金蝶EAS Cloud 扩展报表进阶培训(2016.01.04)(2).pptx

金蝶EAS Cloud 扩展报表进阶培训(2016.01.04)(2).pptx_第1页
1/81
金蝶EAS Cloud 扩展报表进阶培训(2016.01.04)(2).pptx_第2页
2/81
金蝶EAS Cloud 扩展报表进阶培训(2016.01.04)(2).pptx_第3页
3/81
④内部公开请勿外传版权所有©1993-2012金蝶软件(中国)有限公司④内部公开请勿外传BOS扩展报表系统部2016年1月4日扩展报表进阶培训④内部公开请勿外传P2目录基本概念高级应用多源关联分片层次坐标函数性能优化④内部公开请勿外传P3目录基本概念高级应用多源关联分片层次坐标函数性能优化④内部公开请勿外传P4基本概念-技术架构④内部公开请勿外传P5基本概念–父格、子格的显示关系父格、子格的显示关系单元格进行扩展的过程中,扩展的单元格称为父格,跟随扩展的单元格被动复制的单元格称为子格。子格有两个父格,分别是横向父格、纵向父格,父格有0~N个子格。缺省情况下,横向父格是子格上边的扩展单元格,纵向父格是子格左边的扩展单元格,子格跟随横向父格进行横向扩展,跟随纵向父格进行纵向扩展。横向父格、纵向父格也可以通过设置属性进行改变。④内部公开请勿外传P6基本概念–父格、子格的数据过滤关系父格、子格的数据过滤关系父格、子格在使用同一个数据源的情况下,子格的记录集是由父格所限定的。如Select扩展出来的每条记录对应于数据源的一条记录。如Group扩展出来的每条记录对应于数据源的N条记录。交叉分析报表的统计值由纵横两个方向的父格所决定④内部公开请勿外传P7基本概念–权限权限扩展报表的权限包括管理权限与查看权限。管理权限是功能权限,指用户可进入扩展报表管理平台制作、发布、授权;管理权限由系统管理员授予。查看权限通过个别数据授权进行控制,获得授权的用户可执行对应的报表;查看权限通过扩展报表管理平台的授权功能授予④内部公开请勿外传P8基本概念–组织隔离与共享组织隔离与共享用户打开扩展报表、SQL数据源文件夹时,只能看到创建组织为当前登录组织的扩展报表、SQL数据源。用户可以维护本组织创建的扩展报表、SQL数据源。不同组织之间需要共享扩展报表模板、SQL数据源时,源组织可自行导出文件,目标组织再把文件导入系统。④内部公开请勿外传P9基本概念–导入、导出导入、导出导入、导出提供了一种在不同系统之间、同一系统不同组织之间共享报表模板、SQL数据源的方法。权限信息不能导出、导入,用户须另行设置导入的报表的权限。导出导入④内部公开请勿外传P10目录基本概念高级应用多源关联分片层次坐标函数性能优化④内部公开请勿外传P11高级应用–多数据源多数据源多数据源的几层含义:1、支持数据库、元数据、文件、存储过程、程序代码;2、支持从EAS连接的当前数据库、外部数据库中取数;3、一个模板可以同时使用多个数据源,而不管这几个数据源分别是从哪里取数的;4、从数据源的应用层面上看,系统屏蔽了不同数据源的区别。数据源SQL数据集枚举数据集文本数据集SQL数据集存储过程数据集JAVA数据集快照数据集EAS数据库K3数据库U9数据库其他数据库数据引擎外部数据管理中心扩展报表文件可用扩展报表解决非EAS系统的报表统计问题④内部公开请勿外传P12高级应用–文本数据集文本数据集预览SQL数据集导出EXCEL编辑EXCEL另存为TXT文件(制表符分割)④内部公开请勿外传P13高级应用–连接外部数据库连接外部数据库问题提出:如何在扩展报表中使用K/3或其他系统的数据库?解决方案:1、在外部数据中心中建立到该数据库的连接;2、建立SQL数据集时选择连接该数据库;3、对于用户来说,使用SQL数据集时无需考虑其是否外部数据库。1、进入报表工具(“商业分析->报表服务中心->报表工具”);2、点击系统菜单“文件->外部数据中心管理”。④内部公开请勿外传P14高级应用–参数联动参数联动参数联动:两个参数或多个参数间存在联系,可用前一个参数的取值决定后一个参数的取值范围SELECTdistinct地区,城市FROM供应商where地区='@area'④内部公开请勿外传P15高级应用–内置参数与普通参数内置参数与普通参数内置参数:•不必定义,可以直接在“过滤”页签中选择、在“查询”页签中调用、在报表模板中调用;•系统根据上下文赋值,最终用户无法修改;•取不到值时返回-1;普通参数:•必须在“参数”页签中定义后才能在“过滤”页签中选择、在“查询”页签中调用、在报表模板中调用;•可以由最终用户输入,也可以在设计SQL数据集时写死;④内部公开请勿外传P16高级应用–普通参数显示值普通参数显示值控件类型为下拉列表、多选框、F7选择框的参数,都有显示值、实际值两个属性。报表公式中如果是引用自定义的过滤参数的实际值的,在参数名称前面加“@”,形如“@param”;如果是引用其显示值的,在后面再加上“_text”,形如“@param_text”④内部公开请勿外传P17高级应用–数据集参数与报表参数数据集参数与报表参数SQL数据集可以定义参数;报表执行时参数界面中的参数,是其引用的所有SQL数据集参数的合集,并根据参数名称同名合并的规则进行合并。例如:现有三个自定义SQL数据源DS1、DS2、DS3,DS1定义的参数名称为“A”、“B”,DS2定义的参数名称为“B”、“C”,DS3定义的参数名称为“C”、“D”,一个扩展报表模板引用了DS2、DS3,请问该报表的参数界面中有哪几个参数?答案为:B、C、D④内部公开请勿外传P18高级应用–宏变量(1)宏变量问题提出:1、SQL数据集需要根据用户输入组装SQL2、KSQL引擎仅处理WHERE后面的条件解决方案:1、报表系统本身支持的另外一种参数类型2、由报表系统进行处理3、其使用需要符合一定规则在SQL数据源中,“?”打头的就是宏变量,如“orderby?field?turn”;(可按照用户选择的字段、顺序进行排序)“@”打头的是普通参数,如“whereage=@age”;用户在参数界面输入参数后,系统先替换宏变量,再替换普通参数;普通参数为空时,系统会智能地把条件子句删除,不会出错;宏变量为空时,系统直接进行参数替换,会出错;因此:宏变量应为必填参数;为了生成输出字段时不报错,应有默认值.④内部公开请勿外传P19高级应用–宏变量(2)宏定义由用户自己定义变量支持在参数默认值、参数数据来源以及SQL数据集查询语句、报表单元格表达式中使用宏变量公式宏、SQL宏产品论坛:http://club.kisdee.com/forum.php?mod=viewthread&tid=939015&page=1&extra=#pid2370407在SQL查询语句中使用宏变量时,若宏值是数值型,在宏名前加$符号,如$宏名;若是字符型,则还需要加单引号,如‘$宏名’。SQL宏公式宏宏的使用④内部公开请勿外传P20高级应用–方言方言不输入条件不参与过滤的实现多选(仅支持in、notin)的实现模糊查找:/*dialect*/selectfid,fnumber,fname_l2,fgender,fbirthdayfromT_BD_PersonWhere(TO_CHAR(fbirthday,'YYYY-MM-DD')>='@from'or?isnull)and(TO_CHAR(fbirthday,'YYYY-MM-DD')<='@to'or?isnull)/*dialect*/selectfid,fnumber,fname_l2,fgender,fbirthdayfromT_BD_PersonWHERE(fgenderin(@sex)or?isnull);如果fgender类型是字符串:/*dialect*/selectfid,fnumber,fname_l2,fgender,fbirthdayfromT_BD_PersonWHERE(fgenderin(‘@sex’)or?isnull);/*dialect*/selectfid,fnumber,fname_l2,fgender,fbirthdayfromT_BD_PersonWHERE(fname_l2like'%@name%'or?isnull);④内部公开请勿外传P21高级应用–在F7中隐藏某些列在F7中隐藏某些列在F7窗口中隐藏对用户没有意义的列,目前仅对使用SQL数据集和系统预设变量作为F7数据来源时有效。④内部公开请勿外传P22高级应用–F7树形展示F7树形展示参数控件类型为“F7选择框”时,支持显示为树形。树状结构:•父子结构:节点字段和父节点字段•长编码:长编码字段和分隔符④内部公开请勿外传P23高级应用–参数插件类参数插件类什么时候使用参数插件类:1、参数界面的默认值是根据上下文信息得到的,例如根据用户的数据权限得到他能操作的项目列表;2、需要实现参数联动,例如从“省份”下拉列表中选中“广东省”后,“城市”下拉列表只显示广东省的城市;3、需要对参数进行进一步加工后再传递给报表引擎,例如用户选了项目后,系统查询他的数据权限以判断其是否有权查看该项目的资料;4、需要通过代码提高参数界面的交互性,例如弹出对话框提示数据校验的结果;5、其他特殊控制,如参数界面控件的钝化、隐藏、移动、聚焦……例如:通过参数插件类你可以:在初始化参数界面后、参数值改变时、点击确定按钮后执行动作;(loadSolutionAfter、dataChange、confirmFilterBefore)取得控件的值、修改控件的值、弹出对话框……具体详见示例代码:http://club.kisdee.com/forum.php?mod=viewthread&tid=666200&page=1&extra=#pid1568248④内部公开请勿外传P24高级应用–复杂参数界面复杂参数界面问题提出:某些情况下,需要实现高度复杂的参数界面,以提供更高的互动解决方案:1、过于复杂的参数界面与报表,建议拆分成多个相对简单的参数界面与报表;2、如果实在需要实现复杂的参数界面,而无法通过参数插件类实现的,可以通过JAVA数据集实现;3、JAVA数据集不光返回数据供报表使用,执行时还调出代码实现的参数界面,该界面可自由定制。具体详见示例代码:http://club.kisdee.com/forum.php?mod=viewthread&tid=666200&page=1&extra=#pid1568248④内部公开请勿外传P25高级应用–代码定制F7代码定制F7当需要在参数界面F7中进行特殊的控制,例如根据当前用户的权限过滤数据,或者需要界面有较好的交互时,可调用代码定制的F7系统提供机制把一些系统设置传递给代码定制F7具体详见示例代码:http://club.kisdee.com/forum.php?mod=viewthread&tid=666200&page=1&extra=#pid1568248系统中的代码定制F7:职员:com.kingdee.eas.basedata.person.client.PersonPromptBox职位:com.kingdee.eas.basedata.org.client.PositionPromptBoxcom.kingdee.eas.basedata.org.client.PositionPromptBox2人事事务类别:com.kingdee.eas.hr.affair.client.AffairCategoryPromptBox行政组织:com.kingdee.eas.hr.org.client.AdminByOrgRangePromptBox员工:com.kingdee.eas.hr.emp.client.EmployeeMultiF7PromptBox行业:com.kingdee.eas.basedata.assistant.client.F7IndustrySelector财务组织:com.kingdee.eas.basedata.org.client.f7.CompanyF7……④内部公开请勿外传P26高级应用–表单与单据互相引用表单与单据互相调用问题提出:1、如何在单据中调用扩展报表?(例如在单据中点击按钮弹出扩展报表)2、如何在扩展报表中联查单据?解决方案:1、提供了调用接口,供单据中调用扩展报表(详见示例代码http://club.kisdee.com/forum.php?mod=viewthread&tid=666200&page=1&extra=#pid1568248);2、在联查设置中实现扩展报表联查单据,包括联查序时簿与编辑界面。单据联查:根据单据的ID来联查单据•GUI报表能联查GUI单据。•Web报表能联查Web单据。•支持在portal上联查到WAF2框架开发的web业务单据自动检测UI的联查设置:1、报表设计器中,选择某一个单元格,点击【联查】设置按钮,在联查设置窗口选择“EAS单据”页签;2、在“基本设置”插入一行,输入引用名称,选择单据类型,勾选“自动检测UI”,系统会自动根据单据ID检测对应业务单据的编辑界面(或序时簿),设置“单据条目清单”(即传递的参数)④内部公开请勿外传P27高级应用–SQL数据集按组织过滤数据SQL数据集按组织过滤数据问题提出:1、分公司只能查看本组织的数据;2、集团可以查看所有数据;3、特定用户可以查看权限范围内的组织的数据。解决方案:1、提供内置系统参数,如当前登录组织ID,用于SQL数据集过滤;2、可调用当前用户的业务组织范围,用于SQL数据集过滤。以字段与当前登录组织的比较实现仅显示用户登录组织的数据F7、下拉列表、多选框组等参数界面的数据来源设为当前用户业务组织范围④内部公开请勿外传P28高级应用–内嵌数据集与共享数据集内嵌数据集与共享数据集问题提出:在开发环境中开发的数据集、报表模板,分别在生成环境中导入时,可能因为两个环境中的子系统树路径不一致,导致报表模板运行时报找不到SQL数据集。解决方案:导出报表模板时增加了内嵌数据集的选项,且默认是内嵌数据集的。导出的报表模板文件中事实上包括了它所引用的SQL数据集的信息。那么,导入报表模板后,即可直接执行,无需额外导入SQL数据集。④内部公开请勿外传P29高级应用–内嵌数据集与共享数据集内嵌数据集与共享数据集新的问题:我们原来把数据集独立于报表,是因为在不少情况下不同的报表需要引用相同的数据集,如果都内嵌的话,那么不同的报表如何共享数据集呢?解决方案:在扩展报表设计器中的“数据集管理”界面中增加“共享数据集”按钮,可以把内嵌的数据集再反向生成到报表相应的SQL数据集目录中。如果相同子系统目录下有重复的数据集名称,新共享的出来的名称自动加上后缀_n。④内部公开请勿外传P30高级应用–斜线表头斜线表头操作步骤:1、选中单元格;2、点击“插入斜线表头”;3、设置斜线表头属性。多线端斜线表头的实现:融合单元格线端可自由去除实现不同方向的斜线表头④内部公开请勿外传P31高级应用–控制台控制台调试时,日志级别可设为“调试级”运行完报表后,可以查看执行时间、实际执行的SQL、参数取值等。扩展报表控制台就是提供给报表开发者的利器!④内部公开请勿外传P32高级应用–行高自适应行高自适应问题提出:希望扩展报表实现行高自适应,即行高可根据内容的多少自动进行调整解决方案:1、设计模板时设置相应单元格的“自动换行”属性2、设置整个Sheet的“行高自适应”属性④内部公开请勿外传P33高级应用–不扩展不扩展问题提出:在模板设计期,行、列数比较多且没有扩展单元格的情况下,报表运行速度非常慢。解决方案:1、设计模板时,设置整个Sheet的“不扩展”属性2、表页设置为“不扩展”,那么报表运行时不会检查当前页签单元格的父子格关系,切单元格属性设置为表达式以及扩展属性、显示值、联查等都不起作用。④内部公开请勿外传P34高级应用–显示图片显示图片问题提出:1、如何在扩展报表中显示图片文件?2、如何在扩展报表中显示存储在数据库中的图片?解决方案:1、通过在模板中插入图片文件;2、通过对读取数据库图片的单元格进行转换。在模板中插入图片文件:在设计器中点击菜单【插入】->【图片】->【来自文件】或【资源中心】显示存储在数据库中的图片:使用IMG函数④内部公开请勿外传P35高级应用–不规则分组不规则分组Enumgroup:enumGroup(dataSource{,hasNullGroup{,termExp1,resultExp1{,term2,resultExp2{,...{,defaultExp}}}}})Overlap:overlap(dataSource{,hasNullGroup{,termExp1,resultExp1{,term2,resultExp2{,...{,defaultExp}}}}})均可实现:是否返回空组、“其他”组区别:Enumgroup同一记录最多只能分到一个组中;Overlap同一记录可以分到多个组中;④内部公开请勿外传P36高级应用–树型展现树型展现问题提出:如何在扩展报表中树型展现组织、物料等信息?解决方案:提供TREE函数实现树型展现。要使用树型展现功能,数据本身应包含相应的层次信息,目前支持几种数据:1、每条记录包括ID、PARENTID的数据;2、每条记录包括长编码的数据,有统一的分隔符分隔不同层次的编码;3、事先排好序的列表型数据,每条记录包括该节点所处的层次信息。模板设计结果展现支持展开到指定层级④内部公开请勿外传P37高级应用–动态数据集薪酬方案统计问题提出:EAS系统不同薪酬方案存放在不同的数据库表中;表与表的字段数、字段名不一样;具体存放的表的信息,存放在元数据表中;系统需要能根据元数据表的记录,动态读取业务表。解决方案:使用动态数据集特性,运行时确定读取哪些表,而不是在设计SQL数据集时写死1、读取元数据表的SQL数据集:④内部公开请勿外传P38高级应用–动态数据集薪酬方案统计问题提出:EAS系统不同薪酬方案存放在不同的数据库表中;表与表的字段数、字段名不一样;具体存放的表的信息,存放在元数据表中;系统需要能根据元数据表的记录,动态读取业务表。解决方案:使用动态数据集特性,运行时确定读取哪些表,而不是在设计SQL数据集时写死2、读取业务表的SQL数据集,表名为宏变量,宏变量取值为用户从F7选取:④内部公开请勿外传P39高级应用–动态数据集薪酬方案统计问题提出:EAS系统不同薪酬方案存放在不同的数据库表中;表与表的字段数、字段名不一样;具体存放的表的信息,存放在元数据表中;系统需要能根据元数据表的记录,动态读取业务表。解决方案:使用动态数据集特性,运行时确定读取哪些表,而不是在设计SQL数据集时写死3、模板设计,列出所有参数值,再用QUERY()传入SQL数据集,动态取数:④内部公开请勿外传P40高级应用–动态数据集薪酬方案统计问题提出:EAS系统不同薪酬方案存放在不同的数据库表中;表与表的字段数、字段名不一样;具体存放的表的信息,存放在元数据表中;系统需要能根据元数据表的记录,动态读取业务表。解决方案:使用动态数据集特性,运行时确定读取哪些表,而不是在设计SQL数据集时写死4、子格中,使用DS()函数指定使用哪个动态数据集:④内部公开请勿外传P41高级应用–动态数据集薪酬方案统计问题提出:EAS系统不同薪酬方案存放在不同的数据库表中;表与表的字段数、字段名不一样;具体存放的表的信息,存放在元数据表中;系统需要能根据元数据表的记录,动态读取业务表。解决方案:使用动态数据集特性,运行时确定读取哪些表,而不是在设计SQL数据集时写死5、更可使用UNION()函数合并多个动态数据集:④内部公开请勿外传P42高级应用–动态数据集快照统计问题提出:扩展报表执行结果可以保存快照,该内容是以二进制形式保存到数据库中的,如何读取这些数据并进行汇总统计?其中,对于不同展现形式的数据,有的数据在不同快照中处于固定的单元格,有的则是明细记录罗列,在不同快照中记录数也不定,又如何统计?解决方案:把快照数据集中的报表快照读取到内存,通过动态数据集解决1、快照模板的设计,对于明细数据罗列汇总的数据,应定义其扩展区的命名对象:④内部公开请勿外传P43高级应用–动态数据集快照统计问题提出:扩展报表执行结果可以保存快照,该内容是以二进制形式保存到数据库中的,如何读取这些数据并进行汇总统计?其中,对于不同展现形式的数据,有的数据在不同快照中处于固定的单元格,有的则是明细记录罗列,在不同快照中记录数也不定,又如何统计?解决方案:把快照数据集中的报表快照读取到内存,通过动态数据集解决2、命名对象的范围应包括扩展区下一行(报表纵向扩展时)、右边一列(报表横向扩展时):④内部公开请勿外传P44高级应用–动态数据集快照统计问题提出:扩展报表执行结果可以保存快照,该内容是以二进制形式保存到数据库中的,如何读取这些数据并进行汇总统计?其中,对于不同展现形式的数据,有的数据在不同快照中处于固定的单元格,有的则是明细记录罗列,在不同快照中记录数也不定,又如何统计?解决方案:把快照数据集中的报表快照读取到内存,通过动态数据集解决3、汇总报表模板中,首先引入快照数据集:④内部公开请勿外传P45高级应用–动态数据集快照统计问题提出:扩展报表执行结果可以保存快照,该内容是以二进制形式保存到数据库中的,如何读取这些数据并进行汇总统计?其中,对于不同展现形式的数据,有的数据在不同快照中处于固定的单元格,有的则是明细记录罗列,在不同快照中记录数也不定,又如何统计?解决方案:把快照数据集中的报表快照读取到内存,通过动态数据集解决4、定义命名对象,以便把快照内容读取到内存:④内部公开请勿外传P46高级应用–动态数据集快照统计问题提出:扩展报表执行结果可以保存快照,该内容是以二进制形式保存到数据库中的,如何读取这些数据并进行汇总统计?其中,对于不同展现形式的数据,有的数据在不同快照中处于固定的单元格,有的则是明细记录罗列,在不同快照中记录数也不定,又如何统计?解决方案:把快照数据集中的报表快照读取到内存,通过动态数据集解决5、对固定单元格的汇总统计:④内部公开请勿外传P47高级应用–动态数据集快照统计问题提出:扩展报表执行结果可以保存快照,该内容是以二进制形式保存到数据库中的,如何读取这些数据并进行汇总统计?其中,对于不同展现形式的数据,有的数据在不同快照中处于固定的单元格,有的则是明细记录罗列,在不同快照中记录数也不定,又如何统计?解决方案:把快照数据集中的报表快照读取到内存,通过动态数据集解决6、进行罗列数据汇总时,写一个类似下面的SELECT公式,事实上是把所有快照的dtl命名对象指定的区域取出来并合并,然后分别以“内码”、“编码”、“姓名”、“所属组织”作为各个列的字段名,组装成一个动态数据集,注意用双引号把字段名括起来:④内部公开请勿外传P48高级应用–动态数据集快照统计问题提出:扩展报表执行结果可以保存快照,该内容是以二进制形式保存到数据库中的,如何读取这些数据并进行汇总统计?其中,对于不同展现形式的数据,有的数据在不同快照中处于固定的单元格,有的则是明细记录罗列,在不同快照中记录数也不定,又如何统计?解决方案:把快照数据集中的报表快照读取到内存,通过动态数据集解决7、后面的单元格就可以用这种简单的方式读取动态数据集了,使用时注意用双引号把字段名括起来:④内部公开请勿外传P49高级应用–报表显示属性报表显示属性问题提出:1、如何控制业务用户是否可编辑报表?2、如何控制业务用户是否可看到公式?3、如何控制执行结果界面是否显示行号、列标?4、如何控制隐藏的行列是否可拖动?5、是否可提供选中行、选中单元格两种浏览模式?解决方案:通过设计模板时设置报表显示属性实现设计模板时设置报表显示属性:④内部公开请勿外传P50高级应用–报表显示属性报表显示属性问题提出:1、如何控制业务用户是否可编辑报表?2、如何控制业务用户是否可看到公式?3、如何控制执行结果界面是否显示行号、列标?4、如何控制隐藏的行列是否可拖动?5、是否可提供选中行、选中单元格两种浏览模式?解决方案:通过设计模板时设置报表显示属性实现执行时设置报表显示属性(此时只能修改部分属性,可保存多套显示方案):④内部公开请勿外传P51高级应用–自动刷新自动刷新问题提出:对于某些数据频繁发生变化的领域,用户希望打开报表后,报表能自动刷新,显示最新的统计数据(就像炒股软件一样)解决方案:通过启用自动刷新功能实现支持手工设置刷新频率、循环次数刷新后定位到上次的位置④内部公开请勿外传P52高级应用–数据筛选数据筛选问题提出:在报表执行结果界面中,是否可以像EXCEL一样进行数据筛选,或者对某些列进行升序排列、降序排列?解决方案:通过数据筛选功能实现④内部公开请勿外传P53高级应用–发布菜单校验发布菜单校验问题提出:某些补丁会更新EAS菜单并可能导致原来发布到这些EAS菜单下的扩展报表找不到,如何找出这些报表并进行处理?有的时候因为某些原因导致已发布到EAS菜单下的扩展报表已删除,但是EAS菜单还存在,如何找出这些菜单并进行处理?解决方案:通过“发布菜单校验”功能检测这些不一致的地方,并进行批量处理。【商业分析】->【扩展报表中心】->【报表平台】->【报表工具】进入扩展报表管理平台后,点击菜单【文件】->【发布菜单校验】检测已发布到EAS功能菜单的报表,但是EAS菜单不存在的情况。此时可撤销发布并另行重新发布,或者根据系统日志恢复被删除的EAS菜单:④内部公开请勿外传P54高级应用–发布菜单校验发布菜单校验问题提出:某些补丁会更新EAS菜单并可能导致原来发布到这些EAS菜单下的扩展报表找不到,如何找出这些报表并进行处理?有的时候因为某些原因导致已发布到EAS菜单下的扩展报表已删除,但是EAS菜单还存在,如何找出这些菜单并进行处理?解决方案:通过“发布菜单校验”功能检测这些不一致的地方,并进行批量处理。【商业分析】->【扩展报表中心】->【报表平台】->【报表工具】进入扩展报表管理平台后,点击菜单【文件】->【发布菜单校验】检测已发布到EAS功能菜单的报表,但是报表模板已被删除的情况。此时可删除客户化菜单:④内部公开请勿外传P551、设置哪些字段需要启用字段权限;2、在报表设计时使用公式ISAUTHORITY检查字段权限;高级应用–字段授权字段授权问题提出:出于安全保密性考虑,报表中有些列应限制查看权限,例如限制仓库保管员看到出入库单据上的有关产品价格信息。解决方案:1、设置哪些字段需要启用字段权限;2、在报表设计时使用公式ISAUTHORITY检查字段权限;3、授予用户报表的查看权及字段权限;4、用户执行报表时系统会校验字段权限。3、授予用户报表的查看权及字段权限;用户只需报表时系统会校验字段权限④内部公开请勿外传P56目录基本概念高级应用多源关联分片层次坐标函数性能优化④内部公开请勿外传P57多源关联分片多源一个报表中引入多个数据集关联往往通过单元格的引用使多个数据集的数据发生关联分片各个数据集分别扩展出一片区域来④内部公开请勿外传P58多源关联分片分片扩展指报表的纵向或横向或两个方向同时被分成了多个区域,每个区域独立扩展④内部公开请勿外传P59多源关联分片区域混合扩展区域与静止区域混合④内部公开请勿外传P60多源关联分片示例-纵向分片一般通过对单元格的引用使多个数据源之间发生关联④内部公开请勿外传P61多源关联分片示例-错误的设置同一列或同一行中,既有横向扩展的单元格、又有纵向扩展的单元格④内部公开请勿外传P62目录基本概念高级应用多源关联分片层次坐标函数性能优化④内部公开请勿外传P63层次坐标函数EXS返回满足条件的一组单元格的值的集合,其条件由纵横向父格以及条件表达式所确定参数:cellx目标单元格名称;y纵向父格位置,可省略;x横向父格位置,可省略;condition条件,可省略。④内部公开请勿外传P64层次坐标函数EXINDEX返回指定的单元格在所有该单元格扩展后的格子中排第几分组序号④内部公开请勿外传P65层次坐标函数EX、A、REX:返回指定格集左上角第一个单元格的值,一般与A()、R()一起使用A:某单元格的第N个值R:相对于某单元格的前N或后N个值示例1④内部公开请勿外传P66层次坐标函数EX、A、REX:返回指定格集左上角第一个单元格的值,一般与A()、R()一起使用A:某单元格的第N个值R:相对于某单元格的前N或后N个值示例2④内部公开请勿外传P67层次坐标函数–累计累计模板设计报表预览从第一行起累加到当前行的数值之和。④内部公开请勿外传P68层次坐标函数–占比占比模板设计报表预览④内部公开请勿外传P69层次坐标函数–排名排名模板设计报表预览④内部公开请勿外传P70层次坐标函数–区间统计区间统计模板设计报表预览④内部公开请勿外传P71目录基本概念高级应用多源关联分片层次坐标函数性能优化④内部公开请勿外传P72性能优化–格式设置格式设置不推荐的做法:选中整行、整列或整页,设置格式否则后果可能是:更糟糕的后果是报表运行时导致EAS客户端崩溃!你应该:仅选中需要设置的单元格来设置格式④内部公开请勿外传P73性能优化–多数据集的应用格式设置分组汇总型、交叉分析型报表尽量使用单数据集:父格范围内的子格统计汇总的记录数较少;多源分片、主从表型报表尽量使用多数据集:避免表间叉乘,减少取数数据量;凡事无绝对,优化之妙,在于积累!④内部公开请勿外传P74性能优化–数据分组合理分组报表性能提升最重要的秘诀是:合理分组!不分组:可能每个汇总单元格都要遍历所有的记录;分组:子格汇总时,仅遍历父格分组中的记录;二者的速度可能差几个数量级!典型的不分组统计报表:④内部公开请勿外传P75性能优化–数据分组合理分组报表性能提升最重要的秘诀是:合理分组!不分组:可能每个汇总单元格都要遍历所有的记录;分组:子格汇总时,仅遍历父格分组中的记录;二者的速度可能差几个数量级!能直接对字段进行分组最佳:没有条件创造条件也要分组:④内部公开请勿外传P76性能优化–数据分组V()函数在公式中利用V()函数,除提高可读性外,还提高效率,(一个表达式内)后续同样条件的记录不需重新过滤:④内部公开请勿外传P77性能优化–报表优化尽量在sql里进行group数据库虽然要进行分组运算,但是数据库中有索引,运算速度快,且取到报表引擎的记录数大大减少,取数速度大大加快,因此在报表引擎进行运算的时候只要对很少的记录进行,报表的运算速度大大加快了。尽量不用select*from这种写法相当于把所有字段的数据都取到报表引擎了,增加了报表的内存占用以及减慢了运算速度。正确的写法是用到哪几个字段就取那几个,用不着的不要取。尽量在sql里排序如果报表中的排序规则是确定的,建议排序操作选择在数据库端进行,因此数据库中有索引,且数据库是C语言开发的,数据运算速度快。尽量在sql里过滤报表很多时候并不需要对表中的所有记录进行操作,而是对部分满足条件的记录进行操作,因此建议过滤操作在数据库中及你想,这样取到报表端的记录数大大减少,既加快了取数的速度,也加快了报表的运算速度,因此为报表需要处理的数据少了。④内部公开请勿外传P78性能优化–写表达式的技巧select1()&select()如果确定只需要从数据集中取出一条记录,使用Select1函数而不要用select。因为select1每次只取出一条记录,当它检索数据集时,检索到第一条满足条件的记录并把该记录返回,而不继续往下检索;而对于select函数,即使已经检索到满足条件的记录了,还会继续往下检索,知道所有记录检索完毕。父格、子格在使用同一个数据集时不需要设置关联条件在使用group、enumgroup等数据集函数时,若其附属单元格与父格使用同一个数据集,则在附属单元格中需要对该当前组集进行操作时,不需要用任何条件和父格关联了。否则如果加设了条件,会导致报表引擎还对组集中的记录进行遍历检索。无需排序时可省略排序参数数据集函数中不少函数带有排序参数,例如单元格公式使用select、或者COUNTA(SELECT(…))等时,如果用户只需要把数据集当前记录行集选出或进行统计,而不需要排序,则排序参数省略即可,这样报表引起运算时无需对记录进行排序,速度会加快。使用RCOUNT()函数该函数获取指定数据集的当前行集的记录数,等效于COUNTA(FIELDS(ds1,…)),但更高效。④内部公开请勿外传P79性能优化–海量数据的处理目前数据库取数的限制为:行*列<=40万当一个报表所需的数据大于此限制时:考虑使用存储过程对数据进行初统计,报表只取统计后的少量数据;考虑利用报表中心保存部分数据的统计结果,报表从报表中心读取快照中的统计结果;(例如:统计年报时,可利用此前已保存的月报或季报;统计集团的报表时,可利用下属公司的报表快照)利用报表中心的调度功能把统计工作化整为零来做;④内部公开请勿外传P80其他-如何获取更多资料访问产品论坛:http://club.kisdee.com,进入【版块】->【金蝶EAS产品系列】->【BOS】->【扩展报表】版块或直接访问http://club.kisdee.com/forum.php?mod=forumdisplay&fid=832&page=1&filter=typeid&typeid=831上面有视频、培训文档、用户手册、开发指南、样例……并可发帖进行交流。④内部公开请勿外传Thanksterimakasih感謝谢谢ありがとうขอบคุ�ณ版权所有©1993-2012金蝶软件(中国)有限公司④内部公开请勿外传

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

金蝶EAS Cloud 扩展报表进阶培训(2016.01.04)(2).pptx

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信