NC57开发文档(修改版)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

一、搭建开发环境工具:Eclipse数据库:Oracle安装NC模块并建立帐套用户。1.1安装和配置插件首先下载nc.uap.mde系列插件,然后安装,安装即把插件直接考贝Eclipse的plugin目录下,由于Eclipse的bug,如果曾经安装过,请把configuration目录下的内容除了config.ini外其他文件都删除,在此启动Eclipse即可。设置Window-Prefreence-MDEDevelopmentNCHome:基础技术平台的运行环境根目录。复选框Includeclientclass/jarinBuildClasspath:表示是否把模块的client下的类加入到构件路径。如果你的模块不依赖别的模块的客户端代码,请取消该选择。DatasourseDriverList:开发环境的配置信息(在配置时,要把其他的配置信息删除掉,只留下design),关联文件在NCHome的\ierp\bin\prop.xml。DatabaseType:数据库类型,选择的是ORACLE11G。ModuleSelectionNC模块勾选。ClientConnection客户端连接配置,对应机器ip和端口。启动客户端时根据此处配置连接。1.2新建MDE项目直接创建:FileNewProjectMDEDevelopmentModuleproject,按照Wizard进行工作,开发一个新的工程项目转化:方式为在一个非MDE工程中,右击工程,在弹出菜单中点击ConverttoModuleProject。src/public:存放服务接口和实体类(VO),前台调用后台文件的接口。src/private:后台实现类。src/client:前台UIMETA-INF:配置文件针对上面的卡法模式,我们规范一下代码的包结构:nc.itf.模块名:表示该模块定义的接口(public)nc.impl.模块名:表示该模块定义的接口实现(private)nc.vo模块名:表示VO的实现(public)nc.bs.模块名:普通的后台应用(private)nc.ui.模块名.*:客户端代码(client)1.3建立数据表命名规则表名:模块名_XXX主键:pk_XXX(必须是20位的字符)建立PDM文件,表字段:pk_group:所属集团char(20)pk_corp:公司char(4)creator:创建人char(20)createtime:创建时间char(19)modifier:修改人char(20)modifytime:修改时间char(19)dr:删除标识int默认值:default0ts:时间戳char(19)默认值:defaultto_char(sysdate,’yyyy-mm-ddhh24:mi:ss’)建立完成后将相应sql复制并生成到相应数据库中。1.4生成VO启动中间件:项目右键-DebugAsNCMiddleware启动客户端:项目右键-DebugAsNCClient步骤如下图所示:导入数据字典:进入NC,客户化二次开发工具系统管理工具数据字典管理选中对应模块(没有就新建一个)工具导入数据字典…1212345根据向导导入即可,导入完成后检查每个表的各个字段和类型是否正确或者是否为空。确认无误后则可以根据数据表生成VO了生成VO文件:二次开发工具UAP集成开发工具UAP集成开发工具工具和选项根据数据源生成VO生成目录:选择对应的项目VO目录选择数据表:对应要生成VO的数据表1.5功能注册注册菜单结点二次开发工具系统管理工具功能注册在对应的菜单结构下建立结点:步骤如下图所示12可执行功能节点对应文件名或控件名:nc.ui.uif2.ToftPanelAdaptor虚功能节点可执行功能节点参数参数编码:BeanConfigFilePath参数值:对应目录下的xml路径1.6配模板单据模板二次开发工具模板管理单据模板初始化生成xml之后在对应目录下找到xml的路径,然后再填写选中表拖动到左边1.7分配默认模板菜单结点关联模板二次开发工具系统管理工具功能结点默认模板选择单据模板,查找到之前配置好的单据模板分配给对应菜单节点就可以了。查询、打印模板同理。具体步骤如下图:选中模板选项之后,在高级属性和显示属性这里可以进行一些相应的配置。1.7接口(src/public)src/public/student/port/IStudentManageService.javaimportnc.vo.StudentVO;importnc.vo.pub.BusinessException;publicinterfaceIStudentManageService{/*--------增加-------*/publicStudentVOinsertInfo(StudentVOVO)throwsBusinessException;/*--------修改-------*/publicStudentVOupdateInfo(StudentVOVO)throwsBusinessException;/*--------删除-------*/publicvoiddeleteInfo(StudentVOVO)throwsBusinessException;}12选中功能节点3选中45src/public/student/port/IStudentQueryService.javaimportnc.vo.StudentVO;importnc.vo.pub.BusinessException;publicinterfaceIStudentQueryService{/*--------sql查询-------*/publicStudentVO[]queryInfoByCondtion(StringsqlWhere)throwsBusinessException;/*--------pk查询-------*/publicStudentVOqueryInfoByPK(Stringpk)throwsBusinessException;}1.8实现接口(src/private)StudentManageServiceImpl实现接口IStudentManageServiceimportnc.bs.dao.BaseDAO;importnc.jdbc.framework.processor.ColumnProcessor;importnc.vo.StudentVO;importnc.vo.pub.BusinessException;importstudent.port.IStudentManageService;publicclassStudentManageServiceImplimplementsIStudentManageService{publicStudentVOinsertInfo(StudentVOvo)throwsBusinessException{Stringsql=selectcount(*)frombl_studentwherestucode=+'+vo.getStucode()+';intnum=(Integer)newBaseDAO().executeQuery(sql,newColumnProcessor(1));if(num0){thrownewBusinessException(学号重复!);}Stringpk=newBaseDAO().insertVO(vo);return(StudentVO)newBaseDAO().retrieveByPK(StudentVO.class,pk);}publicStudentVOupdateInfo(StudentVOvo)throwsBusinessException{Stringsql=selectcount(*)frombl_studentwherestucode='+vo.getStucode()+'andpk_student'+vo.getPk_student()+';intnum=(Integer)newBaseDAO().executeQuery(sql,newColumnProcessor(1));if(num0){thrownewBusinessException(学号重复!);}newBaseDAO().updateVO(vo);return(StudentVO)newBaseDAO().retrieveByPK(StudentVO.class,vo.getPk_student());}publicvoiddeleteInfo(StudentVOvo)throwsBusinessException{newBaseDAO().deleteVO(vo);}}StudentQueryServiceImpl实现IStudentQueryServiceimportjava.util.Collection;importnc.bs.dao.BaseDAO;importnc.vo.StudentVO;importnc.vo.jcom.lang.StringUtil;importnc.vo.pub.BusinessException;importstudent.port.IStudentQueryService;publicclassStudentQueryServiceImplimplementsIStudentQueryService{publicStudentVO[]queryInfoByCondtion(StringsqlWhere)throwsBusinessException{if(StringUtil.isEmpty(sqlWhere)){sqlWhere=isnull(dr,0)=0;}@SuppressWarnings(unchecked)CollectionStudentVOlist=newBaseDAO().retrieveByClause(StudentVO.class,sqlWhere);returnlist==null?null:list.toArray(newStudentVO[list.size()]);}publicStudentVOqueryInfoByPK(Stringpk)throwsBusinessException{if(StringUtil.isEmpty(pk)){returnnull;}returnqueryDataByPK(pk);}publicStudentVOqueryDataByPK(Stringpk)throwsBusinessException{return(StudentVO)newBaseDAO().retrieveByPK(StudentVO.class,pk);}}1.9配置前台文件(src/client)BookTypeAppModelService应用服务类,负责进行模型操作的处理,如:增、删、改importnc.bs.framework.common.NCLocator;importnc.ui.uif2.model.IAppModelService;importnc.vo.StudentVO;importnc.vo.uif2.LoginContext;importstudent.port.IStudentManageService;publicclassStudentAppModelServiceimplementsIAppModelService{publicvoiddelete(Objectarg0)throwsException{//调用实现类的方法NCLocator.getInstance().lookup(IStudentManageService.class).deleteInfo((StudentVO)arg

1 / 18
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功