@memberjunction/connector-netforum-enterprise 1.6.2 → 1.6.4

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.
@@ -45,6 +45,34 @@ export declare class NetForumConnector extends BaseRESTIntegrationConnector {
45
45
  * GetCachedFields cannot supply a replacement. Step 2 already has the answer — keep it for step 3.
46
46
  */
47
47
  private readonly DiscoveredColumnsByObject;
48
+ /**
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;
48
76
  /**
49
77
  * CompanyIntegration IDs whose xWeb default column list is unusable.
50
78
  *
@@ -71,6 +99,12 @@ export declare class NetForumConnector extends BaseRESTIntegrationConnector {
71
99
  * baseline, so the runtime structure self-check still passes without a token.
72
100
  */
73
101
  DiscoverObjects(ci: MJCompanyIntegrationEntity, cu: UserInfo): Promise<ExternalObjectSchema[]>;
102
+ /**
103
+ * One `GetFacadeObjectList` call: the enumerated object universe, or `null` when the source could
104
+ * not be asked — credential-free, network failure, parse failure, or the account not granted the
105
+ * method; the Declared baseline then stands alone, exactly as before.
106
+ */
107
+ private EnumerateFacadeObjects;
74
108
  /**
75
109
  * The Declared baseline (engine cache of persisted IntegrationObject rows).
76
110
  *
@@ -84,6 +118,8 @@ export declare class NetForumConnector extends BaseRESTIntegrationConnector {
84
118
  *
85
119
  * Verified shape (live, 2026-09-15): `<ObjectObjects>` containing one `<ObjectObject>` per facade,
86
120
  * each carrying `<obj_name>`, `<obj_key>` and `<obj_description>`. 878 rows on a real tenant.
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.
87
123
  *
88
124
  * Enumerated-only objects are reported HONESTLY as unknown-capability: the list gives a name and
89
125
  * a description, never a watermark field or a write path, so `SupportsIncrementalSync` and
@@ -124,6 +160,12 @@ export declare class NetForumConnector extends BaseRESTIntegrationConnector {
124
160
  * any error, it degrades to the Declared fields (never throws, never bakes a catalog).
125
161
  */
126
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;
127
169
  /**
128
170
  * IntrospectSchema — resolves each object's columns in the contract's order:
129
171
  * 1. DiscoverObjects — the endpoint's object list (GetFacadeObjectList), reconciled in 1.5.0
@@ -167,12 +209,40 @@ export declare class NetForumConnector extends BaseRESTIntegrationConnector {
167
209
  protected DeclaredSchema(companyIntegration: MJCompanyIntegrationEntity, contextUser: UserInfo): Promise<SourceSchemaInfo>;
168
210
  IntrospectSchema(companyIntegration: MJCompanyIntegrationEntity, contextUser: UserInfo): Promise<SourceSchemaInfo>;
169
211
  /**
170
- * Parses a GetQueryDefinition response (the SQL column definition) into ExternalFieldSchema[].
171
- * Each `<Column>` carries mdc_name / mdc_description / mdc_data_type / mdc_nullable /
172
- * mdc_width_max. Declared metadata wins for PK identity (a column definition does not mark a PK);
173
- * discovery contributes the full column corpus + provable nullability/length.
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.
174
220
  */
175
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;
176
246
  private MapSoapType;
177
247
  /**
178
248
  * Fetches a batch via the GetQuery door. Walks the IO's access path from Configuration: the door
@@ -217,6 +287,14 @@ export declare class NetForumConnector extends BaseRESTIntegrationConnector {
217
287
  * original fault to surface rather than sending a request we cannot justify.
218
288
  */
219
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;
220
298
  private ColumnListFor;
221
299
  /**
222
300
  * Create via the SOAP operation named in the IO's CreateBodyKey / Configuration.writeOps.createOp
@@ -110,6 +110,34 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
110
110
  * GetCachedFields cannot supply a replacement. Step 2 already has the answer — keep it for step 3.
111
111
  */
112
112
  this.DiscoveredColumnsByObject = new Map();
113
+ /**
114
+ * `<obj_key>` of each enumerated facade object, keyed by lowercased object name. It is the facade
115
+ * object's own GUID — the vendor's GetFacadeObjectList page shows
116
+ * `<obj_name>ProductSubscription</obj_name><obj_key>22210b27-2396-48f0-a6a7-5e1a8eb9bda6</obj_key>` —
117
+ * and NOT a column of the object. 1.6.3 read it as the key COLUMN: `ORDER BY 74a11d45-ec60-…` and a
118
+ * column list containing that GUID went to SQL Server for every enumerated object, which answered
119
+ * "Incorrect syntax near 'a11d45'" (its tokenizer splitting the GUID), "The floating point value
120
+ * '07e325' is out of the range of computer representation" (a hex fragment read as a float) and
121
+ * "Invalid query." — 975 faults and zero rows in one discovery on a live tenant (2026-09-24).
122
+ * Kept as METADATA only: it never reaches szColumnList, szWhereClause or szOrderBy, and it never
123
+ * marks a field IsPrimaryKey. The key comes from the object's own definition (DefinitionByObject).
124
+ */
125
+ this.EnumeratedObjectIdByObject = new Map();
126
+ /**
127
+ * Parsed GetQueryDefinition per object (lowercased name), fetched at most once per instance per
128
+ * object: DiscoverFields needs the columns, FetchChanges needs the key column and the alias-
129
+ * qualified column list. `null` records a definite non-2xx answer so an object the account cannot
130
+ * describe is not asked again (xWeb counts faults, not calls, against the daily lock budget); a
131
+ * thrown network error is NOT cached, so a transient failure does not leave the object keyless for
132
+ * the life of the process.
133
+ */
134
+ this.DefinitionByObject = new Map();
135
+ /**
136
+ * `<connection>|<object>` pairs xWeb has refused with "Account is not authorized to perform Select
137
+ * on <object> object". A grant does not appear between two calls of one run, and each retry is a
138
+ * ~7.5 s HTTP 500 that counts against the fault budget; the second and later calls fail locally.
139
+ */
140
+ this.SelectNotAuthorized = new Set();
113
141
  /**
114
142
  * CompanyIntegration IDs whose xWeb default column list is unusable.
115
143
  *
@@ -250,20 +278,29 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
250
278
  */
251
279
  async DiscoverObjects(ci, cu) {
252
280
  const declared = await this.DeclaredObjects(ci, cu);
281
+ const enumerated = await this.EnumerateFacadeObjects(ci, cu);
282
+ return enumerated ? this.MergeEnumeratedObjects(declared, enumerated) : declared;
283
+ }
284
+ /**
285
+ * One `GetFacadeObjectList` call: the enumerated object universe, or `null` when the source could
286
+ * not be asked — credential-free, network failure, parse failure, or the account not granted the
287
+ * method; the Declared baseline then stands alone, exactly as before.
288
+ */
289
+ async EnumerateFacadeObjects(ci, cu) {
253
290
  try {
254
291
  const auth = await this.Authenticate(ci, cu);
255
292
  const url = `${auth.Config.BaseURL}${DEFAULT_SOAP_PATH}`;
256
293
  const body = this.BuildSoapEnvelope('GetFacadeObjectList', {}, auth.Token);
257
294
  const r = await this.MakeRawHTTPRequest(url, 'POST', this.SoapHeaders('GetFacadeObjectList'), body);
258
295
  if (r.Status >= 200 && r.Status < 300) {
259
- return this.MergeEnumeratedObjects(declared, this.ParseFacadeObjectList(this.AsText(r.Body)));
296
+ return this.ParseFacadeObjectList(this.AsText(r.Body));
260
297
  }
261
298
  }
262
299
  catch {
263
300
  // Credential-free, network failure, parse failure, or the account not granted
264
301
  // GetFacadeObjectList → the Declared baseline stands alone, exactly as before.
265
302
  }
266
- return declared;
303
+ return null;
267
304
  }
268
305
  /**
269
306
  * The Declared baseline (engine cache of persisted IntegrationObject rows).
@@ -280,6 +317,8 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
280
317
  *
281
318
  * Verified shape (live, 2026-09-15): `<ObjectObjects>` containing one `<ObjectObject>` per facade,
282
319
  * each carrying `<obj_name>`, `<obj_key>` and `<obj_description>`. 878 rows on a real tenant.
320
+ * `obj_key` is the facade object's GUID (vendor documentation, and a live tenant's SQL faults
321
+ * quoting its fragments) — kept as an identifier (EnumeratedObjectIdByObject), never as a column.
283
322
  *
284
323
  * Enumerated-only objects are reported HONESTLY as unknown-capability: the list gives a name and
285
324
  * a description, never a watermark field or a write path, so `SupportsIncrementalSync` and
@@ -298,6 +337,9 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
298
337
  continue;
299
338
  seen.add(key);
300
339
  const description = this.ParseSoapScalar(row, 'obj_description');
340
+ const objKey = this.ParseSoapScalar(row, 'obj_key');
341
+ if (objKey)
342
+ this.EnumeratedObjectIdByObject.set(key, objKey);
301
343
  out.push({
302
344
  Name: name,
303
345
  Label: description || name,
@@ -363,26 +405,58 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
363
405
  * any error, it degrades to the Declared fields (never throws, never bakes a catalog).
364
406
  */
365
407
  async DiscoverFields(ci, objectName, cu) {
366
- const declared = await super.DiscoverFields(ci, objectName, cu);
408
+ // An object this connector enumerated but has not persisted yet is unknown to the engine
409
+ // cache, and the base DiscoverFields throws for it. On a first discovery that is every
410
+ // enumerated-only object — through 1.6.2 they got no columns until the second pass. The
411
+ // endpoint's column list does not depend on the cache, so "not cached" means "nothing
412
+ // declared" and the call goes on to GetQueryDefinition. Anything else the base throws, throws.
413
+ let declared;
414
+ try {
415
+ declared = await super.DiscoverFields(ci, objectName, cu);
416
+ }
417
+ catch (err) {
418
+ if (!/IntegrationObject not found/.test(err instanceof Error ? err.message : String(err)))
419
+ throw err;
420
+ declared = [];
421
+ }
367
422
  // The base FieldEntityToSchema folds PK into IsUniqueKey and never sets IsPrimaryKey, so
368
423
  // re-derive the honest IsPrimaryKey from the cached IOF entities (which carry it explicitly).
369
424
  const pkNames = this.DeclaredPrimaryKeyNames(ci, objectName);
370
425
  const declaredByName = new Map(declared.map(f => [f.Name.toLowerCase(), { ...f, IsPrimaryKey: pkNames.has(f.Name.toLowerCase()) }]));
426
+ // The object's own definition names its columns AND its key (the main table's `av_key`
427
+ // column described "Primary Key", else the `<prefix>_key` naming convention). Nothing here
428
+ // enumerates the facade list: `obj_key` is not a column and has nothing to say about fields.
429
+ const def = await this.DefinitionFor(ci, cu, objectName);
430
+ if (def && def.Columns.length > 0)
431
+ return this.FieldsFromDefinition(def, declaredByName);
432
+ return declared;
433
+ }
434
+ /**
435
+ * The parsed GetQueryDefinition for `objectName`, fetched once per instance per object. A non-2xx
436
+ * answer is remembered as `null` (not asked again — faults are the budget xWeb locks the account
437
+ * on); a thrown network error is not remembered, so the next caller asks again.
438
+ */
439
+ async DefinitionFor(ci, cu, objectName) {
440
+ const key = objectName.toLowerCase();
441
+ if (this.DefinitionByObject.has(key))
442
+ return this.DefinitionByObject.get(key) ?? null;
371
443
  try {
372
444
  const auth = await this.Authenticate(ci, cu);
373
445
  const url = `${auth.Config.BaseURL}${DEFAULT_SOAP_PATH}`;
374
446
  const body = this.BuildSoapEnvelope('GetQueryDefinition', { szObjectName: objectName }, auth.Token);
375
447
  const r = await this.MakeRawHTTPRequest(url, 'POST', this.SoapHeaders('GetQueryDefinition'), body);
376
448
  if (r.Status >= 200 && r.Status < 300) {
377
- const discovered = this.ParseQueryDefinition(this.AsText(r.Body), declaredByName);
378
- if (discovered.length > 0)
379
- return discovered;
449
+ const parsed = this.ParseQueryDefinition(this.AsText(r.Body));
450
+ const def = parsed.Columns.length > 0 ? parsed : null;
451
+ this.DefinitionByObject.set(key, def);
452
+ return def;
380
453
  }
454
+ this.DefinitionByObject.set(key, null); // a definite refusal — not retried per call
381
455
  }
382
456
  catch {
383
- // credential-free / network / parse failure → fall through to Declared
457
+ // credential-free / network / parse failure → nothing cached, nothing known
384
458
  }
385
- return declared;
459
+ return null;
386
460
  }
387
461
  /**
388
462
  * IntrospectSchema — resolves each object's columns in the contract's order:
@@ -462,47 +536,150 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
462
536
  return schema;
463
537
  }
464
538
  /**
465
- * Parses a GetQueryDefinition response (the SQL column definition) into ExternalFieldSchema[].
466
- * Each `<Column>` carries mdc_name / mdc_description / mdc_data_type / mdc_nullable /
467
- * mdc_width_max. Declared metadata wins for PK identity (a column definition does not mark a PK);
468
- * discovery contributes the full column corpus + provable nullability/length.
539
+ * Parses a GetQueryDefinition response into its tables, columns and default list, and names the
540
+ * object's key column when the definition allows it (see KeyColumnFromDefinition). Columns are
541
+ * deduplicated by name: netFORUM list tables join the same table more than once under aliases
542
+ * (Individual joins mb_membership as Membership, ChapterMembership and OrgMembership), so one
543
+ * column name can appear several times — the first occurrence wins, the main table's preferred.
544
+ * Element names per the vendor's own sample: lst_mdt_name, lsf_from_table, lsf_from_alias,
545
+ * mdc_name / mdc_description / mdc_data_type / mdc_nullable / mdc_table_name / mdc_width_max,
546
+ * lsc_mdc_name. A response without <ListFromTable> wrappers still yields its <Column>s.
547
+ */
548
+ ParseQueryDefinition(xml) {
549
+ const mainTable = this.ParseSoapScalar(xml, 'lst_mdt_name') ?? null;
550
+ const columns = [];
551
+ const defaultList = [];
552
+ const readColumns = (scope, table, alias) => {
553
+ for (const colXml of this.ExtractElements(scope, 'Column')) {
554
+ const name = this.ParseSoapScalar(colXml, 'mdc_name');
555
+ if (!name)
556
+ continue;
557
+ const nullable = this.ParseSoapScalar(colXml, 'mdc_nullable');
558
+ const widthRaw = this.ParseSoapScalar(colXml, 'mdc_width_max');
559
+ columns.push({
560
+ Name: name,
561
+ Table: this.ParseSoapScalar(colXml, 'mdc_table_name') ?? table,
562
+ Alias: alias,
563
+ DataType: this.ParseSoapScalar(colXml, 'mdc_data_type') ?? null,
564
+ Description: this.ParseSoapScalar(colXml, 'mdc_description') || undefined,
565
+ // AllowsNull provable-only: 'mdc_nullable' is an explicit source flag. "0"/"false"/"no" ⇒ NOT NULL.
566
+ AllowsNull: nullable == null ? undefined : !/^(0|false|no|n)$/i.test(nullable.trim()),
567
+ MaxLength: widthRaw && /^\d+$/.test(widthRaw) ? Number(widthRaw) : null,
568
+ });
569
+ }
570
+ };
571
+ const fromTables = this.ExtractElements(xml, 'ListFromTable');
572
+ if (fromTables.length > 0) {
573
+ for (const lft of fromTables) {
574
+ const table = this.ParseSoapScalar(lft, 'lsf_from_table') ?? null;
575
+ const alias = this.ParseSoapScalar(lft, 'lsf_from_alias') || null; // <lsf_from_alias xsi:nil="true"/> → null
576
+ readColumns(lft, table, alias);
577
+ for (const dl of this.ExtractElements(lft, 'ListFromTableColumn')) {
578
+ const n = this.ParseSoapScalar(dl, 'lsc_mdc_name');
579
+ if (n)
580
+ defaultList.push(n);
581
+ }
582
+ }
583
+ }
584
+ else {
585
+ readColumns(xml, null, null);
586
+ }
587
+ // Dedupe by name; a main-table occurrence displaces an earlier joined-table one of the same name.
588
+ const byName = new Map();
589
+ const isMain = (c) => !!mainTable && !!c.Table && c.Table.toLowerCase() === mainTable.toLowerCase() && !c.Alias;
590
+ for (const c of columns) {
591
+ const k = c.Name.toLowerCase();
592
+ const prior = byName.get(k);
593
+ if (!prior || (isMain(c) && !isMain(prior)))
594
+ byName.set(k, c);
595
+ }
596
+ const deduped = [...byName.values()];
597
+ return {
598
+ MainTable: mainTable,
599
+ KeyColumn: this.KeyColumnFromDefinition(mainTable, deduped),
600
+ Columns: deduped,
601
+ DefaultListColumns: defaultList,
602
+ };
603
+ }
604
+ /**
605
+ * The object's key column from its definition — or undefined when the definition cannot say.
606
+ *
607
+ * The rule, in the order the evidence is strong:
608
+ * 1. among the MAIN table's columns (mdc_table_name = lst_mdt_name, unaliased), the key-typed
609
+ * column (`av_key`, or `uniqueidentifier`) described "Primary Key" — the vendor's own sample
610
+ * marks `ind_cst_key` exactly so;
611
+ * 2. else the key-typed main-table column named `<prefix>_key`, then `<prefix>_cst_key`, where
612
+ * prefix is the main table's column prefix (netFORUM: arp_key, evt_key; the customer subclasses
613
+ * ind_cst_key / org_cst_key);
614
+ * 3. else the main table's first key-typed column in document order (the sample lists the PK first).
615
+ * Without a main table the naming rule alone is applied to all columns and nothing else is guessed:
616
+ * measured on a live tenant, 493 of 878 objects carry more than one `<x>_key` column, and the most
617
+ * frequent prefix is NOT the object's own (AccountingPeriod's would pick atc_key over arp_key) —
618
+ * so a key that cannot be anchored to the main table is left to the sample-based classifier.
619
+ */
620
+ KeyColumnFromDefinition(mainTable, columns) {
621
+ const isKeyType = (t) => !!t && /^(av_key|uniqueidentifier)$/i.test(t.trim());
622
+ const main = mainTable
623
+ ? columns.filter(c => !!c.Table && c.Table.toLowerCase() === mainTable.toLowerCase() && !c.Alias)
624
+ : [];
625
+ const pool = main.length > 0 ? main : columns;
626
+ const keyed = pool.filter(c => isKeyType(c.DataType));
627
+ if (keyed.length === 0)
628
+ return undefined;
629
+ const described = keyed.find(c => /^primary\s+key$/i.test((c.Description ?? '').trim()));
630
+ if (main.length > 0 && described)
631
+ return described.Name;
632
+ const prefixCounts = new Map();
633
+ for (const c of pool) {
634
+ const p = c.Name.toLowerCase().split('_')[0];
635
+ if (p)
636
+ prefixCounts.set(p, (prefixCounts.get(p) ?? 0) + 1);
637
+ }
638
+ const prefix = [...prefixCounts.entries()].sort((a, b) => b[1] - a[1] || a[0].localeCompare(b[0]))[0]?.[0];
639
+ if (prefix) {
640
+ const exact = keyed.find(c => c.Name.toLowerCase() === `${prefix}_key`);
641
+ if (exact)
642
+ return exact.Name;
643
+ const cst = keyed.find(c => c.Name.toLowerCase() === `${prefix}_cst_key`);
644
+ if (cst)
645
+ return cst.Name;
646
+ }
647
+ return main.length > 0 ? keyed[0].Name : undefined;
648
+ }
649
+ /**
650
+ * The definition's columns as ExternalFieldSchema, overlaid on the declared baseline by name.
651
+ * IsPrimaryKey is the declared flag when the declaration carries a key, else the definition's key
652
+ * column — never anything the enumeration said. Declared fields the definition does not list are
653
+ * re-added (the provable-only baseline is never lost).
469
654
  */
470
- ParseQueryDefinition(xml, declaredByName) {
655
+ FieldsFromDefinition(def, declaredByName) {
656
+ const declaredHasKey = [...declaredByName.values()].some(f => f.IsPrimaryKey === true);
657
+ const keyLower = !declaredHasKey && def.KeyColumn ? def.KeyColumn.toLowerCase() : undefined;
471
658
  const out = [];
472
659
  const seen = new Set();
473
- for (const colXml of this.ExtractElements(xml, 'Column')) {
474
- const name = this.ParseSoapScalar(colXml, 'mdc_name');
475
- if (!name || seen.has(name.toLowerCase()))
660
+ for (const c of def.Columns) {
661
+ const k = c.Name.toLowerCase();
662
+ if (seen.has(k))
476
663
  continue;
477
- seen.add(name.toLowerCase());
478
- const declared = declaredByName.get(name.toLowerCase());
479
- const dataType = this.ParseSoapScalar(colXml, 'mdc_data_type');
480
- const description = this.ParseSoapScalar(colXml, 'mdc_description');
481
- const nullable = this.ParseSoapScalar(colXml, 'mdc_nullable');
482
- const widthRaw = this.ParseSoapScalar(colXml, 'mdc_width_max');
483
- const maxLength = widthRaw && /^\d+$/.test(widthRaw) ? Number(widthRaw) : null;
484
- // AllowsNull provable-only: 'mdc_nullable' is an explicit source flag. "0"/"false"/"no" ⇒ NOT NULL.
485
- const allowsNull = nullable == null
486
- ? undefined
487
- : !/^(0|false|no|n)$/i.test(nullable.trim());
664
+ seen.add(k);
665
+ const declared = declaredByName.get(k);
488
666
  out.push({
489
- Name: name,
490
- Label: declared?.Label ?? name,
491
- Description: declared?.Description ?? (description || undefined),
492
- DataType: declared?.DataType ?? this.MapSoapType(dataType ?? null),
667
+ Name: c.Name,
668
+ Label: declared?.Label ?? c.Name,
669
+ Description: declared?.Description ?? c.Description,
670
+ DataType: declared?.DataType ?? this.MapSoapType(c.DataType),
493
671
  IsRequired: declared?.IsRequired ?? false,
494
- AllowsNull: allowsNull,
495
- IsPrimaryKey: declared?.IsPrimaryKey ?? false,
672
+ AllowsNull: c.AllowsNull,
673
+ IsPrimaryKey: declared?.IsPrimaryKey === true || k === keyLower,
496
674
  IsUniqueKey: declared?.IsUniqueKey ?? false,
497
675
  IsReadOnly: declared?.IsReadOnly ?? false,
498
676
  IsForeignKey: declared?.IsForeignKey ?? false,
499
677
  ForeignKeyTarget: declared?.ForeignKeyTarget ?? null,
500
- MaxLength: maxLength,
678
+ MaxLength: c.MaxLength,
501
679
  });
502
680
  }
503
- // Re-add any Declared field GetQueryDefinition did not surface (provable-only baseline never lost).
504
- for (const [key, f] of declaredByName) {
505
- if (!seen.has(key))
681
+ for (const [k, f] of declaredByName) {
682
+ if (!seen.has(k))
506
683
  out.push(f);
507
684
  }
508
685
  return out;
@@ -513,13 +690,13 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
513
690
  const t = sqlType.toLowerCase();
514
691
  if (/(date|time)/.test(t))
515
692
  return 'datetime';
516
- if (/(int|bigint|smallint|tinyint)/.test(t))
693
+ if (/(int|bigint|smallint|tinyint|av_count|av_seq)/.test(t))
517
694
  return 'number';
518
- if (/(decimal|numeric|money|float|real)/.test(t))
695
+ if (/(decimal|numeric|money|float|real|av_percent)/.test(t))
519
696
  return 'decimal';
520
- if (/bit/.test(t))
697
+ if (/(bit|av_flag)/.test(t))
521
698
  return 'boolean';
522
- if (/uniqueidentifier/.test(t))
699
+ if (/(uniqueidentifier|av_key)/.test(t))
523
700
  return 'string';
524
701
  return 'string';
525
702
  }
@@ -546,7 +723,18 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
546
723
  const cfg = this.ParseObjectConfig(obj);
547
724
  const accessPath = cfg.accessPath ?? {};
548
725
  const queryObject = accessPath.queryObject ?? accessPath.doorArgs?.szObjectName ?? ctx.ObjectName;
549
- const orderingKey = cfg.stableOrderingKey ?? this.PrimaryKeyFieldName(obj);
726
+ // The key: the persisted catalog's primary key when it has one, else the key column the object's
727
+ // OWN definition names (GetQueryDefinition, one metadata call per object per instance). The
728
+ // second case is the first discovery — enumerated objects are sampled before their fields are
729
+ // persisted. NEVER the enumeration's obj_key: that is the facade object's GUID, not a column,
730
+ // and sending it as one is what faulted every read on a live tenant (EnumeratedObjectIdByObject).
731
+ const ci = ctx.CompanyIntegration;
732
+ const persistedKey = this.PrimaryKeyFieldName(obj);
733
+ const definedKey = persistedKey
734
+ ? undefined
735
+ : (await this.DefinitionFor(ci, ctx.ContextUser, ctx.ObjectName))?.KeyColumn;
736
+ const pkField = persistedKey ?? definedKey;
737
+ const orderingKey = cfg.stableOrderingKey ?? pkField;
550
738
  // Keyset pagination requires a total order to seek on. With one, we page via
551
739
  // `@TOP <BatchSize>` + `WHERE <key> > <AfterKeyValue> ORDER BY <key>`; the metadata
552
740
  // `topModifier` is ignored because its only purpose was bypassing the DataGrid row cap,
@@ -557,12 +745,27 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
557
745
  // parameter"). If this fallback faults on a live tenant, that sentence is why.
558
746
  const canPaginate = !!orderingKey;
559
747
  const pageSize = ctx.BatchSize > 0 ? ctx.BatchSize : 0;
560
- const topModifier = canPaginate && pageSize > 0
561
- ? `@TOP ${pageSize}`
748
+ // A discovery sample asks for SampleTargetRecords rows and stops there, so a page larger than
749
+ // the target is waste, and an UNBOUNDED fetch is the whole table read to keep fifty rows —
750
+ // measured live as hours per discovery and the resident memory that the kernel killed.
751
+ // Bound the sample by its target whether or not the object can page: `@TOP n` needs no
752
+ // ordering key (the door builds a plain SELECT TOP n); it only means the rows come in the
753
+ // door's natural order rather than from a keyset position, which is fine for widths and
754
+ // key statistics. Read duck-typed so the connector still compiles against an older engine.
755
+ const sampleCtx = ctx;
756
+ const sampleTarget = sampleCtx.IsDiscoverySample === true
757
+ && typeof sampleCtx.SampleTargetRecords === 'number' && sampleCtx.SampleTargetRecords > 0
758
+ ? Math.floor(sampleCtx.SampleTargetRecords)
759
+ : 0;
760
+ const effectivePage = sampleTarget > 0
761
+ ? (pageSize > 0 ? Math.min(pageSize, sampleTarget) : sampleTarget)
762
+ : pageSize;
763
+ const topRows = canPaginate || sampleTarget > 0 ? effectivePage : 0;
764
+ const topModifier = topRows > 0
765
+ ? `@TOP ${topRows}`
562
766
  : (accessPath.doorArgs?.topModifier ?? '@TOP -1');
563
767
  const szObjectName = topModifier ? `${queryObject} ${topModifier}` : queryObject;
564
768
  const watermarkField = obj.IncrementalWatermarkField ?? undefined;
565
- const pkField = this.PrimaryKeyFieldName(obj);
566
769
  // Empty by default (the tenant's default list columns), never `*` — see the class header. An IO
567
770
  // may declare Configuration.columnList when its default list lacks a column the connector needs;
568
771
  // the door returns ONLY named columns, so a declared list is completed with the PK, the ordering
@@ -592,12 +795,26 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
592
795
  // reaches it, and — because netFORUM configures the default list PER OBJECT — an object whose
593
796
  // own default is fine on a tenant where others are not still gets its normal request.
594
797
  const faultKey = ctx.CompanyIntegration?.ID ?? '';
798
+ const grantKey = `${faultKey}|${ctx.ObjectName.toLowerCase()}`;
799
+ if (this.SelectNotAuthorized.has(grantKey)) {
800
+ throw new Error(`NetForum GetQuery(${ctx.ObjectName}) not attempted: this xWeb account is not authorized to ` +
801
+ `Select on "${ctx.ObjectName}" (xWeb said so earlier on this connection; a grant does not appear ` +
802
+ `between calls, and each retry is a fault against the daily budget that locks the account).`);
803
+ }
595
804
  if (!args.szColumnList && this.DefaultColumnListUnusable.has(faultKey)) {
596
805
  const known = this.ExplicitColumnListFor(obj, [pkField, orderingKey, watermarkField]);
597
806
  if (known)
598
807
  args.szColumnList = known;
599
808
  }
809
+ // The vendor: "@TOP -1 ... specific, named fields must be passed ... in szColumnList". The
810
+ // legacy unbounded fetch of a keyless object therefore names its columns when it can.
811
+ if (!args.szColumnList && /@TOP\s+-1\b/i.test(szObjectName)) {
812
+ const named = this.ExplicitColumnListFor(obj, [pkField, orderingKey, watermarkField]);
813
+ if (named)
814
+ args.szColumnList = named;
815
+ }
600
816
  const sentEmptyColumnList = !args.szColumnList;
817
+ let sentArgs = args;
601
818
  let response = await this.MakeRawHTTPRequest(url, 'POST', this.SoapHeaders('GetQuery'), this.BuildSoapEnvelope('GetQuery', args, auth.Token));
602
819
  // The door can reject ITS OWN default list. An empty szColumnList asks xWeb for the object's
603
820
  // configured default columns, and on a tenant where that default is `*` the request faults with
@@ -617,18 +834,24 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
617
834
  this.DefaultColumnListUnusable.add(faultKey);
618
835
  const explicit = this.ExplicitColumnListFor(obj, [pkField, orderingKey, watermarkField]);
619
836
  if (explicit) {
620
- response = await this.MakeRawHTTPRequest(url, 'POST', this.SoapHeaders('GetQuery'), this.BuildSoapEnvelope('GetQuery', { ...args, szColumnList: explicit }, auth.Token));
837
+ sentArgs = { ...args, szColumnList: explicit };
838
+ response = await this.MakeRawHTTPRequest(url, 'POST', this.SoapHeaders('GetQuery'), this.BuildSoapEnvelope('GetQuery', sentArgs, auth.Token));
621
839
  }
622
840
  }
623
841
  if (response.Status < 200 || response.Status >= 300) {
624
- throw new Error(`NetForum GetQuery(${ctx.ObjectName}) failed: HTTP ${response.Status}${this.SoapFault(response.Body)}`);
842
+ if (this.IsSelectNotAuthorizedFault(response))
843
+ this.SelectNotAuthorized.add(grantKey);
844
+ // The fault text is SQL Server's or xWeb's; the SHAPE of what we sent is ours to report, or
845
+ // the next reader of the run log is left guessing which parameter the door rejected.
846
+ throw new Error(`NetForum GetQuery(${ctx.ObjectName}) failed: HTTP ${response.Status}${this.SoapFault(response.Body)}` +
847
+ ` [sent: ${this.DescribeRequestShape(sentArgs)}]`);
625
848
  }
626
849
  const rows = this.NormalizeResponse(response.Body, null);
627
850
  const warnings = [];
628
851
  if (rows.length === 0) {
629
852
  warnings.push({ Code: 'ZERO_ROWS', Message: `GetQuery(${szObjectName}) returned no rows.` });
630
853
  }
631
- if (!canPaginate) {
854
+ if (!canPaginate && topRows === 0) {
632
855
  warnings.push({
633
856
  Code: 'UNPAGINATED_FETCH',
634
857
  Message: `NetForum "${ctx.ObjectName}" has no stable ordering key (Configuration.stableOrderingKey ` +
@@ -637,6 +860,15 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
637
860
  Data: { ObjectName: ctx.ObjectName, RowCount: rows.length },
638
861
  });
639
862
  }
863
+ else if (!canPaginate) {
864
+ warnings.push({
865
+ Code: 'SAMPLE_BOUNDED_WITHOUT_KEY',
866
+ Message: `NetForum "${ctx.ObjectName}" has no stable ordering key, so this discovery sample took the ` +
867
+ `first ${topRows} rows in the door's natural order (${topModifier}) rather than a keyset page. ` +
868
+ `Widths and key statistics are unaffected; a key would let later syncs page.`,
869
+ Data: { ObjectName: ctx.ObjectName, RowCount: rows.length, SampleTargetRecords: sampleTarget },
870
+ });
871
+ }
640
872
  // An empty szColumnList returns the tenant's DEFAULT list columns for the query object, which
641
873
  // need not include the IO's watermark column. Without it NewWatermarkValue stays undefined and
642
874
  // every sync re-reads the same window — a green run that never advances. Say so.
@@ -653,9 +885,22 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
653
885
  });
654
886
  }
655
887
  // Highest ordering-key value seen → keyset resume position when no watermark exists.
888
+ // With no key known and the tenant's default list sent, the vendor guarantees "the primary key
889
+ // for the object will still be returned in the node as the first child" — so the first column
890
+ // of each row identifies the record, and its NAME is reported for the key classifier.
891
+ const firstColumn = !pkField && sentEmptyColumnList && rows.length > 0 ? Object.keys(rows[0])[0] : undefined;
892
+ if (firstColumn) {
893
+ warnings.push({
894
+ Code: 'KEY_FROM_DEFAULT_LIST_FIRST_COLUMN',
895
+ Message: `NetForum "${ctx.ObjectName}" has no known key column; with the tenant's default column list ` +
896
+ `xWeb returns the object's primary key as the first column of every row, so "${firstColumn}" ` +
897
+ `identifies these records.`,
898
+ Data: { ObjectName: ctx.ObjectName, FirstColumn: firstColumn },
899
+ });
900
+ }
656
901
  let maxKey;
657
902
  const records = rows.map(row => {
658
- const externalID = pkField ? String(row[pkField] ?? '') : '';
903
+ const externalID = pkField ? String(row[pkField] ?? '') : (firstColumn ? String(row[firstColumn] ?? '') : '');
659
904
  if (orderingKey) {
660
905
  const v = row[orderingKey];
661
906
  if (v != null) {
@@ -669,7 +914,7 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
669
914
  // A full page implies another may exist; a short page is the last one. Only meaningful when
670
915
  // paginating — without an ordering key there is no seek position, so the single unbounded
671
916
  // fetch is by definition complete.
672
- const hasMore = canPaginate && pageSize > 0 && rows.length >= pageSize && maxKey !== undefined;
917
+ const hasMore = canPaginate && topRows > 0 && rows.length >= topRows && maxKey !== undefined;
673
918
  // Watermark: when this IO has a watermark field, the engine narrows next sync from the max
674
919
  // seen. Advance ONLY on the final page — advancing mid-scan would let a crash between pages
675
920
  // skip every later row older than the new watermark.
@@ -723,25 +968,65 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
723
968
  * original fault to surface rather than sending a request we cannot justify.
724
969
  */
725
970
  ExplicitColumnListFor(obj, required) {
971
+ // Preferred source: the object's definition, which knows each column's table and alias. The
972
+ // vendor requires the alias (or table) prefix wherever a table is joined more than once
973
+ // ("ambiguous column name" / "Object Reference Not Set" otherwise), so every column is sent
974
+ // qualified — `Membership.mbr_src_code`, `co_individual.ind_cst_key` — and each name once.
975
+ // The key column leads, so a row's first element is the key whichever list was sent.
976
+ const def = this.DefinitionByObject.get(obj.Name.toLowerCase()) ?? null;
977
+ const out = [];
978
+ const seen = new Set();
979
+ const add = (name, qualifier) => {
980
+ if (!name)
981
+ return;
982
+ const key = name.toLowerCase();
983
+ if (seen.has(key))
984
+ return;
985
+ seen.add(key);
986
+ out.push(qualifier ? `${qualifier}.${name}` : name);
987
+ };
988
+ if (def && def.Columns.length > 0) {
989
+ const qualifierOf = (c) => c.Alias ?? c.Table;
990
+ const lead = def.Columns.find(c => !!def.KeyColumn && c.Name.toLowerCase() === def.KeyColumn.toLowerCase());
991
+ if (lead)
992
+ add(lead.Name, qualifierOf(lead));
993
+ for (const c of def.Columns)
994
+ add(c.Name, qualifierOf(c));
995
+ for (const r of required)
996
+ add(r, null);
997
+ return out.join(',');
998
+ }
726
999
  const discovered = this.DiscoveredColumnsByObject.get(obj.Name.toLowerCase()) ?? [];
727
1000
  const known = discovered.length > 0
728
1001
  ? discovered
729
1002
  : this.GetCachedFields(obj.ID).map(f => f.Name).filter((n) => !!n);
730
1003
  if (known.length === 0)
731
1004
  return '';
732
- const out = [];
733
- const seen = new Set();
734
- for (const c of [...known, ...required]) {
735
- if (!c)
736
- continue;
737
- const key = c.toLowerCase();
738
- if (seen.has(key))
739
- continue;
740
- seen.add(key);
741
- out.push(c);
742
- }
1005
+ for (const c of [...known, ...required])
1006
+ add(c ?? undefined, null);
743
1007
  return out.join(',');
744
1008
  }
1009
+ /** "Account is not authorized to perform Select on <object> object" — a grant, not a query, failed. */
1010
+ IsSelectNotAuthorizedFault(response) {
1011
+ if (response.Status < 400)
1012
+ return false;
1013
+ const fault = this.SoapFault(response.Body);
1014
+ return typeof fault === 'string' && /not authorized to perform select/i.test(fault);
1015
+ }
1016
+ /**
1017
+ * The shape of a GetQuery request for a fault message: which object and TOP, how many columns were
1018
+ * named (or that the default list was asked for), the ORDER BY column, and how many WHERE
1019
+ * predicates — never a literal value, so a key or watermark value is not copied into a log.
1020
+ */
1021
+ DescribeRequestShape(args) {
1022
+ const cols = args.szColumnList
1023
+ ? `${args.szColumnList.split(',').filter(c => c.trim().length > 0).length} named column(s)`
1024
+ : 'default list (empty szColumnList)';
1025
+ const where = args.szWhereClause
1026
+ ? `${args.szWhereClause.split(/\s+AND\s+/i).length} predicate(s)`
1027
+ : 'none';
1028
+ return `szObjectName="${args.szObjectName}"; szColumnList=${cols}; szOrderBy=${args.szOrderBy ?? 'none'}; szWhereClause=${where}`;
1029
+ }
745
1030
  ColumnListFor(cfg, required) {
746
1031
  const declared = Array.isArray(cfg.columnList)
747
1032
  ? 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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/connector-netforum-enterprise",
3
- "version": "1.6.2",
3
+ "version": "1.6.4",
4
4
  "description": "MemberJunction NetForum connector.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",