@abaplint/core 2.113.45 → 2.113.47
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/build/abaplint.d.ts
CHANGED
|
@@ -1550,6 +1550,7 @@ declare class DataDefinition extends AbstractObject {
|
|
|
1550
1550
|
setDirty(): void;
|
|
1551
1551
|
findSourceFile(): IFile | undefined;
|
|
1552
1552
|
hasParserError(): boolean | undefined;
|
|
1553
|
+
listKeys(): string[];
|
|
1553
1554
|
parse(): IParseResult;
|
|
1554
1555
|
getTree(): ExpressionNode | undefined;
|
|
1555
1556
|
private findSQLViewName;
|
|
@@ -13,7 +13,7 @@ class ReadTable {
|
|
|
13
13
|
const key = (0, combi_1.seq)((0, combi_1.altPrio)("WITH KEY", "WITH TABLE KEY"), (0, combi_1.alt)(expressions_1.ComponentCompareSimple, components, (0, combi_1.seq)((0, combi_1.optPrio)("="), expressions_1.Source)));
|
|
14
14
|
const using = (0, combi_1.seq)("USING KEY", (0, combi_1.alt)(expressions_1.Field, expressions_1.Dynamic));
|
|
15
15
|
const from = (0, combi_1.seq)("FROM", expressions_1.Source);
|
|
16
|
-
const perm = (0, combi_1.per)((0, combi_1.alt)(index, key, from), expressions_1.ReadTableTarget, using, comparing, "CASTING", "TRANSPORTING
|
|
16
|
+
const perm = (0, combi_1.per)((0, combi_1.alt)(index, key, from), expressions_1.ReadTableTarget, using, comparing, "CASTING", (0, combi_1.seq)("TRANSPORTING", (0, combi_1.altPrio)("ALL FIELDS", "NO FIELDS", transporting_fields_1.TransportingFields)), "BINARY SEARCH");
|
|
17
17
|
return (0, combi_1.seq)("READ TABLE", (0, combi_1.alt)(expressions_1.SimpleSource2, (0, combi_1.ver)(version_1.Version.v740sp02, expressions_1.Source)), (0, combi_1.opt)(perm));
|
|
18
18
|
}
|
|
19
19
|
}
|
|
@@ -492,9 +492,11 @@ class TypeUtils {
|
|
|
492
492
|
&& this.isCharLike(source)) {
|
|
493
493
|
return true;
|
|
494
494
|
}
|
|
495
|
+
else if (source instanceof basic_1.StructureType) {
|
|
496
|
+
return this.isCharLikeStrict(source);
|
|
497
|
+
}
|
|
495
498
|
else if (source instanceof basic_1.DataReference
|
|
496
499
|
|| source instanceof basic_1.ObjectReferenceType
|
|
497
|
-
|| source instanceof basic_1.StructureType
|
|
498
500
|
|| source instanceof basic_1.GenericObjectReferenceType) {
|
|
499
501
|
return false;
|
|
500
502
|
}
|
|
@@ -59,6 +59,17 @@ class DataDefinition extends _abstract_object_1.AbstractObject {
|
|
|
59
59
|
hasParserError() {
|
|
60
60
|
return this.parserError;
|
|
61
61
|
}
|
|
62
|
+
listKeys() {
|
|
63
|
+
var _a;
|
|
64
|
+
this.parse();
|
|
65
|
+
const ret = [];
|
|
66
|
+
for (const field of ((_a = this.parsedData) === null || _a === void 0 ? void 0 : _a.fields) || []) {
|
|
67
|
+
if (field.key === true) {
|
|
68
|
+
ret.push(field.name);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return ret;
|
|
72
|
+
}
|
|
62
73
|
parse() {
|
|
63
74
|
var _a, _b;
|
|
64
75
|
if (this.isDirty() === false) {
|
package/build/src/registry.js
CHANGED