@memberjunction/connector-netforum-enterprise 1.6.3 → 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.
@@ -46,27 +46,33 @@ export declare class NetForumConnector extends BaseRESTIntegrationConnector {
46
46
  */
47
47
  private readonly DiscoveredColumnsByObject;
48
48
  /**
49
- * The key column `GetFacadeObjectList` names for each enumerated object (`<obj_key>`), keyed by
50
- * lowercased object name. netFORUM states every facade's key in the enumeration and states it
51
- * nowhere else — `GetQueryDefinition` describes columns without marking a key. Through 1.6.2 the
52
- * parser read `obj_name` and `obj_description` and dropped `obj_key`, so every enumerated-only
53
- * object arrived keyless: 862 of 888 on a live tenant. Keyless costs three things, all seen live:
54
- * the schema builder skips the object (no table); the classifier is asked to guess a key it has
55
- * no signal for; and `FetchChanges` cannot page, so it ran `@TOP -1` and pulled the WHOLE table to
56
- * sample fifty rows — the discovery that took hours, and the resident memory the kernel killed.
57
- *
58
- * Written by every enumeration on this instance; read by DiscoverFields (the field's IsPrimaryKey)
59
- * and by FetchChanges (the paging key while the persisted catalog does not carry it yet).
60
- */
61
- private readonly EnumeratedKeyByObject;
62
- /**
63
- * Whether this instance has asked xWeb for the facade list yet. DiscoverFields wants the
64
- * enumerated key even when DiscoverObjects did not run on this instance (a standalone
65
- * IntegrationDiscoverFields call), so it enumerates lazily — but ONCE, success or failure. A
66
- * failing GetFacadeObjectList must never be retried per object: xWeb counts faults against the
67
- * daily budget that locks the account, and 888 objects is nine times that budget.
68
- */
69
- private EnumerationAttempted;
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. Records that the attempt
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 key column and is kept (EnumeratedKeyByObject); nothing else states it.
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 (the SQL column definition) into ExternalFieldSchema[].
206
- * Each `<Column>` carries mdc_name / mdc_description / mdc_data_type / mdc_nullable /
207
- * mdc_width_max. A column definition does not mark a key, so the key comes from elsewhere:
208
- * declared metadata when it names one, else the enumeration's `obj_key` (EnumeratedKeyByObject).
209
- * 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.
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
@@ -111,27 +111,33 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
111
111
  */
112
112
  this.DiscoveredColumnsByObject = new Map();
113
113
  /**
114
- * The key column `GetFacadeObjectList` names for each enumerated object (`<obj_key>`), keyed by
115
- * lowercased object name. netFORUM states every facade's key in the enumeration and states it
116
- * nowhere else — `GetQueryDefinition` describes columns without marking a key. Through 1.6.2 the
117
- * parser read `obj_name` and `obj_description` and dropped `obj_key`, so every enumerated-only
118
- * object arrived keyless: 862 of 888 on a live tenant. Keyless costs three things, all seen live:
119
- * the schema builder skips the object (no table); the classifier is asked to guess a key it has
120
- * no signal for; and `FetchChanges` cannot page, so it ran `@TOP -1` and pulled the WHOLE table to
121
- * sample fifty rows — the discovery that took hours, and the resident memory the kernel killed.
122
- *
123
- * Written by every enumeration on this instance; read by DiscoverFields (the field's IsPrimaryKey)
124
- * and by FetchChanges (the paging key while the persisted catalog does not carry it yet).
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.
125
133
  */
126
- this.EnumeratedKeyByObject = new Map();
134
+ this.DefinitionByObject = new Map();
127
135
  /**
128
- * Whether this instance has asked xWeb for the facade list yet. DiscoverFields wants the
129
- * enumerated key even when DiscoverObjects did not run on this instance (a standalone
130
- * IntegrationDiscoverFields call), so it enumerates lazily — but ONCE, success or failure. A
131
- * failing GetFacadeObjectList must never be retried per object: xWeb counts faults against the
132
- * daily budget that locks the account, and 888 objects is nine times that budget.
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.
133
139
  */
134
- this.EnumerationAttempted = false;
140
+ this.SelectNotAuthorized = new Set();
135
141
  /**
136
142
  * CompanyIntegration IDs whose xWeb default column list is unusable.
137
143
  *
@@ -278,11 +284,9 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
278
284
  /**
279
285
  * One `GetFacadeObjectList` call: the enumerated object universe, or `null` when the source could
280
286
  * 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. Records that the attempt
282
- * was made, successful or not, so a lazy caller never repeats it (see EnumerationAttempted).
287
+ * method; the Declared baseline then stands alone, exactly as before.
283
288
  */
284
289
  async EnumerateFacadeObjects(ci, cu) {
285
- this.EnumerationAttempted = true;
286
290
  try {
287
291
  const auth = await this.Authenticate(ci, cu);
288
292
  const url = `${auth.Config.BaseURL}${DEFAULT_SOAP_PATH}`;
@@ -298,15 +302,6 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
298
302
  }
299
303
  return null;
300
304
  }
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
305
  /**
311
306
  * The Declared baseline (engine cache of persisted IntegrationObject rows).
312
307
  *
@@ -322,7 +317,8 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
322
317
  *
323
318
  * Verified shape (live, 2026-09-15): `<ObjectObjects>` containing one `<ObjectObject>` per facade,
324
319
  * each carrying `<obj_name>`, `<obj_key>` and `<obj_description>`. 878 rows on a real tenant.
325
- * `obj_key` is the facade's key column and is kept (EnumeratedKeyByObject); nothing else states it.
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.
326
322
  *
327
323
  * Enumerated-only objects are reported HONESTLY as unknown-capability: the list gives a name and
328
324
  * a description, never a watermark field or a write path, so `SupportsIncrementalSync` and
@@ -343,7 +339,7 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
343
339
  const description = this.ParseSoapScalar(row, 'obj_description');
344
340
  const objKey = this.ParseSoapScalar(row, 'obj_key');
345
341
  if (objKey)
346
- this.EnumeratedKeyByObject.set(key, objKey);
342
+ this.EnumeratedObjectIdByObject.set(key, objKey);
347
343
  out.push({
348
344
  Name: name,
349
345
  Label: description || name,
@@ -423,26 +419,44 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
423
419
  throw err;
424
420
  declared = [];
425
421
  }
426
- const enumeratedKey = await this.EnumeratedKeyFor(ci, cu, objectName);
427
422
  // The base FieldEntityToSchema folds PK into IsUniqueKey and never sets IsPrimaryKey, so
428
423
  // re-derive the honest IsPrimaryKey from the cached IOF entities (which carry it explicitly).
429
424
  const pkNames = this.DeclaredPrimaryKeyNames(ci, objectName);
430
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;
431
443
  try {
432
444
  const auth = await this.Authenticate(ci, cu);
433
445
  const url = `${auth.Config.BaseURL}${DEFAULT_SOAP_PATH}`;
434
446
  const body = this.BuildSoapEnvelope('GetQueryDefinition', { szObjectName: objectName }, auth.Token);
435
447
  const r = await this.MakeRawHTTPRequest(url, 'POST', this.SoapHeaders('GetQueryDefinition'), body);
436
448
  if (r.Status >= 200 && r.Status < 300) {
437
- const discovered = this.ParseQueryDefinition(this.AsText(r.Body), declaredByName, enumeratedKey);
438
- if (discovered.length > 0)
439
- 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;
440
453
  }
454
+ this.DefinitionByObject.set(key, null); // a definite refusal — not retried per call
441
455
  }
442
456
  catch {
443
- // credential-free / network / parse failure → fall through to Declared
457
+ // credential-free / network / parse failure → nothing cached, nothing known
444
458
  }
445
- return declared;
459
+ return null;
446
460
  }
447
461
  /**
448
462
  * IntrospectSchema — resolves each object's columns in the contract's order:
@@ -522,52 +536,150 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
522
536
  return schema;
523
537
  }
524
538
  /**
525
- * Parses a GetQueryDefinition response (the SQL column definition) into ExternalFieldSchema[].
526
- * Each `<Column>` carries mdc_name / mdc_description / mdc_data_type / mdc_nullable /
527
- * mdc_width_max. A column definition does not mark a key, so the key comes from elsewhere:
528
- * declared metadata when it names one, else the enumeration's `obj_key` (EnumeratedKeyByObject).
529
- * 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.
530
547
  */
531
- ParseQueryDefinition(xml, declaredByName, enumeratedKey) {
532
- const out = [];
533
- // Declared metadata wins the key: a declared key stands and an enumerated one cannot displace
534
- // it. Only when nothing declared carries a key does the enumeration's `obj_key` name it.
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).
654
+ */
655
+ FieldsFromDefinition(def, declaredByName) {
535
656
  const declaredHasKey = [...declaredByName.values()].some(f => f.IsPrimaryKey === true);
536
- const enumeratedKeyLower = !declaredHasKey && enumeratedKey ? enumeratedKey.toLowerCase() : undefined;
657
+ const keyLower = !declaredHasKey && def.KeyColumn ? def.KeyColumn.toLowerCase() : undefined;
658
+ const out = [];
537
659
  const seen = new Set();
538
- for (const colXml of this.ExtractElements(xml, 'Column')) {
539
- const name = this.ParseSoapScalar(colXml, 'mdc_name');
540
- if (!name || seen.has(name.toLowerCase()))
660
+ for (const c of def.Columns) {
661
+ const k = c.Name.toLowerCase();
662
+ if (seen.has(k))
541
663
  continue;
542
- seen.add(name.toLowerCase());
543
- const declared = declaredByName.get(name.toLowerCase());
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());
664
+ seen.add(k);
665
+ const declared = declaredByName.get(k);
553
666
  out.push({
554
- Name: name,
555
- Label: declared?.Label ?? name,
556
- Description: declared?.Description ?? (description || undefined),
557
- 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),
558
671
  IsRequired: declared?.IsRequired ?? false,
559
- AllowsNull: allowsNull,
560
- IsPrimaryKey: declared?.IsPrimaryKey === true || name.toLowerCase() === enumeratedKeyLower,
672
+ AllowsNull: c.AllowsNull,
673
+ IsPrimaryKey: declared?.IsPrimaryKey === true || k === keyLower,
561
674
  IsUniqueKey: declared?.IsUniqueKey ?? false,
562
675
  IsReadOnly: declared?.IsReadOnly ?? false,
563
676
  IsForeignKey: declared?.IsForeignKey ?? false,
564
677
  ForeignKeyTarget: declared?.ForeignKeyTarget ?? null,
565
- MaxLength: maxLength,
678
+ MaxLength: c.MaxLength,
566
679
  });
567
680
  }
568
- // Re-add any Declared field GetQueryDefinition did not surface (provable-only baseline never lost).
569
- for (const [key, f] of declaredByName) {
570
- if (!seen.has(key))
681
+ for (const [k, f] of declaredByName) {
682
+ if (!seen.has(k))
571
683
  out.push(f);
572
684
  }
573
685
  return out;
@@ -578,13 +690,13 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
578
690
  const t = sqlType.toLowerCase();
579
691
  if (/(date|time)/.test(t))
580
692
  return 'datetime';
581
- if (/(int|bigint|smallint|tinyint)/.test(t))
693
+ if (/(int|bigint|smallint|tinyint|av_count|av_seq)/.test(t))
582
694
  return 'number';
583
- if (/(decimal|numeric|money|float|real)/.test(t))
695
+ if (/(decimal|numeric|money|float|real|av_percent)/.test(t))
584
696
  return 'decimal';
585
- if (/bit/.test(t))
697
+ if (/(bit|av_flag)/.test(t))
586
698
  return 'boolean';
587
- if (/uniqueidentifier/.test(t))
699
+ if (/(uniqueidentifier|av_key)/.test(t))
588
700
  return 'string';
589
701
  return 'string';
590
702
  }
@@ -611,12 +723,17 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
611
723
  const cfg = this.ParseObjectConfig(obj);
612
724
  const accessPath = cfg.accessPath ?? {};
613
725
  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 this instance's
615
- // enumeration named for the object. The second case is the first discovery — enumerated
616
- // objects are sampled before their fields (and key) are persisted, and with no key every one
617
- // of them used to be fetched unbounded.
618
- const enumeratedKey = this.EnumeratedKeyByObject.get(ctx.ObjectName.toLowerCase());
619
- const pkField = this.PrimaryKeyFieldName(obj) ?? enumeratedKey;
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;
620
737
  const orderingKey = cfg.stableOrderingKey ?? pkField;
621
738
  // Keyset pagination requires a total order to seek on. With one, we page via
622
739
  // `@TOP <BatchSize>` + `WHERE <key> > <AfterKeyValue> ORDER BY <key>`; the metadata
@@ -678,12 +795,26 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
678
795
  // reaches it, and — because netFORUM configures the default list PER OBJECT — an object whose
679
796
  // own default is fine on a tenant where others are not still gets its normal request.
680
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
+ }
681
804
  if (!args.szColumnList && this.DefaultColumnListUnusable.has(faultKey)) {
682
805
  const known = this.ExplicitColumnListFor(obj, [pkField, orderingKey, watermarkField]);
683
806
  if (known)
684
807
  args.szColumnList = known;
685
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
+ }
686
816
  const sentEmptyColumnList = !args.szColumnList;
817
+ let sentArgs = args;
687
818
  let response = await this.MakeRawHTTPRequest(url, 'POST', this.SoapHeaders('GetQuery'), this.BuildSoapEnvelope('GetQuery', args, auth.Token));
688
819
  // The door can reject ITS OWN default list. An empty szColumnList asks xWeb for the object's
689
820
  // configured default columns, and on a tenant where that default is `*` the request faults with
@@ -703,11 +834,17 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
703
834
  this.DefaultColumnListUnusable.add(faultKey);
704
835
  const explicit = this.ExplicitColumnListFor(obj, [pkField, orderingKey, watermarkField]);
705
836
  if (explicit) {
706
- 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));
707
839
  }
708
840
  }
709
841
  if (response.Status < 200 || response.Status >= 300) {
710
- 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)}]`);
711
848
  }
712
849
  const rows = this.NormalizeResponse(response.Body, null);
713
850
  const warnings = [];
@@ -748,9 +885,22 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
748
885
  });
749
886
  }
750
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
+ }
751
901
  let maxKey;
752
902
  const records = rows.map(row => {
753
- const externalID = pkField ? String(row[pkField] ?? '') : '';
903
+ const externalID = pkField ? String(row[pkField] ?? '') : (firstColumn ? String(row[firstColumn] ?? '') : '');
754
904
  if (orderingKey) {
755
905
  const v = row[orderingKey];
756
906
  if (v != null) {
@@ -818,25 +968,65 @@ let NetForumConnector = class NetForumConnector extends BaseRESTIntegrationConne
818
968
  * original fault to surface rather than sending a request we cannot justify.
819
969
  */
820
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
+ }
821
999
  const discovered = this.DiscoveredColumnsByObject.get(obj.Name.toLowerCase()) ?? [];
822
1000
  const known = discovered.length > 0
823
1001
  ? discovered
824
1002
  : this.GetCachedFields(obj.ID).map(f => f.Name).filter((n) => !!n);
825
1003
  if (known.length === 0)
826
1004
  return '';
827
- const out = [];
828
- const seen = new Set();
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
- }
1005
+ for (const c of [...known, ...required])
1006
+ add(c ?? undefined, null);
838
1007
  return out.join(',');
839
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
+ }
840
1030
  ColumnListFor(cfg, required) {
841
1031
  const declared = Array.isArray(cfg.columnList)
842
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.3",
3
+ "version": "1.6.4",
4
4
  "description": "MemberJunction NetForum connector.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",