一键导入
abapgit-ddls-object
Create an abapGit DDLS object outside SAP systems using user-defined names and repository reference files.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Create an abapGit DDLS object outside SAP systems using user-defined names and repository reference files.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Run ATC syntax check on the SAP system to detect syntax errors after git pull.
Trigger an abapGit repository pull on the SAP system to sync the current codebase.
Run ABAP Unit tests on the remote SAP system via ADT.
Prompt and workflow for generating conventional commit messages using a structured XML format. Guides users to create standardized, descriptive commit messages in line with the Conventional Commits specification, including instructions, examples, and validation.
Detailed guidance on which test layer(s) to update and how to write tests for different kinds of changes in the ZASIS project.
Reference guide for the ZASIS exception handling pattern — class hierarchy, message class, T100 integration, how to raise exceptions, and rules for adding new exceptions.
| name | abapgit-ddls-object |
| description | Create an abapGit DDLS object outside SAP systems using user-defined names and repository reference files. |
abapGit docs: Supported Object Types | File Formats | Test Repo
Create a DDLS (Data Definition Language Source / CDS View) object directly as abapGit-serialized repository files, outside an SAP system.
<object_name>.ddls.<extension> — all lowercase.<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DDLS" serializer_version="v1.0.0">
A DDLS object consists of up to three files:
<name>.ddls.asddls — CDS source code<name>.ddls.xml — metadata<name>.ddls.baseinfo — optional: dependency information (JSON)src/zfoo_i_flight.ddls.asddls@AbapCatalog.viewEnhancementCategory: [#NONE]
@AccessControl.authorizationCheck: #NOT_REQUIRED
@EndUserText.label: 'Flight Master Data'
define view entity ZFOO_I_FLIGHT
as select from zfoo_flight
{
key flight_id as FlightId,
carrier as Carrier,
connection as Connection,
flight_date as FlightDate
}
src/zfoo_i_flight.ddls.baseinfo{
"BASEINFO": {
"FROM": [
"ZFOO_FLIGHT"
],
"ASSOCIATED": [],
"BASE": []
}
}
src/zfoo_i_flight.ddls.xml<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DDLS" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DDLS>
<DDLNAME>ZFOO_I_FLIGHT</DDLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<DDTEXT>Flight Master Data</DDTEXT>
<SOURCE_TYPE>V</SOURCE_TYPE>
</DDLS>
</asx:values>
</asx:abap>
</abapGit>
src/zfoo_a_discount.ddls.asddls@EndUserText.label: 'Discount Input Parameter'
define abstract entity ZFOO_A_DISCOUNT
{
discount_percent : abap.int1;
}
src/zfoo_a_discount.ddls.xml<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DDLS" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DDLS>
<DDLNAME>ZFOO_A_DISCOUNT</DDLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<DDTEXT>Discount Input Parameter</DDTEXT>
<SOURCE_TYPE>A</SOURCE_TYPE>
</DDLS>
</asx:values>
</asx:abap>
</abapGit>
Note: Abstract entities do not have a
.baseinfofile since they have no data source.
src/zfoo_c_flight.ddls.asddls@AccessControl.authorizationCheck: #MANDATORY
@EndUserText.label: 'Flight - Consumption View'
@Search.searchable: true
@Metadata.allowExtensions: true
define root view entity ZFOO_C_FLIGHT
provider contract transactional_query
as projection on ZFOO_I_FLIGHT
{
key FlightId,
@Search.defaultSearchElement: true
Carrier,
Connection,
FlightDate
}
src/zfoo_c_flight.ddls.baseinfo{
"BASEINFO": {
"FROM": [
"ZFOO_I_FLIGHT"
],
"ASSOCIATED": [],
"BASE": [
"ZFOO_I_FLIGHT"
]
}
}
src/zfoo_c_flight.ddls.xml<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DDLS" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DDLS>
<DDLNAME>ZFOO_C_FLIGHT</DDLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<DDTEXT>Flight - Consumption View</DDTEXT>
<SOURCE_TYPE>P</SOURCE_TYPE>
</DDLS>
</asx:values>
</asx:abap>
</abapGit>
| Element | Description |
|---|---|
DDLNAME | CDS view name (uppercase, max 30 chars) |
DDLANGUAGE | Original language (E = English) |
DDTEXT | Short description |
SOURCE_TYPE | V = view/view entity, P = projection view, E = extend view, F = custom entity, A = abstract entity, W = view entity (legacy, avoid — use V) |
| Field | Description |
|---|---|
FROM | Data sources used in select from |
ASSOCIATED | Targets of associations |
BASE | Base view for projections |
<name>.ddls.asddls with the CDS source.<name>.ddls.xml with DDLS metadata.<name>.ddls.baseinfo with dependency information.SOURCE_TYPE according to the view type.LCL_OBJECT_DDLS.DDLNAME in XML matches the filename (uppercase vs lowercase)..asddls file contains valid CDS syntax.SOURCE_TYPE matches the CDS view type..baseinfo lists all referenced entities correctly.