@memberjunction/connector-netforum-enterprise 1.6.3 → 1.6.5
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/dist/NetForumConnector.d.ts +76 -34
- package/dist/NetForumConnector.js +309 -97
- package/dist/NetForumConnector.js.map +1 -1
- package/package.json +1 -1
|
@@ -46,27 +46,33 @@ export declare class NetForumConnector extends BaseRESTIntegrationConnector {
|
|
|
46
46
|
*/
|
|
47
47
|
private readonly DiscoveredColumnsByObject;
|
|
48
48
|
/**
|
|
49
|
-
*
|
|
50
|
-
*
|
|
51
|
-
*
|
|
52
|
-
*
|
|
53
|
-
*
|
|
54
|
-
*
|
|
55
|
-
*
|
|
56
|
-
*
|
|
57
|
-
*
|
|
58
|
-
*
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
*/
|
|
69
|
-
private
|
|
49
|
+
* `<obj_key>` of each enumerated facade object, keyed by lowercased object name. It is the facade
|
|
50
|
+
* object's own GUID — the vendor's GetFacadeObjectList page shows
|
|
51
|
+
* `<obj_name>ProductSubscription</obj_name><obj_key>22210b27-2396-48f0-a6a7-5e1a8eb9bda6</obj_key>` —
|
|
52
|
+
* and NOT a column of the object. 1.6.3 read it as the key COLUMN: `ORDER BY 74a11d45-ec60-…` and a
|
|
53
|
+
* column list containing that GUID went to SQL Server for every enumerated object, which answered
|
|
54
|
+
* "Incorrect syntax near 'a11d45'" (its tokenizer splitting the GUID), "The floating point value
|
|
55
|
+
* '07e325' is out of the range of computer representation" (a hex fragment read as a float) and
|
|
56
|
+
* "Invalid query." — 975 faults and zero rows in one discovery on a live tenant (2026-09-24).
|
|
57
|
+
* Kept as METADATA only: it never reaches szColumnList, szWhereClause or szOrderBy, and it never
|
|
58
|
+
* marks a field IsPrimaryKey. The key comes from the object's own definition (DefinitionByObject).
|
|
59
|
+
*/
|
|
60
|
+
private readonly EnumeratedObjectIdByObject;
|
|
61
|
+
/**
|
|
62
|
+
* Parsed GetQueryDefinition per object (lowercased name), fetched at most once per instance per
|
|
63
|
+
* object: DiscoverFields needs the columns, FetchChanges needs the key column and the alias-
|
|
64
|
+
* qualified column list. `null` records a definite non-2xx answer so an object the account cannot
|
|
65
|
+
* describe is not asked again (xWeb counts faults, not calls, against the daily lock budget); a
|
|
66
|
+
* thrown network error is NOT cached, so a transient failure does not leave the object keyless for
|
|
67
|
+
* the life of the process.
|
|
68
|
+
*/
|
|
69
|
+
private readonly DefinitionByObject;
|
|
70
|
+
/**
|
|
71
|
+
* `<connection>|<object>` pairs xWeb has refused with "Account is not authorized to perform Select
|
|
72
|
+
* on <object> object". A grant does not appear between two calls of one run, and each retry is a
|
|
73
|
+
* ~7.5 s HTTP 500 that counts against the fault budget; the second and later calls fail locally.
|
|
74
|
+
*/
|
|
75
|
+
private readonly SelectNotAuthorized;
|
|
70
76
|
/**
|
|
71
77
|
* CompanyIntegration IDs whose xWeb default column list is unusable.
|
|
72
78
|
*
|
|
@@ -96,15 +102,9 @@ export declare class NetForumConnector extends BaseRESTIntegrationConnector {
|
|
|
96
102
|
/**
|
|
97
103
|
* One `GetFacadeObjectList` call: the enumerated object universe, or `null` when the source could
|
|
98
104
|
* not be asked — credential-free, network failure, parse failure, or the account not granted the
|
|
99
|
-
* method; the Declared baseline then stands alone, exactly as before.
|
|
100
|
-
* was made, successful or not, so a lazy caller never repeats it (see EnumerationAttempted).
|
|
105
|
+
* method; the Declared baseline then stands alone, exactly as before.
|
|
101
106
|
*/
|
|
102
107
|
private EnumerateFacadeObjects;
|
|
103
|
-
/**
|
|
104
|
-
* The key column the enumeration named for `objectName`, enumerating first if this instance has
|
|
105
|
-
* not done so yet. Undefined when the source never listed the object or named no key for it.
|
|
106
|
-
*/
|
|
107
|
-
private EnumeratedKeyFor;
|
|
108
108
|
/**
|
|
109
109
|
* The Declared baseline (engine cache of persisted IntegrationObject rows).
|
|
110
110
|
*
|
|
@@ -118,7 +118,8 @@ export declare class NetForumConnector extends BaseRESTIntegrationConnector {
|
|
|
118
118
|
*
|
|
119
119
|
* Verified shape (live, 2026-09-15): `<ObjectObjects>` containing one `<ObjectObject>` per facade,
|
|
120
120
|
* each carrying `<obj_name>`, `<obj_key>` and `<obj_description>`. 878 rows on a real tenant.
|
|
121
|
-
* `obj_key` is the facade's
|
|
121
|
+
* `obj_key` is the facade object's GUID (vendor documentation, and a live tenant's SQL faults
|
|
122
|
+
* quoting its fragments) — kept as an identifier (EnumeratedObjectIdByObject), never as a column.
|
|
122
123
|
*
|
|
123
124
|
* Enumerated-only objects are reported HONESTLY as unknown-capability: the list gives a name and
|
|
124
125
|
* a description, never a watermark field or a write path, so `SupportsIncrementalSync` and
|
|
@@ -159,6 +160,12 @@ export declare class NetForumConnector extends BaseRESTIntegrationConnector {
|
|
|
159
160
|
* any error, it degrades to the Declared fields (never throws, never bakes a catalog).
|
|
160
161
|
*/
|
|
161
162
|
DiscoverFields(ci: MJCompanyIntegrationEntity, objectName: string, cu: UserInfo): Promise<ExternalFieldSchema[]>;
|
|
163
|
+
/**
|
|
164
|
+
* The parsed GetQueryDefinition for `objectName`, fetched once per instance per object. A non-2xx
|
|
165
|
+
* answer is remembered as `null` (not asked again — faults are the budget xWeb locks the account
|
|
166
|
+
* on); a thrown network error is not remembered, so the next caller asks again.
|
|
167
|
+
*/
|
|
168
|
+
private DefinitionFor;
|
|
162
169
|
/**
|
|
163
170
|
* IntrospectSchema — resolves each object's columns in the contract's order:
|
|
164
171
|
* 1. DiscoverObjects — the endpoint's object list (GetFacadeObjectList), reconciled in 1.5.0
|
|
@@ -202,13 +209,40 @@ export declare class NetForumConnector extends BaseRESTIntegrationConnector {
|
|
|
202
209
|
protected DeclaredSchema(companyIntegration: MJCompanyIntegrationEntity, contextUser: UserInfo): Promise<SourceSchemaInfo>;
|
|
203
210
|
IntrospectSchema(companyIntegration: MJCompanyIntegrationEntity, contextUser: UserInfo): Promise<SourceSchemaInfo>;
|
|
204
211
|
/**
|
|
205
|
-
* Parses a GetQueryDefinition response
|
|
206
|
-
*
|
|
207
|
-
*
|
|
208
|
-
*
|
|
209
|
-
*
|
|
212
|
+
* Parses a GetQueryDefinition response into its tables, columns and default list, and names the
|
|
213
|
+
* object's key column when the definition allows it (see KeyColumnFromDefinition). Columns are
|
|
214
|
+
* deduplicated by name: netFORUM list tables join the same table more than once under aliases
|
|
215
|
+
* (Individual joins mb_membership as Membership, ChapterMembership and OrgMembership), so one
|
|
216
|
+
* column name can appear several times — the first occurrence wins, the main table's preferred.
|
|
217
|
+
* Element names per the vendor's own sample: lst_mdt_name, lsf_from_table, lsf_from_alias,
|
|
218
|
+
* mdc_name / mdc_description / mdc_data_type / mdc_nullable / mdc_table_name / mdc_width_max,
|
|
219
|
+
* lsc_mdc_name. A response without <ListFromTable> wrappers still yields its <Column>s.
|
|
210
220
|
*/
|
|
211
221
|
private ParseQueryDefinition;
|
|
222
|
+
/**
|
|
223
|
+
* The object's key column from its definition — or undefined when the definition cannot say.
|
|
224
|
+
*
|
|
225
|
+
* The rule, in the order the evidence is strong:
|
|
226
|
+
* 1. among the MAIN table's columns (mdc_table_name = lst_mdt_name, unaliased), the key-typed
|
|
227
|
+
* column (`av_key`, or `uniqueidentifier`) described "Primary Key" — the vendor's own sample
|
|
228
|
+
* marks `ind_cst_key` exactly so;
|
|
229
|
+
* 2. else the key-typed main-table column named `<prefix>_key`, then `<prefix>_cst_key`, where
|
|
230
|
+
* prefix is the main table's column prefix (netFORUM: arp_key, evt_key; the customer subclasses
|
|
231
|
+
* ind_cst_key / org_cst_key);
|
|
232
|
+
* 3. else the main table's first key-typed column in document order (the sample lists the PK first).
|
|
233
|
+
* Without a main table the naming rule alone is applied to all columns and nothing else is guessed:
|
|
234
|
+
* measured on a live tenant, 493 of 878 objects carry more than one `<x>_key` column, and the most
|
|
235
|
+
* frequent prefix is NOT the object's own (AccountingPeriod's would pick atc_key over arp_key) —
|
|
236
|
+
* so a key that cannot be anchored to the main table is left to the sample-based classifier.
|
|
237
|
+
*/
|
|
238
|
+
private KeyColumnFromDefinition;
|
|
239
|
+
/**
|
|
240
|
+
* The definition's columns as ExternalFieldSchema, overlaid on the declared baseline by name.
|
|
241
|
+
* IsPrimaryKey is the declared flag when the declaration carries a key, else the definition's key
|
|
242
|
+
* column — never anything the enumeration said. Declared fields the definition does not list are
|
|
243
|
+
* re-added (the provable-only baseline is never lost).
|
|
244
|
+
*/
|
|
245
|
+
private FieldsFromDefinition;
|
|
212
246
|
private MapSoapType;
|
|
213
247
|
/**
|
|
214
248
|
* Fetches a batch via the GetQuery door. Walks the IO's access path from Configuration: the door
|
|
@@ -253,6 +287,14 @@ export declare class NetForumConnector extends BaseRESTIntegrationConnector {
|
|
|
253
287
|
* original fault to surface rather than sending a request we cannot justify.
|
|
254
288
|
*/
|
|
255
289
|
private ExplicitColumnListFor;
|
|
290
|
+
/** "Account is not authorized to perform Select on <object> object" — a grant, not a query, failed. */
|
|
291
|
+
private IsSelectNotAuthorizedFault;
|
|
292
|
+
/**
|
|
293
|
+
* The shape of a GetQuery request for a fault message: which object and TOP, how many columns were
|
|
294
|
+
* named (or that the default list was asked for), the ORDER BY column, and how many WHERE
|
|
295
|
+
* predicates — never a literal value, so a key or watermark value is not copied into a log.
|
|
296
|
+
*/
|
|
297
|
+
private DescribeRequestShape;
|
|
256
298
|
private ColumnListFor;
|
|
257
299
|
/**
|
|
258
300
|
* Create via the SOAP operation named in the IO's CreateBodyKey / Configuration.writeOps.createOp
|
|
@@ -97,6 +97,18 @@ const REQUEST_TIMEOUT_MS = 30_000;
|
|
|
97
97
|
const MIN_REQUEST_INTERVAL_MS = 200;
|
|
98
98
|
/** Session-token TTL. netFORUM does not publish a token lifetime; re-auth on 401 covers expiry. */
|
|
99
99
|
const TOKEN_TTL_MS = 3_600_000;
|
|
100
|
+
/**
|
|
101
|
+
* xWeb refuses any GetQuery whose text contains `_entity_key` — the vendor's GetQuery page lists it with
|
|
102
|
+
* select/insert/update/delete/exec/execute as the tokens that make the door answer "Invalid query." (it is
|
|
103
|
+
* netFORUM's multi-entity security column). Every netFORUM table carries a `<prefix>_entity_key`, so a
|
|
104
|
+
* column list built from an object's definition ALWAYS contained one, and every such list was refused: 8 of 8
|
|
105
|
+
* explicit lists on a live tenant (2026-09-24), while the same objects' default lists — which never include
|
|
106
|
+
* it — read fine. The keyword tokens are matched by xWeb as words, not substrings: the vendor's own example
|
|
107
|
+
* filters on `mls_delete_flag=0`, so `_delete_flag` columns stay. Only `_entity_key` is excluded.
|
|
108
|
+
*/
|
|
109
|
+
function IsQueryableColumn(name) {
|
|
110
|
+
return !/_entity_key/i.test(name);
|
|
111
|
+
}
|
|
100
112
|
let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConnector {
|
|
101
113
|
constructor() {
|
|
102
114
|
super(...arguments);
|
|
@@ -111,27 +123,33 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
|
|
|
111
123
|
*/
|
|
112
124
|
this.DiscoveredColumnsByObject = new Map();
|
|
113
125
|
/**
|
|
114
|
-
*
|
|
115
|
-
*
|
|
116
|
-
*
|
|
117
|
-
*
|
|
118
|
-
*
|
|
119
|
-
*
|
|
120
|
-
*
|
|
121
|
-
*
|
|
122
|
-
*
|
|
123
|
-
*
|
|
124
|
-
* and by FetchChanges (the paging key while the persisted catalog does not carry it yet).
|
|
126
|
+
* `<obj_key>` of each enumerated facade object, keyed by lowercased object name. It is the facade
|
|
127
|
+
* object's own GUID — the vendor's GetFacadeObjectList page shows
|
|
128
|
+
* `<obj_name>ProductSubscription</obj_name><obj_key>22210b27-2396-48f0-a6a7-5e1a8eb9bda6</obj_key>` —
|
|
129
|
+
* and NOT a column of the object. 1.6.3 read it as the key COLUMN: `ORDER BY 74a11d45-ec60-…` and a
|
|
130
|
+
* column list containing that GUID went to SQL Server for every enumerated object, which answered
|
|
131
|
+
* "Incorrect syntax near 'a11d45'" (its tokenizer splitting the GUID), "The floating point value
|
|
132
|
+
* '07e325' is out of the range of computer representation" (a hex fragment read as a float) and
|
|
133
|
+
* "Invalid query." — 975 faults and zero rows in one discovery on a live tenant (2026-09-24).
|
|
134
|
+
* Kept as METADATA only: it never reaches szColumnList, szWhereClause or szOrderBy, and it never
|
|
135
|
+
* marks a field IsPrimaryKey. The key comes from the object's own definition (DefinitionByObject).
|
|
125
136
|
*/
|
|
126
|
-
this.
|
|
137
|
+
this.EnumeratedObjectIdByObject = new Map();
|
|
127
138
|
/**
|
|
128
|
-
*
|
|
129
|
-
*
|
|
130
|
-
*
|
|
131
|
-
*
|
|
132
|
-
*
|
|
139
|
+
* Parsed GetQueryDefinition per object (lowercased name), fetched at most once per instance per
|
|
140
|
+
* object: DiscoverFields needs the columns, FetchChanges needs the key column and the alias-
|
|
141
|
+
* qualified column list. `null` records a definite non-2xx answer so an object the account cannot
|
|
142
|
+
* describe is not asked again (xWeb counts faults, not calls, against the daily lock budget); a
|
|
143
|
+
* thrown network error is NOT cached, so a transient failure does not leave the object keyless for
|
|
144
|
+
* the life of the process.
|
|
133
145
|
*/
|
|
134
|
-
this.
|
|
146
|
+
this.DefinitionByObject = new Map();
|
|
147
|
+
/**
|
|
148
|
+
* `<connection>|<object>` pairs xWeb has refused with "Account is not authorized to perform Select
|
|
149
|
+
* on <object> object". A grant does not appear between two calls of one run, and each retry is a
|
|
150
|
+
* ~7.5 s HTTP 500 that counts against the fault budget; the second and later calls fail locally.
|
|
151
|
+
*/
|
|
152
|
+
this.SelectNotAuthorized = new Set();
|
|
135
153
|
/**
|
|
136
154
|
* CompanyIntegration IDs whose xWeb default column list is unusable.
|
|
137
155
|
*
|
|
@@ -278,11 +296,9 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
|
|
|
278
296
|
/**
|
|
279
297
|
* One `GetFacadeObjectList` call: the enumerated object universe, or `null` when the source could
|
|
280
298
|
* not be asked — credential-free, network failure, parse failure, or the account not granted the
|
|
281
|
-
* method; the Declared baseline then stands alone, exactly as before.
|
|
282
|
-
* was made, successful or not, so a lazy caller never repeats it (see EnumerationAttempted).
|
|
299
|
+
* method; the Declared baseline then stands alone, exactly as before.
|
|
283
300
|
*/
|
|
284
301
|
async EnumerateFacadeObjects(ci, cu) {
|
|
285
|
-
this.EnumerationAttempted = true;
|
|
286
302
|
try {
|
|
287
303
|
const auth = await this.Authenticate(ci, cu);
|
|
288
304
|
const url = `${auth.Config.BaseURL}${DEFAULT_SOAP_PATH}`;
|
|
@@ -298,15 +314,6 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
|
|
|
298
314
|
}
|
|
299
315
|
return null;
|
|
300
316
|
}
|
|
301
|
-
/**
|
|
302
|
-
* The key column the enumeration named for `objectName`, enumerating first if this instance has
|
|
303
|
-
* not done so yet. Undefined when the source never listed the object or named no key for it.
|
|
304
|
-
*/
|
|
305
|
-
async EnumeratedKeyFor(ci, cu, objectName) {
|
|
306
|
-
if (!this.EnumerationAttempted)
|
|
307
|
-
await this.EnumerateFacadeObjects(ci, cu);
|
|
308
|
-
return this.EnumeratedKeyByObject.get(objectName.toLowerCase());
|
|
309
|
-
}
|
|
310
317
|
/**
|
|
311
318
|
* The Declared baseline (engine cache of persisted IntegrationObject rows).
|
|
312
319
|
*
|
|
@@ -322,7 +329,8 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
|
|
|
322
329
|
*
|
|
323
330
|
* Verified shape (live, 2026-09-15): `<ObjectObjects>` containing one `<ObjectObject>` per facade,
|
|
324
331
|
* each carrying `<obj_name>`, `<obj_key>` and `<obj_description>`. 878 rows on a real tenant.
|
|
325
|
-
* `obj_key` is the facade's
|
|
332
|
+
* `obj_key` is the facade object's GUID (vendor documentation, and a live tenant's SQL faults
|
|
333
|
+
* quoting its fragments) — kept as an identifier (EnumeratedObjectIdByObject), never as a column.
|
|
326
334
|
*
|
|
327
335
|
* Enumerated-only objects are reported HONESTLY as unknown-capability: the list gives a name and
|
|
328
336
|
* a description, never a watermark field or a write path, so `SupportsIncrementalSync` and
|
|
@@ -343,7 +351,7 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
|
|
|
343
351
|
const description = this.ParseSoapScalar(row, 'obj_description');
|
|
344
352
|
const objKey = this.ParseSoapScalar(row, 'obj_key');
|
|
345
353
|
if (objKey)
|
|
346
|
-
this.
|
|
354
|
+
this.EnumeratedObjectIdByObject.set(key, objKey);
|
|
347
355
|
out.push({
|
|
348
356
|
Name: name,
|
|
349
357
|
Label: description || name,
|
|
@@ -423,26 +431,44 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
|
|
|
423
431
|
throw err;
|
|
424
432
|
declared = [];
|
|
425
433
|
}
|
|
426
|
-
const enumeratedKey = await this.EnumeratedKeyFor(ci, cu, objectName);
|
|
427
434
|
// The base FieldEntityToSchema folds PK into IsUniqueKey and never sets IsPrimaryKey, so
|
|
428
435
|
// re-derive the honest IsPrimaryKey from the cached IOF entities (which carry it explicitly).
|
|
429
436
|
const pkNames = this.DeclaredPrimaryKeyNames(ci, objectName);
|
|
430
437
|
const declaredByName = new Map(declared.map(f => [f.Name.toLowerCase(), { ...f, IsPrimaryKey: pkNames.has(f.Name.toLowerCase()) }]));
|
|
438
|
+
// The object's own definition names its columns AND its key (the main table's `av_key`
|
|
439
|
+
// column described "Primary Key", else the `<prefix>_key` naming convention). Nothing here
|
|
440
|
+
// enumerates the facade list: `obj_key` is not a column and has nothing to say about fields.
|
|
441
|
+
const def = await this.DefinitionFor(ci, cu, objectName);
|
|
442
|
+
if (def && def.Columns.length > 0)
|
|
443
|
+
return this.FieldsFromDefinition(def, declaredByName);
|
|
444
|
+
return declared;
|
|
445
|
+
}
|
|
446
|
+
/**
|
|
447
|
+
* The parsed GetQueryDefinition for `objectName`, fetched once per instance per object. A non-2xx
|
|
448
|
+
* answer is remembered as `null` (not asked again — faults are the budget xWeb locks the account
|
|
449
|
+
* on); a thrown network error is not remembered, so the next caller asks again.
|
|
450
|
+
*/
|
|
451
|
+
async DefinitionFor(ci, cu, objectName) {
|
|
452
|
+
const key = objectName.toLowerCase();
|
|
453
|
+
if (this.DefinitionByObject.has(key))
|
|
454
|
+
return this.DefinitionByObject.get(key) ?? null;
|
|
431
455
|
try {
|
|
432
456
|
const auth = await this.Authenticate(ci, cu);
|
|
433
457
|
const url = `${auth.Config.BaseURL}${DEFAULT_SOAP_PATH}`;
|
|
434
458
|
const body = this.BuildSoapEnvelope('GetQueryDefinition', { szObjectName: objectName }, auth.Token);
|
|
435
459
|
const r = await this.MakeRawHTTPRequest(url, 'POST', this.SoapHeaders('GetQueryDefinition'), body);
|
|
436
460
|
if (r.Status >= 200 && r.Status < 300) {
|
|
437
|
-
const
|
|
438
|
-
|
|
439
|
-
|
|
461
|
+
const parsed = this.ParseQueryDefinition(this.AsText(r.Body));
|
|
462
|
+
const def = parsed.Columns.length > 0 ? parsed : null;
|
|
463
|
+
this.DefinitionByObject.set(key, def);
|
|
464
|
+
return def;
|
|
440
465
|
}
|
|
466
|
+
this.DefinitionByObject.set(key, null); // a definite refusal — not retried per call
|
|
441
467
|
}
|
|
442
468
|
catch {
|
|
443
|
-
// credential-free / network / parse failure →
|
|
469
|
+
// credential-free / network / parse failure → nothing cached, nothing known
|
|
444
470
|
}
|
|
445
|
-
return
|
|
471
|
+
return null;
|
|
446
472
|
}
|
|
447
473
|
/**
|
|
448
474
|
* IntrospectSchema — resolves each object's columns in the contract's order:
|
|
@@ -522,52 +548,151 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
|
|
|
522
548
|
return schema;
|
|
523
549
|
}
|
|
524
550
|
/**
|
|
525
|
-
* Parses a GetQueryDefinition response
|
|
526
|
-
*
|
|
527
|
-
*
|
|
528
|
-
*
|
|
529
|
-
*
|
|
551
|
+
* Parses a GetQueryDefinition response into its tables, columns and default list, and names the
|
|
552
|
+
* object's key column when the definition allows it (see KeyColumnFromDefinition). Columns are
|
|
553
|
+
* deduplicated by name: netFORUM list tables join the same table more than once under aliases
|
|
554
|
+
* (Individual joins mb_membership as Membership, ChapterMembership and OrgMembership), so one
|
|
555
|
+
* column name can appear several times — the first occurrence wins, the main table's preferred.
|
|
556
|
+
* Element names per the vendor's own sample: lst_mdt_name, lsf_from_table, lsf_from_alias,
|
|
557
|
+
* mdc_name / mdc_description / mdc_data_type / mdc_nullable / mdc_table_name / mdc_width_max,
|
|
558
|
+
* lsc_mdc_name. A response without <ListFromTable> wrappers still yields its <Column>s.
|
|
530
559
|
*/
|
|
531
|
-
ParseQueryDefinition(xml
|
|
532
|
-
const
|
|
533
|
-
|
|
534
|
-
|
|
560
|
+
ParseQueryDefinition(xml) {
|
|
561
|
+
const mainTable = this.ParseSoapScalar(xml, 'lst_mdt_name') ?? null;
|
|
562
|
+
const columns = [];
|
|
563
|
+
const defaultList = [];
|
|
564
|
+
const readColumns = (scope, table, alias) => {
|
|
565
|
+
for (const colXml of this.ExtractElements(scope, 'Column')) {
|
|
566
|
+
const name = this.ParseSoapScalar(colXml, 'mdc_name');
|
|
567
|
+
if (!name)
|
|
568
|
+
continue;
|
|
569
|
+
const nullable = this.ParseSoapScalar(colXml, 'mdc_nullable');
|
|
570
|
+
const widthRaw = this.ParseSoapScalar(colXml, 'mdc_width_max');
|
|
571
|
+
columns.push({
|
|
572
|
+
Name: name,
|
|
573
|
+
Table: this.ParseSoapScalar(colXml, 'mdc_table_name') ?? table,
|
|
574
|
+
Alias: alias,
|
|
575
|
+
DataType: this.ParseSoapScalar(colXml, 'mdc_data_type') ?? null,
|
|
576
|
+
Description: this.ParseSoapScalar(colXml, 'mdc_description') || undefined,
|
|
577
|
+
// AllowsNull provable-only: 'mdc_nullable' is an explicit source flag. "0"/"false"/"no" ⇒ NOT NULL.
|
|
578
|
+
AllowsNull: nullable == null ? undefined : !/^(0|false|no|n)$/i.test(nullable.trim()),
|
|
579
|
+
MaxLength: widthRaw && /^\d+$/.test(widthRaw) ? Number(widthRaw) : null,
|
|
580
|
+
});
|
|
581
|
+
}
|
|
582
|
+
};
|
|
583
|
+
const fromTables = this.ExtractElements(xml, 'ListFromTable');
|
|
584
|
+
if (fromTables.length > 0) {
|
|
585
|
+
for (const lft of fromTables) {
|
|
586
|
+
const table = this.ParseSoapScalar(lft, 'lsf_from_table') ?? null;
|
|
587
|
+
const alias = this.ParseSoapScalar(lft, 'lsf_from_alias') || null; // <lsf_from_alias xsi:nil="true"/> → null
|
|
588
|
+
readColumns(lft, table, alias);
|
|
589
|
+
for (const dl of this.ExtractElements(lft, 'ListFromTableColumn')) {
|
|
590
|
+
const n = this.ParseSoapScalar(dl, 'lsc_mdc_name');
|
|
591
|
+
if (n)
|
|
592
|
+
defaultList.push(n);
|
|
593
|
+
}
|
|
594
|
+
}
|
|
595
|
+
}
|
|
596
|
+
else {
|
|
597
|
+
readColumns(xml, null, null);
|
|
598
|
+
}
|
|
599
|
+
// Dedupe by name; a main-table occurrence displaces an earlier joined-table one of the same name.
|
|
600
|
+
const byName = new Map();
|
|
601
|
+
const isMain = (c) => !!mainTable && !!c.Table && c.Table.toLowerCase() === mainTable.toLowerCase() && !c.Alias;
|
|
602
|
+
for (const c of columns) {
|
|
603
|
+
const k = c.Name.toLowerCase();
|
|
604
|
+
const prior = byName.get(k);
|
|
605
|
+
if (!prior || (isMain(c) && !isMain(prior)))
|
|
606
|
+
byName.set(k, c);
|
|
607
|
+
}
|
|
608
|
+
const deduped = [...byName.values()];
|
|
609
|
+
return {
|
|
610
|
+
MainTable: mainTable,
|
|
611
|
+
KeyColumn: this.KeyColumnFromDefinition(mainTable, deduped),
|
|
612
|
+
Columns: deduped,
|
|
613
|
+
DefaultListColumns: defaultList,
|
|
614
|
+
};
|
|
615
|
+
}
|
|
616
|
+
/**
|
|
617
|
+
* The object's key column from its definition — or undefined when the definition cannot say.
|
|
618
|
+
*
|
|
619
|
+
* The rule, in the order the evidence is strong:
|
|
620
|
+
* 1. among the MAIN table's columns (mdc_table_name = lst_mdt_name, unaliased), the key-typed
|
|
621
|
+
* column (`av_key`, or `uniqueidentifier`) described "Primary Key" — the vendor's own sample
|
|
622
|
+
* marks `ind_cst_key` exactly so;
|
|
623
|
+
* 2. else the key-typed main-table column named `<prefix>_key`, then `<prefix>_cst_key`, where
|
|
624
|
+
* prefix is the main table's column prefix (netFORUM: arp_key, evt_key; the customer subclasses
|
|
625
|
+
* ind_cst_key / org_cst_key);
|
|
626
|
+
* 3. else the main table's first key-typed column in document order (the sample lists the PK first).
|
|
627
|
+
* Without a main table the naming rule alone is applied to all columns and nothing else is guessed:
|
|
628
|
+
* measured on a live tenant, 493 of 878 objects carry more than one `<x>_key` column, and the most
|
|
629
|
+
* frequent prefix is NOT the object's own (AccountingPeriod's would pick atc_key over arp_key) —
|
|
630
|
+
* so a key that cannot be anchored to the main table is left to the sample-based classifier.
|
|
631
|
+
*/
|
|
632
|
+
KeyColumnFromDefinition(mainTable, columns) {
|
|
633
|
+
const isKeyType = (t) => !!t && /^(av_key|uniqueidentifier)$/i.test(t.trim());
|
|
634
|
+
const main = mainTable
|
|
635
|
+
? columns.filter(c => !!c.Table && c.Table.toLowerCase() === mainTable.toLowerCase() && !c.Alias)
|
|
636
|
+
: [];
|
|
637
|
+
const pool = main.length > 0 ? main : columns;
|
|
638
|
+
// `_entity_key` is av_key-typed but is not a candidate: xWeb refuses any query that names it.
|
|
639
|
+
const keyed = pool.filter(c => isKeyType(c.DataType) && IsQueryableColumn(c.Name));
|
|
640
|
+
if (keyed.length === 0)
|
|
641
|
+
return undefined;
|
|
642
|
+
const described = keyed.find(c => /^primary\s+key$/i.test((c.Description ?? '').trim()));
|
|
643
|
+
if (main.length > 0 && described)
|
|
644
|
+
return described.Name;
|
|
645
|
+
const prefixCounts = new Map();
|
|
646
|
+
for (const c of pool) {
|
|
647
|
+
const p = c.Name.toLowerCase().split('_')[0];
|
|
648
|
+
if (p)
|
|
649
|
+
prefixCounts.set(p, (prefixCounts.get(p) ?? 0) + 1);
|
|
650
|
+
}
|
|
651
|
+
const prefix = [...prefixCounts.entries()].sort((a, b) => b[1] - a[1] || a[0].localeCompare(b[0]))[0]?.[0];
|
|
652
|
+
if (prefix) {
|
|
653
|
+
const exact = keyed.find(c => c.Name.toLowerCase() === `${prefix}_key`);
|
|
654
|
+
if (exact)
|
|
655
|
+
return exact.Name;
|
|
656
|
+
const cst = keyed.find(c => c.Name.toLowerCase() === `${prefix}_cst_key`);
|
|
657
|
+
if (cst)
|
|
658
|
+
return cst.Name;
|
|
659
|
+
}
|
|
660
|
+
return main.length > 0 ? keyed[0].Name : undefined;
|
|
661
|
+
}
|
|
662
|
+
/**
|
|
663
|
+
* The definition's columns as ExternalFieldSchema, overlaid on the declared baseline by name.
|
|
664
|
+
* IsPrimaryKey is the declared flag when the declaration carries a key, else the definition's key
|
|
665
|
+
* column — never anything the enumeration said. Declared fields the definition does not list are
|
|
666
|
+
* re-added (the provable-only baseline is never lost).
|
|
667
|
+
*/
|
|
668
|
+
FieldsFromDefinition(def, declaredByName) {
|
|
535
669
|
const declaredHasKey = [...declaredByName.values()].some(f => f.IsPrimaryKey === true);
|
|
536
|
-
const
|
|
670
|
+
const keyLower = !declaredHasKey && def.KeyColumn ? def.KeyColumn.toLowerCase() : undefined;
|
|
671
|
+
const out = [];
|
|
537
672
|
const seen = new Set();
|
|
538
|
-
for (const
|
|
539
|
-
const
|
|
540
|
-
if (
|
|
673
|
+
for (const c of def.Columns) {
|
|
674
|
+
const k = c.Name.toLowerCase();
|
|
675
|
+
if (seen.has(k))
|
|
541
676
|
continue;
|
|
542
|
-
seen.add(
|
|
543
|
-
const declared = declaredByName.get(
|
|
544
|
-
const dataType = this.ParseSoapScalar(colXml, 'mdc_data_type');
|
|
545
|
-
const description = this.ParseSoapScalar(colXml, 'mdc_description');
|
|
546
|
-
const nullable = this.ParseSoapScalar(colXml, 'mdc_nullable');
|
|
547
|
-
const widthRaw = this.ParseSoapScalar(colXml, 'mdc_width_max');
|
|
548
|
-
const maxLength = widthRaw && /^\d+$/.test(widthRaw) ? Number(widthRaw) : null;
|
|
549
|
-
// AllowsNull provable-only: 'mdc_nullable' is an explicit source flag. "0"/"false"/"no" ⇒ NOT NULL.
|
|
550
|
-
const allowsNull = nullable == null
|
|
551
|
-
? undefined
|
|
552
|
-
: !/^(0|false|no|n)$/i.test(nullable.trim());
|
|
677
|
+
seen.add(k);
|
|
678
|
+
const declared = declaredByName.get(k);
|
|
553
679
|
out.push({
|
|
554
|
-
Name:
|
|
555
|
-
Label: declared?.Label ??
|
|
556
|
-
Description: declared?.Description ??
|
|
557
|
-
DataType: declared?.DataType ?? this.MapSoapType(
|
|
680
|
+
Name: c.Name,
|
|
681
|
+
Label: declared?.Label ?? c.Name,
|
|
682
|
+
Description: declared?.Description ?? c.Description,
|
|
683
|
+
DataType: declared?.DataType ?? this.MapSoapType(c.DataType),
|
|
558
684
|
IsRequired: declared?.IsRequired ?? false,
|
|
559
|
-
AllowsNull:
|
|
560
|
-
IsPrimaryKey: declared?.IsPrimaryKey === true ||
|
|
685
|
+
AllowsNull: c.AllowsNull,
|
|
686
|
+
IsPrimaryKey: declared?.IsPrimaryKey === true || k === keyLower,
|
|
561
687
|
IsUniqueKey: declared?.IsUniqueKey ?? false,
|
|
562
688
|
IsReadOnly: declared?.IsReadOnly ?? false,
|
|
563
689
|
IsForeignKey: declared?.IsForeignKey ?? false,
|
|
564
690
|
ForeignKeyTarget: declared?.ForeignKeyTarget ?? null,
|
|
565
|
-
MaxLength:
|
|
691
|
+
MaxLength: c.MaxLength,
|
|
566
692
|
});
|
|
567
693
|
}
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
if (!seen.has(key))
|
|
694
|
+
for (const [k, f] of declaredByName) {
|
|
695
|
+
if (!seen.has(k))
|
|
571
696
|
out.push(f);
|
|
572
697
|
}
|
|
573
698
|
return out;
|
|
@@ -578,13 +703,13 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
|
|
|
578
703
|
const t = sqlType.toLowerCase();
|
|
579
704
|
if (/(date|time)/.test(t))
|
|
580
705
|
return 'datetime';
|
|
581
|
-
if (/(int|bigint|smallint|tinyint)/.test(t))
|
|
706
|
+
if (/(int|bigint|smallint|tinyint|av_count|av_seq)/.test(t))
|
|
582
707
|
return 'number';
|
|
583
|
-
if (/(decimal|numeric|money|float|real)/.test(t))
|
|
708
|
+
if (/(decimal|numeric|money|float|real|av_percent)/.test(t))
|
|
584
709
|
return 'decimal';
|
|
585
|
-
if (/bit/.test(t))
|
|
710
|
+
if (/(bit|av_flag)/.test(t))
|
|
586
711
|
return 'boolean';
|
|
587
|
-
if (/uniqueidentifier/.test(t))
|
|
712
|
+
if (/(uniqueidentifier|av_key)/.test(t))
|
|
588
713
|
return 'string';
|
|
589
714
|
return 'string';
|
|
590
715
|
}
|
|
@@ -611,12 +736,17 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
|
|
|
611
736
|
const cfg = this.ParseObjectConfig(obj);
|
|
612
737
|
const accessPath = cfg.accessPath ?? {};
|
|
613
738
|
const queryObject = accessPath.queryObject ?? accessPath.doorArgs?.szObjectName ?? ctx.ObjectName;
|
|
614
|
-
// The key: the persisted catalog's primary key when it has one, else the key
|
|
615
|
-
//
|
|
616
|
-
//
|
|
617
|
-
//
|
|
618
|
-
|
|
619
|
-
const
|
|
739
|
+
// The key: the persisted catalog's primary key when it has one, else the key column the object's
|
|
740
|
+
// OWN definition names (GetQueryDefinition, one metadata call per object per instance). The
|
|
741
|
+
// second case is the first discovery — enumerated objects are sampled before their fields are
|
|
742
|
+
// persisted. NEVER the enumeration's obj_key: that is the facade object's GUID, not a column,
|
|
743
|
+
// and sending it as one is what faulted every read on a live tenant (EnumeratedObjectIdByObject).
|
|
744
|
+
const ci = ctx.CompanyIntegration;
|
|
745
|
+
const persistedKey = this.PrimaryKeyFieldName(obj);
|
|
746
|
+
const definedKey = persistedKey
|
|
747
|
+
? undefined
|
|
748
|
+
: (await this.DefinitionFor(ci, ctx.ContextUser, ctx.ObjectName))?.KeyColumn;
|
|
749
|
+
const pkField = persistedKey ?? definedKey;
|
|
620
750
|
const orderingKey = cfg.stableOrderingKey ?? pkField;
|
|
621
751
|
// Keyset pagination requires a total order to seek on. With one, we page via
|
|
622
752
|
// `@TOP <BatchSize>` + `WHERE <key> > <AfterKeyValue> ORDER BY <key>`; the metadata
|
|
@@ -678,12 +808,35 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
|
|
|
678
808
|
// reaches it, and — because netFORUM configures the default list PER OBJECT — an object whose
|
|
679
809
|
// own default is fine on a tenant where others are not still gets its normal request.
|
|
680
810
|
const faultKey = ctx.CompanyIntegration?.ID ?? '';
|
|
811
|
+
const grantKey = `${faultKey}|${ctx.ObjectName.toLowerCase()}`;
|
|
812
|
+
if (this.SelectNotAuthorized.has(grantKey)) {
|
|
813
|
+
throw new Error(`NetForum GetQuery(${ctx.ObjectName}) not attempted: this xWeb account is not authorized to ` +
|
|
814
|
+
`Select on "${ctx.ObjectName}" (xWeb said so earlier on this connection; a grant does not appear ` +
|
|
815
|
+
`between calls, and each retry is a fault against the daily budget that locks the account).`);
|
|
816
|
+
}
|
|
681
817
|
if (!args.szColumnList && this.DefaultColumnListUnusable.has(faultKey)) {
|
|
682
818
|
const known = this.ExplicitColumnListFor(obj, [pkField, orderingKey, watermarkField]);
|
|
683
|
-
if (known)
|
|
819
|
+
if (known) {
|
|
684
820
|
args.szColumnList = known;
|
|
821
|
+
}
|
|
822
|
+
else {
|
|
823
|
+
// The tenant's default list is known to be unusable and nothing describes this object's
|
|
824
|
+
// columns (no definition, no persisted fields). The only request left is one that will
|
|
825
|
+
// fault, and faults are what lock the account — so it is not sent.
|
|
826
|
+
throw new Error(`NetForum GetQuery(${ctx.ObjectName}) not attempted: this connection's default column list is ` +
|
|
827
|
+
`unusable ('*' faulted earlier) and no column list is known for "${ctx.ObjectName}" — ` +
|
|
828
|
+
`GetQueryDefinition described no columns and none are persisted. Nothing valid to send.`);
|
|
829
|
+
}
|
|
830
|
+
}
|
|
831
|
+
// The vendor: "@TOP -1 ... specific, named fields must be passed ... in szColumnList". The
|
|
832
|
+
// legacy unbounded fetch of a keyless object therefore names its columns when it can.
|
|
833
|
+
if (!args.szColumnList && /@TOP\s+-1\b/i.test(szObjectName)) {
|
|
834
|
+
const named = this.ExplicitColumnListFor(obj, [pkField, orderingKey, watermarkField]);
|
|
835
|
+
if (named)
|
|
836
|
+
args.szColumnList = named;
|
|
685
837
|
}
|
|
686
838
|
const sentEmptyColumnList = !args.szColumnList;
|
|
839
|
+
let sentArgs = args;
|
|
687
840
|
let response = await this.MakeRawHTTPRequest(url, 'POST', this.SoapHeaders('GetQuery'), this.BuildSoapEnvelope('GetQuery', args, auth.Token));
|
|
688
841
|
// The door can reject ITS OWN default list. An empty szColumnList asks xWeb for the object's
|
|
689
842
|
// configured default columns, and on a tenant where that default is `*` the request faults with
|
|
@@ -703,11 +856,17 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
|
|
|
703
856
|
this.DefaultColumnListUnusable.add(faultKey);
|
|
704
857
|
const explicit = this.ExplicitColumnListFor(obj, [pkField, orderingKey, watermarkField]);
|
|
705
858
|
if (explicit) {
|
|
706
|
-
|
|
859
|
+
sentArgs = { ...args, szColumnList: explicit };
|
|
860
|
+
response = await this.MakeRawHTTPRequest(url, 'POST', this.SoapHeaders('GetQuery'), this.BuildSoapEnvelope('GetQuery', sentArgs, auth.Token));
|
|
707
861
|
}
|
|
708
862
|
}
|
|
709
863
|
if (response.Status < 200 || response.Status >= 300) {
|
|
710
|
-
|
|
864
|
+
if (this.IsSelectNotAuthorizedFault(response))
|
|
865
|
+
this.SelectNotAuthorized.add(grantKey);
|
|
866
|
+
// The fault text is SQL Server's or xWeb's; the SHAPE of what we sent is ours to report, or
|
|
867
|
+
// the next reader of the run log is left guessing which parameter the door rejected.
|
|
868
|
+
throw new Error(`NetForum GetQuery(${ctx.ObjectName}) failed: HTTP ${response.Status}${this.SoapFault(response.Body)}` +
|
|
869
|
+
` [sent: ${this.DescribeRequestShape(sentArgs)}]`);
|
|
711
870
|
}
|
|
712
871
|
const rows = this.NormalizeResponse(response.Body, null);
|
|
713
872
|
const warnings = [];
|
|
@@ -748,9 +907,22 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
|
|
|
748
907
|
});
|
|
749
908
|
}
|
|
750
909
|
// Highest ordering-key value seen → keyset resume position when no watermark exists.
|
|
910
|
+
// With no key known and the tenant's default list sent, the vendor guarantees "the primary key
|
|
911
|
+
// for the object will still be returned in the node as the first child" — so the first column
|
|
912
|
+
// of each row identifies the record, and its NAME is reported for the key classifier.
|
|
913
|
+
const firstColumn = !pkField && sentEmptyColumnList && rows.length > 0 ? Object.keys(rows[0])[0] : undefined;
|
|
914
|
+
if (firstColumn) {
|
|
915
|
+
warnings.push({
|
|
916
|
+
Code: 'KEY_FROM_DEFAULT_LIST_FIRST_COLUMN',
|
|
917
|
+
Message: `NetForum "${ctx.ObjectName}" has no known key column; with the tenant's default column list ` +
|
|
918
|
+
`xWeb returns the object's primary key as the first column of every row, so "${firstColumn}" ` +
|
|
919
|
+
`identifies these records.`,
|
|
920
|
+
Data: { ObjectName: ctx.ObjectName, FirstColumn: firstColumn },
|
|
921
|
+
});
|
|
922
|
+
}
|
|
751
923
|
let maxKey;
|
|
752
924
|
const records = rows.map(row => {
|
|
753
|
-
const externalID = pkField ? String(row[pkField] ?? '') : '';
|
|
925
|
+
const externalID = pkField ? String(row[pkField] ?? '') : (firstColumn ? String(row[firstColumn] ?? '') : '');
|
|
754
926
|
if (orderingKey) {
|
|
755
927
|
const v = row[orderingKey];
|
|
756
928
|
if (v != null) {
|
|
@@ -818,25 +990,65 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
|
|
|
818
990
|
* original fault to surface rather than sending a request we cannot justify.
|
|
819
991
|
*/
|
|
820
992
|
ExplicitColumnListFor(obj, required) {
|
|
993
|
+
// Preferred source: the object's definition, which knows each column's table and alias. The
|
|
994
|
+
// vendor requires the alias (or table) prefix wherever a table is joined more than once
|
|
995
|
+
// ("ambiguous column name" / "Object Reference Not Set" otherwise), so every column is sent
|
|
996
|
+
// qualified — `Membership.mbr_src_code`, `co_individual.ind_cst_key` — and each name once.
|
|
997
|
+
// The key column leads, so a row's first element is the key whichever list was sent.
|
|
998
|
+
const def = this.DefinitionByObject.get(obj.Name.toLowerCase()) ?? null;
|
|
999
|
+
const out = [];
|
|
1000
|
+
const seen = new Set();
|
|
1001
|
+
const add = (name, qualifier) => {
|
|
1002
|
+
if (!name || !IsQueryableColumn(name))
|
|
1003
|
+
return;
|
|
1004
|
+
const key = name.toLowerCase();
|
|
1005
|
+
if (seen.has(key))
|
|
1006
|
+
return;
|
|
1007
|
+
seen.add(key);
|
|
1008
|
+
out.push(qualifier ? `${qualifier}.${name}` : name);
|
|
1009
|
+
};
|
|
1010
|
+
if (def && def.Columns.length > 0) {
|
|
1011
|
+
const qualifierOf = (c) => c.Alias ?? c.Table;
|
|
1012
|
+
const lead = def.Columns.find(c => !!def.KeyColumn && c.Name.toLowerCase() === def.KeyColumn.toLowerCase());
|
|
1013
|
+
if (lead)
|
|
1014
|
+
add(lead.Name, qualifierOf(lead));
|
|
1015
|
+
for (const c of def.Columns)
|
|
1016
|
+
add(c.Name, qualifierOf(c));
|
|
1017
|
+
for (const r of required)
|
|
1018
|
+
add(r, null);
|
|
1019
|
+
return out.join(',');
|
|
1020
|
+
}
|
|
821
1021
|
const discovered = this.DiscoveredColumnsByObject.get(obj.Name.toLowerCase()) ?? [];
|
|
822
1022
|
const known = discovered.length > 0
|
|
823
1023
|
? discovered
|
|
824
1024
|
: this.GetCachedFields(obj.ID).map(f => f.Name).filter((n) => !!n);
|
|
825
1025
|
if (known.length === 0)
|
|
826
1026
|
return '';
|
|
827
|
-
const
|
|
828
|
-
|
|
829
|
-
for (const c of [...known, ...required]) {
|
|
830
|
-
if (!c)
|
|
831
|
-
continue;
|
|
832
|
-
const key = c.toLowerCase();
|
|
833
|
-
if (seen.has(key))
|
|
834
|
-
continue;
|
|
835
|
-
seen.add(key);
|
|
836
|
-
out.push(c);
|
|
837
|
-
}
|
|
1027
|
+
for (const c of [...known, ...required])
|
|
1028
|
+
add(c ?? undefined, null);
|
|
838
1029
|
return out.join(',');
|
|
839
1030
|
}
|
|
1031
|
+
/** "Account is not authorized to perform Select on <object> object" — a grant, not a query, failed. */
|
|
1032
|
+
IsSelectNotAuthorizedFault(response) {
|
|
1033
|
+
if (response.Status < 400)
|
|
1034
|
+
return false;
|
|
1035
|
+
const fault = this.SoapFault(response.Body);
|
|
1036
|
+
return typeof fault === 'string' && /not authorized to perform select/i.test(fault);
|
|
1037
|
+
}
|
|
1038
|
+
/**
|
|
1039
|
+
* The shape of a GetQuery request for a fault message: which object and TOP, how many columns were
|
|
1040
|
+
* named (or that the default list was asked for), the ORDER BY column, and how many WHERE
|
|
1041
|
+
* predicates — never a literal value, so a key or watermark value is not copied into a log.
|
|
1042
|
+
*/
|
|
1043
|
+
DescribeRequestShape(args) {
|
|
1044
|
+
const cols = args.szColumnList
|
|
1045
|
+
? `${args.szColumnList.split(',').filter(c => c.trim().length > 0).length} named column(s)`
|
|
1046
|
+
: 'default list (empty szColumnList)';
|
|
1047
|
+
const where = args.szWhereClause
|
|
1048
|
+
? `${args.szWhereClause.split(/\s+AND\s+/i).length} predicate(s)`
|
|
1049
|
+
: 'none';
|
|
1050
|
+
return `szObjectName="${args.szObjectName}"; szColumnList=${cols}; szOrderBy=${args.szOrderBy ?? 'none'}; szWhereClause=${where}`;
|
|
1051
|
+
}
|
|
840
1052
|
ColumnListFor(cfg, required) {
|
|
841
1053
|
const declared = Array.isArray(cfg.columnList)
|
|
842
1054
|
? cfg.columnList.filter((c) => typeof c === 'string' && c.trim().length > 0).map(c => c.trim())
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NetForumConnector.js","sourceRoot":"","sources":["../src/NetForumConnector.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NetForumConnector.js","sourceRoot":"","sources":["../src/NetForumConnector.ts"],"names":[],"mappings":"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"}
|