TIPTOP GP ERP Program Life Cycle
.......GUI登录,此登录程序通过GDC创建,详细参考TIPTOP ERP客户端安装手册
↓
1. /bin/login ........ Linux服务器/bin/login程序
↓
2. /etc/passwd ........ 校验用户、用户密码、加载用户shell及用户目录等信息,例tiptop:x:500:502::/u1/usr/tiptop:/bin/ksh
↓ ┖→用户名:用户密码:用户ID:用户组:用户说明:用户目录:用户使用SHELL
3. /etc/profile ........ Linux服务器全局配置文件(一般为一些系统服务配置,ex:JAVA_HOME、apache服务配置....)
↓
4. 用户目录下的配置文件:.profile、.bash_logout、.bash_profile、.bashrc .... 用户全局环境变量or其他信息配置
4.1 . ┖→➊.如果是topgui普通用户,则.profile配置直接执行udm7(exec udm7)
┖→➋.如果是tiptop 开发用户,则.profile配置会依据选择的GP区执行不同的profile
↓
4.2 . /u1/usr/tiptop(或其他开发用户)/.profile ........选择区[(1)topprod、(2)toptest、(3)exit]
↓
4.3. ➊.如果选择(1)topprod,则执行/u1/usr/profile/profile.topprod┓
➋.如果选择(2)toptest, 则执行/u1/usr/profile/profile.toptest ┖→ 设置环境变量,如
$FGLPROFILE、$AXM、$AXMi、$ORACLE_SID等
┎┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┛
↓
5. <topprod:/u1/topprod/tiptop>udm7 ....... 如果是weblog,则设置环境变量WEBUSER=$2;export WEBUSER
↓
6. $FGLRUN $AOO/aoos901.42r ....... aoos901营运中心选择 (一下是单个程序流程,系统其它所有程序都是如此)
┗┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┓
↓ ┎ cl_key_check0()检查installation key
6.1 . CALL cl_user() ....... ┽ 切换营运中心:DATABASE到用户上次登录的营运中心或p_zx预设营运中心
↓ ┖ 根据用户登录及p_zx信息初始化一些全局变量,ex:g_user、g_dbs、g_lang、g_grup等
6.2. CALL cl_setup("A|C模组") .......┎ 检查程序是否有执行权限
↓ ┣ aza_file,sma_file,全局变量;aaz_file总账参数及会计期间检查及根据"模组"加载此模组的参数
┕ 根据程序p_zz资料取画面style:zz27、报表类型zz06设定资讯
6.3. CALL cl_check_license() ....... 验证用户授权数,其他程序不用调用此函数
↓
6.4 . CALL cl_used(g_prog,g_time,1)RETURNING g_time .....记录程序开始运行时间->zu_file
↓
┏ OPENWINDOW xxx WITH FORM xxxxxx ..... 开启画面档
6.5. ┩ ↓ ┎设置配置文件路径:/u1/topprod/tiptop/config
┗ CALL cl_ui_init() .... 界面风格初始化 ┽ 加载界面各初始配置文件
↓ ┖ 显示Label
CALL i221_menu() .....功能菜单选项
↓
6.6 . 权限检查及CRUD等业务逻辑,执行选择的action功能
┎┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┛
↓
7. ×或ESC 退出程序 CLOSE WINDOW xxx ..... 关闭画面档
↓
8. CALLcl_used(g_prog,g_time,2)RETURNING g_time ..... 记录程序结束时间->zu_file
↓
9. ●结束
附:对于6.5. CALLcl_ui_init()说明
A、CALLcl_ui_init() ....界面风格前后对比
后
B、CALLcl_ui_init() ①②③④⑤⑥加载界面原理说明
首先设置配置文件路径: cl_set_config_path()
加载画面风格: cl_load_style_list(NULL) ....详细说明请参考TIPTOP ERP画面风格定制
①.Windows Title ....显示程序名称、公司信息、使用者资料、帐套信息、时间
CALL cl_dsmark(1)
CALL ui.Interface.setText(ls_win_name)
CALL ui.Interface.setImage("logo")
②/③.TopMenu/ToolBar ....根据zz_file中zz03的设置,抓取tiptop/config/4tb和4tm目录下的程序特定的xml配置文件
CALL cl_load_action_view()┓
TopMenu┖→ui.Interface.loadTopMenu($CONFIG/4tm/模组/对应程序的特定4tm文件)
ToolBar┖→ui.Interface.loadToolBar (程序p_zz设置的对应的zz03中的toolbar style找到$CONFIG/4tb下的xml配置文件)
关于toolbar风格详细介绍请参考TIPTOP ERP画面风格定制
④.ActionDefaultList
CALL cl_set_act_lang(NULL) .... 设定程序ACTION语言别,因为不同的语言ACTION列表xml配置文件中文说明会不一样
CALL cl_load_act_sys(NULL) .... 设定系统共用都有的ACTION,即$CONFIG/4ad/语言别/tiptop.4ad
CALL cl_load_act_list(NULL) .... 设定各个程序对应的ACTION,即$CONFIG/4ad/语言别/模组/对应程序.4ad
┖→ui.Window.getCurrent().getForm().loadActionDefaults(4ad配置文档)
CALL cl_act_noauth_disable()....根据整体参数aza22是否隐藏无权限的ACTION
⑤/⑥.画面Label语言说明/画面栏位说明 ..... 根据p_per资料设定程序画面栏位说明、memo、坐标点等
CALL cl_ui_locale(NULL) ..... 共用程序传递NULL
CALL cl_ui_locale(ms_frm_name) ..... 其他传递程序名称
⑤ ┖→CALL cl_set_attribute("text", pnode_target, ps_text)
⑥ ┖→CALL cl_set_attribute("comment", pnode_target, ps_comment)
pnode_target.setAttribute(ps_type, ps_value)
http://blog.csdn.net/yihuiworld