@abaplint/core 2.97.0 → 2.97.2
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.
|
@@ -269,7 +269,7 @@ class BasicTypes {
|
|
|
269
269
|
return undefined;
|
|
270
270
|
}
|
|
271
271
|
parseTable(node, name) {
|
|
272
|
-
var _a, _b, _c;
|
|
272
|
+
var _a, _b, _c, _d;
|
|
273
273
|
const typename = node.findFirstExpression(Expressions.TypeName);
|
|
274
274
|
const text = (_a = node.findFirstExpression(Expressions.TypeTable)) === null || _a === void 0 ? void 0 : _a.concatTokens().toUpperCase();
|
|
275
275
|
if (text === undefined) {
|
|
@@ -292,7 +292,8 @@ class BasicTypes {
|
|
|
292
292
|
}
|
|
293
293
|
const typeTableKeys = node.findAllExpressions(expressions_1.TypeTableKey);
|
|
294
294
|
const firstKey = typeTableKeys[0];
|
|
295
|
-
const isNamed = (firstKey === null || firstKey === void 0 ? void 0 : firstKey.findDirectExpression(expressions_1.Field)) !== undefined
|
|
295
|
+
const isNamed = (firstKey === null || firstKey === void 0 ? void 0 : firstKey.findDirectExpression(expressions_1.Field)) !== undefined
|
|
296
|
+
&& ((_b = firstKey === null || firstKey === void 0 ? void 0 : firstKey.findDirectExpression(expressions_1.Field)) === null || _b === void 0 ? void 0 : _b.concatTokens().toUpperCase()) !== "PRIMARY_KEY";
|
|
296
297
|
const primaryKey = {
|
|
297
298
|
name: "primary_key",
|
|
298
299
|
type: type || basic_1.TableAccessType.standard,
|
|
@@ -311,7 +312,7 @@ class BasicTypes {
|
|
|
311
312
|
const secondaryKeys = [];
|
|
312
313
|
for (let i = start; i < typeTableKeys.length; i++) {
|
|
313
314
|
const row = typeTableKeys[i];
|
|
314
|
-
const name = (
|
|
315
|
+
const name = (_c = row.findDirectExpression(expressions_1.Field)) === null || _c === void 0 ? void 0 : _c.concatTokens();
|
|
315
316
|
if (name === undefined) {
|
|
316
317
|
continue;
|
|
317
318
|
}
|
|
@@ -407,7 +408,7 @@ class BasicTypes {
|
|
|
407
408
|
else if (typename && (text.startsWith("TYPE TABLE FOR CREATE ")
|
|
408
409
|
|| text.startsWith("TYPE TABLE FOR UPDATE "))) {
|
|
409
410
|
const name = typename.concatTokens();
|
|
410
|
-
const type = (
|
|
411
|
+
const type = (_d = this.scope.getDDIC().lookupDDLS(name)) === null || _d === void 0 ? void 0 : _d.type;
|
|
411
412
|
if (type) {
|
|
412
413
|
return new Types.TableType(new basic_1.VoidType("RapTodo"), options);
|
|
413
414
|
}
|
package/build/src/registry.js
CHANGED