@mcp-abap-adt/adt-clients 0.3.13 → 0.3.14
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/README.md +15 -2
- package/dist/core/shared/AdtUtils.d.ts +25 -1
- package/dist/core/shared/AdtUtils.d.ts.map +1 -1
- package/dist/core/shared/AdtUtils.js +26 -0
- package/dist/core/shared/index.d.ts +1 -1
- package/dist/core/shared/index.d.ts.map +1 -1
- package/dist/core/shared/types.d.ts +57 -0
- package/dist/core/shared/types.d.ts.map +1 -1
- package/dist/core/shared/whereUsed.d.ts +26 -1
- package/dist/core/shared/whereUsed.d.ts.map +1 -1
- package/dist/core/shared/whereUsed.js +110 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -138,7 +138,20 @@ await client.getClass().create({
|
|
|
138
138
|
// Utility functions
|
|
139
139
|
const utils = client.getUtils();
|
|
140
140
|
await utils.searchObjects({ query: 'Z*', objectType: 'CLAS' });
|
|
141
|
-
|
|
141
|
+
|
|
142
|
+
// Where-used with parsed results (recommended)
|
|
143
|
+
const result = await utils.getWhereUsedList({
|
|
144
|
+
object_name: 'ZCL_TEST',
|
|
145
|
+
object_type: 'class',
|
|
146
|
+
enableAllTypes: true // Eclipse "select all" behavior
|
|
147
|
+
});
|
|
148
|
+
console.log(`Found ${result.totalReferences} references`);
|
|
149
|
+
for (const ref of result.references) {
|
|
150
|
+
console.log(`${ref.name} (${ref.type}) in ${ref.packageName}`);
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
// Where-used with raw XML (legacy)
|
|
154
|
+
await utils.getWhereUsed({ object_name: 'ZCL_TEST', object_type: 'class' });
|
|
142
155
|
```
|
|
143
156
|
|
|
144
157
|
**AdtUtils read type safety:**
|
|
@@ -499,7 +512,7 @@ See [docs/DEBUG.md](docs/DEBUG.md) for detailed debugging guide.
|
|
|
499
512
|
## Changelog
|
|
500
513
|
|
|
501
514
|
See [CHANGELOG.md](CHANGELOG.md) for package-specific release notes.
|
|
502
|
-
Latest (0.3.
|
|
515
|
+
Latest (0.3.14): added `getWhereUsedList()` for parsed where-used results.
|
|
503
516
|
|
|
504
517
|
## Tests
|
|
505
518
|
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
* ```
|
|
29
29
|
*/
|
|
30
30
|
import type { IAdtResponse as AxiosResponse, IAbapConnection, ILogger } from '@mcp-abap-adt/interfaces';
|
|
31
|
-
import type { AdtObjectType, AdtSourceObjectType, IGetDiscoveryParams, IGetPackageContentsListOptions, IGetPackageHierarchyOptions, IGetSqlQueryParams, IGetTableContentsParams, IGetVirtualFoldersContentsParams, IGetWhereUsedParams, IGetWhereUsedScopeParams, IInactiveObjectsResponse, IObjectReference, IPackageContentItem, IPackageHierarchyNode, IReadOptions, ISearchObjectsParams } from './types';
|
|
31
|
+
import type { AdtObjectType, AdtSourceObjectType, IGetDiscoveryParams, IGetPackageContentsListOptions, IGetPackageHierarchyOptions, IGetSqlQueryParams, IGetTableContentsParams, IGetVirtualFoldersContentsParams, IGetWhereUsedListParams, IGetWhereUsedParams, IGetWhereUsedScopeParams, IInactiveObjectsResponse, IObjectReference, IPackageContentItem, IPackageHierarchyNode, IReadOptions, ISearchObjectsParams, IWhereUsedListResult } from './types';
|
|
32
32
|
export declare class AdtUtils {
|
|
33
33
|
private connection;
|
|
34
34
|
private logger;
|
|
@@ -151,6 +151,30 @@ export declare class AdtUtils {
|
|
|
151
151
|
* });
|
|
152
152
|
*/
|
|
153
153
|
getWhereUsed(params: IGetWhereUsedParams): Promise<AxiosResponse>;
|
|
154
|
+
/**
|
|
155
|
+
* Get where-used references with parsed results
|
|
156
|
+
*
|
|
157
|
+
* This is a convenience method that combines scope fetching, search execution,
|
|
158
|
+
* and XML parsing into a single call with structured output.
|
|
159
|
+
*
|
|
160
|
+
* @param params - Where-used list parameters
|
|
161
|
+
* @returns Parsed where-used results with references list
|
|
162
|
+
*
|
|
163
|
+
* @example
|
|
164
|
+
* ```typescript
|
|
165
|
+
* const result = await utils.getWhereUsedList({
|
|
166
|
+
* object_name: 'ZMY_TABLE',
|
|
167
|
+
* object_type: 'table',
|
|
168
|
+
* enableAllTypes: true
|
|
169
|
+
* });
|
|
170
|
+
*
|
|
171
|
+
* console.log(`Found ${result.totalReferences} references`);
|
|
172
|
+
* for (const ref of result.references) {
|
|
173
|
+
* console.log(`${ref.name} (${ref.type}) in package ${ref.packageName}`);
|
|
174
|
+
* }
|
|
175
|
+
* ```
|
|
176
|
+
*/
|
|
177
|
+
getWhereUsedList(params: IGetWhereUsedListParams): Promise<IWhereUsedListResult>;
|
|
154
178
|
/**
|
|
155
179
|
* Get list of inactive objects (objects that are not yet activated)
|
|
156
180
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdtUtils.d.ts","sourceRoot":"","sources":["../../../src/core/shared/AdtUtils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAAK,EACV,YAAY,IAAI,aAAa,EAC7B,eAAe,EACf,OAAO,EACR,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"AdtUtils.d.ts","sourceRoot":"","sources":["../../../src/core/shared/AdtUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -186,6 +186,32 @@ class AdtUtils {
|
|
|
186
186
|
async getWhereUsed(params) {
|
|
187
187
|
return (0, whereUsed_1.getWhereUsed)(this.connection, params);
|
|
188
188
|
}
|
|
189
|
+
/**
|
|
190
|
+
* Get where-used references with parsed results
|
|
191
|
+
*
|
|
192
|
+
* This is a convenience method that combines scope fetching, search execution,
|
|
193
|
+
* and XML parsing into a single call with structured output.
|
|
194
|
+
*
|
|
195
|
+
* @param params - Where-used list parameters
|
|
196
|
+
* @returns Parsed where-used results with references list
|
|
197
|
+
*
|
|
198
|
+
* @example
|
|
199
|
+
* ```typescript
|
|
200
|
+
* const result = await utils.getWhereUsedList({
|
|
201
|
+
* object_name: 'ZMY_TABLE',
|
|
202
|
+
* object_type: 'table',
|
|
203
|
+
* enableAllTypes: true
|
|
204
|
+
* });
|
|
205
|
+
*
|
|
206
|
+
* console.log(`Found ${result.totalReferences} references`);
|
|
207
|
+
* for (const ref of result.references) {
|
|
208
|
+
* console.log(`${ref.name} (${ref.type}) in package ${ref.packageName}`);
|
|
209
|
+
* }
|
|
210
|
+
* ```
|
|
211
|
+
*/
|
|
212
|
+
async getWhereUsedList(params) {
|
|
213
|
+
return (0, whereUsed_1.getWhereUsedList)(this.connection, params);
|
|
214
|
+
}
|
|
189
215
|
/**
|
|
190
216
|
* Get list of inactive objects (objects that are not yet activated)
|
|
191
217
|
*
|
|
@@ -4,5 +4,5 @@
|
|
|
4
4
|
export { AdtUtils } from './AdtUtils';
|
|
5
5
|
export { UnsupportedActivateOperationError, UnsupportedAdtOperationError, UnsupportedCheckOperationError, UnsupportedCreateOperationError, UnsupportedDeleteOperationError, UnsupportedUpdateOperationError, UnsupportedValidateOperationError, } from './errors';
|
|
6
6
|
export { getTransaction } from './transaction';
|
|
7
|
-
export type { AdtObjectType, AdtSourceObjectType, IGetDiscoveryParams as GetDiscoveryParams, IGetPackageContentsListOptions as GetPackageContentsListOptions, IGetPackageHierarchyOptions as GetPackageHierarchyOptions, IGetSqlQueryParams as GetSqlQueryParams, IGetTableContentsParams as GetTableContentsParams, IGetVirtualFoldersContentsParams as GetVirtualFoldersContentsParams, IGetWhereUsedParams as GetWhereUsedParams, IGetWhereUsedScopeParams as GetWhereUsedScopeParams, IInactiveObjectsResponse as InactiveObjectsResponse, IObjectReference as ObjectReference, IPackageContentItem as PackageContentItem, IPackageHierarchyNode as PackageHierarchyNode, IReadOptions as ReadOptions, ISearchObjectsParams as SearchObjectsParams, IVirtualFoldersPreselection as VirtualFoldersPreselection, PackageHierarchyCodeFormat, PackageHierarchySupportedType, } from './types';
|
|
7
|
+
export type { AdtObjectType, AdtSourceObjectType, IGetDiscoveryParams as GetDiscoveryParams, IGetPackageContentsListOptions as GetPackageContentsListOptions, IGetPackageHierarchyOptions as GetPackageHierarchyOptions, IGetSqlQueryParams as GetSqlQueryParams, IGetTableContentsParams as GetTableContentsParams, IGetVirtualFoldersContentsParams as GetVirtualFoldersContentsParams, IGetWhereUsedListParams as GetWhereUsedListParams, IGetWhereUsedParams as GetWhereUsedParams, IGetWhereUsedScopeParams as GetWhereUsedScopeParams, IInactiveObjectsResponse as InactiveObjectsResponse, IObjectReference as ObjectReference, IPackageContentItem as PackageContentItem, IPackageHierarchyNode as PackageHierarchyNode, IReadOptions as ReadOptions, ISearchObjectsParams as SearchObjectsParams, IVirtualFoldersPreselection as VirtualFoldersPreselection, IWhereUsedListResult as WhereUsedListResult, IWhereUsedReference as WhereUsedReference, PackageHierarchyCodeFormat, PackageHierarchySupportedType, } from './types';
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/shared/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EACL,iCAAiC,EACjC,4BAA4B,EAC5B,8BAA8B,EAC9B,+BAA+B,EAC/B,+BAA+B,EAC/B,+BAA+B,EAC/B,iCAAiC,GAClC,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,YAAY,EACV,aAAa,EACb,mBAAmB,EACnB,mBAAmB,IAAI,kBAAkB,EACzC,8BAA8B,IAAI,6BAA6B,EAC/D,2BAA2B,IAAI,0BAA0B,EACzD,kBAAkB,IAAI,iBAAiB,EACvC,uBAAuB,IAAI,sBAAsB,EACjD,gCAAgC,IAAI,+BAA+B,EACnE,mBAAmB,IAAI,kBAAkB,EACzC,wBAAwB,IAAI,uBAAuB,EACnD,wBAAwB,IAAI,uBAAuB,EACnD,gBAAgB,IAAI,eAAe,EACnC,mBAAmB,IAAI,kBAAkB,EACzC,qBAAqB,IAAI,oBAAoB,EAC7C,YAAY,IAAI,WAAW,EAC3B,oBAAoB,IAAI,mBAAmB,EAC3C,2BAA2B,IAAI,0BAA0B,EACzD,0BAA0B,EAC1B,6BAA6B,GAC9B,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/shared/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EACL,iCAAiC,EACjC,4BAA4B,EAC5B,8BAA8B,EAC9B,+BAA+B,EAC/B,+BAA+B,EAC/B,+BAA+B,EAC/B,iCAAiC,GAClC,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,YAAY,EACV,aAAa,EACb,mBAAmB,EACnB,mBAAmB,IAAI,kBAAkB,EACzC,8BAA8B,IAAI,6BAA6B,EAC/D,2BAA2B,IAAI,0BAA0B,EACzD,kBAAkB,IAAI,iBAAiB,EACvC,uBAAuB,IAAI,sBAAsB,EACjD,gCAAgC,IAAI,+BAA+B,EACnE,uBAAuB,IAAI,sBAAsB,EACjD,mBAAmB,IAAI,kBAAkB,EACzC,wBAAwB,IAAI,uBAAuB,EACnD,wBAAwB,IAAI,uBAAuB,EACnD,gBAAgB,IAAI,eAAe,EACnC,mBAAmB,IAAI,kBAAkB,EACzC,qBAAqB,IAAI,oBAAoB,EAC7C,YAAY,IAAI,WAAW,EAC3B,oBAAoB,IAAI,mBAAmB,EAC3C,2BAA2B,IAAI,0BAA0B,EACzD,oBAAoB,IAAI,mBAAmB,EAC3C,mBAAmB,IAAI,kBAAkB,EACzC,0BAA0B,EAC1B,6BAA6B,GAC9B,MAAM,SAAS,CAAC"}
|
|
@@ -85,6 +85,63 @@ export interface IGetWhereUsedParams {
|
|
|
85
85
|
*/
|
|
86
86
|
scopeXml?: string;
|
|
87
87
|
}
|
|
88
|
+
/**
|
|
89
|
+
* Parameters for getWhereUsedList (parsed version)
|
|
90
|
+
*/
|
|
91
|
+
export interface IGetWhereUsedListParams {
|
|
92
|
+
object_name: string;
|
|
93
|
+
object_type: string;
|
|
94
|
+
/**
|
|
95
|
+
* If true, searches in all available object types (Eclipse 'select all' behavior)
|
|
96
|
+
* Default: false (uses SAP default scope)
|
|
97
|
+
*/
|
|
98
|
+
enableAllTypes?: boolean;
|
|
99
|
+
/**
|
|
100
|
+
* Include raw XML in response
|
|
101
|
+
* Default: false
|
|
102
|
+
*/
|
|
103
|
+
includeRawXml?: boolean;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Single where-used reference
|
|
107
|
+
*/
|
|
108
|
+
export interface IWhereUsedReference {
|
|
109
|
+
/** ADT URI of the referencing object */
|
|
110
|
+
uri: string;
|
|
111
|
+
/** Object name */
|
|
112
|
+
name: string;
|
|
113
|
+
/** ADT object type (e.g., 'CLAS/OC', 'DDLS/DF') */
|
|
114
|
+
type: string;
|
|
115
|
+
/** Parent URI (for hierarchical display) */
|
|
116
|
+
parentUri?: string;
|
|
117
|
+
/** Package name containing the object */
|
|
118
|
+
packageName?: string;
|
|
119
|
+
/** Responsible user */
|
|
120
|
+
responsible?: string;
|
|
121
|
+
/** Whether this is a direct result or container */
|
|
122
|
+
isResult: boolean;
|
|
123
|
+
/** Usage information (e.g., 'gradeDirect,includeProductive') */
|
|
124
|
+
usageInformation?: string;
|
|
125
|
+
/** Object identifier for navigation */
|
|
126
|
+
objectIdentifier?: string;
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Result from getWhereUsedList
|
|
130
|
+
*/
|
|
131
|
+
export interface IWhereUsedListResult {
|
|
132
|
+
/** Object that was searched */
|
|
133
|
+
objectName: string;
|
|
134
|
+
/** Object type that was searched */
|
|
135
|
+
objectType: string;
|
|
136
|
+
/** Total number of references found */
|
|
137
|
+
totalReferences: number;
|
|
138
|
+
/** Result description from SAP */
|
|
139
|
+
resultDescription: string;
|
|
140
|
+
/** List of referencing objects (excluding packages) */
|
|
141
|
+
references: IWhereUsedReference[];
|
|
142
|
+
/** Raw XML response (if includeRawXml was true) */
|
|
143
|
+
rawXml?: string;
|
|
144
|
+
}
|
|
88
145
|
/**
|
|
89
146
|
* Virtual folders preselection entry
|
|
90
147
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/shared/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/shared/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Where-used operations for ABAP objects
|
|
3
3
|
*/
|
|
4
4
|
import type { IAdtResponse as AxiosResponse, IAbapConnection } from '@mcp-abap-adt/interfaces';
|
|
5
|
-
import type { IGetWhereUsedParams, IGetWhereUsedScopeParams } from './types';
|
|
5
|
+
import type { IGetWhereUsedListParams, IGetWhereUsedParams, IGetWhereUsedScopeParams, IWhereUsedListResult } from './types';
|
|
6
6
|
/**
|
|
7
7
|
* Modify where-used scope to enable/disable specific object types
|
|
8
8
|
*
|
|
@@ -80,4 +80,29 @@ export declare function getWhereUsedScope(connection: IAbapConnection, params: I
|
|
|
80
80
|
* @returns Where-used references
|
|
81
81
|
*/
|
|
82
82
|
export declare function getWhereUsed(connection: IAbapConnection, params: IGetWhereUsedParams): Promise<AxiosResponse>;
|
|
83
|
+
/**
|
|
84
|
+
* Get where-used references with parsed results
|
|
85
|
+
*
|
|
86
|
+
* This is a convenience method that combines scope fetching, search execution,
|
|
87
|
+
* and XML parsing into a single call with structured output.
|
|
88
|
+
*
|
|
89
|
+
* @param connection - ABAP connection
|
|
90
|
+
* @param params - Where-used list parameters
|
|
91
|
+
* @returns Parsed where-used results with references list
|
|
92
|
+
*
|
|
93
|
+
* @example
|
|
94
|
+
* ```typescript
|
|
95
|
+
* const result = await getWhereUsedList(connection, {
|
|
96
|
+
* object_name: 'ZMY_TABLE',
|
|
97
|
+
* object_type: 'table',
|
|
98
|
+
* enableAllTypes: true
|
|
99
|
+
* });
|
|
100
|
+
*
|
|
101
|
+
* console.log(`Found ${result.totalReferences} references`);
|
|
102
|
+
* for (const ref of result.references) {
|
|
103
|
+
* console.log(`${ref.name} (${ref.type}) in package ${ref.packageName}`);
|
|
104
|
+
* }
|
|
105
|
+
* ```
|
|
106
|
+
*/
|
|
107
|
+
export declare function getWhereUsedList(connection: IAbapConnection, params: IGetWhereUsedListParams): Promise<IWhereUsedListResult>;
|
|
83
108
|
//# sourceMappingURL=whereUsed.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"whereUsed.d.ts","sourceRoot":"","sources":["../../../src/core/shared/whereUsed.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,YAAY,IAAI,aAAa,EAC7B,eAAe,EAChB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"whereUsed.d.ts","sourceRoot":"","sources":["../../../src/core/shared/whereUsed.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,YAAY,IAAI,aAAa,EAC7B,eAAe,EAChB,MAAM,0BAA0B,CAAC;AAIlC,OAAO,KAAK,EACV,uBAAuB,EACvB,mBAAmB,EACnB,wBAAwB,EACxB,oBAAoB,EAErB,MAAM,SAAS,CAAC;AAQjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE;IACP,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB,GACA,MAAM,CAwCR;AAuDD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,eAAe,EAC3B,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,aAAa,CAAC,CAyBxB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,YAAY,CAChC,UAAU,EAAE,eAAe,EAC3B,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC,aAAa,CAAC,CAkDxB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,eAAe,EAC3B,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,oBAAoB,CAAC,CA2F/B"}
|
|
@@ -6,8 +6,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.modifyWhereUsedScope = modifyWhereUsedScope;
|
|
7
7
|
exports.getWhereUsedScope = getWhereUsedScope;
|
|
8
8
|
exports.getWhereUsed = getWhereUsed;
|
|
9
|
+
exports.getWhereUsedList = getWhereUsedList;
|
|
10
|
+
const fast_xml_parser_1 = require("fast-xml-parser");
|
|
9
11
|
const internalUtils_1 = require("../../utils/internalUtils");
|
|
10
12
|
const timeouts_1 = require("../../utils/timeouts");
|
|
13
|
+
const xmlParser = new fast_xml_parser_1.XMLParser({
|
|
14
|
+
ignoreAttributes: false,
|
|
15
|
+
attributeNamePrefix: '@_',
|
|
16
|
+
parseAttributeValue: false,
|
|
17
|
+
});
|
|
11
18
|
/**
|
|
12
19
|
* Modify where-used scope to enable/disable specific object types
|
|
13
20
|
*
|
|
@@ -218,3 +225,106 @@ async function getWhereUsed(connection, params) {
|
|
|
218
225
|
},
|
|
219
226
|
});
|
|
220
227
|
}
|
|
228
|
+
/**
|
|
229
|
+
* Get where-used references with parsed results
|
|
230
|
+
*
|
|
231
|
+
* This is a convenience method that combines scope fetching, search execution,
|
|
232
|
+
* and XML parsing into a single call with structured output.
|
|
233
|
+
*
|
|
234
|
+
* @param connection - ABAP connection
|
|
235
|
+
* @param params - Where-used list parameters
|
|
236
|
+
* @returns Parsed where-used results with references list
|
|
237
|
+
*
|
|
238
|
+
* @example
|
|
239
|
+
* ```typescript
|
|
240
|
+
* const result = await getWhereUsedList(connection, {
|
|
241
|
+
* object_name: 'ZMY_TABLE',
|
|
242
|
+
* object_type: 'table',
|
|
243
|
+
* enableAllTypes: true
|
|
244
|
+
* });
|
|
245
|
+
*
|
|
246
|
+
* console.log(`Found ${result.totalReferences} references`);
|
|
247
|
+
* for (const ref of result.references) {
|
|
248
|
+
* console.log(`${ref.name} (${ref.type}) in package ${ref.packageName}`);
|
|
249
|
+
* }
|
|
250
|
+
* ```
|
|
251
|
+
*/
|
|
252
|
+
async function getWhereUsedList(connection, params) {
|
|
253
|
+
if (!params.object_name) {
|
|
254
|
+
throw new Error('Object name is required');
|
|
255
|
+
}
|
|
256
|
+
if (!params.object_type) {
|
|
257
|
+
throw new Error('Object type is required');
|
|
258
|
+
}
|
|
259
|
+
let scopeXml;
|
|
260
|
+
// If enableAllTypes, fetch scope and modify it
|
|
261
|
+
if (params.enableAllTypes) {
|
|
262
|
+
const scopeResponse = await getWhereUsedScope(connection, {
|
|
263
|
+
object_name: params.object_name,
|
|
264
|
+
object_type: params.object_type,
|
|
265
|
+
});
|
|
266
|
+
scopeXml = modifyWhereUsedScope(scopeResponse.data, { enableAll: true });
|
|
267
|
+
}
|
|
268
|
+
// Execute where-used search
|
|
269
|
+
const response = await getWhereUsed(connection, {
|
|
270
|
+
object_name: params.object_name,
|
|
271
|
+
object_type: params.object_type,
|
|
272
|
+
scopeXml,
|
|
273
|
+
});
|
|
274
|
+
const xml = response.data;
|
|
275
|
+
// Parse XML response
|
|
276
|
+
const parsed = xmlParser.parse(xml);
|
|
277
|
+
const root = parsed['usagereferences:usageReferenceResult'];
|
|
278
|
+
if (!root) {
|
|
279
|
+
return {
|
|
280
|
+
objectName: params.object_name,
|
|
281
|
+
objectType: params.object_type,
|
|
282
|
+
totalReferences: 0,
|
|
283
|
+
resultDescription: '',
|
|
284
|
+
references: [],
|
|
285
|
+
rawXml: params.includeRawXml ? xml : undefined,
|
|
286
|
+
};
|
|
287
|
+
}
|
|
288
|
+
const numberOfResults = parseInt(root['@_numberOfResults'] || '0', 10);
|
|
289
|
+
const resultDescription = root['@_resultDescription'] || '';
|
|
290
|
+
// Parse referenced objects
|
|
291
|
+
const references = [];
|
|
292
|
+
const referencedObjectsNode = root['usagereferences:referencedObjects'];
|
|
293
|
+
if (referencedObjectsNode) {
|
|
294
|
+
const refObjects = referencedObjectsNode['usagereferences:referencedObject'];
|
|
295
|
+
const refArray = Array.isArray(refObjects)
|
|
296
|
+
? refObjects
|
|
297
|
+
: refObjects
|
|
298
|
+
? [refObjects]
|
|
299
|
+
: [];
|
|
300
|
+
for (const refObj of refArray) {
|
|
301
|
+
const adtObject = refObj['usagereferences:adtObject'];
|
|
302
|
+
if (!adtObject)
|
|
303
|
+
continue;
|
|
304
|
+
// Skip packages (DEVC/K) - they are container nodes, not actual references
|
|
305
|
+
const objType = adtObject['@_adtcore:type'] || '';
|
|
306
|
+
if (objType === 'DEVC/K')
|
|
307
|
+
continue;
|
|
308
|
+
const packageRef = adtObject['adtcore:packageRef'];
|
|
309
|
+
references.push({
|
|
310
|
+
uri: refObj['@_uri'] || '',
|
|
311
|
+
name: adtObject['@_adtcore:name'] || '',
|
|
312
|
+
type: objType,
|
|
313
|
+
parentUri: refObj['@_parentUri'],
|
|
314
|
+
packageName: packageRef?.['@_adtcore:name'],
|
|
315
|
+
responsible: adtObject['@_adtcore:responsible'],
|
|
316
|
+
isResult: refObj['@_isResult'] === 'true',
|
|
317
|
+
usageInformation: refObj['@_usageInformation'],
|
|
318
|
+
objectIdentifier: refObj['objectIdentifier'],
|
|
319
|
+
});
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
return {
|
|
323
|
+
objectName: params.object_name,
|
|
324
|
+
objectType: params.object_type,
|
|
325
|
+
totalReferences: numberOfResults,
|
|
326
|
+
resultDescription,
|
|
327
|
+
references,
|
|
328
|
+
rawXml: params.includeRawXml ? xml : undefined,
|
|
329
|
+
};
|
|
330
|
+
}
|
package/dist/index.d.ts
CHANGED
|
@@ -35,7 +35,7 @@ export type { AdtMetadataExtensionType, IMetadataExtensionConfig, IMetadataExten
|
|
|
35
35
|
export type { AdtPackageType, ICreatePackageParams, IPackageConfig, IPackageState, } from './core/package';
|
|
36
36
|
export type { AdtProgramType, IProgramConfig, IProgramState, } from './core/program';
|
|
37
37
|
export type { AdtServiceDefinitionType, IServiceDefinitionConfig, IServiceDefinitionState, } from './core/serviceDefinition';
|
|
38
|
-
export type { AdtObjectType, AdtSourceObjectType, GetPackageHierarchyOptions, GetSqlQueryParams, GetTableContentsParams, GetVirtualFoldersContentsParams, GetWhereUsedParams, InactiveObjectsResponse, ObjectReference, PackageHierarchyCodeFormat, PackageHierarchyNode, PackageHierarchySupportedType, ReadOptions, SearchObjectsParams, } from './core/shared';
|
|
38
|
+
export type { AdtObjectType, AdtSourceObjectType, GetPackageHierarchyOptions, GetSqlQueryParams, GetTableContentsParams, GetVirtualFoldersContentsParams, GetWhereUsedListParams, GetWhereUsedParams, InactiveObjectsResponse, ObjectReference, PackageHierarchyCodeFormat, PackageHierarchyNode, PackageHierarchySupportedType, ReadOptions, SearchObjectsParams, WhereUsedListResult, WhereUsedReference, } from './core/shared';
|
|
39
39
|
export type { AdtStructureType, IStructureConfig, IStructureState, } from './core/structure';
|
|
40
40
|
export type { AdtTableType, ITableConfig, ITableState } from './core/table';
|
|
41
41
|
export type { AdtDdicTableTypeAlias, ITableTypeConfig, ITableTypeState, } from './core/tabletype';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,YAAY,EACZ,OAAO,GACR,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,YAAY,EACV,yBAAyB,EACzB,oCAAoC,EACpC,aAAa,EACb,yBAAyB,EACzB,+BAA+B,EAC/B,wBAAwB,EACxB,mCAAmC,EACnC,aAAa,EACb,eAAe,EACf,WAAW,EACX,iBAAiB,GAClB,MAAM,2BAA2B,CAAC;AACnC,YAAY,EACV,6BAA6B,EAC7B,6BAA6B,EAC7B,4BAA4B,EAC5B,mCAAmC,GACpC,MAAM,+BAA+B,CAAC;AACvC,YAAY,EACV,YAAY,EACZ,uBAAuB,EACvB,uBAAuB,EACvB,YAAY,EACZ,WAAW,EACX,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAChF,YAAY,EACV,cAAc,IAAI,kBAAkB,EACpC,eAAe,EACf,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,wBAAwB,EACxB,wBAAwB,EACxB,8BAA8B,EAC9B,uBAAuB,EACvB,kCAAkC,GACnC,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,cAAc,EACd,aAAa,GACd,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,cAAc,EACd,cAAc,EACd,aAAa,GACd,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,aAAa,EACb,mBAAmB,EACnB,0BAA0B,EAC1B,iBAAiB,EACjB,sBAAsB,EACtB,+BAA+B,EAC/B,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,0BAA0B,EAC1B,oBAAoB,EACpB,6BAA6B,EAC7B,WAAW,EACX,mBAAmB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|