当前位置:文档之家› ERP二次开发规学习手册

ERP二次开发规学习手册

TIPTOP GP ERP二次开发规范说明TIPTOP ERP共分三大区:topstd(标准区) + toppord(正式区) + toptest(测试区)标准区正式生产环境用户测试,MIS程序客制测试┧━━━━━━┸━━━━━━┫目录结构和topprod完全一样标准tiptop($TOP)客制topcust($CUST)┧━━━━━━┳━━━┳━━━━━┳━━━┳━━━━╀━━━━━┫┗→目录结构和$TOP完全一样,只不过模组目录都是c开头的了config doc ds4gl2 ora out schema各模组目录(axm、asf...截止5.25已经有47个模组+sub+lib+qry)config:配置文件目录(top.global全局变量、4ad各程序ACTION列表、4st画面风格、4tb界面按钮风格、等)doc:帮助文档+系统图片目录ds4gl2:一些脚本目录,如r.c2、r.l2等ora:一下数据库应用查询脚本,如q_tabFREE等out:临时目录schema:数据库sch文件目录各模组目录:4fd画面档目录、per画面档编译后per目录、4gl源码档、42m、42rGenero Studio文件说明说明:$XXX表示各个模组;√:服务器必须文件;×服务器可选文件4pw:Genero Studio项目工程文件(位于服务器目录:$XXX/4pw)×4fd:画面档(位于服务器目录:$XXX/4fd)√per:gsform后4fd画面档对照文件(4fd经过gsform后的文件,位于服务器目录:$XXX/per)√42f:编译后的画面档文件(4fd经过r.f2后的文件,位于服务器目录:$XXX/per)√4gl:源码档(位于服务器目录:$XXX/4gl)√42m:编译后的源码链接档(4gl经过r.c2后的编译档,位于服务器目录:$XXX/42m)√42r:链接后的可执行文件(42m经过r.l2后的链接档,位于服务器目录:$XXX/42r)√4rp:报表文件(位于服务器目录:$XXX/4rp)×sch:数据库表结构文件(位于服务器目录:$XXX/sch)×TIPTOP ERP客制规范命名原则程序命名原则:X XX(3码)X(2码)XXX(3-5码)模组名程序类型流水号模组名:①如果为标准程序,程序名一定是a开头,程序位于对应的$AXX模组目录②如果修改标准程序,有些公司是修改为c程序有些公司还是用原来的a程序........................................................但是目录一定都是对应的$CXX模组目录③如果是新增程序,程序名一定是c开头,程序目录一定是对应的$CXX模组目录程序类型:r报表类程序、i基础资料类程序、q查询类程序、t交易类程序、p批处理类程序、s参数类程序流水号:一般随便编录,不重复就好;专业些就是同一作用的程序流水号一类$AZZ程序都是p_开头,规则不同与上$LIB为共用查询程序,都是cl_开头- $CLIB为客制共用查询程序,都是ccl_开头$SUB为副程序,都是s_开头- $CSUB为客制副程序,都是cs_开头$QRY为查询程序,都是q_开头- $CQRY为客制查询程序,都是cq_开头程序内部FUNCTION函数命名原则:X(2码)XXX(3-5码)_功能()常见功能函数如下:_menu:action功能菜单_q:开始查询,调用_fetch查取第一笔资料_cs:QBE条件查询及查询游标声明_fetch:N、P、F、L、/ 处理下、上、第一笔、末笔、指定笔单头资料读取,并调用_show显示资料_show:显示单头资料,如需要并调用_b_fill填充单身资料_a:新增,并先后调用_i(a)输入单头资料和_b输入单身资料_i:根据函数接受的参数a新增资料、u更新资料_u:更新,调用_i(u)更新资料_b:单身CRUD业务逻辑_b_fill:单身资料填充_bp:显示单身资料,提供单身action功能选项_r:删除整笔资料_out:打印函数_x:资料无效、有效处理_pic:显示或刷新图片_ef:EasyFlow送签_y:确认_z:取消确认_s:过账_w:过账还原_gen/_g:一般为根据某action自动产生单身资料_sub_y_chk或_y_chk:一般为复杂逻辑t程序"确认"动作时执行资料逻辑检查_sub_y_upd或_y_upd:一般为复杂逻辑t程序“确认”动作时执行资料更新_sub_refresh:一般为复杂逻辑t程序"确认"、"取消确认"、"过账"、"过账还原"动作更新后的资料刷新_sub_s:一般为复杂逻辑t程序“过账”_set_entry:设置单头栏位可进入录入资料_set_no_entry:设置单头栏位不可进入录入资料_set_entry_b:设置单身栏位可进入录入资料_set_no_entry_b:设置单身栏位不可进入录入资料_set_required:设置栏位为必须输入资料_init:初始化程序栏位是否可视,ACTION是否可视_a_default:新增资料时赋初值_b_move_to:单身栏位赋值、备份_b_move_back:单身栏位值还原修改数据库表栏位命名规则:①.修改现有表现有列:表列名称不变,只是旗标会自动由标准变成客制②.在现有表上增加列:表列规则ta_原表流水号,ex:ta_ima001③.新增表:表名及表列规则都是tc开头,表tc_xxx_file,表列tc_xxx流水号,ex:tc_lee_file,tc_lee001TIPTOP GP ERP 二次开发流程前提:熟悉基础的Linux命令+4GL基础语法+SQL语法,你可以看看本手册里面对应目录的相关资料一、p_zta增加或修改表(如果不用改表,这步可以跳过)修改表要数据库DBA的权限,如果你的账号没有这个权限可以在Linux服务器上用root执行一下脚步usermod -a -g dba Linux用户名(ex:为liyihui这个账号添加数据库dba组的权限usermod -a -g dba liyihui)(注意:是小g不是大G,大G是标准组,会覆盖之前用户所在的组,而不是添加组了)1、登入p_ztaDBA2、新增或修改表注意:你至少需要新增或修改ds库和程序业务使用的数据库,ds库是程序编译时参照的库(比如LIKE ima_file.tc_ima01)①.如果是新建表,先建立p_zta资料后,然后点击;如果是修改表就不用做这步骤了②.然后点击,根据是新增表还是修改表选择对应的选项操作//非必须操作③.更新ds.sch,Linux服务器上执行命令r.s2 ds //非必须操作,p_zta最后会自动r.s2一下我的技巧:如果多个营运中心都需要建立同一张表,我是这么做的①.ds帐套在p_zta按上面的流程建立表②.其他帐套在PL/SQL执行SQL:CREATE TABLE 表AS SELECT * FROM ds.表③.复制出zta_file及ztb_file该表的信息(将所属者改为其他帐套,每个帐套一份)④.再到p_zta里面,修改各个帐套的表的索引就OK了二、如果是将a标准程序修改为c客制程序,这里先做;如果是新增程序直接跳过本步骤为什么要先插入这一步:这样r.gf 客制程序2 c后自动新增的p_perlang和p_per就不用维护什么资料了1、p_perlang复制a标准程序的画面档资料为c客制程序的画面档资料p_perlang先查询出标准程序的资料-> 再按c(拷贝)-> 写入客制程序的代码+ 勾选"客制"栏位ex:先查询asft620的资料,然后复制(按c)将asft620客制为csft6202、p_per同理三、新增或修改4fd画面档及4gl程序源码档1、Linux服务器上下载ds.sch (如果做的4fd不用参照表就不用下载了,比如一些报表)Linux服务器上执行sz $TOP/schema/ds.sch2、打开Genero Studio软件,开始绘制4fd画面档①.建立Genero Studio的工程项目(注意是 .4pw 的工程项目工程文件哟)点击Ctrl + S 先保存项目文件,这是个人经常性按Ctrl+S保存文件的习惯^_^②.导入前面下载的ds.sch文件到工程文件中(否则等下做4fd画面档时会出现找不到表的情③.将导入的ds.sch 文件保存到工程文件中的Databases目录下面④.新建或修改4fd画面档对于新建4fd画面档时,我一般都是先摆好所有的控件,然后选择对应同一个表的所有控件(Ctrl可多选),再一起修改对应的表做画面档对于单身栏位,在单身列中间插入列时,该列在单身对应的SR变量里面一直摆在最后面,而不是对应的位置,需要手动调整一下(选中上下拉就可以了):⑤.rz -y 上传4fd档到服务器上对应的ERP模块4fd路径下面(Ex:$CSF/4fd),编译且预览画面档r.f2 4fd画面档(Ex:r.f2 csft620)r.gf 4fd画面档(Ex:r.gf csft620 2 c)(2:是语言别,表示中文简体;c:表示客制,如果是标准模块则换成p)⑥.新建或修改4gl源码档写4gl代码说明编辑器都可以,但个人还是喜欢用Genero Studio,因为有关键字着色、语法预警等功能⑦.rz -y 上传4gl源码档到服务器上对应的ERP模块4gl路径下面(Ex:$CSF/4gl),编译4gl(暂不链接)r.c2 源码档(Ex:r.c2 csft620)⑧.p_link查询出原标准程序的链接档,然后按C(复制)出客制程序的链接档,修改对应的项为客制目录下面的文件就可以了再新增p_zz里面的资料,注意p_zz里面的运行指令及模组都要改成客制目录⑨.回到服务器,链接程序r.l2 源码档(Ex:r.l2 csft620)⑩.回到p_zz,点击进入p_base_act程序后,一点要点击一下单身,然后退出,选择重新生成4ad档,才能在程序里面正确显示对应的ACTION如果不是tiptop账号,你需要$TOP/config/4ad整个目录文件的权限才可以成功生成新的程序的4ad文档四、根据需要,p_zm挂载程序到ERP目录里面及开通权限等........p_zm执行时,如果不是tiptop账号,你需要$TOP/config/4sm目录及文件的权限才可以成功生成menu.4sm目录文件。

相关主题