最新消息:本站持续更新中,请注意添加收藏夹。搜索关键词时,多换一个同义词。比如要搜索界面,可以尝试页面,画面,PER档等词汇。善于搜索,将大大提高你的查找效率。

鼎捷T100开发所遇到的问题

后端代码 bron1984 12215浏览

1、Program stopped at ‘cin_aint340.4gl’, line number 1121.
FORMS statement error number -1338.
The function ‘cl_exe_rep’ has not been defined in any module in the program.

解决办法:1、做报表打印格式时,在azzi988里面添加报表元件参数时,必须要重新下载单据程序并且上传,
2、上传后第一次运行单据作业会出现全英文
3、然后关掉就好了
3、登陆问题
1用户登录不了,报类似flm的错误用root执行以下命令cd /u1/genero/flm. envflmflmprg -s 然后flmprg -r
2网页端登录不了systemctl restart httpd.servicesystemctl restart gas_topprd.service

3、T100用户登录错误解决方法

1 用户登录不了,报类似flm 的错误
用root执行以下命令
cd /u1/genero/flm
. envflm
flmprg -s
然后flmprg -r

2 网页端登录不了
systemctl restart httpd.service
systemctl restart gas_topprd.service

4、程序代号 cpmr050 没有版次 1 的画面设计数据, 请查明原因后再重新下载.
解决办法:没有相应的画面,需要到画面产生器adzp168里面产生画面

5、T100不能打印
原因:报表服务器没链接到T100服务器
解决办法:df -h 查看原因
1、链接服务器10.10.50.121 断了
在xshell里面输入cd /T100_gr,在ls -la
2、在自己的电脑上输入:\\10.10.50.121\T100_gr

6、新增的栏位为只读状态,需要查询与修改?
解决办法:在CONSTRUCT、INPUT里面增加自己新增栏位的名称

7、在规格里面新增栏位,当显示为******时可以尝试把栏位拉宽或者查看格式化是否正确

8、修改报表样式时,如cinr302_g01、cinr302_g01_01时需要在zh_CN、zh_TW里面添加相应的格式

9、在已有报表中改变报表排版时,在测试区修改OK,导出上传正式区没报错,但是报表样板没有改变?
先在azzi301里面新增需要加的模板
9.1 设置报表排版是不能删除,要设置成隐藏
9.2 报表的排序一定要在adzp188里面设置,然后点击生成代码, 然后还要按照这个顺序操作一下:重新下载4gl,上传4gl,下载报表样板,上传报表样板
9.3 修改排版后,要将azzi301里面的数据一起导入,步骤:1 在adzi888里面录入数据,2.录完后,点导出(清单+数据),然后点下载,下载文件到桌面 3.然后在正式区打开这个作业adzi888,点击导出档上传,就是上次刚刚导出的那个文件,最后点注册数据导入就可以了

10、汇出excel标准版
#excel匯出功能
ON ACTION exporttoexcel
LET g_action_choice=”exporttoexcel”
IF cl_auth_chk_act(“exporttoexcel”) THEN
#browser
CALL g_export_node.clear()
IF g_main_hidden = 1 THEN
LET g_export_node[1] = base.typeInfo.create(g_browser)
LET g_export_id[1]   = “s_browse”
CALL cl_export_to_excel()
#非browser
ELSE
LET g_export_node[1] = base.typeInfo.create(g_ecbb_d)
LET g_export_id[1]   = “s_detail1”
LET g_export_node[2] = base.typeInfo.create(g_ecbb2_d)
LET g_export_id[2]   = “s_detail2”
LET g_export_node[3] = base.typeInfo.create(g_ecbb3_d)
LET g_export_id[3]   = “s_detail3″

#add-point:ON ACTION exporttoexcel name=”menu.exporttoexcel”

#END add-point
CALL cl_export_to_excel_getpage()
CALL cl_export_to_excel()
END IF
END IF

11.T100动态下拉框:CALL cl_set_combo_scc(‘type’,’1020′),在azzi600,系统分类码维护作业

12.当遇到单身无法下条件查询时,这时候需要排除这个原因:
BEFORE DIALOG
CALL cl_qbe_init()
#add-point:cs段b_dialog name=”cs.b_dialog”
LET g_xmapuc_d[1].xmapucseq = “”
DISPLAY ARRAY g_xmapuc_d TO s_detail1.*
BEFORE DISPLAY
EXIT DISPLAY
END DISPLAY

13.切换营运据点的方法:
IF cl_site_select_check() THEN
LET g_xmdg_m.xmdgsite =g_site
CALL s_desc_get_department_desc(g_xmdg_m.xmdgsite) RETURNING g_xmdg_m.xmdgsite_desc
DISPLAY g_xmdg_m.xmdgsite TO xmdgsite              #顯示到畫面上
DISPLAY BY NAME g_xmdg_m.xmdgsite_desc
END IF

14.怎么加权限:首先在azzi800里把用户的角色找到,然后在azzi850里查到这个角色,然后把作业编号加进去,然后   r.r azzp195 作业编号,最后在azzi850里按角色查到这个这支作业,在第二单身把所有的功能都勾选上

15.增加action:先在画面上最右侧点击【新增项目】,然后对action的名字进行维护,然后上传规格;然后打开 azzi903(功能及选单配置作业),通过这个作业再对action
的按钮具体放置在哪个页签下,以及它的名字再进行维护,最后再开启该支作业就会在对应页签下看到加的action名称

16.新增作业时,将作业编号加入树状图及据点?
在作业azzi880里面将新增的作业添加到树状图,加入据点时在azzi850里面进行录入新增的单据单号,如果是tiptop时在admin下面进行录入即可

17.T100单身汇总后要查询,在BEFORE DIALOG加如下代码
LET g_apba2_d[1].isam008 = ”
DISPLAY ARRAY g_apba2_d TO s_detail2.*
BEFORE DISPLAY
EXIT DISPLAY
END DISPLAY
单身加了汇总后,在单身录入多行的时候只能用Tab键切换到下一行

18.aooi100 添加logo

19.azzi090 字段形态设计

20.ainq100 料件库存查询

21.azzi908 inc程序共用变量设置档维护
eg:
SCHEMA ds

GLOBALS
DEFINE g_detail_insert   LIKE type_t.num5   #單身的新增權限
DEFINE g_detail_delete   LIKE type_t.num5   #單身的刪除權限
DEFINE g_wc2_m20001      STRING             #單身QBE條件
DEFINE g_d_idx_m20001    LIKE type_t.num5   #單身所在筆數
DEFINE g_d_cnt_m20001    LIKE type_t.num5   #單身總筆數
DEFINE g_imaa001_d       LIKE imaa_t.imaa001
DEFINE g_appoint_idx     LIKE type_t.num5   #指定進入單身行數
DEFINE g_loc             LIKE type_t.chr5   #判斷游標所在位置
END GLOBALS

22.DeBug时报错 -8014
解决步骤:1.cd 目录名称    eg: cd cpm
2.cd 4gl
3.r.d 程序名称   eg: r.d apmr500
如根据上述还是不能DeBug,如要debugasft311,则如下:
eg:asft311 的程序是asft310
1. r.dg asft300
2. r.d asft311
23.T100登陆不上在安装目录最后 加-aDM

24.http://61.159.137.8:8099/wtoptst/wa/r/app/gdc_azzi000?Arg=88&Arg=zh_CN  外网测试区

http://erp.yiqingjt.com:8099

25.数据库表增加栏位长度
新增表格后也要执行r.s ds ,否则在adzi140里面会报错
1.r.t adzi140
2.更改栏位属性
3.执行异动标志
4.执行 r.s ds 命令是更新ds数据库的参照表,
r.c 表格名称 ALL 这个是把所有用到这个表的程序编译一遍

新增表格字段,在adzi140里面新增然后 1.执行异动标志
2.执行 r.s ds 命令是更新ds数据库的参照表,
r.c 表格名称 ALL 这个是把所有用到这个表的程序编译一遍
然后在设计器里面更新基础数据即可看到新增的字段了

26.用网页不能打开T100
查看gas_toptst有没有启动,用命令systemctl restart gas_toptst即可重新启动

27.凭证报表打印显示不全或者出现重叠
将PageRoot的X_size,Y_size设置成最大

28.现场情况说明
很多时候会有批量录入单身的需求,一般情况可能直接在EXCEL表中复制到单身即可,但有时候可能单身存在ComboBox(下拉框)控件时,没办法批量复制到单身,亦或者是需求直接汇入单档数据时,需借用EXCEL导入功能。
解决方法
可参考如下代码开发excel批量导入数据功能:
DEFINE  lr_err      DYNAMIC ARRAY OF RECORD
line    STRING,
key1    STRING,
err     STRING
END RECORD
DEFINE gs_location   STRING
DEFINE li_k         SMALLINT
DEFINE ls_cell       STRING
DEFINE ls_cell_r     STRING
DEFINE li_i_r        SMALLINT
DEFINE li_i          SMALLINT
DEFINE cnt          STRING
DEFINE li_no        SMALLINT
DEFINE li_str        STRING
DEFINE g_fileloc      STRING
DEFINE p_row,p_col,l_n         SMALLINT
DEFINE xlapp,iRes,iRow,i,j     INTEGER
DEFINE sValue                  STRING

LET gs_location = cl_client_browse_file()   #弹出窗口,接收本地文件路径
#转换路径分隔符
LET g_fileloc = cl_replace_str(gs_location,”/”,”\\”)
LET li_k = 1
LET li_i_r = 1
LET g_success = ‘Y’
CALL lr_err.clear()
#打开EXCEL
CALL ui.interface.frontCall(‘WinCOM’,’CreateInstance’,[‘Excel.Application’],[xlApp])
IF xlApp <> -1 THEN
#读取该文件EXCEL页签内容
CALL ui.interface.frontCall(‘WinCOM’,’CallMethod’,[xlApp,’WorkBooks.Open’,g_fileloc],[iRes])
IF iRes <> -1 THEN
#获取EXCEL数据列数
CALL ui.interface.frontCall(‘WinCOM’,’GetProperty’,
[xlApp,’ActiveSheet.UsedRange.Rows.Count’],[iRow])
#从第几行开始
FOR i = 2 TO iRow
CALL s_transaction_begin()
LET li_i_r = i
#读取第几行的第几列数据
CALL ui.interface.frontCall(‘WinCOM’,’GetProperty’,[xlApp,’ActiveSheet.Cells(‘||i||’,2).Value’],[l_type1])
CALL ui.interface.frontCall(‘WinCOM’,’GetProperty’,[xlApp,’ActiveSheet.Cells(‘||i||’,3).Value’],[l_type2])
CALL  ui.interface.frontCall(‘WinCOM’,’GetProperty’,[xlApp,’ActiveSheet.Cells(‘||i||’,4).Value’],[l_type3])
###添加检查以及报错信息
IF cl_null(l_type1) THEN
LET lr_err[li_k].line = li_i_r
LET lr_err[li_k].key1 = l_imaa.imaa001
LET lr_err[li_k].err  = ‘该料件未输入新增/修改类型,请检查!’
LET li_k = li_k + 1
CONTINUE FOR
ELSE
IF l_type1 NOT MATCHES ‘[12]’ THEN
LET lr_err[li_k].line = li_i_r
LET lr_err[li_k].key1 = l_imaa.imaa001
LET lr_err[li_k].err  = ‘该料件新增/修改类型输入有误,请检查!’
LET li_k = li_k + 1
CONTINUE FOR
END IF
END IF
INSERT INTO xxx_t values (xxx)
CALL s_transaction_end(‘Y’,’0′)
END FOR
ELSE
DISPLAY ‘NO FILE’
END IF
ELSE
DISPLAY ‘NO EXCEL’
END IF
##关闭EXCEL文件
CALL ui.interface.frontCall(‘WinCOM’,’CallMethod’,[xlApp,’Quit’],[iRes])
CALL ui.interface.frontCall(‘WinCOM’,’ReleaseInstance’,[xlApp],[iRes])
##显示报错信息
IF lr_err.getLength() > 0 THEN
CALL cl_show_array(base.TypeInfo.create(lr_err),cl_getmsg(“lib-314″,g_lang),”Line|Key1|Error”)
ELSE
IF li_i_r>2 THEN
INITIALIZE g_errparam TO NULL
LET g_errparam.code = ‘!’
LET g_errparam.extend = ‘资料导入成功!’
LET g_errparam.popup = TRUE
CALL cl_err()
END IF
END IF

29.当单据显示资料已被锁定,无法修改!请离开程序,稍后再进行资料处理
处理办法:打开删除数据表锁定作业(adzp146)删除当前的所有用户

30.报表格式问题
PageFooters    Y-Size值为min,调节此值会对页底有影响
PageHeaders
ReportHeaders
DetailTable
ReportFooters

31.修改数据
select * from 表名 where 条件 for update

32.azzi903 功能及選單維護作業

33.查看用户数
fglWrt -a info user|grep User

34.在开窗设计器里面新建一个窗口,提示该窗口未注册,只需r.l cqry一下就OK

35.T100表空间问题:
1.sqlplus system/tiptop100@toptst
2.用户名密码:dsdata
3.@q_tbsFREE
4.select name from v$datafile;查看关于DSDATA的文件路径,根据路径来进行添加表空间数据文件
5.在SQL里面输入exit退出后,输入命令df –h查看磁盘空间/u2是否足够
6.alter tablespace DSDATA add datafile ‘/u2/oradata/$ORACLE_SID/dsdata3.dbf’ size 4096M

36.列转行函数:SELECT LISTAGG(XXX,XXX) WITHIN GROUP (ORDER BY XXX) 列名  FROM 表名 WHERE 条件 GROUP BY 条件

eg:SELECT DISTINCT LISTAGG(sfebdocno,’,’) WITHIN GROUP (ORDER BY sfebdocno) l_sfebdocno
FROM sfeb_t,sfba_t,sfea_t
WHERE sfebent = sfbaent AND sfebent=sfeaent
AND sfebdocno=sfeadocno
AND sfeb001 = sfbadocno
AND sfebent = “,g_enterprise,”
AND sfba009 = ‘Y’
AND sfba013 >= 0
AND sfea005 IS NULL
AND sfbadocno in (select sfeb001 from sfeb_t where sfebdocno='”,p_key1,”‘)                                GROUP
sfbaent,sfbasite,sfbadocno,sfbaseq,sfbaseq1,sfba006,sfba010,sfba011,sfba013,sfba014,sfba016,sfba019,sfba020,sfba021,sfba024,sfba029,sfba030,sfeb003,sfeb004,sfeb005
聚合函数的使用:SELECT 列名1,列名2。。。,SUM(列名3)。。。 FROM 表名 WHERE 条件 group by 分组(列名1,列名2。。。) order by 排序
eg:SELECT sfbaent,sfbasite,sfbadocno,sfbaseq,sfbaseq1,sfba006,sfba010,sfba011,sfba013,sfba014,sfba016,
sfba019,sfba020,sfba021,sfba024,sfba029,sfba030,sum(sfeb009) sfeb009,sfeb003,sfeb004,sfeb005
FROM sfeb_t,sfba_t,sfea_t
WHERE sfebent = sfbaent AND sfebent=sfeaent
and sfebdocno=sfeadocno
AND sfeb001 = sfbadocno
and sfebent = g_enterprise
AND sfba009 = ‘Y’
AND sfba013 >= 0
and sfea005 is null
AND sfbadocno in (select sfeb001 from sfeb_t where sfebdocno=p_key1)
group by sfbaent,sfbasite,sfbadocno,sfbaseq,sfbaseq1,sfba006,sfba010,sfba011,sfba013,sfba014,sfba016,sfba019,sfba020,sfba021,sfba024,sfba029,sfba030,sfeb003,sfeb004,sfeb005
order by sfbaseq,sfbaseq1
SELECT 列名1,列名2。。。,SUN(列名1)。。。 FROM 表名 WHERE 条件 group by 列名 having 过滤条件
eg:SELECT sfba006,SUM(sfba016),SUM(sfba025),SUM(sfba017),SUM(sfba016+sfba025-(((sfaa050+sfaa051)               *sfba010)/sfba011)-sfba017) AS sfbaud012
into sr.sfba006 ,sr.l_sfba016,sr.l_sfba025,sr.l_sfba017,sr.l_sfbaud012
FROM sfaa_t
INNER JOIN sfba_t ON sfaaent=sfbaent AND sfaadocno=sfbadocno
WHERE sfaastus = ‘F’ AND sfaaent=g_enterprise AND sfaasite=g_site
AND sfba011>0
and sfba006 = sr.sfba006
group by sfba006
having SUM(sfba016 + sfba025 – (((sfaa050 + sfaa051) * sfba010) / sfba011) – sfba017) <> 0

37.10.10.50.121  用户名及密码:administrator/abc123+
10.10.50.120  用户名及密码:root/since1982@tiptop

38.账号和密码存在于表 ‘gzxd_t’中
密码是加密的,加密函数为:let lc_gzxd002 = cl_hashkey_user_encode(l_master.gzxa001)
#wNUT2AZ59
密码是可以解密的,解密函数为:let lc_gzxd002 = cl_hashkey_user_encode(“wNUT2AZ59”)
39.CR报表大小写转换
FUNCTION 018__CR 报 表 中 数 字 小 写 转 成 大 写()——————–
StringVar x;
StringVar xx := “”;
NumberVar z;
StringVar x;
StringVar xx:=””;
NumberVar z;
NumberVar i;
x := ToText(Sum ({axmr558.ofb14t}));
x := Replace(x,”,”,””);
x := Replace(x,”.”,””);
z := length(x);
FOR i := z TO 1 step -1 do
(
StringVar temp:=Mid(x,z-i+1,1);
select i
case 12: xx := temp +”十”
case 11 : xx := xx + temp +”亿”
case 10 : xx := xx + temp +”仟”
case 9 : xx := xx + temp +”佰”
case 8 : xx := xx + temp +”拾”
case 7 : xx := xx + temp +”万”
case 6 : xx := xx + temp +”仟”
case 5 : xx := xx + temp +”佰”
case 4 : xx := xx + temp +”拾”
case 3 : xx := xx + temp +”元”
case 2 : xx := xx + temp +”角”
case 1 : xx := xx + temp +”分”
);
stringvar test=””;
z := length(xx);
i:=1;
while i<z do
(
StringVar temp:=Mid(xx,i,1);
if temp=”0″ then
(
if mid(xx,i-2,1)<>”0″ and (Mid(xx,i+1,1)=”亿” or Mid(xx,i+1,1)=”万” or Mid(xx,i+1,1)=”元”) then
(
xx :=Left (xx,i-1 )+Replace(xx,Mid(xx,i,1) ,”” ,i , 1);
)
else if mid(xx,i-2,1)<>”0″ and i+2<length(xx) and mid(xx,i+2,1)<>”0″ then
(
xx :=Left (xx,i )+Replace(xx,Mid(xx,i+1,1) ,”” ,i+1 , 1);
)
else if Mid(xx,i+1,1)=”角” and Mid(xx,i+2,1)<>”0″ then
(
xx :=Left (xx,i )+Replace(xx,Mid(xx,i+1,1) ,”” ,i+1 , 1);
)
else
(
i := i-1;
xx :=Left (xx,i )+Replace(xx,Mid(xx,i+1,2) ,”” ,i+1 , 1);
)
);
i:=i+1;
z:=length(xx);
);
xx := Replace(xx,”0″,”零”);
xx := Replace(xx,”1″,”壹”);
xx := Replace(xx,”2″,”贰”);
xx := Replace(xx,”3″,”叁”);
xx := Replace(xx,”4″,”肆”);
xx := Replace(xx,”5″,”伍”);
xx := Replace(xx,”6″,”陆”);
xx := Replace(xx,”7″,”柒”);
xx := Replace(xx,”8″,”捌”);
xx := Replace(xx,”9″,”玖”);
xx := xx +”整”+test;
END FUNCTION
Creek.L 2017/9/29 星期五 15:14:33
FUNCTION 020__数 字 金 额 转 换 成 大 写(p_number)———————
DEFINE p_number     LIKE type_file.num15_3
DEFINE l_i          LIKE type_file.num5
DEFINE li_bit       LIKE type_file.num5
DEFINE li_length    LIKE type_file.num5
DEFINE li_len       LIKE type_file.num5
DEFINE ls_money     LIKE type_file.chr20
DEFINE ls_result    LIKE type_file.chr100
DEFINE ls_arr_num   ARRAY[10] OF CHAR(4)
DEFINE ls_arr_unit  ARRAY[14] OF CHAR(4)
DEFINE ls_arr_unit0 ARRAY[14] OF CHAR(4)
LET  ls_arr_num[1]=’壹’
LET  ls_arr_num[2]=’贰’
LET  ls_arr_num[3]=’叁’
LET  ls_arr_num[4]=’肆’
LET  ls_arr_num[5]=’伍’
LET  ls_arr_num[6]=’陆’
LET  ls_arr_num[7]=’柒’
LET  ls_arr_num[8]=’捌’
LET  ls_arr_num[9]=’玖’
LET  ls_arr_num[10]=’零’
LET  ls_arr_unit[1]=’分’
LET  ls_arr_unit[2]=’角’
LET  ls_arr_unit[3]=’元’
LET  ls_arr_unit[4]=’拾’
LET  ls_arr_unit[5]=’佰’
LET  ls_arr_unit[6]=’仟’
LET  ls_arr_unit[7]=’万’
LET  ls_arr_unit[8]=’拾’
LET  ls_arr_unit[9]=’佰’
LET  ls_arr_unit[10]=’仟’
LET  ls_arr_unit[11]=’亿’
LET  ls_arr_unit[12]=’拾’
LET  ls_arr_unit[13]=’佰’
LET  ls_arr_unit[14]=’仟’
LET  ls_arr_unit0[1]=’整’
LET  ls_arr_unit0[2]=’零’
LET  ls_arr_unit0[3]=’元’
LET  ls_arr_unit0[4]=’零’
LET  ls_arr_unit0[5]=’零’
LET  ls_arr_unit0[6]=’零’
LET  ls_arr_unit0[7]=’万’
LET  ls_arr_unit0[8]=’零’
LET  ls_arr_unit0[9]=’零’
LET  ls_arr_unit0[10]=’零’
LET  ls_arr_unit0[11]=’亿’
LET  ls_arr_unit0[12]=’零’
LET  ls_arr_unit0[13]=’零’
LET  ls_arr_unit0[14]=’零’

#如果参数为0
IF p_number=0 THEN RETURN ‘零元整’ END IF

#参数小于零,则为负值
IF p_number<0 THEN
LET  p_number=0-p_number
LET  ls_result=’负’
ELSE
LET  ls_result=”
END IF

##判断是否超出范围
IF p_number>999999999999.99 THEN
RETURN ls_result=’数值超出范围’
END IF
#循环每一个数字
LET ls_money=p_number*100 USING”<<<<<<<<<<<<<<”
LET li_length=length(ls_money CLIPPED)
FOR l_i=1 to li_length
LET li_bit=ls_money[l_i]
IF  li_bit=0 then
LET li_len=length(ls_result  CLIPPED)
IF ls_result[li_len-1,li_len]<>’零’THEN
LET ls_result=ls_result  CLIPPED,ls_arr_unit0[li_length-l_i+1] CLIPPED
ELSE
LET ls_result=ls_result[1,li_len-2] CLIPPED,ls_arr_unit0[li_length-l_i+1] CLIPPED
END IF
ELSE
LET ls_result=ls_result CLIPPED,ls_arr_num[li_bit] CLIPPED,ls_arr_unit[li_length-l_i+1] CLIPPED
END IF
END  FOR
RETURN ls_result CLIPPED    #返回大写
END FUNCTION

共用参数档维护:azzi908,查看共用参数

标准资料库:ds
暂存资料库:dstmp
先进排程:dsaps
报表暂存:dsrept
正式资料:dsdemo/dsdata/或其他自订
3.T100目录
topprd:正式区
toptst:测试区
topstd:标准区
toppth:验证区

$TOP 根目录
com   公用元件目录(设定目录)
com/lib   标准公用函式(cl_xxx)目录
com/sub   标准公用子函式(s_xxx)目录
com/qry   标准查询函式(q_xxx)目录
com/lng   多语言目录,用于开窗
com/wss   Web Service 目录
com/mta   T100设计器进阶功能资料来源
com/inc   存放程序内前端处理区块内所连结的程序代码(类似于子程序,编译时自动产生到42r中)
com/cfg   置放系统程序执行时所需的全局变量
erp   标准模块目录
erp/aim   ERP各模块目录
aim/dzx   各程序的设计器开发资料
erp/mdl   版型样式资料–>r.a产生画面和代码时,从这里取得版型资料
rep/cfg   置放标准模块程序执行时所需的全局变量
apse   排程引擎
res   存放图片
utl/bin     T100后台操作指令的shell(r.a r.c r.l等)
utl/fbin   T100设计器上传检核时的流程及提示讯息

4.常用SHELL
r.c      编译程序,需在4gl路径之下执行,产生的42m会自动搬至该目录下
r.cs     r.cs 为小程序测试用,产生的42m仍在4gl目录下
r.l      打包可执行档或共享程序档(42r、42x)
r.l xxx ALL 修改子程序/元件,或调整r.q设定后,
建议手动执行此指令,将相关呼叫的主程序一并扫出并重新Link
范例:r.l s_desc ALL
r.f     编译程序画面
r.p     预览程序画面
r.r     运行作业(可以进行模糊查询:1.根据程序编号进行模糊查询(如:r.r axrp);2.根据程序中文说明进行模糊查询(如:r.r 重评价))
r.rd   执行作业后,若SQL错误则会留下 log档
r.d    Debug工具
r.dg   Debug工具 原厂DEBUG功能(r.d出错时使用;测试传参时使用)
r.s     产生档案 SCHEMA 的工具
rebuild   系统重建编译
5.一般程序开发流程
或得需求单(adzi800)–>新增程序基本资料(azzi900)
–>新增作业基本资料(azzi910)–>新建表格(adzi140/r.t)
–>修改表格设计资料(adzi150)–>迁出设计资料
–>画面产生器产生版型(adzi168/r.a)–>修改画面资料
–>上传画面资料–>修改代码资料
–>上传代码资料–>更新需求单状态

Xshell与T100Designer启动缓慢
解决办法:
将GDC选项的安全性设置为最低

cl_set_combo_scc(栏位名称,系统分类码) 下拉框选项,在azzi600里面进行设置
cl_set_combo_scc_part(栏位名称,系统分类码,系统分类码值)  azzi600里面的单身
cl_set_comp_visible(栏位名称,TRUE/FALSE) 判断栏位是否显示
cl_set_toolbaritem_visible(“open_apmt500_01”,TRUE) 是否打开子程序
cl_get_para(g_enterprise,g_site,参数编号) 判断据点参数 “参数编号”在azzi993里面设置
cl_set_comp_att_text(‘pmdldocno’,错误信息) 错误信息
cl_set_act_visible(“accept,cancel”, FALSE) 功能隐藏
4FD 利用color condition属性设置颜色 :COLOR = RED REVERSE WHERE $NAME NOT LIKE “1.%”

echo $FGLSERVER 查看xshell的IP

rz -y 上传程序
rz 程序名称  下载程序

建标准程序时可用debug方法,跳过报错的地方时可以按ctrl+d,然后进行设置之后点击OK,再关掉就可以了
eg:set variable li_chk= TRUE

grep ‘INSERT INTO 表名’ */*/4gl/*.4gl 查询所有用到  INSERT INTO 表名  这个字段的4gl代码
update 表名 set 字段名=to_date(‘2017-10-24′,’yyyy-mm-dd’)  where 字段名= 值
———————
版权声明:本文为CSDN博主「王侠930426」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/yqgd20170216/article/details/79239074

转载请注明:赫非域 » 鼎捷T100开发所遇到的问题