@mcp-abap-adt/core 5.0.11 → 5.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/dist/handlers/behavior_definition/high/handleCheckBehaviorDefinition.d.ts +26 -0
- package/dist/handlers/behavior_definition/high/handleCheckBehaviorDefinition.d.ts.map +1 -0
- package/dist/handlers/behavior_definition/high/handleCheckBehaviorDefinition.js +26 -0
- package/dist/handlers/behavior_definition/high/handleCheckBehaviorDefinition.js.map +1 -0
- package/dist/handlers/class/high/handleCheckClass.d.ts +37 -0
- package/dist/handlers/class/high/handleCheckClass.d.ts.map +1 -0
- package/dist/handlers/class/high/handleCheckClass.js +35 -0
- package/dist/handlers/class/high/handleCheckClass.js.map +1 -0
- package/dist/handlers/data_element/high/handleCheckDataElement.d.ts +26 -0
- package/dist/handlers/data_element/high/handleCheckDataElement.d.ts.map +1 -0
- package/dist/handlers/data_element/high/handleCheckDataElement.js +26 -0
- package/dist/handlers/data_element/high/handleCheckDataElement.js.map +1 -0
- package/dist/handlers/ddlx/high/handleCheckMetadataExtension.d.ts +26 -0
- package/dist/handlers/ddlx/high/handleCheckMetadataExtension.d.ts.map +1 -0
- package/dist/handlers/ddlx/high/handleCheckMetadataExtension.js +26 -0
- package/dist/handlers/ddlx/high/handleCheckMetadataExtension.js.map +1 -0
- package/dist/handlers/domain/high/handleCheckDomain.d.ts +26 -0
- package/dist/handlers/domain/high/handleCheckDomain.d.ts.map +1 -0
- package/dist/handlers/domain/high/handleCheckDomain.js +26 -0
- package/dist/handlers/domain/high/handleCheckDomain.js.map +1 -0
- package/dist/handlers/function/high/handleCheckFunctionGroup.d.ts +26 -0
- package/dist/handlers/function/high/handleCheckFunctionGroup.d.ts.map +1 -0
- package/dist/handlers/function/high/handleCheckFunctionGroup.js +26 -0
- package/dist/handlers/function/high/handleCheckFunctionGroup.js.map +1 -0
- package/dist/handlers/function/high/handleCheckFunctionModule.d.ts +37 -0
- package/dist/handlers/function/high/handleCheckFunctionModule.d.ts.map +1 -0
- package/dist/handlers/function/high/handleCheckFunctionModule.js +35 -0
- package/dist/handlers/function/high/handleCheckFunctionModule.js.map +1 -0
- package/dist/handlers/interface/high/handleCheckInterface.d.ts +26 -0
- package/dist/handlers/interface/high/handleCheckInterface.d.ts.map +1 -0
- package/dist/handlers/interface/high/handleCheckInterface.js +26 -0
- package/dist/handlers/interface/high/handleCheckInterface.js.map +1 -0
- package/dist/handlers/package/high/handleCheckPackage.d.ts +31 -0
- package/dist/handlers/package/high/handleCheckPackage.d.ts.map +1 -0
- package/dist/handlers/package/high/handleCheckPackage.js +30 -0
- package/dist/handlers/package/high/handleCheckPackage.js.map +1 -0
- package/dist/handlers/program/high/handleCheckProgram.d.ts +26 -0
- package/dist/handlers/program/high/handleCheckProgram.d.ts.map +1 -0
- package/dist/handlers/program/high/handleCheckProgram.js +26 -0
- package/dist/handlers/program/high/handleCheckProgram.js.map +1 -0
- package/dist/handlers/structure/high/handleCheckStructure.d.ts +37 -0
- package/dist/handlers/structure/high/handleCheckStructure.d.ts.map +1 -0
- package/dist/handlers/structure/high/handleCheckStructure.js +35 -0
- package/dist/handlers/structure/high/handleCheckStructure.js.map +1 -0
- package/dist/handlers/table/high/handleCheckTable.d.ts +37 -0
- package/dist/handlers/table/high/handleCheckTable.d.ts.map +1 -0
- package/dist/handlers/table/high/handleCheckTable.js +35 -0
- package/dist/handlers/table/high/handleCheckTable.js.map +1 -0
- package/dist/handlers/view/high/handleCheckView.d.ts +37 -0
- package/dist/handlers/view/high/handleCheckView.d.ts.map +1 -0
- package/dist/handlers/view/high/handleCheckView.js +35 -0
- package/dist/handlers/view/high/handleCheckView.js.map +1 -0
- package/dist/lib/handlers/groups/HighLevelHandlersGroup.d.ts.map +1 -1
- package/dist/lib/handlers/groups/HighLevelHandlersGroup.js +67 -1
- package/dist/lib/handlers/groups/HighLevelHandlersGroup.js.map +1 -1
- package/dist/lib/normalizeCheckResponse.d.ts +16 -0
- package/dist/lib/normalizeCheckResponse.d.ts.map +1 -0
- package/dist/lib/normalizeCheckResponse.js +27 -0
- package/dist/lib/normalizeCheckResponse.js.map +1 -0
- package/docs/superpowers/plans/2026-04-13-high-level-check-tools.md +1740 -0
- package/docs/superpowers/specs/2026-04-13-high-level-check-tools-design.md +204 -0
- package/docs/user-guide/AVAILABLE_TOOLS.md +187 -3
- package/docs/user-guide/AVAILABLE_TOOLS_COMPACT.md +1 -1
- package/docs/user-guide/AVAILABLE_TOOLS_HIGH.md +186 -2
- package/docs/user-guide/AVAILABLE_TOOLS_LEGACY.md +127 -3
- package/docs/user-guide/AVAILABLE_TOOLS_LOW.md +1 -1
- package/docs/user-guide/AVAILABLE_TOOLS_READONLY.md +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
# High-Level Check Tools for ABAP Objects
|
|
2
|
+
|
|
3
|
+
**Issue:** #54 — Add Check tools for ABAP objects (syntax/semantic validation)
|
|
4
|
+
**Date:** 2026-04-13
|
|
5
|
+
|
|
6
|
+
## Problem
|
|
7
|
+
|
|
8
|
+
LLM agents create/update ABAP objects but errors are only discovered at activation time. This causes expensive retry loops. Low-level Check handlers exist but are not exposed as standalone high-level tools — check is only embedded inside Create/Update workflows.
|
|
9
|
+
|
|
10
|
+
## Solution
|
|
11
|
+
|
|
12
|
+
Add 13 high-level Check tools — one per object type that has a low-level check handler. Each is an adapter wrapper that delegates to the existing low-level handler and normalizes the response: strips session fields, adds a shared `object_name` field, and returns a consistent core response shape.
|
|
13
|
+
|
|
14
|
+
## Non-goals / Limitations
|
|
15
|
+
|
|
16
|
+
- Check tools do **not** perform lock/update/activate flows — they only run syntax/semantic validation.
|
|
17
|
+
- Hypothetical source checking is only supported where the low-level handler already supports it (`source_code`, `ddl_code`, or `ddl_source`).
|
|
18
|
+
- No automatic `super_package` resolution in Phase 1 — callers must provide it for `CheckPackage`.
|
|
19
|
+
|
|
20
|
+
## Tools
|
|
21
|
+
|
|
22
|
+
| High-level tool name | Low-level handler | source param | version default | available_in |
|
|
23
|
+
|---|---|---|---|---|
|
|
24
|
+
| `CheckBehaviorDefinition` | `handleCheckBehaviorDefinition` | — | — | onprem, cloud |
|
|
25
|
+
| `CheckClass` | `handleCheckClass` | `source_code` | active | onprem, cloud, legacy |
|
|
26
|
+
| `CheckDataElement` | `handleCheckDataElement` | — | — | onprem, cloud |
|
|
27
|
+
| `CheckDomain` | `handleCheckDomain` | — | — | onprem, cloud |
|
|
28
|
+
| `CheckFunctionGroup` | `handleCheckFunctionGroup` | — | — | onprem, cloud, legacy |
|
|
29
|
+
| `CheckFunctionModule` | `handleCheckFunctionModule` | — | active | onprem, cloud, legacy |
|
|
30
|
+
| `CheckInterface` | `handleCheckInterface` | — | — | onprem, cloud, legacy |
|
|
31
|
+
| `CheckMetadataExtension` | `handleCheckMetadataExtension` | — | — | onprem, cloud |
|
|
32
|
+
| `CheckPackage` | `handleCheckPackage` | — | — | onprem, cloud, legacy |
|
|
33
|
+
| `CheckProgram` | `handleCheckProgram` | — | — | onprem, legacy |
|
|
34
|
+
| `CheckStructure` | `handleCheckStructure` | `ddl_code` | inactive | onprem, cloud |
|
|
35
|
+
| `CheckTable` | `handleCheckTable` | `ddl_code` | new | onprem, cloud |
|
|
36
|
+
| `CheckView` | `handleCheckView` | `ddl_source` | inactive | onprem, cloud, legacy |
|
|
37
|
+
|
|
38
|
+
## Handler pattern
|
|
39
|
+
|
|
40
|
+
Each high-level Check handler:
|
|
41
|
+
|
|
42
|
+
1. Exports a `TOOL_DEFINITION` with high-level name (no `Low` suffix)
|
|
43
|
+
2. Same `available_in` as the low-level counterpart
|
|
44
|
+
3. Input schema **excludes** `session_id` and `session_state`
|
|
45
|
+
4. Passes through source param where supported by low-level
|
|
46
|
+
5. Passes through `version` where supported by low-level
|
|
47
|
+
6. Delegates to the existing low-level handler function
|
|
48
|
+
7. Normalizes response: strips `session_id`/`session_state` from output, adds shared `object_name` field
|
|
49
|
+
8. If low-level handler returns `isError: true` or a non-JSON payload, returns it unchanged without attempting normalization
|
|
50
|
+
|
|
51
|
+
### File location
|
|
52
|
+
|
|
53
|
+
Each handler in its object type's `high/` directory:
|
|
54
|
+
|
|
55
|
+
```
|
|
56
|
+
src/handlers/behavior_definition/high/handleCheckBehaviorDefinition.ts
|
|
57
|
+
src/handlers/class/high/handleCheckClass.ts
|
|
58
|
+
src/handlers/data_element/high/handleCheckDataElement.ts
|
|
59
|
+
src/handlers/ddlx/high/handleCheckMetadataExtension.ts
|
|
60
|
+
src/handlers/domain/high/handleCheckDomain.ts
|
|
61
|
+
src/handlers/function/high/handleCheckFunctionGroup.ts
|
|
62
|
+
src/handlers/function/high/handleCheckFunctionModule.ts
|
|
63
|
+
src/handlers/interface/high/handleCheckInterface.ts
|
|
64
|
+
src/handlers/package/high/handleCheckPackage.ts
|
|
65
|
+
src/handlers/program/high/handleCheckProgram.ts
|
|
66
|
+
src/handlers/structure/high/handleCheckStructure.ts
|
|
67
|
+
src/handlers/table/high/handleCheckTable.ts
|
|
68
|
+
src/handlers/view/high/handleCheckView.ts
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Note: both FunctionGroup and FunctionModule handlers live in `src/handlers/function/high/` — same directory structure as low-level handlers.
|
|
72
|
+
|
|
73
|
+
## Normalized response shape
|
|
74
|
+
|
|
75
|
+
All high-level Check tools return a JSON response with the following normalized common fields (object-specific compatibility fields like `class_name`, `view_name`, `name` are preserved alongside):
|
|
76
|
+
|
|
77
|
+
```typescript
|
|
78
|
+
{
|
|
79
|
+
success: boolean; // true if no errors
|
|
80
|
+
object_name: string; // canonical shared field (uppercased)
|
|
81
|
+
check_result: { // from parseCheckRunResponse()
|
|
82
|
+
success: boolean;
|
|
83
|
+
status: string;
|
|
84
|
+
message: string;
|
|
85
|
+
errors: Array<{ type: string; text: string; line?: string | number; href?: string }>;
|
|
86
|
+
warnings: Array<{ type: string; text: string; line?: string | number; href?: string }>;
|
|
87
|
+
info: Array<{ type: string; text: string; line?: string | number; href?: string }>;
|
|
88
|
+
total_messages: number;
|
|
89
|
+
has_errors: boolean;
|
|
90
|
+
has_warnings: boolean;
|
|
91
|
+
};
|
|
92
|
+
message: string; // human-readable summary
|
|
93
|
+
// object-specific field preserved for compatibility:
|
|
94
|
+
class_name?: string; // CheckClass
|
|
95
|
+
view_name?: string; // CheckView
|
|
96
|
+
package_name?: string; // CheckPackage
|
|
97
|
+
// etc.
|
|
98
|
+
}
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
**Excluded from output:** `session_id`, `session_state`.
|
|
102
|
+
|
|
103
|
+
**Error path:** If the low-level handler returns `isError: true` or a non-JSON payload, the high-level wrapper returns that error unchanged — no normalization applied.
|
|
104
|
+
|
|
105
|
+
**Field naming for objects using `name`:** BehaviorDefinition and MetadataExtension use `name` as their low-level input field. In the response, keep `name` for compatibility but always add `object_name` as the canonical shared field.
|
|
106
|
+
|
|
107
|
+
## Special parameters per object type
|
|
108
|
+
|
|
109
|
+
- **CheckFunctionModule**: requires `function_group_name` + `function_module_name`
|
|
110
|
+
- **CheckPackage**: requires `package_name` + `super_package`
|
|
111
|
+
- **CheckTable**: `reporter` removed from high-level API (low-level default `abapCheckRun` is used)
|
|
112
|
+
|
|
113
|
+
## Example: CheckClass
|
|
114
|
+
|
|
115
|
+
```typescript
|
|
116
|
+
import { handleCheckClass as handleCheckClassLow } from '../low/handleCheckClass';
|
|
117
|
+
import type { HandlerContext } from '../../../lib/handlers/interfaces';
|
|
118
|
+
import { return_response } from '../../../lib/utils';
|
|
119
|
+
|
|
120
|
+
export const TOOL_DEFINITION = {
|
|
121
|
+
name: 'CheckClass',
|
|
122
|
+
available_in: ['onprem', 'cloud', 'legacy'] as const,
|
|
123
|
+
description: 'Perform syntax check on an ABAP class. Can check existing class (active/inactive) or validate hypothetical source code. Returns syntax errors, warnings, and messages.',
|
|
124
|
+
inputSchema: {
|
|
125
|
+
type: 'object',
|
|
126
|
+
properties: {
|
|
127
|
+
class_name: { type: 'string', description: 'Name of the ABAP class to check' },
|
|
128
|
+
version: { type: 'string', enum: ['active', 'inactive'], description: 'Version to check. Default: active' },
|
|
129
|
+
source_code: { type: 'string', description: 'Optional source code to check instead of the saved version' },
|
|
130
|
+
},
|
|
131
|
+
required: ['class_name'],
|
|
132
|
+
},
|
|
133
|
+
} as const;
|
|
134
|
+
|
|
135
|
+
export async function handleCheckClass(context: HandlerContext, args: Record<string, unknown>) {
|
|
136
|
+
const result = await handleCheckClassLow(context, args);
|
|
137
|
+
// Normalize: parse low-level JSON, add object_name, strip session fields
|
|
138
|
+
const data = JSON.parse(result.content[0].text);
|
|
139
|
+
delete data.session_id;
|
|
140
|
+
delete data.session_state;
|
|
141
|
+
data.object_name = data.class_name;
|
|
142
|
+
return return_response({ data: JSON.stringify(data, null, 2) });
|
|
143
|
+
}
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
## Example: CheckBehaviorDefinition (no source param, no version)
|
|
147
|
+
|
|
148
|
+
```typescript
|
|
149
|
+
import { handleCheckBehaviorDefinition as handleCheckBdefLow } from '../low/handleCheckBehaviorDefinition';
|
|
150
|
+
import type { HandlerContext } from '../../../lib/handlers/interfaces';
|
|
151
|
+
import { return_response } from '../../../lib/utils';
|
|
152
|
+
|
|
153
|
+
export const TOOL_DEFINITION = {
|
|
154
|
+
name: 'CheckBehaviorDefinition',
|
|
155
|
+
available_in: ['onprem', 'cloud'] as const,
|
|
156
|
+
description: 'Perform syntax check on an ABAP behavior definition (BDEF). Returns syntax errors, warnings, and messages.',
|
|
157
|
+
inputSchema: {
|
|
158
|
+
type: 'object',
|
|
159
|
+
properties: {
|
|
160
|
+
name: { type: 'string', description: 'Name of the behavior definition to check' },
|
|
161
|
+
},
|
|
162
|
+
required: ['name'],
|
|
163
|
+
},
|
|
164
|
+
} as const;
|
|
165
|
+
|
|
166
|
+
export async function handleCheckBehaviorDefinition(context: HandlerContext, args: Record<string, unknown>) {
|
|
167
|
+
const result = await handleCheckBdefLow(context, args);
|
|
168
|
+
const data = JSON.parse(result.content[0].text);
|
|
169
|
+
delete data.session_id;
|
|
170
|
+
delete data.session_state;
|
|
171
|
+
data.object_name = data.name;
|
|
172
|
+
return return_response({ data: JSON.stringify(data, null, 2) });
|
|
173
|
+
}
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
## Registration
|
|
177
|
+
|
|
178
|
+
All 13 handlers registered in `src/lib/handlers/groups/HighLevelHandlersGroup.ts` following existing pattern.
|
|
179
|
+
|
|
180
|
+
## Acceptance criteria
|
|
181
|
+
|
|
182
|
+
- [ ] High-level input schemas exclude `session_id` and `session_state`
|
|
183
|
+
- [ ] High-level responses do not contain `session_id` or `session_state`
|
|
184
|
+
- [ ] Response includes normalized `object_name` field
|
|
185
|
+
- [ ] Response includes `success`, `message`, and `check_result` fields
|
|
186
|
+
- [ ] Each tool is registered in `HighLevelHandlersGroup.ts`
|
|
187
|
+
- [ ] Environment gating follows `available_in` from corresponding low-level handler
|
|
188
|
+
- [ ] `CheckTable` does not expose `reporter` parameter
|
|
189
|
+
- [ ] Each tool has integration test coverage in `src/__tests__/integration/high/` layout
|
|
190
|
+
|
|
191
|
+
## Testing
|
|
192
|
+
|
|
193
|
+
Integration tests for each Check tool in `src/__tests__/integration/high/` directories, following existing test patterns. Tests must verify:
|
|
194
|
+
|
|
195
|
+
- Tool registration and availability per environment
|
|
196
|
+
- Normalized response contract: `object_name` present, `session_id`/`session_state` absent
|
|
197
|
+
- Preservation of object-specific fields (e.g., `class_name`, `view_name`)
|
|
198
|
+
- `success`, `message`, `check_result` fields present in response
|
|
199
|
+
|
|
200
|
+
## Phased delivery
|
|
201
|
+
|
|
202
|
+
**Phase 1** (this PR): Adapter wrappers with response normalization, registration in HighLevelHandlersGroup, integration tests verifying normalized contract.
|
|
203
|
+
|
|
204
|
+
**Phase 2** (future): API ergonomics — optional `super_package` resolution in CheckPackage, richer error descriptions for LLM agents.
|
|
@@ -4,9 +4,9 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
4
4
|
|
|
5
5
|
## Summary
|
|
6
6
|
|
|
7
|
-
- Total tools:
|
|
7
|
+
- Total tools: 303
|
|
8
8
|
- Read-only tools: 54
|
|
9
|
-
- High-level tools:
|
|
9
|
+
- High-level tools: 127
|
|
10
10
|
- Low-level tools: 122
|
|
11
11
|
|
|
12
12
|
- Compact tools: 22 (included in High-level group)
|
|
@@ -99,6 +99,7 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
99
99
|
- [ReadView](#readview-read-only-view)
|
|
100
100
|
- [High-Level Group](#high-level-group)
|
|
101
101
|
- [Behavior Definition](#high-level-behavior-definition)
|
|
102
|
+
- [CheckBehaviorDefinition](#checkbehaviordefinition-high-level-behavior-definition)
|
|
102
103
|
- [CreateBehaviorDefinition](#createbehaviordefinition-high-level-behavior-definition)
|
|
103
104
|
- [DeleteBehaviorDefinition](#deletebehaviordefinition-high-level-behavior-definition)
|
|
104
105
|
- [GetBehaviorDefinition](#getbehaviordefinition-high-level-behavior-definition)
|
|
@@ -109,6 +110,7 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
109
110
|
- [GetBehaviorImplementation](#getbehaviorimplementation-high-level-behavior-implementation)
|
|
110
111
|
- [UpdateBehaviorImplementation](#updatebehaviorimplementation-high-level-behavior-implementation)
|
|
111
112
|
- [Class](#high-level-class)
|
|
113
|
+
- [CheckClass](#checkclass-high-level-class)
|
|
112
114
|
- [CreateClass](#createclass-high-level-class)
|
|
113
115
|
- [DeleteClass](#deleteclass-high-level-class)
|
|
114
116
|
- [DeleteLocalDefinitions](#deletelocaldefinitions-high-level-class)
|
|
@@ -125,6 +127,8 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
125
127
|
- [UpdateLocalMacros](#updatelocalmacros-high-level-class)
|
|
126
128
|
- [UpdateLocalTestClass](#updatelocaltestclass-high-level-class)
|
|
127
129
|
- [UpdateLocalTypes](#updatelocaltypes-high-level-class)
|
|
130
|
+
- [Common](#high-level-common)
|
|
131
|
+
- [ActivateObjects](#activateobjects-high-level-common)
|
|
128
132
|
- [Compact](#high-level-compact)
|
|
129
133
|
- [HandlerActivate](#handleractivate-high-level-compact)
|
|
130
134
|
- [HandlerCdsUnitTestResult](#handlercdsunittestresult-high-level-compact)
|
|
@@ -149,19 +153,24 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
149
153
|
- [HandlerUpdate](#handlerupdate-high-level-compact)
|
|
150
154
|
- [HandlerValidate](#handlervalidate-high-level-compact)
|
|
151
155
|
- [Data Element](#high-level-data-element)
|
|
156
|
+
- [CheckDataElement](#checkdataelement-high-level-data-element)
|
|
152
157
|
- [CreateDataElement](#createdataelement-high-level-data-element)
|
|
153
158
|
- [DeleteDataElement](#deletedataelement-high-level-data-element)
|
|
154
159
|
- [GetDataElement](#getdataelement-high-level-data-element)
|
|
155
160
|
- [UpdateDataElement](#updatedataelement-high-level-data-element)
|
|
156
161
|
- [Ddlx](#high-level-ddlx)
|
|
162
|
+
- [CheckMetadataExtension](#checkmetadataextension-high-level-ddlx)
|
|
157
163
|
- [CreateMetadataExtension](#createmetadataextension-high-level-ddlx)
|
|
158
164
|
- [UpdateMetadataExtension](#updatemetadataextension-high-level-ddlx)
|
|
159
165
|
- [Domain](#high-level-domain)
|
|
166
|
+
- [CheckDomain](#checkdomain-high-level-domain)
|
|
160
167
|
- [CreateDomain](#createdomain-high-level-domain)
|
|
161
168
|
- [DeleteDomain](#deletedomain-high-level-domain)
|
|
162
169
|
- [GetDomain](#getdomain-high-level-domain)
|
|
163
170
|
- [UpdateDomain](#updatedomain-high-level-domain)
|
|
164
171
|
- [Function](#high-level-function)
|
|
172
|
+
- [CheckFunctionGroup](#checkfunctiongroup-high-level-function)
|
|
173
|
+
- [CheckFunctionModule](#checkfunctionmodule-high-level-function)
|
|
165
174
|
- [CreateFunctionGroup](#createfunctiongroup-high-level-function)
|
|
166
175
|
- [CreateFunctionModule](#createfunctionmodule-high-level-function)
|
|
167
176
|
- [UpdateFunctionGroup](#updatefunctiongroup-high-level-function)
|
|
@@ -173,6 +182,7 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
173
182
|
- [DeleteFunctionModule](#deletefunctionmodule-high-level-function-module)
|
|
174
183
|
- [GetFunctionModule](#getfunctionmodule-high-level-function-module)
|
|
175
184
|
- [Interface](#high-level-interface)
|
|
185
|
+
- [CheckInterface](#checkinterface-high-level-interface)
|
|
176
186
|
- [CreateInterface](#createinterface-high-level-interface)
|
|
177
187
|
- [DeleteInterface](#deleteinterface-high-level-interface)
|
|
178
188
|
- [GetInterface](#getinterface-high-level-interface)
|
|
@@ -181,9 +191,11 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
181
191
|
- [DeleteMetadataExtension](#deletemetadataextension-high-level-metadata-extension)
|
|
182
192
|
- [GetMetadataExtension](#getmetadataextension-high-level-metadata-extension)
|
|
183
193
|
- [Package](#high-level-package)
|
|
194
|
+
- [CheckPackage](#checkpackage-high-level-package)
|
|
184
195
|
- [CreatePackage](#createpackage-high-level-package)
|
|
185
196
|
- [GetPackage](#getpackage-high-level-package)
|
|
186
197
|
- [Program](#high-level-program)
|
|
198
|
+
- [CheckProgram](#checkprogram-high-level-program)
|
|
187
199
|
- [CreateProgram](#createprogram-high-level-program)
|
|
188
200
|
- [DeleteProgram](#deleteprogram-high-level-program)
|
|
189
201
|
- [GetProgram](#getprogram-high-level-program)
|
|
@@ -201,6 +213,7 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
201
213
|
- [GetServiceDefinition](#getservicedefinition-high-level-service-definition)
|
|
202
214
|
- [UpdateServiceDefinition](#updateservicedefinition-high-level-service-definition)
|
|
203
215
|
- [Structure](#high-level-structure)
|
|
216
|
+
- [CheckStructure](#checkstructure-high-level-structure)
|
|
204
217
|
- [CreateStructure](#createstructure-high-level-structure)
|
|
205
218
|
- [DeleteStructure](#deletestructure-high-level-structure)
|
|
206
219
|
- [GetStructure](#getstructure-high-level-structure)
|
|
@@ -208,6 +221,7 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
208
221
|
- [System](#high-level-system)
|
|
209
222
|
- [GetPackageTree](#getpackagetree-high-level-system)
|
|
210
223
|
- [Table](#high-level-table)
|
|
224
|
+
- [CheckTable](#checktable-high-level-table)
|
|
211
225
|
- [CreateTable](#createtable-high-level-table)
|
|
212
226
|
- [DeleteTable](#deletetable-high-level-table)
|
|
213
227
|
- [GetTable](#gettable-high-level-table)
|
|
@@ -229,6 +243,7 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
229
243
|
- [UpdateCdsUnitTest](#updatecdsunittest-high-level-unit-test)
|
|
230
244
|
- [UpdateUnitTest](#updateunittest-high-level-unit-test)
|
|
231
245
|
- [View](#high-level-view)
|
|
246
|
+
- [CheckView](#checkview-high-level-view)
|
|
232
247
|
- [CreateView](#createview-high-level-view)
|
|
233
248
|
- [DeleteView](#deleteview-high-level-view)
|
|
234
249
|
- [GetView](#getview-high-level-view)
|
|
@@ -1159,6 +1174,17 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
1159
1174
|
<a id="high-level-behavior-definition"></a>
|
|
1160
1175
|
### High-Level / Behavior Definition
|
|
1161
1176
|
|
|
1177
|
+
<a id="checkbehaviordefinition-high-level-behavior-definition"></a>
|
|
1178
|
+
#### CheckBehaviorDefinition (High-Level / Behavior Definition)
|
|
1179
|
+
**Description:** Perform syntax check on an ABAP behavior definition (BDEF). Returns syntax errors, warnings, and messages.
|
|
1180
|
+
|
|
1181
|
+
**Source:** `src/handlers/behavior_definition/high/handleCheckBehaviorDefinition.ts`
|
|
1182
|
+
|
|
1183
|
+
**Parameters:**
|
|
1184
|
+
- `name` (string, required) - BehaviorDefinition name (e.g., ZI_MY_BDEF).
|
|
1185
|
+
|
|
1186
|
+
---
|
|
1187
|
+
|
|
1162
1188
|
<a id="createbehaviordefinition-high-level-behavior-definition"></a>
|
|
1163
1189
|
#### CreateBehaviorDefinition (High-Level / Behavior Definition)
|
|
1164
1190
|
**Description:** Create a new ABAP Behavior Definition (BDEF) in SAP system. Defines RAP business object behavior: CRUD operations, validations, determinations, actions, and draft handling.
|
|
@@ -1275,6 +1301,19 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
1275
1301
|
<a id="high-level-class"></a>
|
|
1276
1302
|
### High-Level / Class
|
|
1277
1303
|
|
|
1304
|
+
<a id="checkclass-high-level-class"></a>
|
|
1305
|
+
#### CheckClass (High-Level / Class)
|
|
1306
|
+
**Description:** Perform syntax check on an ABAP class. Can check existing class (active/inactive) or validate hypothetical source code. Returns syntax errors, warnings, and messages.
|
|
1307
|
+
|
|
1308
|
+
**Source:** `src/handlers/class/high/handleCheckClass.ts`
|
|
1309
|
+
|
|
1310
|
+
**Parameters:**
|
|
1311
|
+
- `class_name` (string, required) - Class name (e.g., ZCL_MY_CLASS).
|
|
1312
|
+
- `source_code` (string, optional) - Optional: source code to validate. If provided, validates hypothetical code without creating object. Must include complete CLASS DEFINITION and IMPLEMENTATION sections.
|
|
1313
|
+
- `version` (string, optional) - Version to check:
|
|
1314
|
+
|
|
1315
|
+
---
|
|
1316
|
+
|
|
1278
1317
|
<a id="createclass-high-level-class"></a>
|
|
1279
1318
|
#### CreateClass (High-Level / Class)
|
|
1280
1319
|
**Description:** Create a new ABAP class in SAP system. Creates the class object in initial state. Use UpdateClass to set source code afterwards.
|
|
@@ -1487,6 +1526,21 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
1487
1526
|
|
|
1488
1527
|
---
|
|
1489
1528
|
|
|
1529
|
+
<a id="high-level-common"></a>
|
|
1530
|
+
### High-Level / Common
|
|
1531
|
+
|
|
1532
|
+
<a id="activateobjects-high-level-common"></a>
|
|
1533
|
+
#### ActivateObjects (High-Level / Common)
|
|
1534
|
+
**Description:** Activate one or multiple ABAP repository objects. Use after Create/Update when objects remain inactive, or for group activation of related objects (e.g., domains + data elements + tables together). Works with any object type.
|
|
1535
|
+
|
|
1536
|
+
**Source:** `src/handlers/common/high/handleActivateObjects.ts`
|
|
1537
|
+
|
|
1538
|
+
**Parameters:**
|
|
1539
|
+
- `objects` (array, required) - Array of objects to activate. Each object must have
|
|
1540
|
+
- `preaudit` (boolean, optional) - Request pre-audit before activation. Default: true
|
|
1541
|
+
|
|
1542
|
+
---
|
|
1543
|
+
|
|
1490
1544
|
<a id="high-level-compact"></a>
|
|
1491
1545
|
### High-Level / Compact
|
|
1492
1546
|
|
|
@@ -1890,6 +1944,17 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
1890
1944
|
<a id="high-level-data-element"></a>
|
|
1891
1945
|
### High-Level / Data Element
|
|
1892
1946
|
|
|
1947
|
+
<a id="checkdataelement-high-level-data-element"></a>
|
|
1948
|
+
#### CheckDataElement (High-Level / Data Element)
|
|
1949
|
+
**Description:** Perform syntax check on an ABAP data element. Returns syntax errors, warnings, and messages.
|
|
1950
|
+
|
|
1951
|
+
**Source:** `src/handlers/data_element/high/handleCheckDataElement.ts`
|
|
1952
|
+
|
|
1953
|
+
**Parameters:**
|
|
1954
|
+
- `data_element_name` (string, required) - Data element name (e.g., ZDE_MY_ELEMENT).
|
|
1955
|
+
|
|
1956
|
+
---
|
|
1957
|
+
|
|
1893
1958
|
<a id="createdataelement-high-level-data-element"></a>
|
|
1894
1959
|
#### CreateDataElement (High-Level / Data Element)
|
|
1895
1960
|
**Description:** Create a new ABAP data element in SAP system with all required steps: create, activate, and verify.
|
|
@@ -1970,6 +2035,17 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
1970
2035
|
<a id="high-level-ddlx"></a>
|
|
1971
2036
|
### High-Level / Ddlx
|
|
1972
2037
|
|
|
2038
|
+
<a id="checkmetadataextension-high-level-ddlx"></a>
|
|
2039
|
+
#### CheckMetadataExtension (High-Level / Ddlx)
|
|
2040
|
+
**Description:** Perform syntax check on an ABAP metadata extension (DDLX). Returns syntax errors, warnings, and messages.
|
|
2041
|
+
|
|
2042
|
+
**Source:** `src/handlers/ddlx/high/handleCheckMetadataExtension.ts`
|
|
2043
|
+
|
|
2044
|
+
**Parameters:**
|
|
2045
|
+
- `name` (string, required) - Metadata extension name (e.g., ZC_MY_DDLX).
|
|
2046
|
+
|
|
2047
|
+
---
|
|
2048
|
+
|
|
1973
2049
|
<a id="createmetadataextension-high-level-ddlx"></a>
|
|
1974
2050
|
#### CreateMetadataExtension (High-Level / Ddlx)
|
|
1975
2051
|
**Description:** Create a new ABAP Metadata Extension (DDLX) in SAP system. Defines Fiori UI annotations, field labels, search help, and list/object page layout for CDS views.
|
|
@@ -2003,6 +2079,17 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
2003
2079
|
<a id="high-level-domain"></a>
|
|
2004
2080
|
### High-Level / Domain
|
|
2005
2081
|
|
|
2082
|
+
<a id="checkdomain-high-level-domain"></a>
|
|
2083
|
+
#### CheckDomain (High-Level / Domain)
|
|
2084
|
+
**Description:** Perform syntax check on an ABAP domain. Returns syntax errors, warnings, and messages.
|
|
2085
|
+
|
|
2086
|
+
**Source:** `src/handlers/domain/high/handleCheckDomain.ts`
|
|
2087
|
+
|
|
2088
|
+
**Parameters:**
|
|
2089
|
+
- `domain_name` (string, required) - Domain name (e.g., ZDM_MY_DOMAIN).
|
|
2090
|
+
|
|
2091
|
+
---
|
|
2092
|
+
|
|
2006
2093
|
<a id="createdomain-high-level-domain"></a>
|
|
2007
2094
|
#### CreateDomain (High-Level / Domain)
|
|
2008
2095
|
**Description:** Create a new ABAP domain in SAP system with all required steps: lock, create, check, unlock, activate, and verify.
|
|
@@ -2076,6 +2163,30 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
2076
2163
|
<a id="high-level-function"></a>
|
|
2077
2164
|
### High-Level / Function
|
|
2078
2165
|
|
|
2166
|
+
<a id="checkfunctiongroup-high-level-function"></a>
|
|
2167
|
+
#### CheckFunctionGroup (High-Level / Function)
|
|
2168
|
+
**Description:** Perform syntax check on an ABAP function group. Returns syntax errors, warnings, and messages.
|
|
2169
|
+
|
|
2170
|
+
**Source:** `src/handlers/function/high/handleCheckFunctionGroup.ts`
|
|
2171
|
+
|
|
2172
|
+
**Parameters:**
|
|
2173
|
+
- `function_group_name` (string, required) - Function group name (e.g., ZFGRP_MY_GROUP).
|
|
2174
|
+
|
|
2175
|
+
---
|
|
2176
|
+
|
|
2177
|
+
<a id="checkfunctionmodule-high-level-function"></a>
|
|
2178
|
+
#### CheckFunctionModule (High-Level / Function)
|
|
2179
|
+
**Description:** Perform syntax check on an ABAP function module. Returns syntax errors, warnings, and messages.
|
|
2180
|
+
|
|
2181
|
+
**Source:** `src/handlers/function/high/handleCheckFunctionModule.ts`
|
|
2182
|
+
|
|
2183
|
+
**Parameters:**
|
|
2184
|
+
- `function_group_name` (string, required) - Function group name containing the function module.
|
|
2185
|
+
- `function_module_name` (string, required) - Function module name (e.g., Z_MY_FUNCTION).
|
|
2186
|
+
- `version` (string, optional) - Version to check:
|
|
2187
|
+
|
|
2188
|
+
---
|
|
2189
|
+
|
|
2079
2190
|
<a id="createfunctiongroup-high-level-function"></a>
|
|
2080
2191
|
#### CreateFunctionGroup (High-Level / Function)
|
|
2081
2192
|
**Description:** Create a new ABAP function group in SAP system. Function groups serve as containers for function modules. Uses stateful session for proper lock management.
|
|
@@ -2192,6 +2303,17 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
2192
2303
|
<a id="high-level-interface"></a>
|
|
2193
2304
|
### High-Level / Interface
|
|
2194
2305
|
|
|
2306
|
+
<a id="checkinterface-high-level-interface"></a>
|
|
2307
|
+
#### CheckInterface (High-Level / Interface)
|
|
2308
|
+
**Description:** Perform syntax check on an ABAP interface. Returns syntax errors, warnings, and messages.
|
|
2309
|
+
|
|
2310
|
+
**Source:** `src/handlers/interface/high/handleCheckInterface.ts`
|
|
2311
|
+
|
|
2312
|
+
**Parameters:**
|
|
2313
|
+
- `interface_name` (string, required) - Interface name (e.g., ZIF_MY_INTERFACE).
|
|
2314
|
+
|
|
2315
|
+
---
|
|
2316
|
+
|
|
2195
2317
|
<a id="createinterface-high-level-interface"></a>
|
|
2196
2318
|
#### CreateInterface (High-Level / Interface)
|
|
2197
2319
|
**Description:** Create a new ABAP interface in SAP system. Creates the interface object in initial state. Use UpdateInterface to set source code afterwards.
|
|
@@ -2274,6 +2396,18 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
2274
2396
|
<a id="high-level-package"></a>
|
|
2275
2397
|
### High-Level / Package
|
|
2276
2398
|
|
|
2399
|
+
<a id="checkpackage-high-level-package"></a>
|
|
2400
|
+
#### CheckPackage (High-Level / Package)
|
|
2401
|
+
**Description:** Perform syntax check on an ABAP package. Returns syntax errors, warnings, and messages.
|
|
2402
|
+
|
|
2403
|
+
**Source:** `src/handlers/package/high/handleCheckPackage.ts`
|
|
2404
|
+
|
|
2405
|
+
**Parameters:**
|
|
2406
|
+
- `package_name` (string, required) - Package name (e.g., ZMY_PACKAGE).
|
|
2407
|
+
- `super_package` (string, required) - Super package name (parent package).
|
|
2408
|
+
|
|
2409
|
+
---
|
|
2410
|
+
|
|
2277
2411
|
<a id="createpackage-high-level-package"></a>
|
|
2278
2412
|
#### CreatePackage (High-Level / Package)
|
|
2279
2413
|
**Description:** Create a new ABAP package in SAP system. Packages are containers for development objects and are essential for organizing code.
|
|
@@ -2300,6 +2434,17 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
2300
2434
|
<a id="high-level-program"></a>
|
|
2301
2435
|
### High-Level / Program
|
|
2302
2436
|
|
|
2437
|
+
<a id="checkprogram-high-level-program"></a>
|
|
2438
|
+
#### CheckProgram (High-Level / Program)
|
|
2439
|
+
**Description:** Perform syntax check on an ABAP program. Returns syntax errors, warnings, and messages. Not available on cloud.
|
|
2440
|
+
|
|
2441
|
+
**Source:** `src/handlers/program/high/handleCheckProgram.ts`
|
|
2442
|
+
|
|
2443
|
+
**Parameters:**
|
|
2444
|
+
- `program_name` (string, required) - Program name (e.g., ZMCP_MY_PROGRAM).
|
|
2445
|
+
|
|
2446
|
+
---
|
|
2447
|
+
|
|
2303
2448
|
<a id="createprogram-high-level-program"></a>
|
|
2304
2449
|
#### CreateProgram (High-Level / Program)
|
|
2305
2450
|
**Description:** Create a new ABAP program (report) in SAP system. Creates the program object in initial state. Use UpdateProgram to set source code afterwards.
|
|
@@ -2505,6 +2650,19 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
2505
2650
|
<a id="high-level-structure"></a>
|
|
2506
2651
|
### High-Level / Structure
|
|
2507
2652
|
|
|
2653
|
+
<a id="checkstructure-high-level-structure"></a>
|
|
2654
|
+
#### CheckStructure (High-Level / Structure)
|
|
2655
|
+
**Description:** Perform syntax check on an ABAP structure. Can check existing structure (active/inactive) or validate hypothetical DDL code. Returns syntax errors, warnings, and messages.
|
|
2656
|
+
|
|
2657
|
+
**Source:** `src/handlers/structure/high/handleCheckStructure.ts`
|
|
2658
|
+
|
|
2659
|
+
**Parameters:**
|
|
2660
|
+
- `ddl_code` (string, optional) - Optional: DDL source code to validate instead of the saved version.
|
|
2661
|
+
- `structure_name` (string, required) - Structure name (e.g., ZST_MY_STRUCTURE).
|
|
2662
|
+
- `version` (string, optional) - Version to check:
|
|
2663
|
+
|
|
2664
|
+
---
|
|
2665
|
+
|
|
2508
2666
|
<a id="createstructure-high-level-structure"></a>
|
|
2509
2667
|
#### CreateStructure (High-Level / Structure)
|
|
2510
2668
|
**Description:** Create a new ABAP structure in SAP system with fields and type references. Includes create, activate, and verify steps.
|
|
@@ -2581,6 +2739,19 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
2581
2739
|
<a id="high-level-table"></a>
|
|
2582
2740
|
### High-Level / Table
|
|
2583
2741
|
|
|
2742
|
+
<a id="checktable-high-level-table"></a>
|
|
2743
|
+
#### CheckTable (High-Level / Table)
|
|
2744
|
+
**Description:** Perform syntax check on an ABAP table. Can check existing table (active/inactive) or validate hypothetical DDL code. Returns syntax errors, warnings, and messages.
|
|
2745
|
+
|
|
2746
|
+
**Source:** `src/handlers/table/high/handleCheckTable.ts`
|
|
2747
|
+
|
|
2748
|
+
**Parameters:**
|
|
2749
|
+
- `ddl_code` (string, optional) - Optional: DDL source code to validate instead of the saved version.
|
|
2750
|
+
- `table_name` (string, required) - Table name (e.g., ZMCP_MY_TABLE).
|
|
2751
|
+
- `version` (string, optional) - Version to check:
|
|
2752
|
+
|
|
2753
|
+
---
|
|
2754
|
+
|
|
2584
2755
|
<a id="createtable-high-level-table"></a>
|
|
2585
2756
|
#### CreateTable (High-Level / Table)
|
|
2586
2757
|
**Description:** Create a new ABAP table via the ADT API. Creates the table object in initial state. Use UpdateTable to set DDL code afterwards.
|
|
@@ -2822,6 +2993,19 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
2822
2993
|
<a id="high-level-view"></a>
|
|
2823
2994
|
### High-Level / View
|
|
2824
2995
|
|
|
2996
|
+
<a id="checkview-high-level-view"></a>
|
|
2997
|
+
#### CheckView (High-Level / View)
|
|
2998
|
+
**Description:** Perform syntax check on an ABAP CDS view. Can check existing view (active/inactive) or validate hypothetical DDL source. Returns syntax errors, warnings, and messages.
|
|
2999
|
+
|
|
3000
|
+
**Source:** `src/handlers/view/high/handleCheckView.ts`
|
|
3001
|
+
|
|
3002
|
+
**Parameters:**
|
|
3003
|
+
- `ddl_source` (string, optional) - Optional: DDL source code to validate instead of the saved version.
|
|
3004
|
+
- `version` (string, optional) - Version to check:
|
|
3005
|
+
- `view_name` (string, required) - CDS view name (e.g., ZI_MY_VIEW).
|
|
3006
|
+
|
|
3007
|
+
---
|
|
3008
|
+
|
|
2825
3009
|
<a id="createview-high-level-view"></a>
|
|
2826
3010
|
#### CreateView (High-Level / View)
|
|
2827
3011
|
**Description:** Create CDS View or Classic View in SAP. Creates the view object in initial state. Use UpdateView to set DDL source code afterwards.
|
|
@@ -4681,4 +4865,4 @@ Generated from code in `src/handlers/**` (not from docs).
|
|
|
4681
4865
|
|
|
4682
4866
|
---
|
|
4683
4867
|
|
|
4684
|
-
*Last updated: 2026-04-
|
|
4868
|
+
*Last updated: 2026-04-13*
|