# Proposal: 新增 ABAP 字典对象类型支持 ## Why 当前 sap-cli 支持的 10 种对象类型覆盖了日常开发的基础需求,但 SAP 实际项目中还频繁使用消息类(Message Class)、数据库视图(Database View)、搜索帮助(Search Help)和锁对象(Lock Object)。缺少这些类型意味着开发者仍需回到 SAP GUI 处理这些对象,破坏了 CLI 工具的连贯工作流。 ## What Changes - **消息类 (Message Class)**:MESSAGE 语句的核心依赖,几乎每个项目都需要。ADT 端点 `/sap/bc/adt/messageclasses` - **数据库视图 (Database View)**:数据建模和查询优化的基础工具。ADT 端点 `/sap/bc/adt/ddic/views` - **搜索帮助 (Search Help)**:ALV 屏幕 F4 帮助和数据输入辅助。ADT 端点 `/sap/bc/adt/ddic/searchhelps` - **锁对象 (Lock Object)**:多用户并发控制,数据一致性保障。ADT 端点 `/sap/bc/adt/ddic/lockobjects` 这 4 种类型均为 DDIC 类别,创建时需要 XML 定义(非纯文本源码),与现有的 domain/dataelement/table 类型处理方式类似。 ## Capabilities ### New Capabilities (无新领域) ### Modified Capabilities - `object-lifecycle`: 扩展支持消息类、数据库视图、搜索帮助、锁对象的 CRUD 操作 ## Impact - types.py:注册 4 个新 ObjectTypeConfig - client.py:新增 4 种类型的创建模板和 ADT 交互逻辑 - ddic.py:扩展 DDIC XML 生成以支持新类型 - scanner.py:新增目录映射(messageclasses/、views/、searchhelps/、lockobjects/) - 约定文件扩展名保持 .abap(消息类和锁对象无源码端点,仅支持 create/info/delete)