@abaplint/core 2.97.14 → 2.97.15
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.
|
@@ -17,7 +17,7 @@ class MethodDef {
|
|
|
17
17
|
const link = (0, combi_1.seq)("LINK", expressions_1.MethodParamName);
|
|
18
18
|
const full = (0, combi_1.seq)("FULL", expressions_1.MethodParamName);
|
|
19
19
|
const modify = (0, combi_1.alt)((0, combi_1.seq)("FOR ACTION", expressions_1.TypeName, (0, combi_1.optPrio)(result)), (0, combi_1.seq)("FOR CREATE", (0, combi_1.alt)(expressions_1.TypeName, expressions_1.EntityAssociation)), (0, combi_1.seq)("FOR DELETE", expressions_1.TypeName), (0, combi_1.seq)("FOR UPDATE", expressions_1.TypeName));
|
|
20
|
-
const behavior = (0, combi_1.altPrio)((0, combi_1.seq)("VALIDATE ON SAVE IMPORTING", expressions_1.MethodParamName, "FOR", expressions_1.TypeName), (0, combi_1.seq)("MODIFY IMPORTING", expressions_1.MethodParamName, modify), (0, combi_1.seq)("READ IMPORTING", expressions_1.MethodParamName, "FOR READ", (0, combi_1.alt)(expressions_1.TypeName, expressions_1.EntityAssociation), (0, combi_1.optPrio)(full), result, (0, combi_1.optPrio)(link)), (0, combi_1.seq)("FEATURES IMPORTING", expressions_1.MethodParamName, "REQUEST", expressions_1.NamespaceSimpleName, "FOR", expressions_1.NamespaceSimpleName, result), (0, combi_1.seq)("BEHAVIOR IMPORTING", expressions_1.MethodParamName, "FOR CREATE", expressions_1.TypeName, expressions_1.MethodParamName, "FOR UPDATE", expressions_1.TypeName, expressions_1.MethodParamName, "FOR DELETE", expressions_1.TypeName), (0, combi_1.seq)("BEHAVIOR IMPORTING", expressions_1.MethodParamName, "FOR READ", expressions_1.TypeName, result), (0, combi_1.seq)((0, combi_1.alt)("BEHAVIOR", "LOCK"), "IMPORTING", expressions_1.MethodParamName, "FOR LOCK", expressions_1.TypeName), (0, combi_1.seq)("DETERMINE", (0, combi_1.alt)("ON MODIFY", "ON SAVE"), "IMPORTING", expressions_1.MethodParamName, "FOR", expressions_1.TypeName), (0, combi_1.seq)("GLOBAL AUTHORIZATION IMPORTING REQUEST", expressions_1.MethodParamName, "FOR", expressions_1.TypeName, result));
|
|
20
|
+
const behavior = (0, combi_1.altPrio)((0, combi_1.seq)("VALIDATE ON SAVE IMPORTING", expressions_1.MethodParamName, "FOR", expressions_1.TypeName), (0, combi_1.seq)("MODIFY IMPORTING", expressions_1.MethodParamName, modify), (0, combi_1.seq)("READ IMPORTING", expressions_1.MethodParamName, "FOR READ", (0, combi_1.alt)(expressions_1.TypeName, expressions_1.EntityAssociation), (0, combi_1.optPrio)(full), result, (0, combi_1.optPrio)(link)), (0, combi_1.seq)("FEATURES IMPORTING", expressions_1.MethodParamName, "REQUEST", expressions_1.NamespaceSimpleName, "FOR", expressions_1.NamespaceSimpleName, result), (0, combi_1.seq)("BEHAVIOR IMPORTING", expressions_1.MethodParamName, "FOR CREATE", expressions_1.TypeName, expressions_1.MethodParamName, "FOR UPDATE", expressions_1.TypeName, expressions_1.MethodParamName, "FOR DELETE", expressions_1.TypeName), (0, combi_1.seq)("BEHAVIOR IMPORTING", expressions_1.MethodParamName, "FOR READ", expressions_1.TypeName, result), (0, combi_1.seq)((0, combi_1.alt)("BEHAVIOR", "LOCK"), "IMPORTING", expressions_1.MethodParamName, "FOR LOCK", expressions_1.TypeName), (0, combi_1.seq)("DETERMINE", (0, combi_1.alt)("ON MODIFY", "ON SAVE"), "IMPORTING", expressions_1.MethodParamName, "FOR", expressions_1.TypeName), (0, combi_1.seq)("GLOBAL AUTHORIZATION IMPORTING REQUEST", expressions_1.MethodParamName, "FOR", expressions_1.TypeName, result), (0, combi_1.seq)("INSTANCE AUTHORIZATION IMPORTING", expressions_1.MethodParamName, "REQUEST", expressions_1.MethodParamName, "FOR", expressions_1.TypeName, result));
|
|
21
21
|
// todo, this is only from version something
|
|
22
22
|
const amdp = (0, combi_1.seq)("AMDP OPTIONS CDS SESSION CLIENT CURRENT", (0, combi_1.optPrio)(expressions_1.MethodDefImporting), (0, combi_1.optPrio)(expressions_1.MethodDefExporting), (0, combi_1.optPrio)(expressions_1.MethodDefRaising));
|
|
23
23
|
const ret = (0, combi_1.seq)((0, combi_1.altPrio)("CLASS-METHODS", "METHODS"), expressions_1.MethodName, (0, combi_1.alt)((0, combi_1.seq)((0, combi_1.optPrio)(expressions_1.Abstract), expressions_1.EventHandler), parameters, testing, (0, combi_1.seq)("FOR", (0, combi_1.alt)(tableFunction, ddl, behavior)), amdp, "NOT AT END OF MODE", (0, combi_1.optPrio)(expressions_1.Redefinition)));
|
|
@@ -43,6 +43,9 @@ class IncludeType {
|
|
|
43
43
|
else if (ityp && ityp instanceof basic_1.StructureType) {
|
|
44
44
|
components.push(...ityp.getComponents());
|
|
45
45
|
}
|
|
46
|
+
else if (ityp && ityp instanceof basic_1.VoidType) {
|
|
47
|
+
return ityp;
|
|
48
|
+
}
|
|
46
49
|
else if (scope.getDDIC().inErrorNamespace(name) === false) {
|
|
47
50
|
return new basic_1.VoidType(name);
|
|
48
51
|
}
|
|
@@ -7,6 +7,7 @@ const xml_utils_1 = require("../xml_utils");
|
|
|
7
7
|
const ddic_1 = require("../ddic");
|
|
8
8
|
const _typed_identifier_1 = require("../abap/types/_typed_identifier");
|
|
9
9
|
const basic_1 = require("../abap/types/basic");
|
|
10
|
+
const version_1 = require("../version");
|
|
10
11
|
var EnhancementCategory;
|
|
11
12
|
(function (EnhancementCategory) {
|
|
12
13
|
EnhancementCategory["NotClassified"] = "0";
|
|
@@ -77,6 +78,10 @@ class Table extends _abstract_object_1.AbstractObject {
|
|
|
77
78
|
return new Types.UnknownType("Table, parser error");
|
|
78
79
|
}
|
|
79
80
|
}
|
|
81
|
+
if (reg.getConfig().getVersion() === version_1.Version.Cloud
|
|
82
|
+
&& this.parsedData.dataClass === "USER3") {
|
|
83
|
+
return new Types.UnknownType("Data class = USER3 not allowed in cloud");
|
|
84
|
+
}
|
|
80
85
|
const references = [];
|
|
81
86
|
const components = [];
|
|
82
87
|
const ddic = new ddic_1.DDIC(reg);
|
|
@@ -252,7 +257,7 @@ class Table extends _abstract_object_1.AbstractObject {
|
|
|
252
257
|
}
|
|
253
258
|
///////////////
|
|
254
259
|
parseXML() {
|
|
255
|
-
var _a, _b, _c, _d, _e, _f, _g;
|
|
260
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
256
261
|
const parsed = super.parseRaw2();
|
|
257
262
|
if (parsed === undefined) {
|
|
258
263
|
return;
|
|
@@ -270,8 +275,9 @@ class Table extends _abstract_object_1.AbstractObject {
|
|
|
270
275
|
}
|
|
271
276
|
// table category
|
|
272
277
|
this.parsedData.tableCategory = (_f = (_e = parsed.abapGit["asx:abap"]["asx:values"]) === null || _e === void 0 ? void 0 : _e.DD02V) === null || _f === void 0 ? void 0 : _f.TABCLASS;
|
|
278
|
+
this.parsedData.dataClass = (_h = (_g = parsed.abapGit["asx:abap"]["asx:values"]) === null || _g === void 0 ? void 0 : _g.DD09L) === null || _h === void 0 ? void 0 : _h.TABART;
|
|
273
279
|
// fields
|
|
274
|
-
const fields = (
|
|
280
|
+
const fields = (_j = parsed.abapGit["asx:abap"]["asx:values"]) === null || _j === void 0 ? void 0 : _j.DD03P_TABLE;
|
|
275
281
|
for (const field of (0, xml_utils_1.xmlToArray)(fields === null || fields === void 0 ? void 0 : fields.DD03P)) {
|
|
276
282
|
this.parsedData.fields.push({
|
|
277
283
|
FIELDNAME: field.FIELDNAME,
|
package/build/src/registry.js
CHANGED