资源描述:
《nc开发经验总结【v10】【单据部分】》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、NC开发经验总结【V1.0】钟磊2009-6-27locatedintheTomb,DongShenJiabang,deferthenextdayfocusedontheassassination.Linping,Zhejiang,1ofwhichliquorwinemasters(WuzhensaidinformationisCarpenter),whogotAfewbayonets,duetomissedfatal,whennightcameNC开发涉及到的知识点多且琐碎,鉴于用友本身没有非常详细的文档且UAP平台本身的缺陷,
2、造成我们开发人员经常会碰到许多莫名其妙的错误。解决这些错误又非常耗费时间和经历。因此,我个人总结了一些单据开发过程中的心得与大家共享,希望能对各位的开发产生帮助。NC单据的开发分为以下几步:1、建数据库表;2、导入数据字典;3、选择GUI界面类型;4、绑定数据模型;设置主子表设置值对象关系5、使用表单设计器设计表单;6、定义表单程序的按钮;选择系统预制按钮建立自定义按钮并选择7、定义业务动作脚本;8、校验规则设定;9、生成及部署代码;下面对每步开发过程中可能会碰到的疑难问题做下总结。1、建数据库表:1.1此步操作会在数据库中注册相
3、应的节点信息。1.2命名规范:建议主表名称使用projectname_tablename_h,主表主键使用pk_tablename_h建议子表名称使用projectname_tablename_b,子表主键使用pk_tablename_b主表必须存在公司主键且公司主键必须使用pk_corp,数据库数据类型为CHAR(4)单据必须有ts、dr字段,对应数据库数据类型分别为CHAR(19)、SMALLINT下面是业务中用到的数据模型在数据库及NC中的对应模型:业务模型数据库模型NC数据类型主键型数据CHAR(20)Stringpk_c
4、orpCHAR(4)StringBoolean类型CHAR(1)UFBoolean日期类型CHAR(10)UFDate时间类型(ts)CHAR(19)UFDateTimedrSMALLINTInteger整数型INTInteger浮点型DECIMAL(20,8)UFDouble普通字符串VARCHAR(250)String1.3建PDM的时候要注意不要遗漏主键标志,否则会造成单据保存时莫名的错误。locatedintheTomb,DongShenJiabang,deferthenextdayfocusedontheassassin
5、ation.Linping,Zhejiang,1ofwhichliquorwinemasters(WuzhensaidinformationisCarpenter),whogotAfewbayonets,duetomissedfatal,whennightcame子表中必须包含主表主键,且名称必须同主表主键名称pk_tablename_h2、导入数据字典:1.1此步操作会将数据字典以大字段的形式保存入数据库中的数据字典表中。1.2数据字典和单据模板中的字段并不是引用的关系,而是借助数据字典的内容自动生成的模板,因此数据字典变化不会
6、引起单据模板变动,这点需要认知清楚。1.3建议导入数据字典时导入到选定的目录里,不要放在根目录下。1.4导入过程中如碰到点击下一步没有反应,请首先检查PDM中信息是否有问题,比如DataType是否还是之类的问题。3、选择GUI界面类型:1.5此步操作未在数据库中储存关键性脚本,所有配置均用于生成框架代码。。1.6卡片界面、列表界面、管理界面的UI继承的类不同,一般单据管理界面即可。1.7如无审批流则建议使用基本档案单据。业务单据中必须另外包含以下字段:单据主表:名称编码数据库模型公司主键pk_corpCHA
7、R(4)单据号vbillnoCHAR(20)数据权限datalimitCHAR(20)制单人voperatoridCHAR(20)制单日期doperatordateCHAR(10)审批人vapproveidCHAR(20)审批日期dapprovedateCHAR(10)审核批语vapprovenoteVARCHAR(250)最后修改人vrevisoridCHAR(20)最后修改日期drevisedateCHAR(10)备注vnoteVARCHAR(250)locatedintheTomb,DongShenJiabang,defer
8、thenextdayfocusedontheassassination.Linping,Zhejiang,1ofwhichliquorwinemasters(WuzhensaidinformationisCarpenter),whogotAfewb