成本报表查询维度扩展演讲者:余文强2023年4月27日目录维度扩展-成本中心组1维度扩展-产出类型2维度扩展-销售订单号、生产批号3PART1维度扩展-成本中心组维度扩展-成本中心组如何显示成本中心组字段系统内置没有该字段,可以进行维度扩展。进入uap中查看是否有成本中心组实体维度扩展-成本中心组系统原有实体无法修改,需要复制一个成本中心组定义实体。修改查询实体为维度实体。基础属性中没有成本中心字段,只有成本中心组编码和成本中心组名称。需要扩展显示成本中心组,可以用成本中心编码与产品投入产出汇总表的成本中心编码相关联。维度扩展-成本中心组基础设置_物理表点添加物理表,CA_CostCenterGroupDetail,该表有成本中心编码cCostCenterCode维度扩展-成本中心组基础设置_物理表关系添加关联关系,将CA_CostCenterGroup的cGroupCode与CA_CostCenterGroupDetail的cGroupCode关联。然后基础属性中添加字段,选择物理表CA_CostCenterGroupDetail,勾选成本中心编码cCostCenterCode维度扩展-成本中心组按以上步骤设置,成本中心组定义就设置好了。维度扩展-成本中心组产品投入产出汇总表查询后点击维度扩展选择复制的成本中心组定义实体,设置关联关系Cdeptid=cCostCenterCode维度扩展-成本中心组点中关联的成本中心组定义实体,勾选上成本中心组编码和成本中心组名称后保存维度扩展-成本中心组查看成本中心组编码和名称就显示出来。PART2维度扩展-产出类型维度扩展-产出类型如何添加产出类型字段,并显示其中文名称?数据字典查看产出类型(ProductType)字段在mom_moallocate表。(1:空/2:联产品/3:副产品);使在数据引擎设计中添加该字段,产品投入产出汇总表只会显示产出类型为1,2,3,无法显示联产品、副产品这样的中文名称。维度扩展-产出类型方案:找到订单子件维度扩展实体,该实体中存在生产订单相关表,mom_order,mom_orderdetail,mom_moallocate,先修改为维度实体维度扩展-产出类型在枚举属性中添加,枚举值表选择mom_moallocate,枚举值表选择产出类型字段ProductType字段,枚举选择BO.ProductType.枚举类型通过该语句获取的selectFieldName字段名称,EnumType枚举类型,*fromvoucheritems_basewhereFieldName='ProductType'维度扩展-产出类型对产品投入产出汇总表做维度扩展生产订单号和行号关联产品投入产出汇总表的产品编码与订单子件维度扩展的子件材料编码进行关联维度扩展-产出类型最后勾选显示时勾选增加的枚举字段,不要勾选原有的ProductType字段。使用增加的枚举字段正常显示中文名称维度扩展-产出类型保存维度扩展之后查询报表产出类型显示正确中文名称。PART3维度扩展-销售订单号、生产批号维度扩展-销售订单号、生产批号产品投入产出汇总表,产品投入产出明细表如何显示销售订单号?(前提需求跟踪方式为销售订单号)开始菜单中,找到uap登录,点中客户化,点菜单栏的工具-数据引擎设计器,找到订单表体维度扩展,右键复制,双击打开复制的实体,将类型改为维度实体(复制的默认为查询实体)找到SoCode(需求跟踪号)即销售订单号。如果需要显示为销售订单号可点编辑,将需求跟踪号改为销售订单号维度扩展-销售订单号、生产批号进入产品投入产出汇总表,选择复制的订单表体维度扩展实体,设置关联关系MoCode=cmocode(订单号),sortseq=imosubsn(订单行号)维度扩展-销售订单号、生产批号点击订单表体维度扩展,找到SoCode(销售订单号)保存。如果需显示生产订单上的生产批号,之前的操作设置一样。在此找到MoLotCode(生产批号)将其勾选保存即可生产订单的关闭日期也可以根据此方式进行维度扩展-常见问题 产品投入产出明细表,扩展显示出销售订单号和生产批号。用订单行号进行关联时会提示:与主表关联属性数据类型不一致?原因:产品投入产出明细表的订单行号imosubno是String属性,订单表体维度扩展中的Sortseq为Int32属性维度扩展-销售订单号、生产批号方案:回到uap的数据引擎设计器中,将订单表体维度扩展的订单行号修改属性。点击编辑,修改为String属性维度扩展-销售订单号、生产批号再对产品投入产出明细表做维度扩展,imosubno和sortseq关联上;同样设置关联关系MoCode=cmocode(订单号),sortseq=imosubsn(订单行号)维度扩展-常见问题保存后会提示:无法绑定由多个部分组成的标识符’ca_Ex_orderdetails1_mom_orderdetail.sortseq’?原因:与刚才改了sortseq的属性为string有关需关联后再次返回数据引擎设计器,将复制的订单表体维度扩展中的sortseq的属性改回Int32维度扩展-常见问题调整sortseq的属性为Int32,再次查询产品投入产出明细表正常维度扩展-常见问题 产品投入产出汇总表维度扩展后查询出现提示:列名qczd2无效?方案:UAP-客户化,双击打开产品投入产出汇总表维度扩展-常见问题找到期初待转辅助费用,将数据源改为期初待转其他保存。再次查询正常。