news 2026/5/28 2:03:05

手把手教你配置鼎捷T100二次开发环境:从模块、表格到函数的命名规则全解析(附实战示例)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
手把手教你配置鼎捷T100二次开发环境:从模块、表格到函数的命名规则全解析(附实战示例)

鼎捷T100二次开发实战指南:从环境搭建到命名规范全解析

1. 开发环境准备与基础概念

鼎捷T100作为企业级ERP系统,其二次开发环境与传统软件开发有显著差异。初次接触的开发者在配置环境时往往会遇到各种"水土不服"的情况。我们先从最基础的开发工具链开始:

必备工具清单

  • r.t工具:T100专用的表格管理工具,用于创建和维护数据表结构
  • Genero开发套件:T100前端界面的主要开发工具
  • 4GL编译器:用于编译业务逻辑代码
  • T100 SDK:包含各类API接口和开发文档

安装完成后,建议先运行环境检查命令:

# 检查工具链完整性 t100env check --all # 验证数据库连接 dbconn test --profile default

开发目录结构遵循严格的规范:

/$ERP/ ├── src/ # 源代码目录 ├── cfg/ # 配置文件 ├── lib/ # 共享库 ├── temp/ # 临时文件 └── log/ # 运行日志

2. 模块化开发实践

2.1 模块创建规范

T100采用模块化架构设计,每个功能模块都有明确的边界。创建新模块时,需要遵循以下步骤:

  1. 确定模块类型

    • 标准模块:AIMAXM等前缀
    • 客制模块:UC开头表示用户定制
    • 行业模块:包含行业代码后缀
  2. 模块注册: 在azzi900系统表中注册新模块,示例SQL:

    INSERT INTO azzi900 (mod_code, mod_name, mod_type, create_date) VALUES ('uc01', '客制采购模块', 'U', CURRENT_DATE);
  3. 目录初始化

    t100mod create --code uc01 --name "Custom Purchase"

2.2 模块依赖管理

跨模块调用需要特别注意版本兼容性。推荐使用依赖声明文件mod.dep

[requires] aim = 2.5.+ axm = 1.8.0 [excludes] axmr = 3.0.0-beta

3. 数据表设计详解

3.1 标准表结构设计

T100的表命名遵循严格的编码规则,核心格式为:

[模块代码(2位)][流水号(2位)]_t

示例表创建流程

  1. 使用r.t工具创建表结构
  2. 定义字段命名规范:
    [表名(不含_t)][字段类型][流水号(3位)]
  3. 设置必要审计字段:
    ALTER TABLE uc01aa_t ADD COLUMN crtid VARCHAR(10), ADD COLUMN crtdt DATETIME, ADD COLUMN modid VARCHAR(10), ADD COLUMN moddt DATETIME;

常用字段类型对照表

T100类型SQL类型说明
TX30VARCHAR(30)定长文本
AMT15DECIMAL(15,2)金额类型
DTDATE日期类型
TMTIME时间类型

3.2 客制字段处理

当需要扩展标准表时,必须使用特定前缀:

  • ua:标准表的客制字段
  • ud:弹性字段
  • uc:全新客制表字段

错误示例

-- 错误:直接修改标准字段 ALTER TABLE imaa_t MODIFY COLUMN imaa001 VARCHAR(50);

正确做法

-- 添加客制字段 ALTER TABLE imaa_t ADD COLUMN imaaua001 VARCHAR(50);

4. 程序开发规范

4.1 作业程序命名体系

T100程序命名包含丰富的信息:

[模块(3位)][类型(1位)][流水号(3位)][_行业代码(可选)]

程序类型标识符

  • I:基础数据维护
  • T:事务处理
  • P:批处理作业
  • Q:查询界面
  • R:报表程序

示例程序结构

FUNCTION uci100_main() DEFINE l_count INTEGER CALL uci100_initialize() WHILE TRUE CALL uci100_process() LET l_count = l_count + 1 END WHILE END FUNCTION

4.2 函数开发要点

  1. 命名规范

    [程序名]_[动作类型]()

    常用动作类型:

    • _insert数据新增
    • _update数据修改
    • _query数据查询
  2. 变量作用域标记

    DEFINE g_config RECORD -- 全局变量 key VARCHAR(20), value VARCHAR(100) END RECORD FUNCTION demo() DEFINE l_temp INTEGER -- 局部变量 DEFINE p_input VARCHAR -- 参数变量 END FUNCTION
  3. 异常处理模板

    TRY -- 业务逻辑 CATCH CALL cl_err(SQLCA.SQLCODE, SQLCA.SQLERRM) ROLLBACK WORK END TRY

5. 实战案例:采购订单扩展

5.1 需求场景

在标准采购模块(PMM)基础上扩展:

  1. 增加供应商评估字段
  2. 添加审批工作流
  3. 定制报表输出

5.2 实施步骤

  1. 创建客制表

    CREATE TABLE uc01aa_t ( uc01aa001 TX30, -- 订单编号 uc01aa002 AMT15, -- 评估分数 uc01aa003 DT, -- 评估日期 crtid TX10, -- 创建人 crtdt DT -- 创建时间 );
  2. 扩展标准程序

    # 在pmmi100程序中扩展 FUNCTION pmmi100_after_save() -- 写入评估数据 INSERT INTO uc01aa_t VALUES ( pmmi100.po_no, pmmi100.eval_score, CURRENT DATE, globals.user_id, CURRENT DATETIME ); END FUNCTION
  3. 定制报表开发

    REPORT uc01r100(po_no) DEFINE po_no VARCHAR(30) SELECT * FROM uc01aa_t WHERE uc01aa001 = po_no OUTPUT TO PRINTER FORMAT COLUMN 1: uc01aa001 COLUMN 2: uc01aa002 USING "##.##" END FORMAT END REPORT

6. 调试与优化技巧

6.1 常见问题排查

  1. 字段类型冲突

    注意:T100对字段类型有严格校验,特别是金额和日期字段

  2. 命名规范错误

    # 使用lint工具检查命名 t100lint check-naming src/uc01/
  3. 性能优化建议

    • 避免在循环中执行SQL查询
    • 使用PREPARE语句复用查询计划
    • 批量操作使用BEGIN WORK/COMMIT WORK

6.2 调试工具使用

  1. 日志输出

    CALL cl_debug(1, "当前订单号:" || l_po_no)
  2. 交互式调试

    t100debug attach --pid 12345
  3. SQL跟踪

    SET DEBUG ON; -- 执行操作 SET DEBUG OFF;

在实际项目中,我们发现最常出现问题的环节是字段命名规范和类型转换。特别是在对接第三方系统时,建议先建立数据映射表,明确每个字段的对应关系和转换规则。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/28 2:02:04

品牌推广怎么少走弯路:这 10 个误区别踩

很多人一提品牌问题,第一反应是 Logo 不够高级、颜色没选对、海报不够好看。但真实情况往往不是这样。多数品牌做不好,不是某一个设计细节翻车,而是定位、视觉、文案、体验和业务状态对不上。你说自己专业,页面却很乱;…

作者头像 李华
网站建设 2026/5/28 1:59:52

车规MCU功能安全设计全解析 | 全网独家复现篇 | 三种安全状态机制、SBC协同深度防御、助力ASIL-D最高安全合规、EPS/BMS/AEB全场景量产落地与工程化代码实现

目录 一、前言 二、车规MCU功能安全核心体系与ASIL-D合规刚需 2.1 车规MCU安全设计核心定位 2.2 传统MCU安全设计核心短板 2.3 MCU+SBC协同防御核心价值 三、车规MCU三大安全状态机制全解(核心涨点) 3.1 状态一:正常运行态 (NORMAL_STATE) 3.1.1 状态定义 3.1.2 核…

作者头像 李华
网站建设 2026/5/28 1:57:47

RAG系列:#5 RAG中的11种分块策略

原文:https://mp.weixin.qq.com/s/Yax05qsVj1tXi77za8Wm2g 欢迎关注公zh: AI-Frontiers RAG往期文章推荐 RAG效果差?7个指标让你的准确率大幅提升 RAG评测完整指南:指标、测试和最佳实践 收藏!RAG核心工具大全: 7大解析工具…

作者头像 李华