========================================================================
分析一个查看函数的技巧,有两种方法:
r.r adzp280 函数名
- 设计器中,选中函数,鼠标右键【查看函式】或 快捷键 Ctrl + i
即可查看到该函数的最初定义:
===========================================================================
| 键符 | 意义说明 | 备注 |
| — | — | — |
| Ctrl + g | 执行作业 | |
| ESC | 结束功能、离开程序 | |
| alt + n / p /f / l | 下一笔/上一笔/第一笔/最后一笔 | n / p / l / f 也可以 |
| Ctrl + q | 查询数据 | 使用QBE |
| Ctrl + i | 新增数据 | |
| Ctrl + d | 删除数据 | |
| Ctrl + m | 更改数据 | |
| Ctrl + r | 复制数据 | |
| Alt + m | 切换查询方案与主窗体。 | 多用于单据作业 |
| Alt + s | 隐藏单头 | |
============================================================================================
一些常见的全局变量
g_enterprise
:企业编号
g_site
:营运据点
g_prog
:程序编号
g_today
:今天的日期,一般用来赋初值
我把 top_global.inc文件导出了…顺便转成了简体,放在这里有需要时查询:
SCHEMA ds
GLOBALS
#执行作业
DEFINE g_clienttype LIKE type_t.chr1 #A:GMA/W:GWC/D:GDC
DEFINE g_sessionkey LIKE type_t.chr20 #TT Session Key=TIME+PID
DEFINE g_parentsession LIKE type_t.chr20 #父层Session Key
DEFINE g_ancestsession LIKE type_t.chr20 #祖层Session Key
DEFINE g_parentprog LIKE type_t.chr20 #父层作业编号
DEFINE g_prog LIKE type_t.chr20 #作业编号 (gzzz001)
DEFINE g_prog_industry LIKE type_t.chr10 #作业归属行业包
DEFINE g_actdefault LIKE type_t.chr20 #预设开启动作
DEFINE g_code LIKE type_t.chr20 #程式编号 (gzza001)
DEFINE g_template_type LIKE type_t.chr10 #程式类别 (gzza002)
DEFINE g_sys LIKE type_t.chr5 #模组别 (gzza003)
DEFINE g_chkey LIKE type_t.chr1 #是否允许更改KEY (gzza006)
DEFINE g_need_err_log LIKE type_t.chr1 #是否需要将错误讯息写入log档 (gzza010)
DEFINE g_idle_seconds LIKE type_t.num5 #INPUT(ARRAY)时允许Idle的秒数 (gzza012)
DEFINE g_gui_type LIKE type_t.num5 #GUI Type
DEFINE g_errno LIKE type_t.chr10 #错误讯息代码
DEFINE g_success LIKE type_t.chr1 #sub判断是否执行成功
DEFINE g_sub_success LIKE type_t.num5 #跨元件判断是否执行成功 (不透过return回传时使用)
DEFINE g_errshow LIKE type_t.num5 #错误讯息显示 TRUE显示/FALSE不显示
DEFINE g_t100debug LIKE type_t.chr1 #如果=9,显示DEBUG讯息
DEFINE g_t100azg0d LIKE type_t.chr1 #如果=9,显示DEBUG讯息
DEFINE g_bgjob LIKE type_t.chr1 #Background job
DEFINE g_lang LIKE type_t.chr6 #介面语言别 (gzzy001)
DEFINE g_dlang LIKE type_t.chr6 #资料语言别 (gzzy003)
DEFINE g_argv DYNAMIC ARRAY OF STRING #所有外部参数
DEFINE g_company VARCHAR(72) #公司名称
DEFINE g_enterprise LIKE type_t.num5 #体系 Enterprise 代码
DEFINE g_dbs LIKE type_t.chr21 #实体资料库名称
DEFINE g_site LIKE type_t.chr10 #营运据点名称
DEFINE g_plant LIKE type_t.chr10 #实体营运中心名称
DEFINE g_legal LIKE type_t.chr10 #法人代码
DEFINE g_version LIKE type_t.chr20 #版本
DEFINE g_max_rec LIKE type_t.num10 #5 #Table最大显示/输入笔数
DEFINE g_max_browse LIKE type_t.num10 #5 #浏览器最大显示笔数
#作业时间
DEFINE g_today LIKE type_t.dat #系统日期
DEFINE g_time LIKE type_t.chr8 #Execution time
DEFINE g_timezone LIKE type_t.chr80 #时区
DEFINE g_lastdat LIKE type_t.dat #世界末日
#执行人员
DEFINE g_user LIKE type_t.chr20 #使用者工号
DEFINE g_account LIKE type_t.chr20 #使用者编号/帐号
DEFINE g_roles STRING #使用者角色清单 (串接报表需求)
DEFINE g_dept LIKE type_t.chr10 #使用者部门代号
DEFINE g_grup LIKE type_t.chr10 #禁止使用,请改使用 g_dept 这个变数 #170928-00025#1
#执行权限
DEFINE g_data_owner LIKE type_t.chr20 #使用者资料权限
DEFINE g_data_dept LIKE type_t.chr10 #部门资料权限
DEFINE g_data_site LIKE type_t.chr10 #营运中心资料权限
DEFINE g_data_group LIKE type_t.chr10 #(to delete)
DEFINE g_priv_col DYNAMIC ARRAY OF RECORD #画面栏位授权资料
colid LIKE type_t.chr80, # 栏位编号
auth LIKE type_t.chr1, # 授权动作 1/不可见 2/加密 3/不可修改
crypt LIKE type_t.chr10, # 加密方法
type LIKE type_t.chr10, # 遮罩取用类型
idx LIKE type_t.chr10 # 遮罩启用指标位置
END RECORD
DEFINE g_progmasked BOOLEAN #作业是否已加上栏位遮罩 TRUE/FALSE
DEFINE g_data_crtid LIKE type_t.chr20 #建立者资料权限 #180201-00054
DEFINE g_data_crtdp LIKE type_t.chr10 #建立者部门权限 #180201-00054
#UI画面设定
DEFINE gs_config_path STRING #config资料夹的路径.
DEFINE gs_4st_path STRING #4st档案预设路径
DEFINE gs_4ad_path STRING #4ad档案预设路径
DEFINE gs_4sm_path STRING #4sm档案预设路径
DEFINE gs_4tb_path STRING #4tb档案预设路径
DEFINE gs_4tm_path STRING #4tm档案预设路径
DEFINE g_action_choice STRING #ON ACTION的名称
DEFINE g_show_item_value LIKE type_t.num5 #是否显现COMBOBOX,RADIOGROUP的项目储
DEFINE g_head_disable LIKE type_t.num5 #单头目前是否隐藏
DEFINE g_hidden_4tm BOOLEAN #是否不载入TopMenu TRUE:不载入, FALSE:载入
DEFINE g_hidden_4tb BOOLEAN #是否不载入ToolBar TRUE:不载入, FALSE:载入
DEFINE g_pos LIKE type_t.chr21
DEFINE g_mind LIKE type_t.dat
DEFINE g_maxd LIKE type_t.dat
#显示错误讯息
DEFINE g_errparam RECORD
code LIKE gzze_t.gzze001, #错误讯息编码
extend STRING, #出现在开头的延伸讯息字串 (有需要再设定)
popup BOOLEAN, #开窗否(azzi920强制开窗时无作用)
type LIKE gzze_t.gzze007, #讯息类型0:警告, 1:错误, 2:资讯(可不设, 依照azzi920预设值)
replace DYNAMIC ARRAY OF STRING, #替换错误讯息及建议处理方式中的%变数 (有需要再设定)
columns DYNAMIC ARRAY OF STRING, #栏位清单(对照栏位值清单) (有需要再设定)
#columns DYNAMIC ARRAY OF LIKE dzeb_t.dzeb001, #栏位清单(对照栏位值清单) (有需要再设定)
#columns DYNAMIC ARRAY OF LIKE gzzd_t.gzzd003, #栏位清单(对照栏位值清单) (有需要再设定)
values DYNAMIC ARRAY OF STRING, #栏位值清单(对照栏位清单) (有需要再设定)
coll_vals DYNAMIC ARRAY OF STRING, #汇总讯息额外栏位 - 值 (有需要再设定)
sqlerr LIKE type_t.num5, #SQLCA.SQLERRD[2] 或 SQLCA.SQLCODE (有需要再设定,0则不显示)
exeprog LIKE type_t.chr20, #建议执行作业编号 (有需要再设定)
param STRING #JSON格式的参数 (有需要再设定)
END RECORD
#讯息中心
DEFINE g_msgparam RECORD
state STRING, #执行模式
data DYNAMIC ARRAY OF STRING, #表单资料
rpt_code STRING, #报表验证码
rpt_url STRING, #报表 url
rpt_file STRING #报表 file
END RECORD
DEFINE g_coll_title DYNAMIC ARRAY OF STRING #汇总讯息额外栏位 - 标题(限定最多20个栏位) (有需要再设定)
DEFINE g_errcollect DYNAMIC ARRAY OF RECORD
code STRING, #讯息代码
message STRING, #讯息内容
adv_msg STRING, #进阶讯息
extra DYNAMIC ARRAY OF STRING, #额外栏位资讯
gzze006 STRING, #程式人员详细讯息
sqlerrd2 LIKE type_t.num5, #SQLCA.SQLERRD[2] contains the last SERIAL or the native SQL error code.
exeprog LIKE type_t.chr20, #建议执行作业编号
param STRING #JSON格式的参数 (有需要再设定)
END RECORD
#开窗查询专用变数
DEFINE g_qryparam RECORD
state LIKE type_t.chr1, #程式的状态(i→INPUT,c→CONSTRUCT,预设为i)
construct LIKE type_t.chr1, #No Use
reqry LIKE type_t.num5, #是否需要先qry再显示资料(TRUE:需要,FALSE:不需要,预设为FALSE)
where STRING, #查询资料的条件(一@般是从gab_file.gab02来设定)
pagecount STRING, #每页最大浏览笔数
default1 STRING, #开窗之相关栏位一的预设值
default2 STRING, #开窗之相关栏位二的预设值
default3 STRING, #开窗之相关栏位三的预设值
default4 STRING, #开窗之相关栏位四的预设值
default5 STRING, #开窗之相关栏位五的预设值
default6 STRING, #开窗之相关栏位六的预设值
default7 STRING, #开窗之相关栏位七的预设值
default8 STRING, #开窗之相关栏位八的预设值
default9 STRING, #开窗之相关栏位九的预设值
default10 STRING, #开窗之相关栏位十的预设值
arg1 STRING, #查询资料的条件替换值一@
arg2 STRING, #查询资料的条件替换值二
arg3 STRING, #查询资料的条件替换值三
arg4 STRING, #查询资料的条件替换值四
arg5 STRING, #查询资料的条件替换值五
arg6 STRING, #查询资料的条件替换值六
arg7 STRING, #查询资料的条件替换值七
arg8 STRING, #查询资料的条件替换值八
arg9 STRING, #查询资料的条件替换值九
return1 STRING, #回传资料一
return2 STRING, #回传资料二
return3 STRING, #回传资料三
return4 STRING, #回传资料四
return5 STRING, #回传资料五
return6 STRING, #回传资料六
return7 STRING, #回传资料七
return8 STRING, #回传资料八
return9 STRING, #回传资料九
return10 STRING, #回传资料十
multiret_index LIKE type_t.num5, #No Use
multiret STRING, #No Use
ordercons STRING, #No Use
str_array DYNAMIC ARRAY OF STRING #因应开窗状态m,接收多组字串资料的多个栏位
END RECORD
#cl_chk_validate.4gl专用变数
DEFINE g_chkparam RECORD
where STRING, #外部额外设定的WHERE条件
default1 STRING, #相关栏位一的预设值
default2 STRING, #相关栏位二的预设值
default3 STRING, #相关栏位三的预设值
default4 STRING, #相关栏位四的预设值
default5 STRING, #相关栏位五的预设值
default6 STRING, #相关栏位六的预设值
default7 STRING, #相关栏位七的预设值
default8 STRING, #相关栏位八的预设值
default9 STRING, #相关栏位九的预设值
arg1 STRING, #外部参数一
arg2 STRING, #外部参数二
arg3 STRING, #外部参数三
arg4 STRING, #外部参数四
arg5 STRING, #外部参数五
arg6 STRING, #外部参数六
arg7 STRING, #外部参数七
arg8 STRING, #外部参数八
arg9 STRING, #外部参数九
return1 STRING, #回传资料一
return2 STRING, #回传资料二
return3 STRING, #回传资料三
return4 STRING, #回传资料四
return5 STRING, #回传资料五
return6 STRING, #回传资料六
return7 STRING, #回传资料七
return8 STRING, #回传资料八
return9 STRING, #回传资料九
ls_title STRING, #统一显示在错误讯息多语言前面的字串
err_str DYNAMIC ARRAY OF STRING #替换错误讯息代号和错误讯息上的%变数
END RECORD
#cl_jmail.4gl专用变数
DEFINE g_xml RECORD
file LIKE type_t.chr50, #XML档名(不含路径,档案产生在$TEMPDIR底下)
mailserver LIKE type_t.chr30, #MAIL SERVER IP
serverport LIKE type_t.chr5, #MAIL SERVER Port
#user LIKE type_t.chr30, #MAIL SERVER User #171023-00034#1 mark
user LIKE type_t.chr80, #MAIL SERVER User #171023-00034#1 add
#passwd LIKE type_t.chr10, #MAIL SERVER User Password #170109-00040#1 mark
passwd STRING, #MAIL SERVER User Password #170109-00040#1 add
subject VARCHAR(300), #信件主旨
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
复习的面试资料
这些面试全部出自大厂面试真题和面试合集当中,小编已经为大家整理完毕(PDF版)
- 第一部分:Java基础-中级-高级
- 第二部分:开源框架(SSM:Spring+SpringMVC+MyBatis)
- 第三部分:性能调优(JVM+MySQL+Tomcat)
- 第四部分:分布式(限流:ZK+Nginx;缓存:Redis+MongoDB+Memcached;通讯:MQ+kafka)
- 第五部分:微服务(SpringBoot+SpringCloud+Dubbo)
- 第六部分:其他:并发编程+设计模式+数据结构与算法+网络
进阶学习笔记pdf
- Java架构进阶之架构筑基篇(Java基础+并发编程+JVM+MySQL+Tomcat+网络+数据结构与算法)
- Java架构进阶之开源框架篇(设计模式+Spring+SpringMVC+MyBatis)
- Java架构进阶之分布式架构篇 (限流(ZK/Nginx)+缓存(Redis/MongoDB/Memcached)+通讯(MQ/kafka))
- Java架构进阶之微服务架构篇(RPC+SpringBoot+SpringCloud+Dubbo+K8s)
712042211385)]
- Java架构进阶之开源框架篇(设计模式+Spring+SpringMVC+MyBatis)
[外链图片转存中…(img-szlrhtpC-1712042211386)]
[外链图片转存中…(img-bK0PYWs4-1712042211386)]
[外链图片转存中…(img-6VklA17n-1712042211386)]
- Java架构进阶之分布式架构篇 (限流(ZK/Nginx)+缓存(Redis/MongoDB/Memcached)+通讯(MQ/kafka))
[外链图片转存中…(img-rS9KhuUQ-1712042211386)]
[外链图片转存中…(img-hZ35wFFQ-1712042211387)]
[外链图片转存中…(img-lLdgAj4S-1712042211387)]
- Java架构进阶之微服务架构篇(RPC+SpringBoot+SpringCloud+Dubbo+K8s)
[外链图片转存中…(img-nvCkvK9W-1712042211387)]
[外链图片转存中…(img-nh0w4WKm-1712042211388)]