@memberjunction/sqlserver-dataprovider 5.34.1 → 5.35.0

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.
@@ -15,9 +15,9 @@
15
15
  * In practice - this FILE will NOT exist in the entities library, we need to move to its own separate project
16
16
  * so it is only included by the consumer of the entities library if they want to use it.
17
17
  **************************************************************************************************************/
18
- import { BaseEntity, IEntityDataProvider, IMetadataProvider, EntityInfo, EntityFieldInfo, ProviderType, UserInfo, IFileSystemProvider, TransactionGroupBase, IRunReportProvider, EntityDependency, CompositeKey, BaseEntityResult, SaveSQLResult, DeleteSQLResult, QueryInfo, RunViewWithCacheCheckParams, RunQueryWithCacheCheckParams, RestoreContext } from '@memberjunction/core';
18
+ import { BaseEntity, IEntityDataProvider, IMetadataProvider, EntityInfo, EntityFieldInfo, ProviderType, UserInfo, IFileSystemProvider, TransactionGroupBase, IRunReportProvider, EntityDependency, CompositeKey, BaseEntityResult, SaveSQLResult, DeleteSQLResult, QueryInfo, RunViewWithCacheCheckParams, RunQueryWithCacheCheckParams, RestoreContext, RecordChangePayload } from '@memberjunction/core';
19
19
  import { EntityAIActionParams } from '@memberjunction/aiengine';
20
- import { GenericDatabaseProvider, ExecuteSQLBatchOptions } from '@memberjunction/generic-database-provider';
20
+ import { GenericDatabaseProvider, ExecuteSQLBatchOptions, SaveCoercedValue, SaveCallBinding, SaveSQLFragment } from '@memberjunction/generic-database-provider';
21
21
  import sql from 'mssql';
22
22
  import { Observable } from 'rxjs';
23
23
  import { ExecuteSQLOptions, SQLServerProviderConfigData } from './types.js';
@@ -217,16 +217,7 @@ export declare class SQLServerDataProvider extends GenericDatabaseProvider imple
217
217
  * Fields marked with Encrypt=true will have their values encrypted
218
218
  * before being included in the SQL statement.
219
219
  */
220
- GetSaveSQL(entity: BaseEntity, bNewRecord: boolean, spName: string, user: UserInfo): Promise<string>;
221
- /**
222
- * This function generates both the full SQL (with record change metadata) and the simple stored procedure call
223
- * @returns Object with fullSQL and simpleSQL properties
224
- *
225
- * @security This method handles field-level encryption transparently.
226
- * Fields marked with Encrypt=true will have their values encrypted
227
- * before being included in the SQL statement.
228
- */
229
- private GetSaveSQLWithDetails;
220
+ GetSaveSQL(entity: BaseEntity, bNewRecord: boolean, _spName: string, user: UserInfo): Promise<string>;
230
221
  /**
231
222
  * Override to defer AI action tasks when a transaction is active.
232
223
  * When inside a transaction, tasks are queued to _deferredTasks and
@@ -250,7 +241,40 @@ export declare class SQLServerDataProvider extends GenericDatabaseProvider imple
250
241
  * @security Fields with Encrypt=true are encrypted before being sent to the database.
251
242
  * Encryption uses the key specified in EncryptionKeyID.
252
243
  */
253
- private generateSPParams;
244
+ /**
245
+ * SQL Server per-field value transform. Coerces `datetimeoffset` to ISO
246
+ * string for inline SET emission, and skips non-PK `uniqueidentifier`
247
+ * values that look like SQL function calls (e.g. `newid()`) so the DB
248
+ * default fires instead. PK-on-create with no explicit value is handled
249
+ * upstream in `GenericDatabaseProvider.GenerateSaveSQL`'s iteration loop.
250
+ */
251
+ protected CoerceSaveFieldValue(field: EntityFieldInfo, value: unknown, isUpdate: boolean): SaveCoercedValue;
252
+ /**
253
+ * Renders the SQL Server DECLARE/SET/EXEC binding for a save call.
254
+ * Emits per-field uuid-suffixed variables to keep batched saves
255
+ * (`SQLServerTransactionGroup`) collision-free. PKs on UPDATE are
256
+ * tail-appended from `entity.PrimaryKey.KeyValuePairs`.
257
+ *
258
+ * Emits `_Clear` companion args when a nullable column carrying a
259
+ * non-NULL DB default is explicitly set to NULL — without it the SP
260
+ * body's `ISNULL(@Param, [Col])` (update) / default-substitution
261
+ * (create) would silently keep the existing value. See
262
+ * `EntityFieldInfo.NeedsClearCompanion`.
263
+ */
264
+ protected RenderSaveCallBinding(entity: BaseEntity, fieldValues: Map<EntityFieldInfo, unknown>, isUpdate: boolean, _spName: string): SaveCallBinding;
265
+ /**
266
+ * Wraps the bare SP-call binding with SQL Server's no-record-change save
267
+ * shape: `DECLARE ... ; SET ... ; EXEC [schema].sp callArgs`. When
268
+ * record-change tracking is on, this output is further wrapped by
269
+ * `WrapSaveCallWithRecordChange`.
270
+ */
271
+ protected WrapSaveCallForResult(binding: SaveCallBinding, entity: BaseEntity, spName: string): SaveSQLFragment;
272
+ /**
273
+ * Wraps the save SQL with SQL Server's @ResultTable + inline
274
+ * `spCreateRecordChange_Internal` EXEC pattern. The CONCAT-built `@ID`
275
+ * inline supports composite-key entities.
276
+ */
277
+ protected WrapSaveCallWithRecordChange(_saveSQL: SaveSQLFragment, binding: SaveCallBinding, payload: RecordChangePayload, entity: BaseEntity): SaveSQLFragment;
254
278
  /**
255
279
  * Generates the value portion of a SET statement for a field
256
280
  * @param f The field info
@@ -294,7 +318,6 @@ export declare class SQLServerDataProvider extends GenericDatabaseProvider imple
294
318
  private GetDeleteSQLWithDetails;
295
319
  /**************************************************************************/
296
320
  /**************************************************************************/
297
- protected GenerateSaveSQL(entity: BaseEntity, isNew: boolean, user: UserInfo): Promise<SaveSQLResult>;
298
321
  protected GenerateDeleteSQL(entity: BaseEntity, user: UserInfo): DeleteSQLResult;
299
322
  protected OnSuspendRefresh(): void;
300
323
  protected OnResumeRefresh(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"SQLServerDataProvider.d.ts","sourceRoot":"","sources":["../src/SQLServerDataProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SQLServerDataProvider.d.ts","sourceRoot":"","sources":["../src/SQLServerDataProvider.ts"],"names":[],"mappings":"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"}
@@ -581,102 +581,14 @@ export class SQLServerDataProvider extends GenericDatabaseProvider {
581
581
  * Fields marked with Encrypt=true will have their values encrypted
582
582
  * before being included in the SQL statement.
583
583
  */
584
- async GetSaveSQL(entity, bNewRecord, spName, user) {
585
- const result = await this.GetSaveSQLWithDetails(entity, bNewRecord, spName, user);
584
+ async GetSaveSQL(entity, bNewRecord, _spName, user) {
585
+ // SQLServerTransactionGroup-batched saves regenerate per-item SQL when
586
+ // transaction variables get rebound. `_spName` is preserved for back-compat
587
+ // with that caller; the dialect-driven pipeline derives it from entity
588
+ // metadata via `GetCreateUpdateSPName`.
589
+ const result = await this.GenerateSaveSQL(entity, bNewRecord, user);
586
590
  return result.fullSQL;
587
591
  }
588
- /**
589
- * This function generates both the full SQL (with record change metadata) and the simple stored procedure call
590
- * @returns Object with fullSQL and simpleSQL properties
591
- *
592
- * @security This method handles field-level encryption transparently.
593
- * Fields marked with Encrypt=true will have their values encrypted
594
- * before being included in the SQL statement.
595
- */
596
- async GetSaveSQLWithDetails(entity, bNewRecord, spName, user) {
597
- // Generate the stored procedure parameters - now returns an object with structured SQL
598
- // This is async because it may need to encrypt field values
599
- const spParams = await this.generateSPParams(entity, !bNewRecord, user);
600
- // Build the simple SQL - use the new DECLARE/SET/EXEC pattern
601
- let sSimpleSQL;
602
- const execSQL = `EXEC [${entity.EntityInfo.SchemaName}].${spName} ${spParams.execParams}`;
603
- if (spParams.variablesSQL) {
604
- sSimpleSQL = `${spParams.variablesSQL}\n\n${spParams.setSQL}\n\n${execSQL}`;
605
- }
606
- else {
607
- sSimpleSQL = execSQL;
608
- }
609
- const recordChangesEntityInfo = this.Entities.find((e) => e.Name === 'MJ: Record Changes');
610
- let sSQL = '';
611
- let overlappingChangeData;
612
- if (entity.EntityInfo.TrackRecordChanges && entity.EntityInfo.Name.trim().toLowerCase() !== 'record changes') {
613
- // don't track changes for the record changes entity
614
- let oldData = null;
615
- // use SQL Server CONCAT function to combine all of the primary key values and then combine them together
616
- // using the default field delimiter and default value delimiter as defined in the CompositeKey class
617
- const concatPKIDString = `CONCAT(${entity.EntityInfo.PrimaryKeys.map((pk) => `'${pk.CodeName}','${CompositeKey.DefaultValueDelimiter}',${pk.Name}`).join(`,'${CompositeKey.DefaultFieldDelimiter}',`)})`;
618
- if (!bNewRecord)
619
- oldData = entity.GetAll(true); // get all the OLD values, only do for existing records, for new records, not relevant
620
- // Capture the diff for overlapping subtype Record Change propagation.
621
- // Must happen before finalizeSave() resets OldValues, since the diff would be lost.
622
- // Returned to Save() which handles propagation — this is a backend-only concern.
623
- const newData = entity.GetAll(false);
624
- if (!bNewRecord && oldData) {
625
- const diffChanges = this.DiffObjects(oldData, newData, entity.EntityInfo, "'");
626
- const diffKeys = diffChanges ? Object.keys(diffChanges) : [];
627
- if (diffKeys.length > 0) {
628
- overlappingChangeData = {
629
- changesJSON: JSON.stringify(diffChanges),
630
- changesDescription: this.CreateUserDescriptionOfChanges(diffChanges)
631
- };
632
- }
633
- }
634
- const logRecordChangeSQL = this.GetLogRecordChangeSQL(newData, oldData, entity.EntityInfo.Name, '@ID', entity.EntityInfo, bNewRecord ? 'Create' : 'Update', user, false, entity.RestoreContext);
635
- if (logRecordChangeSQL === null) {
636
- // if we don't have any record changes to log, just return the simple SQL to run which will do nothing but update __mj_UpdatedAt
637
- // this can happen if a subclass overrides the Dirty() flag to make the object dirty due to factors outside of the
638
- // array of fields that are directly stored in the DB and we need to respect that but this will blow up if we try
639
- // to log record changes when there are none, so we just return the simple SQL to run
640
- sSQL = sSimpleSQL;
641
- }
642
- else {
643
- // For complex case with record change tracking, we need to insert DECLARE statements at the top
644
- const execSQL = `EXEC [${entity.EntityInfo.SchemaName}].${spName} ${spParams.execParams}`;
645
- sSQL = `
646
- ${spParams.variablesSQL}
647
-
648
- DECLARE @ResultTable TABLE (
649
- ${this.getAllEntityColumnsSQL(entity.EntityInfo)}
650
- );
651
-
652
- ${spParams.setSQL}
653
-
654
- INSERT INTO @ResultTable
655
- ${execSQL};
656
-
657
- DECLARE @ID NVARCHAR(MAX);
658
-
659
- SELECT @ID = ${concatPKIDString} FROM @ResultTable;
660
-
661
- IF @ID IS NOT NULL
662
- BEGIN
663
- DECLARE @ResultChangesTable TABLE (
664
- ${this.getAllEntityColumnsSQL(recordChangesEntityInfo)}
665
- );
666
-
667
- INSERT INTO @ResultChangesTable
668
- ${logRecordChangeSQL};
669
- END;
670
-
671
- SELECT * FROM @ResultTable;`; // NOTE - in the above, we call the T-SQL variable @ID for simplicity just as a variable name, even though for each entity the pkey could be something else. Entity pkeys are not always a field called ID could be something else including composite keys.
672
- }
673
- }
674
- else {
675
- // not doing track changes for this entity, keep it simple
676
- sSQL = sSimpleSQL;
677
- }
678
- return { fullSQL: sSQL, simpleSQL: sSimpleSQL, overlappingChangeData };
679
- }
680
592
  /**
681
593
  * Override to defer AI action tasks when a transaction is active.
682
594
  * When inside a transaction, tasks are queued to _deferredTasks and
@@ -717,125 +629,156 @@ export class SQLServerDataProvider extends GenericDatabaseProvider {
717
629
  * @security Fields with Encrypt=true are encrypted before being sent to the database.
718
630
  * Encryption uses the key specified in EncryptionKeyID.
719
631
  */
720
- async generateSPParams(entity, isUpdate, contextUser) {
721
- // Generate a unique suffix for variable names to avoid collisions in batch scripts
632
+ /**
633
+ * SQL Server per-field value transform. Coerces `datetimeoffset` to ISO
634
+ * string for inline SET emission, and skips non-PK `uniqueidentifier`
635
+ * values that look like SQL function calls (e.g. `newid()`) so the DB
636
+ * default fires instead. PK-on-create with no explicit value is handled
637
+ * upstream in `GenericDatabaseProvider.GenerateSaveSQL`'s iteration loop.
638
+ */
639
+ CoerceSaveFieldValue(field, value, isUpdate) {
640
+ if (value && field.Type.trim().toLowerCase() === 'datetimeoffset') {
641
+ return { kind: 'use', value: new Date(value).toISOString() };
642
+ }
643
+ if (!isUpdate && field.Type.trim().toLowerCase() === 'uniqueidentifier' && !field.IsPrimaryKey) {
644
+ if (typeof value === 'string' && value.includes('()')) {
645
+ return { kind: 'skip' };
646
+ }
647
+ }
648
+ return { kind: 'use', value };
649
+ }
650
+ /**
651
+ * Renders the SQL Server DECLARE/SET/EXEC binding for a save call.
652
+ * Emits per-field uuid-suffixed variables to keep batched saves
653
+ * (`SQLServerTransactionGroup`) collision-free. PKs on UPDATE are
654
+ * tail-appended from `entity.PrimaryKey.KeyValuePairs`.
655
+ *
656
+ * Emits `_Clear` companion args when a nullable column carrying a
657
+ * non-NULL DB default is explicitly set to NULL — without it the SP
658
+ * body's `ISNULL(@Param, [Col])` (update) / default-substitution
659
+ * (create) would silently keep the existing value. See
660
+ * `EntityFieldInfo.NeedsClearCompanion`.
661
+ */
662
+ RenderSaveCallBinding(entity, fieldValues, isUpdate, _spName) {
722
663
  const uniqueSuffix = '_' + uuidv4().substring(0, 8).replace(/-/g, '');
723
664
  const declarations = [];
724
665
  const setStatements = [];
725
666
  const execParams = [];
726
667
  let simpleParams = '';
727
668
  let bFirst = true;
728
- // Collect field values into a map for generic encryption processing
729
- const fieldValueMap = new Map();
730
- for (let i = 0; i < entity.EntityInfo.Fields.length; i++) {
731
- const f = entity.EntityInfo.Fields[i];
732
- // Single source of truth for whether this field is even a parameter
733
- // of the target SP (spCreate / spUpdate). Mirrors CodeGen's
734
- // `shouldIncludeFieldInParams` — they MUST agree, or the SP body's
735
- // declared parameter list and the EXEC argument list will drift and
736
- // we'll hit a "Procedure or function has too many/few arguments
737
- // specified" error. See EntityFieldInfo.IsSPParameter.
738
- if (!f.IsSPParameter(isUpdate)) {
739
- continue;
740
- }
741
- // PK-on-UPDATE special case: the SP signature DOES include the PK
742
- // (caller needs it to identify the row), but in this provider it is
743
- // appended at the end of the EXEC arg list by the post-loop block
744
- // below (which sources its value from `entity.PrimaryKey.KeyValuePairs`
745
- // — the loaded PK, including composite-key support). Skip it here
746
- // to avoid a duplicate DECLARE/SET (which raises SQL Server "The
747
- // variable name '@ID_xxx' has already been declared.")
748
- if (isUpdate && f.IsPrimaryKey) {
749
- continue;
750
- }
751
- // PK on CREATE is in the SP signature (declared with a default so the
752
- // database can supply NEWSEQUENTIALID() etc.), but we only PASS it
753
- // when the caller has actually set an explicit value. Without a real
754
- // value, omit the param so the SP default fires.
755
- const includePrimaryKeyForCreate = !isUpdate && f.IsPrimaryKey && !f.AutoIncrement;
756
- if (includePrimaryKeyForCreate) {
757
- const v = entity.Get(f.Name);
758
- if (v === null || v === undefined) {
759
- continue;
760
- }
761
- }
762
- const theField = entity.Fields.find((field) => field.Name.trim().toLowerCase() === f.Name.trim().toLowerCase());
763
- const tempStatus = theField.ActiveStatusAssertions;
764
- theField.ActiveStatusAssertions = false; // turn off warnings for this operation
765
- let value = theField.Value;
766
- theField.ActiveStatusAssertions = tempStatus; // restore the status assertions
767
- if (value && f.Type.trim().toLowerCase() === 'datetimeoffset') {
768
- // for non-null datetimeoffset fields, we need to convert the value to ISO format
769
- value = new Date(value).toISOString();
770
- }
771
- else if (!isUpdate && f.Type.trim().toLowerCase() === 'uniqueidentifier' && !includePrimaryKeyForCreate) {
772
- // For CREATE on a non-PK uniqueidentifier whose value looks like a SQL
773
- // function call (e.g. newid() / newsequentialid()), skip the param so
774
- // the database default fires instead of trying to insert the literal
775
- // string. The check `.includes('()')` is intentionally generic so any
776
- // future DB function name also works.
777
- if (typeof value === 'string' && value.includes('()')) {
778
- continue;
779
- }
780
- }
781
- fieldValueMap.set(f, value);
782
- }
783
- // Encrypt field values using the generic method from GenericDatabaseProvider
784
- await this.EncryptFieldValuesForSave(entity, fieldValueMap, contextUser);
785
- // Now build the SQL parameters from the (possibly encrypted) values
786
- for (const [f, value] of fieldValueMap) {
787
- // Generate variable name with unique suffix
669
+ for (const [f, value] of fieldValues) {
788
670
  const varName = `@${f.CodeName}${uniqueSuffix}`;
789
- // Add declaration with proper SQL type using existing SQLFullType property
790
671
  declarations.push(`${varName} ${f.SQLFullType.toUpperCase()}`);
791
- // Add SET statement if value is not null (SQL variables default to NULL)
792
672
  if (value !== null && value !== undefined) {
793
- const setValueSQL = this.generateSetStatementValue(f, value);
794
- setStatements.push(`SET ${varName} = ${setValueSQL}`);
673
+ setStatements.push(`SET ${varName} = ${this.generateSetStatementValue(f, value)}`);
795
674
  }
796
- // Add to EXEC parameters
797
675
  execParams.push(`@${f.CodeName}=${varName}`);
798
- // Also build the old-style simple params for backward compatibility
799
676
  simpleParams += this.generateSingleSPParam(f, value, bFirst);
800
677
  bFirst = false;
801
- // Pillar 1 (tolerant SPs): when the caller is intentionally setting a
802
- // nullable column with a non-NULL DB default to NULL, signal the SP's
803
- // `_Clear` companion. Otherwise the SP body's `ISNULL(@Param, [Col])`
804
- // (update) or default-substitution (create) would silently keep the
805
- // existing value or apply the default — a literal NULL could never
806
- // be persisted. Predicate lives on EntityFieldInfo where it logically
807
- // belongs (pure metadata) and stays in sync with codegen.
808
678
  if ((value === null || value === undefined) && f.NeedsClearCompanion) {
809
679
  execParams.push(`@${f.CodeName}_Clear=1`);
810
680
  simpleParams += `, @${f.CodeName}_Clear=1`;
811
681
  }
812
682
  }
683
+ // UPDATE: tail-append PK declarations from the loaded entity's PrimaryKey.
813
684
  if (isUpdate && execParams.length > 0) {
814
- // this is an update and we have other fields, so we need to add all of the pkeys to the end of the SP call
815
- for (const pkey of entity.PrimaryKey.KeyValuePairs) {
816
- const f = entity.EntityInfo.Fields.find((f) => f.Name.trim().toLowerCase() === pkey.FieldName.trim().toLowerCase());
685
+ for (const pkv of entity.PrimaryKey.KeyValuePairs) {
686
+ const f = entity.EntityInfo.Fields.find((x) => x.Name.trim().toLowerCase() === pkv.FieldName.trim().toLowerCase());
687
+ if (!f)
688
+ continue;
817
689
  const varName = `@${f.CodeName}${uniqueSuffix}`;
818
- // Add declaration using existing SQLFullType property
819
690
  declarations.push(`${varName} ${f.SQLFullType.toUpperCase()}`);
820
- // Add SET statement
821
- const setValueSQL = this.generateSetStatementValue(f, pkey.Value);
822
- setStatements.push(`SET ${varName} = ${setValueSQL}`);
823
- // Add to EXEC parameters
691
+ setStatements.push(`SET ${varName} = ${this.generateSetStatementValue(f, pkv.Value)}`);
824
692
  execParams.push(`@${f.CodeName}=${varName}`);
825
- // Also add to simple params
826
693
  const pkeyQuotes = f.NeedsQuotes ? "'" : '';
827
- simpleParams += `, @${f.CodeName} = ` + pkeyQuotes + pkey.Value + pkeyQuotes; // add pkey to update SP at end, but only if other fields included
694
+ simpleParams += `, @${f.CodeName} = ${pkeyQuotes}${pkv.Value}${pkeyQuotes}`;
828
695
  }
829
- bFirst = false;
830
696
  }
831
- // Return the structured result with all components
832
697
  return {
833
- variablesSQL: declarations.length > 0 ? `DECLARE ${declarations.join(',\n ')}` : '',
698
+ kind: 'mssql-declare-exec',
699
+ preambleSQL: declarations.length > 0 ? `DECLARE ${declarations.join(',\n ')}` : '',
834
700
  setSQL: setStatements.join('\n'),
835
- execParams: execParams.join(',\n '),
836
- simpleParams: simpleParams
701
+ callArgsSQL: execParams.join(',\n '),
702
+ simpleParamsSQL: simpleParams,
837
703
  };
838
704
  }
705
+ /**
706
+ * Wraps the bare SP-call binding with SQL Server's no-record-change save
707
+ * shape: `DECLARE ... ; SET ... ; EXEC [schema].sp callArgs`. When
708
+ * record-change tracking is on, this output is further wrapped by
709
+ * `WrapSaveCallWithRecordChange`.
710
+ */
711
+ WrapSaveCallForResult(binding, entity, spName) {
712
+ if (binding.kind !== 'mssql-declare-exec') {
713
+ throw new Error(`SQLServerDataProvider.WrapSaveCallForResult: unexpected binding kind '${binding.kind}'`);
714
+ }
715
+ const execSQL = `EXEC [${entity.EntityInfo.SchemaName}].${spName} ${binding.callArgsSQL}`;
716
+ const sql = binding.preambleSQL
717
+ ? `${binding.preambleSQL}\n\n${binding.setSQL}\n\n${execSQL}`
718
+ : execSQL;
719
+ return { sql };
720
+ }
721
+ /**
722
+ * Wraps the save SQL with SQL Server's @ResultTable + inline
723
+ * `spCreateRecordChange_Internal` EXEC pattern. The CONCAT-built `@ID`
724
+ * inline supports composite-key entities.
725
+ */
726
+ WrapSaveCallWithRecordChange(_saveSQL, binding, payload, entity) {
727
+ if (binding.kind !== 'mssql-declare-exec') {
728
+ throw new Error(`SQLServerDataProvider.WrapSaveCallWithRecordChange: unexpected binding kind '${binding.kind}'`);
729
+ }
730
+ const recordChangesEntityInfo = this.Entities.find((e) => e.Name === 'MJ: Record Changes');
731
+ const spName = this.GetCreateUpdateSPName(entity, payload.type === 'Create');
732
+ const concatPKIDString = `CONCAT(${entity.EntityInfo.PrimaryKeys
733
+ .map((pk) => `'${pk.CodeName}','${CompositeKey.DefaultValueDelimiter}',${pk.Name}`)
734
+ .join(`,'${CompositeKey.DefaultFieldDelimiter}',`)})`;
735
+ // Build the inline `EXEC spCreateRecordChange_Internal` from the payload,
736
+ // referencing `@ID` (set below from the result table).
737
+ const restoreClause = payload.source === 'Restore'
738
+ ? `,
739
+ @Source='Restore',
740
+ @RestoredFromID='${payload.restoredFromID}',
741
+ @RestoreReason=${payload.restoreReason ? `N'${payload.restoreReason.replace(/'/g, "''")}'` : 'NULL'}`
742
+ : '';
743
+ const recordChangeEXEC = `EXEC [${this.MJCoreSchemaName}].spCreateRecordChange_Internal @EntityName='${entity.EntityInfo.Name}',
744
+ @RecordID=@ID,
745
+ @UserID='${payload.userID}',
746
+ @Type='${payload.type}',
747
+ @ChangesJSON='${payload.changesJSON}',
748
+ @ChangesDescription='${payload.changesDescription}',
749
+ @FullRecordJSON='${payload.fullRecordJSON}',
750
+ @Status='Complete',
751
+ @Comments=null${restoreClause}`;
752
+ const execSQL = `EXEC [${entity.EntityInfo.SchemaName}].${spName} ${binding.callArgsSQL}`;
753
+ const sql = `
754
+ ${binding.preambleSQL}
755
+
756
+ DECLARE @ResultTable TABLE (
757
+ ${this.getAllEntityColumnsSQL(entity.EntityInfo)}
758
+ );
759
+
760
+ ${binding.setSQL}
761
+
762
+ INSERT INTO @ResultTable
763
+ ${execSQL};
764
+
765
+ DECLARE @ID NVARCHAR(MAX);
766
+
767
+ SELECT @ID = ${concatPKIDString} FROM @ResultTable;
768
+
769
+ IF @ID IS NOT NULL
770
+ BEGIN
771
+ DECLARE @ResultChangesTable TABLE (
772
+ ${this.getAllEntityColumnsSQL(recordChangesEntityInfo)}
773
+ );
774
+
775
+ INSERT INTO @ResultChangesTable
776
+ ${recordChangeEXEC};
777
+ END;
778
+
779
+ SELECT * FROM @ResultTable;`;
780
+ return { sql };
781
+ }
839
782
  /**
840
783
  * Generates the value portion of a SET statement for a field
841
784
  * @param f The field info
@@ -1074,18 +1017,13 @@ export class SQLServerDataProvider extends GenericDatabaseProvider {
1074
1017
  /**************************************************************************/
1075
1018
  // START ---- DatabaseProviderBase Override Hooks (Phase 2)
1076
1019
  /**************************************************************************/
1077
- async GenerateSaveSQL(entity, isNew, user) {
1078
- const spName = this.GetCreateUpdateSPName(entity, isNew);
1079
- const sqlDetails = await this.GetSaveSQLWithDetails(entity, isNew, spName, user);
1080
- const result = {
1081
- fullSQL: sqlDetails.fullSQL,
1082
- simpleSQL: sqlDetails.simpleSQL,
1083
- };
1084
- if (sqlDetails.overlappingChangeData) {
1085
- result.extraData = { overlappingChangeData: sqlDetails.overlappingChangeData };
1086
- }
1087
- return result;
1088
- }
1020
+ // GenerateSaveSQL is now inherited from GenericDatabaseProvider — the
1021
+ // dialect-driven concrete builder. overlappingChangeData for ISA
1022
+ // propagation is populated by the inherited method via `extraData`.
1023
+ // SS-specific save composition lives in CoerceSaveFieldValue /
1024
+ // RenderSaveCallBinding / WrapSaveCallForResult /
1025
+ // WrapSaveCallWithRecordChange (see this file's "Save Grammar" section
1026
+ // above). See plans/sp-save-builder-generic-layer-refactor.md (rev 4).
1089
1027
  GenerateDeleteSQL(entity, user) {
1090
1028
  const sqlDetails = this.GetDeleteSQLWithDetails(entity, user);
1091
1029
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"SQLServerDataProvider.js","sourceRoot":"","sources":["../src/SQLServerDataProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SQLServerDataProvider.js","sourceRoot":"","sources":["../src/SQLServerDataProvider.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@memberjunction/sqlserver-dataprovider",
3
3
  "type": "module",
4
- "version": "5.34.1",
4
+ "version": "5.35.0",
5
5
  "description": "MemberJunction: SQL Server Client Data Provider",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
@@ -24,20 +24,20 @@
24
24
  "typescript": "^5.9.3"
25
25
  },
26
26
  "dependencies": {
27
- "@memberjunction/actions": "5.34.1",
28
- "@memberjunction/actions-base": "5.34.1",
29
- "@memberjunction/ai": "5.34.1",
30
- "@memberjunction/ai-provider-bundle": "5.34.1",
31
- "@memberjunction/ai-vector-dupe": "5.34.1",
32
- "@memberjunction/aiengine": "5.34.1",
33
- "@memberjunction/core": "5.34.1",
34
- "@memberjunction/core-entities": "5.34.1",
35
- "@memberjunction/encryption": "5.34.1",
36
- "@memberjunction/generic-database-provider": "5.34.1",
37
- "@memberjunction/sql-dialect": "5.34.1",
38
- "@memberjunction/global": "5.34.1",
39
- "@memberjunction/query-processor": "5.34.1",
40
- "@memberjunction/queue": "5.34.1",
27
+ "@memberjunction/actions": "5.35.0",
28
+ "@memberjunction/actions-base": "5.35.0",
29
+ "@memberjunction/ai": "5.35.0",
30
+ "@memberjunction/ai-provider-bundle": "5.35.0",
31
+ "@memberjunction/ai-vector-dupe": "5.35.0",
32
+ "@memberjunction/aiengine": "5.35.0",
33
+ "@memberjunction/core": "5.35.0",
34
+ "@memberjunction/core-entities": "5.35.0",
35
+ "@memberjunction/encryption": "5.35.0",
36
+ "@memberjunction/generic-database-provider": "5.35.0",
37
+ "@memberjunction/sql-dialect": "5.35.0",
38
+ "@memberjunction/global": "5.35.0",
39
+ "@memberjunction/query-processor": "5.35.0",
40
+ "@memberjunction/queue": "5.35.0",
41
41
  "mssql": "^12.2.0",
42
42
  "rxjs": "^7.8.2",
43
43
  "uuid": "^13.0.0"