T100 系统中,变量与函数承担着数据管理、功能实现等重要作用,以下从系统变量定义与功能、系统函数功能与参数两方面进行详细梳理,确保内容完整无缺。
一、系统变量定义与功能说明
系统变量用于控制数据读取、用户操作记录、权限管理等多个方面,以下是详细分类说明:
(一)基础信息变量
变量名 |
数据类型 |
功能描述 |
g_enterprise |
LIKE type_t.num5 |
当前企业代码,限制用户可读取的数据内容 |
g_site |
LIKE type_t.chr10 |
当前营运据点名称,切换可读取不同据点数据 |
g_prog |
LIKE type_t.chr20 |
当前执行的作业编号,用于变换画面显示数据与产生系统信息,不可变更 |
g_code |
LIKE type_t.chr20 |
当前执行的程序代码 (4gl) 名称,不可变更 |
g_user |
LIKE type_t.chr20 |
当前用户代码,纪录用户的操作历程与权限控制,不可变更 |
g_dlang |
LIKE type_t.chr6 |
当前用户选取的数据多语言语系代码,可通过工具进行语系设定 |
g_today |
LIKE type_t.dat |
今天的日期 |
(二)功能控制变量
变量名 |
数据类型 |
功能描述 |
g_qryparam |
RECORD |
动态开窗查询函式数据传递变量,使用开窗功能时须先赋值相关变量 |
g_errparam |
RECORD |
错误代码传递变量,可控制错误代码的显示内容与模式 |
g_bgjob |
LIKE type_t.chr1 |
标识该支程序是否以背景模式执行 |
g_max_browse |
LIKE type_t.num10 |
浏览页签数据最大笔数上限 |
g_max_rec |
LIKE type_t.num10 |
单身资料最大笔数上限 |
(三)其他全局变量
在 SCHEMA ds 的 GLOBALS 定义中,还包含众多其他全局变量,用于作业执行、时间记录、权限控制、UI 画面设定、错误信息显示、报表打印等多个功能模块,具体如下:
- 作业执行相关
- g_clienttype:标识客户端类型(A:GMA/W:GWC/D:GDC)。
- g_sessionkey:TT Session Key=TIME+PID 。
- g_parentsession:父层 Session Key 。
- g_ancestsession:祖层 Session Key 。
- g_parentprog:父层作业编号 。
- g_prog_industry:作业归属行业包 。
- g_actdefault:预设开启动作 。
- g_template_type:程式类别 (gzza002) 。
- g_sys:模组别 (gzza003) 。
- g_chkey:是否允许更改 KEY (gzza006) 。
- g_need_err_log:是否需要将错误讯息写入 log 档 (gzza010) 。
- g_idle_seconds:INPUT (ARRAY) 时允许 Idle 的秒数 (gzza012) 。
- g_gui_type:GUI Type 。
- g_errno:错误讯息代码 。
- g_success:sub 判断是否执行成功 。
- g_sub_success:跨元件判断是否执行成功 (不透过 return 回传时使用) 。
- g_errshow:错误讯息显示,TRUE 显示 / FALSE 不显示 。
- g_t100debug:如果 = 9, 显示 DEBUG 讯息 。
- g_t100azg0d:如果 = 9, 显示 DEBUG 讯息 。
- 权限控制相关
- g_data_owner:使用者资料权限 。
- g_data_dept:部门资料权限 。
- g_data_site:营运中心资料权限 。
- g_data_group:(to delete) 。
- g_priv_col:画面栏位授权资料,为动态数组,包含 colid(栏位编号) 、auth(授权动作 1 / 不可见 2 / 加密 3 / 不可修改) 、crypt(加密方法) 、type(遮罩取用类型) 、idx(遮罩启用指标位置) 。
- g_progmasked:作业是否已加上栏位遮罩,TRUE/FALSE 。
- g_data_crtid:建立者资料权限 。
- g_data_crtdp:建立者部门权限 。
- UI 画面设定
- gs_config_path:config 资料夹的路径。
- gs_4st_path:4st 档案预设路径 。
- gs_4ad_path:4ad 档案预设路径 。
- gs_4sm_path:4sm 档案预设路径 。
- gs_4tb_path:4tb 档案预设路径 。
- gs_4tm_path:4tm 档案预设路径 。
- g_action_choice:ON ACTION 的名称 。
- g_show_item_value:是否显现 COMBOBOX,RADIOGROUP 的项目储 。
- g_head_disable:单头目前是否隐藏 。
- g_hidden_4tm:是否不载入 TopMenu,TRUE: 不载入,FALSE: 载入 。
- g_hidden_4tb:是否不载入 ToolBar,TRUE: 不载入,FALSE: 载入 。
- g_pos:位置相关 。
- g_mind:最小日期 。
- g_maxd:最大日期 。
- 显示错误讯息
- g_errparam:包含错误讯息编码(code )、出现在开头的延伸讯息字串(extend )、开窗否(popup )、讯息类型(type )、替换错误讯息及建议处理方式中的 % 变数(replace )、栏位清单 (对照栏位值清单)(columns )、栏位值清单 (对照栏位清单)(values )、汇总讯息额外栏位 - 值(coll_vals )、SQLCA.SQLERRD [2] 或 SQLCA.SQLCODE(sqlerr )、建议执行作业编号(exeprog )、JSON 格式的参数 (param )等信息 。
- 讯息中心
- g_msgparam:包含执行模式(state )、表单资料(data )、报表验证码(rpt_code )、报表 url(rpt_url )、报表 file(rpt_file )等信息 。
- g_coll_title:汇总讯息额外栏位 - 标题 (限定最多 20 个栏位) (有需要再设定) 。
- g_errcollect:动态数组,每个元素包含讯息代码(code )、讯息内容(message )、进阶讯息(adv_msg )、额外栏位资讯(extra )、程式人员详细讯息(gzze006 )、SQLCA.SQLERRD [2](sqlerrd2 )、建议执行作业编号(exeprog )、JSON 格式的参数 (param )等信息 。
- 开窗查询专用变数
- g_qryparam:包含程式的状态(state ,i→INPUT,c→CONSTRUCT,预设为 i)、是否需要先 qry 再显示资料(reqry ,TRUE: 需要,FALSE: 不需要,预设为 FALSE)、查询资料的条件(where ,一般是从 gab_file.gab02 来设定)、每页最大浏览笔数(pagecount )、开窗之相关栏位预设值(default1 - default10 )、查询资料的条件替换值(arg1 - arg9 )、回传资料(return1 - return10 )、No Use 相关(multiret_index 、multiret 、ordercons )、因应开窗状态 m, 接收多组字串资料的多个栏位(str_array )等信息 。
- cl_chk_validate.4gl 专用变数
- g_chkparam:包含外部额外设定的 WHERE 条件(where )、相关栏位的预设值(default1 - default9 )、外部参数(arg1 - arg9 )、回传资料(return1 - return9 )、统一显示在错误讯息多语言前面的字串(ls_title )、替换错误讯息代号和错误讯息上的 % 变数(err_str )等信息 。
- cl_jmail.4gl 专用变数
- g_xml:包含 XML 档名 (不含路径,档案产生在 $TEMPDIR 底下)(file )、MAIL SERVER IP(mailserver )、MAIL SERVER Port(serverport )、MAIL SERVER User(user )、MAIL SERVER User Password(passwd )、信件主旨(subject )、信件本文内容(body )、信件附件档路径(attach )、收件者(recipient )、副本(cc )、密件副本(bcc )、寄件者(sender )、指定回信人(replyto )、Html body(htmlbody )、Html path(htmlpath )、mail 重要等级(priority )等信息 。
- 其他
- g_header_idx:相关索引 。
- g_header_cnt:数量相关 。
- g_main_hidden:主页摺叠标识 。
- g_worksheet_hidden:浏览页折叠标识 。
- g_header_hidden:单头折叠标识 。
- g_parameters:动态数组,每个元素包含参数 id(para_id )和值(value ) 。
- g_work:动态数组,用于存储日期相关 。
- g_intrans:是否事务中标识,应用元件组设计 。
- g_no_entry:修改时不可编辑栏位 (azzi850 设定) 。
- ga_batch:cl_batch_proc.4gl 专用变数,动态数组,每个元素包含检查标识(c_check )、多个项目值(c_item01 - c_item10 ) 。
- g_pk_array:cl_doc 变数,动态数组,每个元素包含列名(column )和值(values ) 。
- g_doc:cl_doc 变数,包含多个列和对应值的信息 。
- g_fld_name:cl_set_focus_form 相关,栏位名称 。
- g_frm_name:cl_set_focus_form 相关,表单名称 。
- g_doc_len:单据编号中单别的长度 。
- g_no_sp:单据编号中单号的起始位置 。
- g_no_ep:单据编号的结束位置 。
- g_sn_sp:单据编号流水号起始位置 。
- g_dyloc2sfld:确认是否为动态切换语言别所触发 。
- g_cuelang:相关功能标识 。
- g_bgjob_msgfile:批次作业背景执行相关 。
- g_showmsg:统整错误讯息 。
- g_bgerr:是否启用统整错误讯息的旗标 。
- g_totsuccess:统整错误讯息用来记录 g_success 的旗标 。
- g_err_msg:动态数组,每个元素包含多个字段信息 。
- g_logc:修改历程相关,动态数组,每个元素包含 logc001 - logc006 等字段信息 。
- g_rlang:报表列印参数设定.Language 。
- g_pdate:报表列印参数设定.Print date 。
- g_ptime:报表列印参数设定.Print time 。
- g_prtway:报表列印参数设定.Print way 。
- g_copies:报表列印参数设定.Report copies you want 。
- g_reportid:报表背景执行需选择样板 。
- g_rep_wcchp:报表列印条件中文化 。
- g_rs_printer:Server 直接送印,报表主机印表机名称 。
- g_export_node:汇出 Excel 功能相关,动态数组 。
- g_export_id:汇出 Excel 功能相关,动态数组 。
- g_rep_wc:单据程式设定作业的 where condition 。
- g_rep_type:回传报表元件的序号 。
- g_etlparam:ETL Job 参数设定,动态数组,每个元素包含参数 id(para_id )、类型(type )和值(value ) 。
- g_xls_type:POI 参数设定,1:xlsx,2:xls 。
二、系统函数功能与参数说明
系统函数涵盖日期处理、界面元素控制、数据获取、用户交互、数据处理等多种功能,具体如下:
(一)日期处理函数
函数名 |
参数 |
功能描述 |
返回值 |
cl_day |
p_date(DATE) |
取得每月第??日对应日期 | |
cl_days |
p_year(年份), p_month(月份) |
取得该年月的天数 |
天数数值 |
cl_first |
p_date(DATE) |
取得当月第一天 |
当月首日日期 |
cl_last |
p_date(DATE) |
取得该月份最后一天的日期 |
月末日期 |
cl_monck |
p_date(DATE) |
调整日期为该周的星期一 |
调整后的日期 |
cl_months |
p_date(DATE) |
取得该月份的天数 |
天数数值 |
cl_mothck |
p_date(DATE) |
返回该日期所在月份的第一天及最后一天 |
包含起始和结束日期的相关数据 |
cl_ymtodate |
l_year1(年份 1), l_mon1(月份 1), l_year2(年份 2), l_mon2(月份 2) |
将输入的年月转成日期输出 |
转换后的日期 |
cl_get_today |
无 |
取出指定时区当下日期 |
当前日期 |
cl_get_time |
无 |
取出指定时区当下时间 |
当前时间 |
cl_get_timestamp |
无 |
回传精确到毫秒的时间 |
精确时间 |
(二)界面元素控制函数
函数名 |
参数 |
功能描述 |
cl_set_combo_scc |
栏位名称,系统分类码 |
设置下拉框选项,在 azzi600 里面进行设置 |
cl_set_combo_scc_part |
栏位名称,系统分类码,系统分类码值 |
设置 azzi600 里面单身的下拉框选项 |
cl_set_comp_visible |
栏位名称,TRUE/FALSE |
判断栏位是否显示 |
cl_set_toolbaritem_visible |
“open_apmt500_01”(Action 名称), TRUE/FALSE |
控制整单操作里的 Action 显示和隐藏 |
cl_set_comp_required |
ps_fields(栏位名称), pi_required(TURE/FALSE) |
动态设定元件是否需输入值 |
cl_set_comp_font_color |
ps_fields(栏位名称), ps_color(颜色名称) |
设定元件的字型颜色 |
cl_set_comp_format |
ps_fields(栏位名称), ps_format(FORMAT 属性值) |
动态改变栏位 FORMAT 属性 |
(三)其他功能函数
函数名 |
参数 |
功能描述 |
返回值 |
cl_get_para |
g_enterprise(企业代码), 据点参数标识,参数编号 |
多用于获取设定资料,例如获取关账日期等 |
对应参数值 |
cl_ask_type1 |
ps_msg(讯息 / 讯息代号), ps_title(标题名称) |
出现让使用者选择是否的画面 |
用户选择结果相关数据 |
s_num_round |
p_type(进位方式:1. 四舍五入 2. 四舍六入五留双 3. 无条件截位 4. 无条件进位 ), p_num(数值), p_pos(小数位,可正负) |
对数字进行进位处理 |
第 N 位进行四舍五入后的结果 |
s_curr_round |
p_site(营运据点), p_curr(币种), p_amount(金额), p_type(取位类型 1. 按单价设定 2. 按金额设定 3. 按汇率设定 4. 成本單價 5. 成本金額) |
根据不同条件对金额进行取位 |
取位后的金额 |
cl_site_select |
无 |
弹出切换营运据点用的窗口 |
无 |
三、T100 系统全局变量原始档:
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_default_wc STRING # 预设查询条件 #190627-00013#6
/*---------------- 企业及据点信息 ----------------*/
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 # Table最大显示/输入笔数
DEFINE g_max_browse LIKE type_t.num10 # 浏览器最大显示笔数
/*---------------- 时间信息 ----------------*/
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_deputy LIKE type_t.chr20 # 代理人工号 (190903-00005#8)
/*---------------- 权限控制 ----------------*/
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:资讯
replace DYNAMIC ARRAY OF STRING, # 替换错误讯息中的%变数
columns DYNAMIC ARRAY OF STRING, # 栏位清单(对照栏位值清单)
values DYNAMIC ARRAY OF STRING, # 栏位值清单(对照栏位清单)
coll_vals DYNAMIC ARRAY OF STRING, # 汇总讯息额外栏位 - 值
sqlerr LIKE type_t.num5, # SQLCA.SQLERRD[2]或SQLCA.SQLCODE
exeprog LIKE type_t.chr20, # 建议执行作业编号
param STRING # JSON格式的参数
END RECORD
# 自定义错误讯息汇总处理
DEFINE g_err_stack DYNAMIC ARRAY OF RECORD
code STRING, # 讯息代码
message STRING, # 讯息内容
adv_msg STRING, # 进阶讯息
functionid STRING, # 事故function id编号
event_time DATETIME YEAR TO SECOND # 事故时间
END RECORD
# 讯息中心
DEFINE g_msgparam RECORD
state STRING, # 执行模式
data DYNAMIC ARRAY OF STRING, # 表单资料
rpt_code STRING, # 报表验证码
rpt_url STRING, # 报表url
rpt_file STRING, # 报表file
code_name STRING, # code name (190327-00033#1)
data_d DYNAMIC ARRAY OF STRING, # 表单资料(单身) (190327-00033#1)
stus STRING # 状态码 (190327-00033#1)
END RECORD
DEFINE g_coll_title DYNAMIC ARRAY OF STRING # 汇总讯息额外栏位 - 标题
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]
exeprog LIKE type_t.chr20, # 建议执行作业编号
param STRING # JSON格式的参数
END RECORD
/*---------------- 开窗查询专用 ----------------*/
DEFINE g_qryparam RECORD
state LIKE type_t.chr1, # 程序状态(i→INPUT,c→CONSTRUCT)
construct LIKE type_t.chr1, # No Use
reqry LIKE type_t.num5, # 是否需要先qry再显示资料
where STRING, # 查询资料的条件
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档名(不含路径)
mailserver LIKE type_t.chr30, # MAIL SERVER IP
serverport LIKE type_t.chr5, # MAIL SERVER Port
user LIKE type_t.chr80, # MAIL SERVER User (171023-00034#1)
passwd STRING, # MAIL SERVER Password (170109-00040#1)
subject VARCHAR(300), # 信件主旨
body VARCHAR(100), # 信件本文内容
attach LIKE type_t.chr1000, # 信件附件档路径
recipient LIKE type_t.chr1000, # 收件者
cc VARCHAR(500), # 副本
bcc VARCHAR(500), # 密件副本
sender LIKE type_t.chr50, # 寄件者
replyto LIKE type_t.chr1000, # 指定回信人
htmlbody LIKE type_t.chr1000, # Html body
htmlpath LIKE type_t.chr100, # Html path
priority LIKE type_t.chr1 # mail重要等级
END RECORD
/*---------------- UI状态控制 ----------------*/
DEFINE g_header_idx LIKE type_t.num10 #5
DEFINE g_header_cnt LIKE type_t.num10 #5
DEFINE g_main_hidden LIKE type_t.num5 # 主页折叠
DEFINE g_worksheet_hidden LIKE type_t.num5 # 浏览页折叠
DEFINE g_header_hidden LIKE type_t.num5 # 单头折叠
DEFINE g_parameters DYNAMIC ARRAY OF RECORD
para_id STRING,
value STRING
END RECORD
DEFINE g_work DYNAMIC ARRAY OF LIKE type_t.dat # DATE
DEFINE g_intrans LIKE type_t.chr1 # 是否事务中标识
DEFINE g_no_entry STRING # 修改时不可编辑栏位(azzi850设定)
/*---------------- 批处理专用 ----------------*/
# cl_batch_proc.4gl专用
DEFINE ga_batch DYNAMIC ARRAY OF RECORD
c_check LIKE type_t.chr1, # VARCHAR(1)
c_item01 VARCHAR(100),
c_item02 VARCHAR(100),
c_item03 VARCHAR(100),
c_item04 VARCHAR(100),
c_item05 VARCHAR(100),
c_item06 VARCHAR(100),
c_item07 VARCHAR(100),
c_item08 VARCHAR(100),
c_item09 VARCHAR(100),
c_item10 VARCHAR(100)
END RECORD
/*---------------- 单据控制 ----------------*/
# cl_doc 变量
DEFINE g_pk_array DYNAMIC ARRAY OF RECORD
column STRING,
values STRING
END RECORD
DEFINE g_doc RECORD
column1 LIKE type_t.chr10,
column2 LIKE type_t.chr10,
column3 LIKE type_t.chr10,
column4 LIKE type_t.chr10,
column5 LIKE type_t.chr10,
value1 LIKE type_t.chr50, # MOD-960236 modify
value2 LIKE type_t.chr50, # MOD-960236 modify
value3 LIKE type_t.chr50, # MOD-960236 modify
value4 LIKE type_t.chr50, # MOD-960236 modify
value5 LIKE type_t.chr50 # MOD-960236 modify
END RECORD
# 焦点控制
DEFINE g_fld_name LIKE type_t.chr20
DEFINE g_frm_name LIKE type_t.chr20
/*---------------- 单据编号规则 ----------------*/
DEFINE g_doc_len LIKE type_t.num5 # 单据编号中单别的长度
DEFINE g_no_sp LIKE type_t.num5 # 单据编号中单号的起始位置 (Ex: AAA-12345678中"5")
DEFINE g_no_ep LIKE type_t.num5 # 单据编号的结束位置 (Ex: AAA-12345678中"12")
DEFINE g_sn_sp LIKE type_t.num5 # 单据编号流水号起始位置 (FUN-A30020)
/*---------------- 多语言控制 ----------------*/
DEFINE g_dyloc2sfld LIKE type_t.chr1 # 动态切换语言触发标识 (FUN-560086)
DEFINE g_cuelang LIKE type_t.num5 # 多语言控制标识 (FUN-580026)
DEFINE g_bgjob_msgfile STRING # 批次作业背景执行 (FUN-610104)
/*---------------- 错误汇总 ----------------*/
DEFINE g_showmsg STRING # 统整错误讯息
DEFINE g_bgerr LIKE type_t.num5 # 启用统整错误讯息旗标
DEFINE g_totsuccess LIKE type_t.chr1 # 记录g_success的旗标
DEFINE g_err_msg DYNAMIC ARRAY OF RECORD
fld1 STRING,
fld2 STRING,
fld3 STRING,
fld4 STRING,
fld5 STRING
END RECORD
/*---------------- 修改历程 ----------------*/
DEFINE g_logc DYNAMIC ARRAY OF RECORD
logc001 LIKE logc_t.logc001,
logc002 LIKE logc_t.logc002,
logc003 DATETIME YEAR TO SECOND,
logc004 LIKE logc_t.logc004,
logc006 LIKE logc_t.logc006
END RECORD
/*---------------- 报表打印控制 ----------------*/
DEFINE g_rlang LIKE gzzy_t.gzzy001 # 报表列印语言
DEFINE g_pdate LIKE type_t.dat # 报表列印日期
DEFINE g_ptime LIKE type_t.chr8 # 报表列印时间
DEFINE g_prtway LIKE type_t.chr1 # 报表列印方式
DEFINE g_copies LIKE type_t.chr1 # 报表列印份数
DEFINE g_reportid LIKE gzgf_t.gzgf000 # 报表背景执行需选择样板
DEFINE g_rep_wcchp STRING # 报表列印条件中文化 (150904-00005#2)
DEFINE g_rs_printer STRING # 报表主机印表机名称 (150921-00060#1)
&include "erp/top_global_expand.inc" # 扩展全局变量
/*---------------- Excel功能 ----------------*/
DEFINE g_export_node DYNAMIC ARRAY OF om.DomNode
DEFINE g_export_id DYNAMIC ARRAY OF STRING
/*---------------- 报表控制 ----------------*/
DEFINE g_rep_wc STRING # 单据程式设定作业的where condition
DEFINE g_rep_type STRING # 回传报表元件的序号
/*---------------- ETL控制 ----------------*/
DEFINE g_etlparam DYNAMIC ARRAY OF RECORD
para_id STRING,
type STRING,
value STRING
END RECORD
/*---------------- Excel格式控制 ----------------*/
DEFINE g_xls_type STRING # 1:xlsx,2:xls
/*---------------- PostgreSQL专用 ----------------*/
DEFINE g_null LIKE type_t.chr1 # null专用 (200804-00006)
/*---------------- 财务分析专用结构 ----------------*/
TYPE type_g_s_analy_form_reuse RECORD
ld STRING,
year LIKE type_t.num5,
bmonth LIKE type_t.num5,
emonth LIKE type_t.num5,
glfa009 LIKE glfa_t.glfa009,
glfa008 LIKE glfa_t.glfa008,
glfa001 LIKE glfa_t.glfa001,
glfb004 LIKE glfb_t.glfb004,
str STRING,
wc STRING,
show_ad LIKE type_t.chr1,
stus LIKE type_t.chr1,
show_ce LIKE type_t.chr1,
show_ye LIKE type_t.chr1,
success LIKE type_t.num5,
amount LIKE glar_t.glar005
END RECORD
DEFINE g_s_analy_form_reuse DYNAMIC ARRAY OF type_g_s_analy_form_reuse
TYPE type_g_s_analy_form_get_amt_reuse RECORD
ld STRING,
year LIKE type_t.num5,
bmonth LIKE type_t.num5,
emonth LIKE type_t.num5,
ls_js STRING,
glfc002 LIKE glfc_t.glfc002,
glfc003 LIKE glfc_t.glfc003,
glfc004 LIKE glfc_t.glfc004,
glfc005 LIKE glfc_t.glfc005,
glfc006 LIKE glfc_t.glfc006,
glfc007 LIKE glfc_t.glfc007,
glfc008 LIKE glfc_t.glfc008,
glfc010 LIKE glfc_t.glfc010,
wc STRING,
show_ad LIKE type_t.chr1,
stus LIKE type_t.chr1,
show_ce LIKE type_t.chr1,
show_ye LIKE type_t.chr1,
success LIKE type_t.num5,
amount LIKE glar_t.glar005
END RECORD
DEFINE g_s_analy_form_get_amt_reuse DYNAMIC ARRAY OF type_g_s_analy_form_get_amt_reuse
END GLOBALS