@mcp-abap-adt/core 2.7.4 → 3.0.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.
Files changed (50) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/dist/handlers/behavior_implementation/high/handleCreateBehaviorImplementation.d.ts +1 -11
  3. package/dist/handlers/behavior_implementation/high/handleCreateBehaviorImplementation.d.ts.map +1 -1
  4. package/dist/handlers/behavior_implementation/high/handleCreateBehaviorImplementation.js +11 -57
  5. package/dist/handlers/behavior_implementation/high/handleCreateBehaviorImplementation.js.map +1 -1
  6. package/dist/handlers/class/high/handleCreateClass.d.ts +1 -11
  7. package/dist/handlers/class/high/handleCreateClass.d.ts.map +1 -1
  8. package/dist/handlers/class/high/handleCreateClass.js +7 -36
  9. package/dist/handlers/class/high/handleCreateClass.js.map +1 -1
  10. package/dist/handlers/compact/high/compactMatrix.js +4 -4
  11. package/dist/handlers/compact/high/compactMatrix.js.map +1 -1
  12. package/dist/handlers/compact/high/compactRouter.d.ts.map +1 -1
  13. package/dist/handlers/compact/high/compactRouter.js +0 -8
  14. package/dist/handlers/compact/high/compactRouter.js.map +1 -1
  15. package/dist/handlers/compact/high/compactSchemas.d.ts +0 -4
  16. package/dist/handlers/compact/high/compactSchemas.d.ts.map +1 -1
  17. package/dist/handlers/compact/high/compactSchemas.js +0 -1
  18. package/dist/handlers/compact/high/compactSchemas.js.map +1 -1
  19. package/dist/handlers/compact/high/handleHandlerCreate.d.ts +1 -5
  20. package/dist/handlers/compact/high/handleHandlerCreate.d.ts.map +1 -1
  21. package/dist/handlers/compact/high/handleHandlerCreate.js +1 -1
  22. package/dist/handlers/compact/high/handleHandlerCreate.js.map +1 -1
  23. package/dist/handlers/function/high/handleCreateFunctionModule.d.ts +2 -18
  24. package/dist/handlers/function/high/handleCreateFunctionModule.d.ts.map +1 -1
  25. package/dist/handlers/function/high/handleCreateFunctionModule.js +13 -76
  26. package/dist/handlers/function/high/handleCreateFunctionModule.js.map +1 -1
  27. package/dist/handlers/interface/high/handleCreateInterface.d.ts +3 -21
  28. package/dist/handlers/interface/high/handleCreateInterface.d.ts.map +1 -1
  29. package/dist/handlers/interface/high/handleCreateInterface.js +17 -187
  30. package/dist/handlers/interface/high/handleCreateInterface.js.map +1 -1
  31. package/dist/handlers/program/high/handleCreateProgram.d.ts +3 -10
  32. package/dist/handlers/program/high/handleCreateProgram.d.ts.map +1 -1
  33. package/dist/handlers/program/high/handleCreateProgram.js +22 -242
  34. package/dist/handlers/program/high/handleCreateProgram.js.map +1 -1
  35. package/dist/handlers/table/high/handleCreateTable.d.ts +4 -19
  36. package/dist/handlers/table/high/handleCreateTable.d.ts.map +1 -1
  37. package/dist/handlers/table/high/handleCreateTable.js +7 -106
  38. package/dist/handlers/table/high/handleCreateTable.js.map +1 -1
  39. package/dist/handlers/unit_test/high/handleCreateCdsUnitTest.d.ts +4 -12
  40. package/dist/handlers/unit_test/high/handleCreateCdsUnitTest.d.ts.map +1 -1
  41. package/dist/handlers/unit_test/high/handleCreateCdsUnitTest.js +6 -24
  42. package/dist/handlers/unit_test/high/handleCreateCdsUnitTest.js.map +1 -1
  43. package/dist/handlers/view/high/handleCreateView.d.ts +4 -11
  44. package/dist/handlers/view/high/handleCreateView.d.ts.map +1 -1
  45. package/dist/handlers/view/high/handleCreateView.js +25 -189
  46. package/dist/handlers/view/high/handleCreateView.js.map +1 -1
  47. package/dist/lib/handlers/groups/HighLevelHandlersGroup.d.ts.map +1 -1
  48. package/dist/lib/handlers/groups/HighLevelHandlersGroup.js +0 -36
  49. package/dist/lib/handlers/groups/HighLevelHandlersGroup.js.map +1 -1
  50. package/package.json +1 -1
@@ -2,18 +2,18 @@
2
2
  /**
3
3
  * CreateProgram Handler - ABAP Program Creation via ADT API
4
4
  *
5
- * Workflow: validate -> create -> lock -> check (new code) -> update (if check OK) -> unlock -> check (inactive) -> (activate)
5
+ * Workflow: validate -> create (object in initial state)
6
+ * Source code is set via UpdateProgram handler.
6
7
  */
7
8
  Object.defineProperty(exports, "__esModule", { value: true });
8
9
  exports.TOOL_DEFINITION = void 0;
9
10
  exports.handleCreateProgram = handleCreateProgram;
10
- const fast_xml_parser_1 = require("fast-xml-parser");
11
11
  const clients_1 = require("../../../lib/clients");
12
12
  const utils_1 = require("../../../lib/utils");
13
13
  const transportValidation_js_1 = require("../../../utils/transportValidation.js");
14
14
  exports.TOOL_DEFINITION = {
15
15
  name: 'CreateProgram',
16
- description: 'Create a new ABAP program (report) in SAP system with source code. Supports executable programs, includes, module pools. Uses stateful session for proper lock management.',
16
+ description: 'Create a new ABAP program (report) in SAP system. Creates the program object in initial state. Use UpdateProgram to set source code afterwards.',
17
17
  inputSchema: {
18
18
  type: 'object',
19
19
  properties: {
@@ -49,66 +49,10 @@ exports.TOOL_DEFINITION = {
49
49
  type: 'string',
50
50
  description: "Application area (e.g., 'S' for System, 'M' for Materials Management). Default: '*'",
51
51
  },
52
- source_code: {
53
- type: 'string',
54
- description: 'Complete ABAP program source code. If not provided, generates minimal template based on program_type.',
55
- },
56
- activate: {
57
- type: 'boolean',
58
- description: 'Activate program after creation. Default: true. Set to false for batch operations (activate multiple objects later).',
59
- },
60
52
  },
61
53
  required: ['program_name', 'package_name'],
62
54
  },
63
55
  };
64
- /**
65
- * Convert readable program type to SAP internal code
66
- */
67
- function convertProgramType(programType) {
68
- const typeMap = {
69
- executable: '1',
70
- include: 'I',
71
- module_pool: 'M',
72
- function_group: 'F',
73
- class_pool: 'K',
74
- interface_pool: 'J',
75
- };
76
- return typeMap[programType || 'executable'] || '1';
77
- }
78
- /**
79
- * Generate minimal program source code if not provided
80
- */
81
- function generateProgramTemplate(programName, programType, description) {
82
- const upperName = programName.toUpperCase();
83
- switch (programType) {
84
- case 'I': // Include
85
- return `*&---------------------------------------------------------------------*
86
- *& Include ${upperName}
87
- *& ${description}
88
- *&---------------------------------------------------------------------*
89
-
90
- " Include program logic here
91
- `;
92
- case 'M': // Module Pool
93
- return `*&---------------------------------------------------------------------*
94
- *& Module Pool ${upperName}
95
- *& ${description}
96
- *&---------------------------------------------------------------------*
97
-
98
- PROGRAM ${upperName}.
99
- `;
100
- default:
101
- return `*&---------------------------------------------------------------------*
102
- *& Report ${upperName}
103
- *& ${description}
104
- *&---------------------------------------------------------------------*
105
- REPORT ${upperName}.
106
-
107
- START-OF-SELECTION.
108
- WRITE: / 'Program ${upperName} executed successfully.'.
109
- `;
110
- }
111
- }
112
56
  async function handleCreateProgram(context, params) {
113
57
  const { connection, logger } = context;
114
58
  const args = params;
@@ -128,30 +72,9 @@ async function handleCreateProgram(context, params) {
128
72
  return (0, utils_1.return_error)(error);
129
73
  }
130
74
  const programName = args.program_name.toUpperCase();
131
- logger?.info(`Starting program creation: ${programName} (activate=${args.activate !== false})`);
132
- // Connection setup
133
- try {
134
- // Get connection from session context (set by ProtocolHandler)
135
- // Connection is managed and cached per session, with proper token refresh via AuthBroker
136
- logger?.debug(`Created separate connection for handler call: ${programName}`);
137
- }
138
- catch (connectionError) {
139
- const errorMessage = connectionError instanceof Error
140
- ? connectionError.message
141
- : String(connectionError);
142
- logger?.error(`Failed to create connection: ${errorMessage}`);
143
- return (0, utils_1.return_error)(new Error(`Failed to create connection: ${errorMessage}`));
144
- }
75
+ logger?.info(`Starting program creation: ${programName}`);
145
76
  try {
146
- // Generate source code if not provided
147
- const programType = convertProgramType(args.program_type);
148
- const sourceCode = args.source_code ||
149
- generateProgramTemplate(programName, programType, args.description || programName);
150
- // Create client
151
77
  const client = (0, clients_1.createAdtClient)(connection);
152
- const shouldActivate = args.activate !== false; // Default to true if not specified
153
- let lockHandle;
154
- let activateResponse;
155
78
  // Validate
156
79
  logger?.debug(`Validating program: ${programName}`);
157
80
  const validationState = await client.getProgram().validate({
@@ -179,167 +102,24 @@ async function handleCreateProgram(context, params) {
179
102
  application: args.application,
180
103
  });
181
104
  logger?.info(`Program created: ${programName}`);
182
- // Lock
183
- logger?.debug(`Locking program: ${programName}`);
184
- lockHandle = await client.getProgram().lock({ programName });
185
- logger?.debug(`Program locked: ${programName} (handle=${lockHandle ? `${lockHandle.substring(0, 8)}...` : 'none'})`);
186
- try {
187
- // Check new code BEFORE update
188
- logger?.debug(`Checking new source code before update: ${programName}`);
189
- let checkNewCodePassed = false;
190
- try {
191
- await (0, utils_1.safeCheckOperation)(() => client.getProgram().check({ programName, sourceCode }, 'inactive'), programName, {
192
- debug: (message) => logger?.debug(message),
193
- });
194
- checkNewCodePassed = true;
195
- logger?.debug(`New code check passed: ${programName}`);
196
- }
197
- catch (checkError) {
198
- if (checkError.isAlreadyChecked) {
199
- logger?.debug(`Program ${programName} was already checked - continuing`);
200
- checkNewCodePassed = true;
201
- }
202
- else {
203
- logger?.error(`New code check failed: ${programName} - ${checkError instanceof Error ? checkError.message : String(checkError)}`);
204
- throw new Error(`New code check failed: ${checkError instanceof Error ? checkError.message : String(checkError)}`);
205
- }
206
- }
207
- // Update (only if check passed)
208
- if (checkNewCodePassed) {
209
- logger?.debug(`Updating program source code: ${programName}`);
210
- await client.getProgram().update({
211
- programName,
212
- sourceCode,
213
- transportRequest: args.transport_request,
214
- }, { lockHandle: lockHandle });
215
- logger?.info(`Program source code updated: ${programName}`);
216
- }
217
- else {
218
- logger?.warn(`Skipping update - new code check failed: ${programName}`);
219
- }
220
- // Unlock (MANDATORY)
221
- logger?.debug(`Unlocking program: ${programName}`);
222
- await client.getProgram().unlock({ programName }, lockHandle);
223
- logger?.info(`Program unlocked: ${programName}`);
224
- // Check inactive version (after unlock)
225
- logger?.debug(`Checking inactive version: ${programName}`);
226
- try {
227
- await (0, utils_1.safeCheckOperation)(() => client.getProgram().check({ programName }, 'inactive'), programName, {
228
- debug: (message) => logger?.debug(message),
229
- });
230
- logger?.debug(`Inactive version check completed: ${programName}`);
231
- }
232
- catch (checkError) {
233
- if (checkError.isAlreadyChecked) {
234
- logger?.debug(`Program ${programName} was already checked - continuing`);
235
- }
236
- else {
237
- logger?.warn(`Inactive version check had issues: ${programName} - ${checkError instanceof Error ? checkError.message : String(checkError)}`);
238
- }
239
- }
240
- // Activate if requested
241
- if (shouldActivate) {
242
- logger?.debug(`Activating program: ${programName}`);
243
- try {
244
- const activateState = await client.getProgram().activate({
245
- programName,
246
- });
247
- activateResponse = activateState.activateResult;
248
- logger?.info(`Program activated: ${programName}`);
249
- }
250
- catch (activationError) {
251
- logger?.error(`Activation failed: ${programName} - ${activationError instanceof Error ? activationError.message : String(activationError)}`);
252
- throw new Error(`Activation failed: ${activationError instanceof Error ? activationError.message : String(activationError)}`);
253
- }
254
- }
255
- else {
256
- logger?.debug(`Skipping activation for: ${programName}`);
257
- }
258
- // Parse activation warnings if activation was performed
259
- let activationWarnings = [];
260
- if (shouldActivate &&
261
- activateResponse &&
262
- typeof activateResponse.data === 'string' &&
263
- activateResponse.data.includes('<chkl:messages')) {
264
- const parser = new fast_xml_parser_1.XMLParser({
265
- ignoreAttributes: false,
266
- attributeNamePrefix: '@_',
267
- });
268
- const result = parser.parse(activateResponse.data);
269
- const messages = result?.['chkl:messages']?.msg;
270
- if (messages) {
271
- const msgArray = Array.isArray(messages) ? messages : [messages];
272
- activationWarnings = msgArray.map((msg) => `${msg['@_type']}: ${msg.shortText?.txt || 'Unknown'}`);
273
- }
274
- }
275
- logger?.info(`CreateProgram completed successfully: ${programName}`);
276
- const result = {
277
- success: true,
278
- program_name: programName,
279
- package_name: args.package_name,
280
- transport_request: args.transport_request || null,
281
- program_type: args.program_type || 'executable',
282
- type: 'PROG/P',
283
- message: shouldActivate
284
- ? `Program ${programName} created and activated successfully`
285
- : `Program ${programName} created successfully (not activated)`,
286
- uri: `/sap/bc/adt/programs/programs/${(0, utils_1.encodeSapObjectName)(programName).toLowerCase()}`,
287
- steps_completed: [
288
- 'validate',
289
- 'create',
290
- 'lock',
291
- 'check_new_code',
292
- 'update',
293
- 'unlock',
294
- 'check_inactive',
295
- ...(shouldActivate ? ['activate'] : []),
296
- ],
297
- activation_warnings: activationWarnings.length > 0 ? activationWarnings : undefined,
298
- };
299
- return (0, utils_1.return_response)({
300
- data: JSON.stringify(result, null, 2),
301
- status: 200,
302
- statusText: 'OK',
303
- headers: {},
304
- config: {},
305
- });
306
- }
307
- catch (workflowError) {
308
- // On error, ensure we attempt unlock
309
- try {
310
- if (lockHandle) {
311
- logger?.warn(`Attempting unlock after error for program ${programName}`);
312
- await client.getProgram().unlock({ programName }, lockHandle);
313
- logger?.warn(`Unlocked program after error: ${programName}`);
314
- }
315
- }
316
- catch (unlockError) {
317
- logger?.error(`Failed to unlock program after error: ${programName} - ${unlockError instanceof Error ? unlockError.message : String(unlockError)}`);
318
- }
319
- // Parse error message
320
- let errorMessage = workflowError instanceof Error
321
- ? workflowError.message
322
- : String(workflowError);
323
- // Attempt to parse ADT XML error
324
- try {
325
- const parser = new fast_xml_parser_1.XMLParser({
326
- ignoreAttributes: false,
327
- attributeNamePrefix: '@_',
328
- });
329
- const errorData = workflowError?.response?.data
330
- ? parser.parse(workflowError.response.data)
331
- : null;
332
- const errorMsg = errorData?.['exc:exception']?.message?.['#text'] ||
333
- errorData?.['exc:exception']?.message;
334
- if (errorMsg) {
335
- errorMessage = `SAP Error: ${errorMsg}`;
336
- }
337
- }
338
- catch {
339
- // ignore parse errors
340
- }
341
- return (0, utils_1.return_error)(new Error(errorMessage));
342
- }
105
+ const result = {
106
+ success: true,
107
+ program_name: programName,
108
+ package_name: args.package_name,
109
+ transport_request: args.transport_request || null,
110
+ program_type: args.program_type || 'executable',
111
+ type: 'PROG/P',
112
+ message: `Program ${programName} created successfully. Use UpdateProgram to set source code.`,
113
+ uri: `/sap/bc/adt/programs/programs/${(0, utils_1.encodeSapObjectName)(programName).toLowerCase()}`,
114
+ steps_completed: ['validate', 'create'],
115
+ };
116
+ return (0, utils_1.return_response)({
117
+ data: JSON.stringify(result, null, 2),
118
+ status: 200,
119
+ statusText: 'OK',
120
+ headers: {},
121
+ config: {},
122
+ });
343
123
  }
344
124
  catch (error) {
345
125
  const errorMessage = error instanceof Error ? error.message : String(error);
@@ -1 +1 @@
1
- {"version":3,"file":"handleCreateProgram.js","sourceRoot":"","sources":["../../../../src/handlers/program/high/handleCreateProgram.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handleCreateProgram.js","sourceRoot":"","sources":["../../../../src/handlers/program/high/handleCreateProgram.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAwEH,kDA+FC;AApKD,kDAAuD;AAEvD,8CAM4B;AAC5B,kFAAiF;AAEpE,QAAA,eAAe,GAAG;IAC7B,IAAI,EAAE,eAAe;IACrB,WAAW,EACT,iJAAiJ;IACnJ,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,kGAAkG;aACrG;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,kEAAkE;aACrE;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,sDAAsD;aACpE;YACD,iBAAiB,EAAE;gBACjB,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,mFAAmF;aACtF;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,wIAAwI;gBAC1I,IAAI,EAAE;oBACJ,YAAY;oBACZ,SAAS;oBACT,aAAa;oBACb,gBAAgB;oBAChB,YAAY;oBACZ,gBAAgB;iBACjB;aACF;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,qFAAqF;aACxF;SACF;QACD,QAAQ,EAAE,CAAC,cAAc,EAAE,cAAc,CAAC;KAC3C;CACO,CAAC;AAWJ,KAAK,UAAU,mBAAmB,CACvC,OAAuB,EACvB,MAAW;IAEX,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IACvC,MAAM,IAAI,GAAsB,MAAM,CAAC;IAEvC,+BAA+B;IAC/B,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;QAC7C,OAAO,IAAA,oBAAY,EACjB,IAAI,KAAK,CAAC,4DAA4D,CAAC,CACxE,CAAC;IACJ,CAAC;IAED,+DAA+D;IAC/D,IAAI,IAAA,yBAAiB,GAAE,EAAE,CAAC;QACxB,OAAO,IAAA,oBAAY,EACjB,IAAI,KAAK,CACP,mHAAmH,CACpH,CACF,CAAC;IACJ,CAAC;IAED,6DAA6D;IAC7D,IAAI,CAAC;QACH,IAAA,iDAAwB,EAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACtE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,IAAA,oBAAY,EAAC,KAAc,CAAC,CAAC;IACtC,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IACpD,MAAM,EAAE,IAAI,CAAC,8BAA8B,WAAW,EAAE,CAAC,CAAC;IAE1D,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAA,yBAAe,EAAC,UAAU,CAAC,CAAC;QAE3C,WAAW;QACX,MAAM,EAAE,KAAK,CAAC,uBAAuB,WAAW,EAAE,CAAC,CAAC;QACpD,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC,QAAQ,CAAC;YACzD,WAAW;YACX,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,WAAW;YAC5C,WAAW,EAAE,IAAI,CAAC,YAAY;SAC/B,CAAC,CAAC;QACH,MAAM,kBAAkB,GAAG,eAAe,CAAC,kBAAkB,CAAC;QAC9D,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACxD,CAAC;QACD,MAAM,gBAAgB,GAAG,IAAA,+BAAuB,EAC9C,kBAAkC,CACnC,CAAC;QACF,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;YAC1D,MAAM,IAAI,KAAK,CACb,mCAAmC,gBAAgB,EAAE,OAAO,IAAI,sBAAsB,EAAE,CACzF,CAAC;QACJ,CAAC;QACD,MAAM,EAAE,KAAK,CAAC,8BAA8B,WAAW,EAAE,CAAC,CAAC;QAE3D,SAAS;QACT,MAAM,EAAE,KAAK,CAAC,qBAAqB,WAAW,EAAE,CAAC,CAAC;QAClD,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC;YAC/B,WAAW;YACX,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,WAAW;YAC5C,WAAW,EAAE,IAAI,CAAC,YAAY;YAC9B,gBAAgB,EAAE,IAAI,CAAC,iBAAiB;YACxC,WAAW,EAAE,IAAI,CAAC,YAAY;YAC9B,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,CAAC;QACH,MAAM,EAAE,IAAI,CAAC,oBAAoB,WAAW,EAAE,CAAC,CAAC;QAEhD,MAAM,MAAM,GAAG;YACb,OAAO,EAAE,IAAI;YACb,YAAY,EAAE,WAAW;YACzB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,IAAI,IAAI;YACjD,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,YAAY;YAC/C,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,WAAW,WAAW,8DAA8D;YAC7F,GAAG,EAAE,iCAAiC,IAAA,2BAAmB,EAAC,WAAW,CAAC,CAAC,WAAW,EAAE,EAAE;YACtF,eAAe,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC;SACxC,CAAC;QAEF,OAAO,IAAA,uBAAe,EAAC;YACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YACrC,MAAM,EAAE,GAAG;YACX,UAAU,EAAE,IAAI;YAChB,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,EAAS;SAClB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5E,MAAM,EAAE,KAAK,CAAC,0BAA0B,WAAW,KAAK,YAAY,EAAE,CAAC,CAAC;QACxE,OAAO,IAAA,oBAAY,EACjB,IAAI,KAAK,CAAC,4BAA4B,WAAW,KAAK,YAAY,EAAE,CAAC,CACtE,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -1,15 +1,13 @@
1
1
  /**
2
2
  * CreateTable Handler - ABAP Table Creation via ADT API
3
3
  *
4
- * Uses TableBuilder from @mcp-abap-adt/adt-clients for all operations.
5
- * Session and lock management handled internally by builder.
6
- *
7
- * Workflow: validate -> create -> lock -> check (new code) -> update (if check OK) -> unlock -> check (inactive version) -> (activate)
4
+ * Workflow: validate -> create (object in initial state)
5
+ * DDL code is set via UpdateTable handler.
8
6
  */
9
7
  import type { HandlerContext } from '../../../lib/handlers/interfaces';
10
8
  export declare const TOOL_DEFINITION: {
11
9
  readonly name: "CreateTable";
12
- readonly description: "Create a new ABAP table via the ADT API using provided DDL. Mirrors Eclipse ADT behaviour with status/check runs, lock handling, activation and verification.";
10
+ readonly description: "Create a new ABAP table via the ADT API. Creates the table object in initial state. Use UpdateTable to set DDL code afterwards.";
13
11
  readonly inputSchema: {
14
12
  readonly type: "object";
15
13
  readonly properties: {
@@ -17,10 +15,6 @@ export declare const TOOL_DEFINITION: {
17
15
  readonly type: "string";
18
16
  readonly description: "Table name (e.g., ZZ_TEST_TABLE_001). Must follow SAP naming conventions.";
19
17
  };
20
- readonly ddl_code: {
21
- readonly type: "string";
22
- readonly description: "Complete DDL code for table creation. Example: '@EndUserText.label : \\'My Table\\' @AbapCatalog.tableCategory : #TRANSPARENT define table ztst_table { key client : abap.clnt not null; key id : abap.char(10); name : abap.char(255); }'";
23
- };
24
18
  readonly description: {
25
19
  readonly type: "string";
26
20
  readonly description: "Table description for validation and creation.";
@@ -33,27 +27,18 @@ export declare const TOOL_DEFINITION: {
33
27
  readonly type: "string";
34
28
  readonly description: "Transport request number (e.g., E19K905635). Required for transportable packages.";
35
29
  };
36
- readonly activate: {
37
- readonly type: "boolean";
38
- readonly description: "Activate table after creation. Default: true. Set to false for batch operations (activate multiple objects later).";
39
- };
40
30
  };
41
- readonly required: readonly ["table_name", "ddl_code", "package_name"];
31
+ readonly required: readonly ["table_name", "package_name"];
42
32
  };
43
33
  };
44
34
  interface CreateTableArgs {
45
35
  table_name: string;
46
- ddl_code: string;
47
36
  description?: string;
48
37
  package_name: string;
49
38
  transport_request?: string;
50
- activate?: boolean;
51
39
  }
52
40
  /**
53
41
  * Main handler for CreateTable MCP tool
54
- *
55
- * Uses TableBuilder from @mcp-abap-adt/adt-clients for all operations
56
- * Session and lock management handled internally by builder
57
42
  */
58
43
  export declare function handleCreateTable(context: HandlerContext, args: CreateTableArgs): Promise<any>;
59
44
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"handleCreateTable.d.ts","sourceRoot":"","sources":["../../../../src/handlers/table/high/handleCreateTable.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAWvE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsClB,CAAC;AAEX,UAAU,eAAe;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC,GAAG,CAAC,CAgNd"}
1
+ {"version":3,"file":"handleCreateTable.d.ts","sourceRoot":"","sources":["../../../../src/handlers/table/high/handleCreateTable.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAUvE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;CA4BlB,CAAC;AAEX,UAAU,eAAe;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC,GAAG,CAAC,CAuFd"}
@@ -2,10 +2,8 @@
2
2
  /**
3
3
  * CreateTable Handler - ABAP Table Creation via ADT API
4
4
  *
5
- * Uses TableBuilder from @mcp-abap-adt/adt-clients for all operations.
6
- * Session and lock management handled internally by builder.
7
- *
8
- * Workflow: validate -> create -> lock -> check (new code) -> update (if check OK) -> unlock -> check (inactive version) -> (activate)
5
+ * Workflow: validate -> create (object in initial state)
6
+ * DDL code is set via UpdateTable handler.
9
7
  */
10
8
  Object.defineProperty(exports, "__esModule", { value: true });
11
9
  exports.TOOL_DEFINITION = void 0;
@@ -15,7 +13,7 @@ const utils_1 = require("../../../lib/utils");
15
13
  const transportValidation_js_1 = require("../../../utils/transportValidation.js");
16
14
  exports.TOOL_DEFINITION = {
17
15
  name: 'CreateTable',
18
- description: 'Create a new ABAP table via the ADT API using provided DDL. Mirrors Eclipse ADT behaviour with status/check runs, lock handling, activation and verification.',
16
+ description: 'Create a new ABAP table via the ADT API. Creates the table object in initial state. Use UpdateTable to set DDL code afterwards.',
19
17
  inputSchema: {
20
18
  type: 'object',
21
19
  properties: {
@@ -23,10 +21,6 @@ exports.TOOL_DEFINITION = {
23
21
  type: 'string',
24
22
  description: 'Table name (e.g., ZZ_TEST_TABLE_001). Must follow SAP naming conventions.',
25
23
  },
26
- ddl_code: {
27
- type: 'string',
28
- description: "Complete DDL code for table creation. Example: '@EndUserText.label : \\'My Table\\' @AbapCatalog.tableCategory : #TRANSPARENT define table ztst_table { key client : abap.clnt not null; key id : abap.char(10); name : abap.char(255); }'",
29
- },
30
24
  description: {
31
25
  type: 'string',
32
26
  description: 'Table description for validation and creation.',
@@ -39,19 +33,12 @@ exports.TOOL_DEFINITION = {
39
33
  type: 'string',
40
34
  description: 'Transport request number (e.g., E19K905635). Required for transportable packages.',
41
35
  },
42
- activate: {
43
- type: 'boolean',
44
- description: 'Activate table after creation. Default: true. Set to false for batch operations (activate multiple objects later).',
45
- },
46
36
  },
47
- required: ['table_name', 'ddl_code', 'package_name'],
37
+ required: ['table_name', 'package_name'],
48
38
  },
49
39
  };
50
40
  /**
51
41
  * Main handler for CreateTable MCP tool
52
- *
53
- * Uses TableBuilder from @mcp-abap-adt/adt-clients for all operations
54
- * Session and lock management handled internally by builder
55
42
  */
56
43
  async function handleCreateTable(context, args) {
57
44
  const { connection, logger } = context;
@@ -61,9 +48,6 @@ async function handleCreateTable(context, args) {
61
48
  if (!createTableArgs?.table_name) {
62
49
  throw new utils_1.McpError(utils_1.ErrorCode.InvalidParams, 'Table name is required');
63
50
  }
64
- if (!createTableArgs?.ddl_code) {
65
- throw new utils_1.McpError(utils_1.ErrorCode.InvalidParams, 'DDL code is required');
66
- }
67
51
  if (!createTableArgs?.package_name) {
68
52
  throw new utils_1.McpError(utils_1.ErrorCode.InvalidParams, 'Package name is required');
69
53
  }
@@ -74,7 +58,6 @@ async function handleCreateTable(context, args) {
74
58
  try {
75
59
  // Create client
76
60
  const client = (0, clients_1.createAdtClient)(connection);
77
- const shouldActivate = createTableArgs.activate !== false; // Default to true if not specified
78
61
  // Validate
79
62
  await client.getTable().validate({
80
63
  tableName,
@@ -86,99 +69,17 @@ async function handleCreateTable(context, args) {
86
69
  tableName,
87
70
  packageName: createTableArgs.package_name,
88
71
  description: createTableArgs.description || tableName,
89
- ddlCode: createTableArgs.ddl_code || '',
72
+ ddlCode: '',
90
73
  transportRequest: createTableArgs.transport_request,
91
74
  });
92
- // Lock
93
- const lockHandle = await client.getTable().lock({ tableName });
94
- try {
95
- // Step 1: Check new code BEFORE update (with ddlCode and version='inactive')
96
- logger?.info(`[CreateTable] Checking new DDL code before update: ${tableName}`);
97
- let checkNewCodePassed = false;
98
- try {
99
- await (0, utils_1.safeCheckOperation)(() => client
100
- .getTable()
101
- .check({ tableName, ddlCode: createTableArgs.ddl_code }, 'inactive'), tableName, {
102
- debug: (message) => logger?.debug(`[CreateTable] ${message}`),
103
- });
104
- checkNewCodePassed = true;
105
- logger?.info(`[CreateTable] New code check passed: ${tableName}`);
106
- }
107
- catch (checkError) {
108
- // If error was marked as "already checked", continue silently
109
- if (checkError.isAlreadyChecked) {
110
- logger?.info(`[CreateTable] Table ${tableName} was already checked - this is OK, continuing`);
111
- checkNewCodePassed = true;
112
- }
113
- else {
114
- // Real check error - don't update if check failed
115
- logger?.error(`[CreateTable] New code check failed: ${tableName}`, {
116
- error: checkError instanceof Error
117
- ? checkError.message
118
- : String(checkError),
119
- });
120
- throw new Error(`New code check failed: ${checkError instanceof Error ? checkError.message : String(checkError)}`);
121
- }
122
- }
123
- // Step 2: Update (only if check passed)
124
- if (checkNewCodePassed) {
125
- logger?.info(`[CreateTable] Updating table with DDL code: ${tableName}`);
126
- await client.getTable().update({
127
- tableName,
128
- ddlCode: createTableArgs.ddl_code,
129
- transportRequest: createTableArgs.transport_request,
130
- }, { lockHandle });
131
- logger?.info(`[CreateTable] Table source code updated: ${tableName}`);
132
- }
133
- else {
134
- logger?.info(`[CreateTable] Skipping update - new code check failed: ${tableName}`);
135
- }
136
- // Step 3: Unlock (MANDATORY after lock)
137
- await client.getTable().unlock({ tableName }, lockHandle);
138
- logger?.info(`[CreateTable] Table unlocked: ${tableName}`);
139
- // Step 4: Check inactive version (after unlock)
140
- logger?.info(`[CreateTable] Checking inactive version: ${tableName}`);
141
- try {
142
- await (0, utils_1.safeCheckOperation)(() => client.getTable().check({ tableName }, 'inactive'), tableName, {
143
- debug: (message) => logger?.debug(`[CreateTable] ${message}`),
144
- });
145
- logger?.info(`[CreateTable] Inactive version check completed: ${tableName}`);
146
- }
147
- catch (checkError) {
148
- // If error was marked as "already checked", continue silently
149
- if (checkError.isAlreadyChecked) {
150
- logger?.info(`[CreateTable] Table ${tableName} was already checked - continuing`);
151
- }
152
- else {
153
- // Log warning but don't fail - inactive check is informational
154
- logger?.warn(`[CreateTable] Inactive version check had issues: ${tableName} | ${checkError instanceof Error ? checkError.message : String(checkError)}`);
155
- }
156
- }
157
- // Activate
158
- if (shouldActivate) {
159
- await client.getTable().activate({ tableName });
160
- }
161
- }
162
- catch (error) {
163
- // Unlock on error (principle 1: if lock was done, unlock is mandatory)
164
- try {
165
- await client.getTable().unlock({ tableName }, lockHandle);
166
- }
167
- catch (unlockError) {
168
- logger?.error(`Failed to unlock table after error: ${unlockError instanceof Error ? unlockError.message : String(unlockError)}`);
169
- }
170
- // Principle 2: first error and exit
171
- throw error;
172
- }
173
- logger?.info(`✅ CreateTable completed successfully: ${tableName}`);
75
+ logger?.info(`Table created: ${tableName}`);
174
76
  return (0, utils_1.return_response)({
175
77
  data: JSON.stringify({
176
78
  success: true,
177
79
  table_name: tableName,
178
80
  package_name: createTableArgs.package_name,
179
81
  transport_request: createTableArgs.transport_request || 'local',
180
- activated: shouldActivate,
181
- message: `Table ${tableName} created successfully${shouldActivate ? ' and activated' : ''}`,
82
+ message: `Table ${tableName} created successfully. Use UpdateTable to set DDL code.`,
182
83
  }),
183
84
  });
184
85
  }
@@ -1 +1 @@
1
- {"version":3,"file":"handleCreateTable.js","sourceRoot":"","sources":["../../../../src/handlers/table/high/handleCreateTable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handleCreateTable.js","sourceRoot":"","sources":["../../../../src/handlers/table/high/handleCreateTable.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  import type { HandlerContext } from '../../../lib/handlers/interfaces';
7
7
  export declare const TOOL_DEFINITION: {
8
8
  readonly name: "CreateCdsUnitTest";
9
- readonly description: "Create a CDS unit test class with CDS validation, class template, and local test class source.";
9
+ readonly description: "Create a CDS unit test class with CDS validation. Creates the test class in initial state.";
10
10
  readonly inputSchema: {
11
11
  readonly type: "object";
12
12
  readonly properties: {
@@ -22,14 +22,6 @@ export declare const TOOL_DEFINITION: {
22
22
  readonly type: "string";
23
23
  readonly description: "CDS view name to validate for unit test doubles.";
24
24
  };
25
- readonly class_template: {
26
- readonly type: "string";
27
- readonly description: "ABAP class template used for CDS unit tests.";
28
- };
29
- readonly test_class_source: {
30
- readonly type: "string";
31
- readonly description: "Local test class ABAP source code.";
32
- };
33
25
  readonly description: {
34
26
  readonly type: "string";
35
27
  readonly description: "Optional description for the global test class.";
@@ -39,15 +31,15 @@ export declare const TOOL_DEFINITION: {
39
31
  readonly description: "Transport request number (required for transportable packages).";
40
32
  };
41
33
  };
42
- readonly required: readonly ["class_name", "package_name", "cds_view_name", "class_template", "test_class_source"];
34
+ readonly required: readonly ["class_name", "package_name", "cds_view_name"];
43
35
  };
44
36
  };
45
37
  interface CreateCdsUnitTestArgs {
46
38
  class_name: string;
47
39
  package_name: string;
48
40
  cds_view_name: string;
49
- class_template: string;
50
- test_class_source: string;
41
+ class_template?: string;
42
+ test_class_source?: string;
51
43
  description?: string;
52
44
  transport_request?: string;
53
45
  }