55预算控制——nc55版本报销管理中单据增加的自定义项如何进行预算控制NC产品支持部崔树成csc@ufida.com.cn客户需求在报销管理中想解决在一张报销单据中可以实现一笔费用多各部门承担的,并且进行预算控制。为了实现这个需求,需要在差旅费报销单和通用费用报销单的增加自定义项--费用承担部门,使预算模块通过对费用承担部门的费用控制实现对费用报销的控制1、针对单据增加自定义项;2、增加自定义项费用承担部门,参照部门档案;3、并将此自定义项费用承担部门引用到单据体的自定义项6(defitem6);4、将业务页签的自定义项6(defitem6)进行显示,在财务页签增加自定义项1(defitem1)。5、执行脚本updateFIBILL_FIELDCONTRASTsetbusi_attfield='zb.fydeptid'wherecommon_attfield='fb.zrdeptid'andsubsys_id='erm'andbilltypecode='264X';insertintontb_id_bdcontrast(att_fld,att_fld_desc,bdinfo_type,bill_type,busi_type,busisys_id,busisys_name,dr,levelctlflag,pk_bdinfo,pk_obj,ts)values('fb.defitem1','自定义费用部门档案','部门档案',null,'发生额','FI_BILL','财务单据',0,'Y','00010000000000000002','0001eeHI000000000255','2009-11-2712:00:00');insertintoFIBILL_FIELDCONTRAST(PK_FIELDCONTRAST,SUBSYS_ID,BILLTYPECODE,COMMON_ATTFIELD,BUSI_ATTFIELD,RESERVED1,RESERVED2,TS,DR)Values('contZ3erm000sd000255','erm','264X','fb.defitem1','fb.defitem1',null,null,'2009-11-2712:00:00',0);updatedap_defitemsetpk_bdinfo='00010000000000000002'wherepk_billtypelike'264%'andheadflag='N'andattrname='defitem1';6、在预算中的控制方案中就可以参照到对应的字段了;7、脚本使用说明:在V5.5中,如果增加一个自定义项档案控制,除了使用转发邮件中的那条sql语句插入ntb_id_bdcontrast一条记录外,insertintontb_id_bdcontrast(att_fld,att_fld_desc,bdinfo_type,bill_type,busi_type,busisys_id,busisys_name,dr,levelctlflag,pk_bdinfo,pk_obj,ts)values('p1','名称,'p2',null,'发生额','NC_ARAP','应收应付',0,'Y','p3','p4','2006-08-0315:08:27')说明:其中:名称是显示名称;p1代表字段名称。规则:表名+“.”+字段名称例如:zb.zyx1表示单据表头的的自定义项1;可以按业务含义自取p2代表使用的档案名称。注意:档案名称必须与bd_bdinfo中的名称一致;p3代表p2代表的档案对应的bd_bdinfo中的pk;p4是插入记录的主键,只要是20位并且不与现有pk重复就可以。还需要在表FIBILL_FIELDCONTRAST中对应增加一条记录InsertintoFIBILL_FIELDCONTRAST(PK_FIELDCONTRAST,SUBSYS_ID,BILLTYPECODE,COMMON_ATTFIELD,BUSI_ATTFIELD,RESERVED1,RESERVED2,TS,DR)Values(p1,p2,p3,p4,p5,NULL,NULL,'2008-09-0211:33:21',0);说明:p1:主键p2:使用自定义档案控制的单据所属子系统,取值为cmp、arap、ss、yt、erm中的一个,分别代表现金管理、收付、事项审批、预提系统、报销管理p3:单据大类,取值为sj、fj、sk、fk、ys、yf、ss、yt中的一个,分别代表收结单、付结单、收款单、付款单、应收单、应付单、事项审批单、预提单p4:对应上面那条语句中的p1;可以按业务含义自取p5:实际单据子系统表中对应的字段名称,规则为表名+“.”+字段名称,例如:zb.zyx1表示单据表头的的自定义项1;zb表示表头,fb表示表体脚本说明:执行完注册脚本后,请更新缓存测试