d365fo-mcp 1.16.2 → 1.17.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.
@@ -1259,6 +1259,10 @@ const BRIDGE_MODIFY_OPS = new Set([
1259
1259
  // No C# op exists for query ranges on entities — served entirely by a
1260
1260
  // direct-XML writer (data-entity is already in BRIDGE_MODIFY_TYPES).
1261
1261
  'add-query-range', 'remove-query-range',
1262
+ // Routed straight to the XML writer by XML_ONLY_MODIFY_PAIRS below, but the
1263
+ // dispatch gate is checked FIRST — an op absent here is refused as unknown
1264
+ // before the pair table is ever consulted.
1265
+ 'report-design',
1262
1266
  ]);
1263
1267
  /**
1264
1268
  * Supported object types for bridge-based modification.
@@ -1292,6 +1296,12 @@ const XML_ONLY_MODIFY_PAIRS = {
1292
1296
  'remove-entry-point': new Set(['security-privilege']),
1293
1297
  'remove-diagnostic-suppression': new Set(['ignore-diagnostic-list']),
1294
1298
  'add-diagnostic-suppression': new Set(['ignore-diagnostic-list']),
1299
+ // An AxReport has no bridge write path at all — IMetadataProvider cannot express
1300
+ // a dataset field or a report parameter through a Dictionary<string,string> — and
1301
+ // `report` is deliberately absent from BRIDGE_MODIFY_TYPES for that reason. Without
1302
+ // this pair the caller would get "the bridge could not resolve the object" instead
1303
+ // of the operation actually running.
1304
+ 'report-design': new Set(['report']),
1295
1305
  };
1296
1306
  /**
1297
1307
  * Names the properties the bridge could not write, for appending to a success message.
@@ -0,0 +1,55 @@
1
+ /**
2
+ * GENERATED by scripts/oracles/atlNodes.ts — do not edit.
3
+ *
4
+ * The Acceptance Test Library's data tree, read from the AOT on a VM.
5
+ * 1105 ATL data classes, 38 root modules,
6
+ * 351 nodes that produce a table or an ATL entity.
7
+ *
8
+ * The root class declares ONE accessor of its own; every module below arrives on
9
+ * an extension class in another package, which is why a missing package reference
10
+ * fails on `data.invent()` rather than on `AtlDataRootNode`.
11
+ */
12
+ /** A module hanging off `AtlDataRootNode::construct()`. */
13
+ export interface AtlRootModule {
14
+ /** Accessor as written in a test: `data.invent()`. */
15
+ readonly accessor: string;
16
+ /** The node class it returns. */
17
+ readonly node: string;
18
+ /** The package that DEFINES it — the model must reference this one. */
19
+ readonly package: string;
20
+ }
21
+ /** A node that hands back a record: `data.cust().customers().default()`. */
22
+ export interface AtlTableNode {
23
+ /** Table or ATL entity the node produces. */
24
+ readonly produces: string;
25
+ /** Full accessor path from the root, excluding `data.`. */
26
+ readonly path: string;
27
+ readonly node: string;
28
+ readonly package: string;
29
+ /**
30
+ * `default` returns the demo-data record and reuses it; `createDefault` makes a
31
+ * new one. Master data mostly offers the first, transactions the second.
32
+ */
33
+ readonly kind: 'default' | 'createDefault';
34
+ /**
35
+ * When `produces` is an AtlEntity wrapper, the buffer `.record()` hands back.
36
+ * Absent when the node already returns a table.
37
+ */
38
+ readonly record?: string;
39
+ }
40
+ export declare const ATL_ROOT_MODULES: readonly AtlRootModule[];
41
+ export declare const ATL_TABLE_NODES: readonly AtlTableNode[];
42
+ /** The packages a model needs in its Descriptor before any of this compiles. */
43
+ export declare const ATL_PACKAGES: readonly string[];
44
+ /**
45
+ * EVERY node that yields the given buffer, likeliest first. Several usually do,
46
+ * and they are not interchangeable: `SalesTable` comes from both
47
+ * `sales().salesOrders()` and `sales().returnOrders()`, and a helper that
48
+ * silently returned one of them would hand a return order to a test about an
49
+ * order. Matched on the buffer a test declares, so `CustTable` finds the node
50
+ * producing an AtlEntityCustomer.
51
+ */
52
+ export declare function atlNodesForTable(tableName: string): AtlTableNode[];
53
+ /** The arrange line for one node, e.g. `data.cust().customers().default().record()`. */
54
+ export declare function atlArrangeLine(node: AtlTableNode): string;
55
+ //# sourceMappingURL=atlNodes.generated.d.ts.map