Skip to content

鼎捷 T100 学习过程中的记录,防止忘记! 如有补充,请评论留言!

安装 ​

T100 系统安装分为浏览器安装和客户端安装。

浏览器安装 ​

在浏览器中输入 T100 服务 IP,点击浏览器底部安装 activeX 控件即可。

如果底部未出现安装则可能已安装或者浏览器禁止,需要联系相关人员检查。

客户端安装 ​

找到对应系统位数(x86,x64)的安装文件安装 T100 相关环境,运行启动文件。

浏览器安装存在闪退问题建议客户端安装

注意事项 ​

  1. 浏览器只能使用 IE 内核。
  2. 浏览器需要取消弹窗拦截,浏览器设置中可关闭。
  3. 添加兼容性视图。
  4. 客户端安装 T100 后打开运行文件需要注意端口。
  5. 如若打不开可以打开运行文件属性界面,在目标路径中添加-aD 即可。
  6. 打不开建议尝试调节 T100 在浏览器的安全设置。

IE 浏览器问题 ​

IE 问题汇总

IE 浏览器,报表闪退打不开 ​

  1. 清除浏览器缓存
  2. 添加兼容性视图
  3. 降低保护等级
  4. 关闭杀毒软件
  5. 添加信任站点
  6. activeX 开启
  7. 重置浏览器设置
  8. 360 主页修复
  9. 等等.....

IE9 一下的浏览器不可以使用,请升级!

使用 Ctrl+Alt+Del 重启电脑

安装问题 ​

注意电脑的系统位数来安装相应的客户端环境

djc 配置 ​

图片监修中

系统架构 ​

  1. $TOP 为文件最上层

  2. com/lib 标准公用函数存放目录

  3. com/sub 标准公用子函数存放目录

  4. com/qry 开窗

  5. 4gl 程序源码

  6. 4fd 画面档

  7. 42f 画面档编译后的文件

  8. [A]XX 标准模块 [C]XX 客制模块

  9. asft300 asf 模块 t 作业类别 i 基本数据 m 主档 t 事务处理 s 参数设定 p 批处理 r 报表

系统架构图 ​

系统配置时,均以$TOP作为最上层目录,在$TOP 挂上各种系统所需的工具、模块等目录,用做有效率的运作及管理。基本框架如图:

工作目录 ​

图片监修中

com/cfg 目录配置 ​

本目录下是置放程序执行时所需参照的设定部分。包含工具栏(Tollbar)设定、屏幕显示样式(Window Style)设定及共享功能定义(Action Default)等数据。

图片监修中

模块下目录配置 ​

模块目录下是实际置放相关数据,包含程序源码(4gl)、画面源码(4fd)、数据表结构(sch)及编译结果(42m、42r、42f)等。

命名原则 ​

模块命名 ​

模块以三个英文字来命名。(包含 ERP 的模块/共享 COM 的模块等)

第一码为标准标识符: 『A』:标准 ERP 模块 第二到三码以系统英文缩写为主,若遇到已使用的代码,则后建者第二码以『X』字符或另以相关缩写取代。

格式:AXX 说明:XX 为 ERP 模块的英文缩写代码

程序命名 ​

  1. 主程序编号

程序一般以四码英文及三码数字(共七码)组成。

程序名称的前三码为模块代码,第四码为程序类别,第五码至第七码为作业代码。

格式:SSSQ999

说明:SSS 为模块代码,均以小写字母表示

Q 为程序类别,其意义如下:

  • i:基本数据维护作业 m:主文件数据维护作业 t:事务处理
  • s:参数设定 p:批处理 q:查询作业 r:报表作业

999 为程序三码数字流水编号

  1. 子程序档名

若主程序需要另外撰写函式,则会增加子程序,名称前七码会与主程序一致,并再加上『_』(底线)、型态及两码流水号。

  • 一般用途子程序 格式:SSSQ999_88

  • Genero Report 子程序 格式:SSSQ999_g88

  • Xtra Grid 子程序 格式:SSSQ999_x88

说明:

  • SSSQ999 为主程序代码

  • 88 为两码数字流水编号,若为报表用子程序,则依照类型,特别增加 g 或 x

  1. 子画面档名

程序开发过程中需要一个以上的画面时,可以额外制作子画面。

格式:SSSQ999_s88

说明:

  • SSSQ999 为主程序代码

  • s88 s 为固定用法,88 为两码数字流水编号

  1. library 档名

共享程序为在 T100 中用于系统处理的函式,例如询问开窗、画面组件处理等。

格式:cl_xxxxxxx

说明:cl_表示该程序为共享程序(Common Library)

xxxxxxx 最少 1 个字符,最多允许 17 个字符【因为各维护作业输入限制】。必须以有代表意义的方式命名,可加上『_』(底线)以资区隔。

  1. 应用组件文件名

特别商业规则,有通用性质的,可以特别拉出作为『应用组件』。应用组件可以依照功能区分,也可以依照首要调用程序进行命名

格式:s_xxxxxxx

或为:s_ SSSQ999_xxxxx

说明:

  1. 报表结构文件名(rdd 文件)

与主程序/子程序相同名称

  1. 报表样板文件名(4rp 档)

一份报表组件可允许应用多份报表样板,故命名与报表组件相同,若有多样版需求时,再加上两码数字流水号识别。子报表样板则为主要样板后方再增加_subrep 及流水号用以识别。

  • 主报表 (单一样板) 格式:SSSQ999_g88

  • 主报表 (多样板) 格式:SSSQ999_g88_77

  • 子报表 格式:SSSQ999_g88_subrep66

  • 范例: 主报表 axmr402_g01.4rp (单一样板)

  • 主报表 axmr403_g01_02.4rp (多样板)

  • 子报表 axmr402_g01_subrep01.4rp

说明:

  • SSSQ999_g88 为报表组件文件名

  • 若有多样版时,后方新增两码数字流水号,以资区别

  • 若有子样板时,后方再新增 _subrep 及两码数字流水号,以资区别

  1. 其他组件文件名

开窗查询组件

格式:q_xxxxxxx

说明:q_表示该程序为查询类(Query)子程序

xxxxxxx 最多 18 个字符,最少 1 个字符。须以有代表意义的方式命名,多半以欲查询的档案(table name)名称命名。

若该文件名已使用,则可于后方加上流水号,辨识前后顺序的不同。

范例:q_ima 为料件数据查询

q_gef 销售系统单据性质查询

注:命名时须注意不可与『动态查询子程序』名称冲突,若名称上有所冲突,则后续登录数据或进行系统管理时,都会有不可预期的困难与错误情形发生。

  1. 共享参数档名(inc 档)

当全局变量需要跨程序(4gl code)应用时,除可以透过程序内的 GLOBALS 区块建议,也可以设定共享参数档。若有大量跨模块需求时,则可以将共享参数置放于系统 $ERP/cfg 目录下,并以设定链接方式建立于$COM/cfg 目录

一般用途共享参数档 格式:SSSQ999_88.inc (存放于 4gl 目录下)

跨模块共享参数文件 格式:top_XXXXXX.inc

说明:

  • SSSQ999 为主程序代码

  • 88 为两码数字流水编号

  • XXXXXX 为功能说明

  1. 附档名

附档名分为:4gl 原始程序部份、画面、报表,及其他资源文件等类别。意义如下:

4gl 原始程序部份

  • 4gl 原始程序

  • inc 多个程序共享的参数档案

  • 42m 原始程序编译后的目标程序

  • 42r 连结后可执行的目标程序

画面档案

  • 4fd Form Designer 使用的画面档

  • per 透过 gsform 工具将 4fd 档案转换成的画面对照档

  • 42f 编译完成的画面文件数据

下载规格&下载程序 ​

菜单栏点击规格 or 程序

设计器重点 ​

  1. 数据表关联

  2. 附属表格-多语言表

  3. 字段设定 azzi090

  4. r.r azzi(模组) 开启指令

  5. r.t 数据表

  6. 数值栏位长度大于 20

  7. 外键值需要一一对应

  8. azzi900(注册程序) - azzi910(关联作业号)

  9. 基础注册数据 2 区汇 1 区

adzi888 :

新建程序时需要搬的内容:

azzi900 对应主键是作业编号:citt001

azzi910 对应主键是作业编号:citt001

azzi902 对应主键是作业编号:citt001

不必须,有才搬:

开窗 对应开窗识别码 q**/cq**

检验码同 v**/cv**

错误信息:azzi920 对应主键为:错误信息编号:cxm-00001

程序及画面(子程序 子画面 元件等均通过设计器) 2 区汇 1 区:

在设计器中,通过常用工具,导出及汇入

表格:

在表格设计器中 r.t(adzi140) 工具中 导出及汇入

  1. 注释规则

#C20201013-gyc marks/adds

. .

#C20201013-gyc marks/adde

整行 #20201013-gyc marks/add

个别 #20201013-gyc add 内容

远程工具 ​

LINUX 远程工具:xshell,putty,SecureCRT ...

上传工具 ​

FlashFXP SFTP 22 FTP 21 Telent 23 ...

Linux 常用指令 ​

  1. rz 上传

  2. sz 下载

  3. df -h / df -Th 查看磁盘/分区结构

  4. Linux 关机指令 showdown

  5. su - xxx 用户切换

  6. crontab -l 查看定时任务

  7. cat /etc/redhat-release 系统内核版本

  8. free -m/-g 查看大小

  9. top 查看系统运行情况

  10. ps -ef 显示全部进程 ps -ef | grep oracle 过滤 ps -ef | grep smon oracle 后台监控进程

  11. kill -9 进程号 杀死进程

  12. find 查找文件目录

  13. which 文件搜索指令

  14. grep 在文件中过滤

  15. ls -la/-lsa 查看详细信息

  16. pwd 查看当前目录

  17. mkdir 创建目录 rmdir 删除空目录 mkdir -p acd/1/2/3 递归新建 rm -rf 递归删除

  18. ln -s xx.txt xx.txt 软连接

  19. touch 创建一个空文件

  20. cp -r 递归(目录) -i 交互操作 -f 强制操作

  21. scp -r 目录 远程主机:远程目录

  22. mv 重命名或者移动

  23. rm 删除

  24. cat 显示文件内容 more 分页查看 less 分屏显示

  25. tar (gzip gunzip)

tar cvf xx 文件

tar zvcvf xx.tar.gz --双重压缩

zip unzip

bzip bunzip

  1. du 查看目录占用空间

du -sh 文件

  1. root UID=0

  2. id 查看 UID

  3. chmod -R 770 文件 ,权限修改 chown -R root:root 文件 -R 为递归操作

  4. user add 新增用户

  5. at 一次性任务 crontab 定时任务

  6. 环境变量 /home 目录 .profile/.bash_profle

  7. ./脚本 执行脚本

  8. env 查看环境变量

oracle 数据库 ​

基础介绍 ​

  1. ARCn 归档进程(默认不打开)

  2. DBwin 写进程

  3. 控制文件 CONTROL.ctl 日志文件 redo.log .dbf 数据文件

  4. sqlplus / as sysdba

  5. shutdown immediate 关闭 | start up 开启

  6. show parameter name 查看数据库信息

  7. export ORACLE_SID=topprd 指定数据库区

数据同步 ​

  1. adzp555 跨区数据同步 r.r adzp555 g

系统启动 ​

  1. start nomount | alert database mount | alert database open 启动顺序

表空间 ​

  1. create tablespace DSDATA datafile '/u2/oradata/topprd/dsdata1.dbf' size 100M; 常见表空间

  2. alter tablespace DSDATA add datafile '/u2/oradata/topprd/dsdata2.dbf' size 100M; 新增文件

  3. alter database datafile ''/u2/oradata/topprd/dsdata1.dbf' resize 200M; 直接变更大小

  4. create tablespace DSDATA datafile '/u2/oradata/topprd/dsdata1.dbf' size 100M autoextend on maxsize 100M; 自动拓展。

  5. desc 表名 查看表结构

用户管理 ​

  1. 创建用户 create user ds1 identified by ds1 default tablespace testspace temporary tablespace temp

  2. 修改密码 alter user xxx identified by xxx

  3. 查询所有用户 select username from dba_users;

  4. grop user xx 删除用户

  5. grant (create session) to xx 赋予权限 可以赋予权限组 grant dba to xx

文档处理 ​

  1. tail -100f xx 动态查看文件最后 100 行

其他 ​

  1. conn 账号/密码 连接数据库

  2. select count(*) from tabs

  3. archive log list 是否归档

  4. show parameter recover 查看参数

  5. alert system xxx xxx xxx 设置参数

  6. startup mount ; alert database archivelog; alert database open;

  7. imp system/manager file=bible_db log=dible_db full=y ignore=y

注意 ​

  1. startup nomount 选项:(读初始化参数文件,启动实例)

startup nomount 选项启动实例,但不安装数据库。当数据库以这个模式启动时,参数文件被读取;后台进程和内存结构被启动;但它们不被附加或与数据库的磁盘结构进行通信。当实例处于这个状态时,数据库是不可使用的。 通常启动到这里可以做 create database , create or recreate control file 或者是 mount standby database 等动作,修改 parameter 也是可以的。

startup mount 选项:(打开控制文件)

startup nount 选项执行 STARTUP NOMOUNT 选项的所有工作,但另外附加数据库结构并与这些结构进行交互。这时 Oracle 从它用来查找和附加到主要数据库结构的控制文件中获得信息。当处于这个模式时,可以执行一些管理型任务,比如恢复。 读取 control file 通常启动到这里的目的有 recover dtabase ; backup database ; rename db files ,change archivelog mode 等

startup open

如果 STARTUP 命令行上没有指定任何模式,STARTUP OPEN 选项就是默认的启动模式。STARTUP OPEN 选项执行 STARTUP NOMOUNT 和 STARTUP MOUNT 选项的所有步骤。这个选项把数据库变成对所有用户都时可用的。 open datafile ,online redo log

介绍表模式对象 ​

介绍用户模拟下可以访问的模式对象 ​

  1. select * from all_objects

  2. select object_type,count(*) from user_objects group by object_type;

  3. select object_type,count(*) from all_objects group by object_type;

  4. select distinct owner from all_objects

研究模式中的数据类型 ​

  1. desc 表名 --sqlplus 查看表结构

  2. PL/SQL 中查看表结构

表的创建与管理 ​

创建表 ​

create table tab02 ( id NUMBER(10) not null, name VARCHAR2(10) not null, age NUMBER(3) not null )

重命名表 ​

rename tab02 to tab03;

alter table tab03 modify age NUMBER(10);

alter table tab03 rename column gj to country;

select * from tab select table_name from tabs;

select * from user_tabl

表的复制 ​

create table tab04 as select * from tab03;

select * from tab04;

create table tab05 as select * from tab03 where id<=2;

select * from tab05;

表的截断 ​

truncate table tab05;

delete from tab05;

表的删除 ​

drop table tab05;

删除表定义 ​

drop table table_name cascade constraints;--相关的视图,约束,等相关所有的关系 对象。

drop table table_name purge;--释放资源,不经过回收站。

...

delete 与 truncate 的区别 ​

  1. delete 是 DML,执行 delete 操作时,每次从表中删除一行,并且同时将该行的的删除操作记录 在 redo 和 undo 表空间中以便进行回滚(rollback)和重做操作,但要注意表空间要足够大,需要 手动提交(commit)操作才能生效,可以通过 rollback 撤消操作。

  2. delete 可根据条件删除表中满足条件的数据,如果不指定 where 子句,那么删除表中所有记 录。

  3. delete 语句不影响表所占用的 extent,高水线(high watermark)保持原位置不变。

  4. truncate 是 DDL,会隐式提交,所以,不能回滚,不会触发触发器。

  5. truncate 会删除表中所有记录,并且将重新设置高水线和所有的索引,缺省情况下将空间释放 到 minextents 个 extent,除非使用 reuse storage,不会记录日志,所以执行速度很快,但不能 通过 rollback 撤消操作

  6. 对于外键(foreignkey )约束引用的表,不能使用 truncate table,而应使用不 带 where 子句的 delete 语句。

  7. truncatetable 不能用于参与了索引视图的表。

临时表 ​

会话级临时表 ​

--会话结束 自动清空数据

create global temporary table table_name (col1 type1, col2 type2 ... ) on commit preserve rows;

事务级临时表 ​

--事务结束(commit,rollback) ,清除数据。

create global temporary table table_name (col1 type1, col2 type2 ... )

on commit delete rows;

索引 ​

  1. 逻辑分类: 单列或多列 唯一索引和非唯一索引

  2. 函数索引 Doman 物理分类: B-TREE(B 树索引) Bitmap(位图索引)

  3. B*Tree 索引适合大量的增删改(OLPT) DML 语句: Create index indexname on tablename(columnname[columnname...])

  4. Bitmap 索引 位图索引主要用于决策支持系统或静态数据,不支持行级锁定 Bitmap 索引适合做决策支持系统(数据仓库 OLAP),做 update 的代价非常高 DML 语句: Create BITMAP index indexname on tablename(columnname[columnname...])

  5. 单列索引:创建在单列上的索引 复合/组合索引 : 建立在多个列上的索引 where a=1 and b=2 如果索引建立在多个列上,只有它的第一个列被 where 子句引用时,优化器才会使用该索 引

函数索引 例 ​

  1. lower:大百写字符转化成小写的函数

  2. upper:小写字符转化成大写的函数容

create table tab001(id number,name varchar2(20));

insert into tab001 values(1,'LIUYANG');

insert into tab001 values(2,'liuyang');

commit;

set autotrace on select * from tab001 where upper(name)= 'LIUYANG';

create index idx_tab001_name on tab001(upper(name));

select * from tab001 where upper(name)= 'LIUYANG';

五种约束 ​

... 更多内容请看 PPT

视图 ​

视图的创建语法 ​

CREATE [OR REPLACE] [FORCE|NOFORCE] VIEW view_name

[(alias[, alias]...)]

AS subquery

[WITH CHECK OPTION [CONSTRAINT constraint]]

[WITH READ ONLY]
  1. OR REPLACE :若所创建的试图已经存在,ORACLE 自动重建该视图;

  2. FORCE :不管基表是否存在 ORACLE 都会自动创建该视图;

  3. NOFORCE :只有基表都存在 ORACLE 才会创建该视图: alias :为视图产生的列定义的别名;

  4. subquery :一条完整的 SELECT 语句,可以在该语句中定义别名;

  5. WITH CHECK OPTION :插入或修改的数据行必须满足视图定义的约束;

  6. WITH READ ONLY :该视图上不能进行任何 DML 操作。

  7. -- O read only on a view : object

  8. -- V Check OPTION on a view : object

例子

create view yg_v as select hire_date,job_id,salary,department_id from yg;

只看部门里的人员工资,看不到具体哪个人多少工资,避免敏感性数据的出现

删除视图 ​

drop view yg_v; --删除视图不影响基表的数据,但是基于此视图的其他视图也会无效

存储过程 ​

创建存储过程 ​

CREATE [OR REPLACE] PROCEDURE procedure_name

[(parameter1[model] datatype1, parameter2 [model] datatype2..)]

IS[AS]

BEGIN

PL/SQL;

END [procedure_name];

程序过程 ​

  1. r.c 程序编译 r.f 画面编译 r.d/r.dg debug 模式

  2. 4gl -> .42m 编译后的程序文件

  3. 4fd -> .42f 编译后的画面档

  4. .42r r.l 程序链接 -all

语法 ​

  1. l本地参数 p传递参数 g_全局参数

  2. DEFINE l_imaa001 LIKE imaa_t.imaa001 定义蚕食

  3. type_t num5 类型表

  4. recode 定义数据集合

  5. INITIALIZE cr._ TO NULL 清空变量 再赋值 INITIALIZE cr._ LIKE customer.*

  6. DISPLAY 显示

  7. 上传:rz -y

    编译:r.cs ****.4gl (如 r.cs litty.4gl)

    运行:fglrun **** (如 fglrun litty)

  8. 常用全局变量

g_enterprise 企业编号 g_site 据点

g_today 当前日期

g_dlang 语言别:简体/繁体

g_user 用户

g_dept 用户对应部门
  1. SLEEP 5 睡眠 5 秒

  2. IF THEN ELSE END IF (IF 模板)

  3. INPUT Module 变数 FROM Form 字段 OR INPUT BY NAME Module 变数 输入

  4. 程序模块

    INPUT variable-list FROM field-list

		BEFORE INPUT 输入之前

		BEFORE FIELD  field-list 进入栏位之前

		AFTER FIELD  field-list 离开栏位之后

		ON CHANGE  field-list 栏位数值变更

		ON IDLE  idle-seconds 定时退出时间

		ON ACTION  action-name 出发动作

		AFTER INPUT 完成输入

    END INPUT
  1. MENU 模板
	MENU [title]

      ATTRIBUTE ( control-attributes )

      BEFORE MENU

      ON ACTION action-name

      COMMAND option [comment]

      [HELP help-number ]

      COMMAND KEY ( key-name )

      option [comment]

      [HELP help-number ]

    ON IDLE idle-seconds

    END MENU

单双档 ​

s_aooi_200

  1. arti305_imckunit_ref() 查看 imckunit 字段说明

  2. arti305_input("a") input 函数

  3. azzi920 错误信息

  4. 系统分类码需要程序里加

  5. comment 鼠标提示

  6. 删除设计 adzp063

Q 类和 P 类作业 ​

  1. cl_err_collect_init cl_err_collect_show 错误收集

  2. cl_ask_confirm() 执行完询问

报表 ​

  1. GR 元件生成报表样板只能点一次

  2. azzi090

  3. 子程序:程序和画面

  4. (报表)元件:程序加样板

  5. azzi988