@memberjunction/sqlserver-dataprovider 3.1.1 → 3.3.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,7 +15,7 @@
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, RunViewResult, EntityInfo, EntityFieldInfo, ApplicationInfo, RunViewParams, ProviderType, UserInfo, RecordChange, ILocalStorageProvider, AuditLogTypeInfo, AuthorizationInfo, TransactionGroupBase, EntitySaveOptions, RunReportParams, DatasetItemFilterType, DatasetResultType, DatasetStatusResultType, EntityRecordNameInput, EntityRecordNameResult, IRunReportProvider, RunReportResult, RecordDependency, RecordMergeRequest, RecordMergeResult, EntityDependency, RunQueryResult, RunQueryParams, PotentialDuplicateRequest, PotentialDuplicateResponse, CompositeKey, EntityDeleteOptions, EntityMergeOptions, DatasetItemResultType, DatabaseProviderBase, QueryInfo, RunViewWithCacheCheckParams, RunViewsWithCacheCheckResponse, RunViewWithCacheCheckResult, RunQueryWithCacheCheckParams, RunQueriesWithCacheCheckResponse, RunQueryWithCacheCheckResult } from '@memberjunction/core';
18
+ import { BaseEntity, IEntityDataProvider, IMetadataProvider, RunViewResult, AggregateResult, EntityInfo, EntityFieldInfo, ApplicationInfo, RunViewParams, ProviderType, UserInfo, RecordChange, ILocalStorageProvider, AuditLogTypeInfo, AuthorizationInfo, TransactionGroupBase, EntitySaveOptions, RunReportParams, DatasetItemFilterType, DatasetResultType, DatasetStatusResultType, EntityRecordNameInput, EntityRecordNameResult, IRunReportProvider, RunReportResult, RecordDependency, RecordMergeRequest, RecordMergeResult, EntityDependency, RunQueryResult, RunQueryParams, PotentialDuplicateRequest, PotentialDuplicateResponse, CompositeKey, EntityDeleteOptions, EntityMergeOptions, DatasetItemResultType, DatabaseProviderBase, QueryInfo, RunViewWithCacheCheckParams, RunViewsWithCacheCheckResponse, RunViewWithCacheCheckResult, RunQueryWithCacheCheckParams, RunQueriesWithCacheCheckResponse, RunQueryWithCacheCheckResult } from '@memberjunction/core';
19
19
  import { AuditLogEntity, EntityAIActionEntity, RecordMergeLogEntity, UserViewEntityExtended } from '@memberjunction/core-entities';
20
20
  import * as sql from 'mssql';
21
21
  import { Observable } from 'rxjs';
@@ -60,7 +60,8 @@ export declare class SQLServerDataProvider extends DatabaseProviderBase implemen
60
60
  private _recordDupeDetector;
61
61
  private _needsDatetimeOffsetAdjustment;
62
62
  private _datetimeOffsetTestComplete;
63
- private _sqlLoggingSessions;
63
+ private static _sqlLoggingSessionsKey;
64
+ private get _sqlLoggingSessions();
64
65
  private _sqlQueue$;
65
66
  private _queueSubscription;
66
67
  private _transactionState$;
@@ -176,6 +177,14 @@ export declare class SQLServerDataProvider extends DatabaseProviderBase implemen
176
177
  statementCount: number;
177
178
  options: SqlLoggingOptions;
178
179
  }>;
180
+ /**
181
+ * Gets a specific SQL logging session by its ID.
182
+ * Returns the session if found, or undefined if not found.
183
+ *
184
+ * @param sessionId - The unique identifier of the session to retrieve
185
+ * @returns The SqlLoggingSession if found, undefined otherwise
186
+ */
187
+ GetSqlLoggingSessionById(sessionId: string): SqlLoggingSession | undefined;
179
188
  /**
180
189
  * Disposes all active SQL logging sessions.
181
190
  * Useful for cleanup on provider shutdown.
@@ -419,6 +428,40 @@ export declare class SQLServerDataProvider extends DatabaseProviderBase implemen
419
428
  rowCount?: number;
420
429
  }, whereSQL: string, viewIndex: number, contextUser?: UserInfo): Promise<RunViewWithCacheCheckResult<T>>;
421
430
  protected validateUserProvidedSQLClause(clause: string): boolean;
431
+ /**
432
+ * Validates and builds an aggregate SQL query from the provided aggregate expressions.
433
+ * Uses the SQLExpressionValidator to ensure expressions are safe from SQL injection.
434
+ *
435
+ * @param aggregates - Array of aggregate expressions to validate and build
436
+ * @param entityInfo - Entity metadata for field reference validation
437
+ * @param schemaName - Schema name for the table
438
+ * @param baseView - Base view name for the table
439
+ * @param whereSQL - WHERE clause to apply (without the WHERE keyword)
440
+ * @returns Object with aggregateSQL string and any validation errors
441
+ */
442
+ protected buildAggregateSQL(aggregates: {
443
+ expression: string;
444
+ alias?: string;
445
+ }[], entityInfo: EntityInfo, schemaName: string, baseView: string, whereSQL: string): {
446
+ aggregateSQL: string | null;
447
+ validationErrors: AggregateResult[];
448
+ };
449
+ /**
450
+ * Executes the aggregate query and maps results back to the original expressions.
451
+ *
452
+ * @param aggregateSQL - The aggregate SQL query to execute
453
+ * @param aggregates - Original aggregate expressions (for result mapping)
454
+ * @param validationErrors - Any validation errors from buildAggregateSQL
455
+ * @param contextUser - User context for query execution
456
+ * @returns Array of AggregateResult objects
457
+ */
458
+ protected executeAggregateQuery(aggregateSQL: string | null, aggregates: {
459
+ expression: string;
460
+ alias?: string;
461
+ }[], validationErrors: AggregateResult[], contextUser?: UserInfo): Promise<{
462
+ results: AggregateResult[];
463
+ executionTime: number;
464
+ }>;
422
465
  protected getRunTimeViewFieldString(params: RunViewParams, viewEntity: UserViewEntityExtended): string;
423
466
  protected getRunTimeViewFieldArray(params: RunViewParams, viewEntity: UserViewEntityExtended): EntityFieldInfo[];
424
467
  protected executeSQLForUserViewRunLogging(viewId: number, entityBaseView: string, whereSQL: string, orderBySQL: string, user: UserInfo): Promise<{
@@ -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":"AAAA;;;;;;;;;;;GAWG;AAEH;;;;gHAIgH;AAEhH,OAAO,EACL,UAAU,EACV,mBAAmB,EACnB,iBAAiB,EAEjB,aAAa,EACb,eAAe,EAEf,UAAU,EACV,eAAe,EACf,eAAe,EACf,aAAa,EAEb,YAAY,EACZ,QAAQ,EACR,YAAY,EACZ,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EAGpB,iBAAiB,EAEjB,eAAe,EACf,qBAAqB,EACrB,iBAAiB,EAEjB,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,eAAe,EAEf,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EAEjB,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,yBAAyB,EACzB,0BAA0B,EAE1B,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAGlB,qBAAqB,EACrB,oBAAoB,EACpB,SAAS,EAGT,2BAA2B,EAC3B,8BAA8B,EAC9B,2BAA2B,EAC3B,4BAA4B,EAC5B,gCAAgC,EAChC,4BAA4B,EAE7B,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,cAAc,EAEd,oBAAoB,EAGpB,oBAAoB,EAEpB,sBAAsB,EAEvB,MAAM,+BAA+B,CAAC;AAIvC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,EAAmB,UAAU,EAAiD,MAAM,MAAM,CAAC;AAGlG,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,2BAA2B,EAC3B,iBAAiB,EACjB,iBAAiB,EAGlB,MAAM,YAAY,CAAC;AAIpB,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAK5D;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,GAAG,CAAC;IACd,QAAQ,EAAE,GAAG,CAAC;CACf,CAAC;AAsGF;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,qBACX,SAAQ,oBACR,YAAW,mBAAmB,EAAE,iBAAiB,EAAE,kBAAkB;IAErE,OAAO,CAAC,KAAK,CAAqB;IAGlC,OAAO,CAAC,YAAY,CAAkB;IACtC,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,eAAe,CAAgB;IAGvC,OAAO,CAAC,UAAU,CAAoB;IAGtC,OAAO,CAAC,qBAAqB,CAAwB;IACrD,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,mBAAmB,CAA0B;IACrD,OAAO,CAAC,8BAA8B,CAAkB;IACxD,OAAO,CAAC,2BAA2B,CAAkB;IACrD,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAyD;IAC9F,OAAO,KAAK,mBAAmB,GAU9B;IAID,OAAO,CAAC,UAAU,CAQb;IAGL,OAAO,CAAC,kBAAkB,CAAM;IAGhC,OAAO,CAAC,kBAAkB,CAAuC;IACjE,OAAO,CAAC,cAAc,CAAwE;IAG9F;;;;;;;;OAQG;IACH,IAAW,iBAAiB,IAAI,UAAU,CAAC,OAAO,CAAC,CAElD;IAED;;;OAGG;IACH,IAAW,gBAAgB,IAAI,MAAM,CAGpC;IAED;;OAEG;IACH,IAAW,aAAa,IAAI,OAAO,CAElC;IAED;;OAEG;IACH,IAAW,mBAAmB,IAAI,OAAO,CAExC;IAED;;;OAGG;IACH,IAAW,cAAc,IAAI,MAAM,EAAE,CAEpC;IAED;;OAEG;IACH,IAAW,mBAAmB,IAAI,OAAO,CAIxC;IAED;;OAEG;IACH,IAAW,UAAU,IAAI,2BAA2B,CAEnD;IAED;;;;;OAKG;IACU,MAAM,CAAC,UAAU,EAAE,2BAA2B,EAAE,aAAa,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;IAcjH;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAyBhC;;;OAGG;IACH,IAAW,kBAAkB,IAAI,GAAG,CAEnC;IAED;;;;OAIG;IACH,IAAW,wBAAwB,IAAI,MAAM,CAY5C;IAED;;;OAGG;IACH,SAAS,KAAK,YAAY,IAAI,OAAO,CAEpC;IAED;;OAEG;IACH,IAAW,gBAAgB,IAAI,MAAM,CAEpC;IAED,4EAA4E;IAE5E,4EAA4E;IAE5E;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACU,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAgC1F,cAAc,IAAI,OAAO,CAAC,QAAQ,CAAC;IAIhD;;;;;OAKG;IACI,2BAA2B,IAAI,KAAK,CAAC;QAC1C,EAAE,EAAE,MAAM,CAAC;QACX,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,IAAI,CAAC;QAChB,cAAc,EAAE,MAAM,CAAC;QACvB,OAAO,EAAE,iBAAiB,CAAC;KAC5B,CAAC;IAUF;;;;;;OAMG;IACI,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAIjF;;;OAGG;IACU,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC;IAM1D;;;OAGG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBrC;;;;;;;;;;OAUG;YACW,gBAAgB;IAuE9B;;;;;;;;OAQG;WACiB,eAAe,CACjC,KAAK,EAAE,MAAM,EACb,UAAU,CAAC,EAAE,GAAG,EAChB,WAAW,CAAC,EAAE,MAAM,EACpB,UAAU,GAAE,OAAe,EAC3B,iBAAiB,CAAC,EAAE,MAAM,EAC1B,WAAW,CAAC,EAAE,QAAQ,GACrB,OAAO,CAAC,IAAI,CAAC;IAQhB,4EAA4E;IAE5E,4EAA4E;IAE5E,4EAA4E;IAE5E,4EAA4E;IAC/D,SAAS,CAAC,MAAM,EAAE,eAAe,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,eAAe,CAAC;IA8BjG,4EAA4E;IAE5E,4EAA4E;IAE5E;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IA4B3B;;;;;;;;;;OAUG;cACa,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,yBAAyB,GAAE,OAAe,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAwC9K,4EAA4E;IAE5E,4EAA4E;cAC5D,gBAAgB,CAAC,MAAM,EAAE,cAAc,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC;IAuDzG;;OAEG;cACa,oBAAoB,CAAC,MAAM,EAAE,cAAc,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC;IA6BxG;;OAEG;IACH,SAAS,CAAC,sBAAsB,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAE;IAqBlJ;;OAEG;IACH,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,cAAc,GAAG,IAAI;IAiClI;;OAEG;cACa,sBAAsB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;IAe9H;;OAEG;IACH,SAAS,CAAC,oBAAoB,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,cAAc,GAAG;QAAE,eAAe,EAAE,GAAG,EAAE,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE;IAezH;;OAEG;IACH,SAAS,CAAC,mBAAmB,CAC3B,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,WAAW,CAAC,EAAE,QAAQ,GACrB,IAAI;IA+BP;;OAEG;IACH,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI;IAWpG;;;;;;OAMG;cACa,kBAAkB,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAO/G;;;;;;;OAOG;IACU,wBAAwB,CAAC,CAAC,GAAG,OAAO,EAC/C,MAAM,EAAE,4BAA4B,EAAE,EACtC,WAAW,CAAC,EAAE,QAAQ,GACrB,OAAO,CAAC,gCAAgC,CAAC,CAAC,CAAC,CAAC;IAmI/C;;OAEG;IACH,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,GAAG,SAAS;IAkCzE;;OAEG;cACa,0BAA0B,CACxC,KAAK,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,4BAA4B,CAAC;QAAC,SAAS,EAAE,SAAS,CAAA;KAAE,CAAC,EACzF,WAAW,CAAC,EAAE,QAAQ,GACrB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IA6C9G;;OAEG;cACa,6BAA6B,CAAC,CAAC,GAAG,OAAO,EACvD,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,OAAO,GAAG,eAAe,EACjC,WAAW,CAAC,EAAE,QAAQ,EACtB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAC;IAyB3C,4EAA4E;IAE5E,4EAA4E;IAE5E;;;;;;;OAOG;cACa,qBAAqB,CAAC,UAAU,EAAE,sBAAsB,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAiDhI,4EAA4E;IAE5E,4EAA4E;cAC5D,eAAe,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;cAkWlG,gBAAgB,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;IAQvH;;;;;;;OAOG;IACU,sBAAsB,CAAC,CAAC,GAAG,OAAO,EAC7C,MAAM,EAAE,2BAA2B,EAAE,EACrC,WAAW,CAAC,EAAE,QAAQ,GACrB,OAAO,CAAC,8BAA8B,CAAC,CAAC,CAAC,CAAC;IA0J7C;;;OAGG;cACa,2BAA2B,CACzC,KAAK,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,2BAA2B,CAAC;QAAC,UAAU,EAAE,UAAU,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,EAC5G,WAAW,CAAC,EAAE,QAAQ,GACrB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IA6C9G;;OAEG;cACa,6BAA6B,CAC3C,MAAM,EAAE,aAAa,EACrB,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,QAAQ,GACb,OAAO,CAAC,MAAM,CAAC;IA4ClB;;OAEG;IACH,SAAS,CAAC,cAAc,CACtB,YAAY,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EACxD,YAAY,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GACzD,OAAO;IAmBV;;OAEG;cACa,qBAAqB,CAAC,CAAC,GAAG,OAAO,EAC/C,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,EACjB,WAAW,CAAC,EAAE,QAAQ,GACrB,OAAO,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC;IAuB1C;;;;OAIG;IACH,SAAS,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM;IAoBzD;;;;;;;OAOG;cACa,wBAAwB,CACtC,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,EACtB,WAAW,CAAC,EAAE,QAAQ,GACrB,OAAO,CAAC,MAAM,EAAE,CAAC;IAiBpB;;;;;;;;OAQG;cACa,mBAAmB,CAAC,CAAC,GAAG,OAAO,EAC7C,MAAM,EAAE,aAAa,EACrB,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,QAAQ,GACrB,OAAO,CAAC,CAAC,EAAE,CAAC;IAgCf;;;;;;;;;;;;;;;;;OAiBG;cACa,6BAA6B,CAAC,CAAC,GAAG,OAAO,EACvD,MAAM,EAAE,aAAa,EACrB,UAAU,EAAE,UAAU,EACtB,kBAAkB,EAAE,MAAM,EAC1B,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,EAC1D,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,WAAW,CAAC,EAAE,QAAQ,GACrB,OAAO,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC;IAoF1C,SAAS,CAAC,6BAA6B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAsChE;;;;;;;;;;OAUG;IACH,SAAS,CAAC,iBAAiB,CACzB,UAAU,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,EACpD,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf;QAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,gBAAgB,EAAE,eAAe,EAAE,CAAA;KAAE;IAgDvE;;;;;;;;OAQG;cACa,qBAAqB,CACnC,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,UAAU,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,EACpD,gBAAgB,EAAE,eAAe,EAAE,EACnC,WAAW,CAAC,EAAE,QAAQ,GACrB,OAAO,CAAC;QAAE,OAAO,EAAE,eAAe,EAAE,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;IAqEjE,SAAS,CAAC,yBAAyB,CAAC,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,sBAAsB,GAAG,MAAM;IAatG,SAAS,CAAC,wBAAwB,CAAC,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,sBAAsB,GAAG,eAAe,EAAE;cAsDhG,+BAA+B,CAC7C,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,QAAQ,GACb,OAAO,CAAC;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAerD,SAAS,CAAC,uBAAuB,CAAC,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM;IA2DrE,oBAAoB,CAC/B,IAAI,EAAE,QAAQ,EACd,iBAAiB,EAAE,MAAM,GAAG,IAAI,EAChC,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,GAAG,GAAG,IAAI,EACpB,mBAAmB,EAAE,MAAM,GAAG,IAAI,EAClC,WAAW,EAAE,iBAAiB,GAC7B,OAAO,CAAC,cAAc,CAAC;IAsC1B,SAAS,CAAC,wBAAwB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ;IAW5E,4EAA4E;IAE5E,4EAA4E;IAE5E,4EAA4E;IAE5E,4EAA4E;IAC5E,IAAW,YAAY,IAAI,YAAY,CAEtC;IAEY,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAKjI,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAYnI,uBAAuB,CAClC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,OAAO,EACnB,WAAW,EAAE,QAAQ,GACpB,OAAO,CAAC,IAAI,CAAC;IA4BH,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAU9H;;;;;;OAMG;IACH,SAAS,CAAC,wBAAwB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,GAAG,MAAM;IAkC1F,SAAS,CAAC,wBAAwB,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,EAAE,YAAY,EAAE,YAAY,GAAG,MAAM;IAsB9G;;;;;;;OAOG;IACU,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IA6DvI,SAAS,CAAC,0BAA0B,CAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,GAAG,MAAM;IAkBjI,mBAAmB,CAAC,MAAM,EAAE,yBAAyB,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAmCnH,YAAY,CAAC,OAAO,EAAE,kBAAkB,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC;cAgGxH,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,iBAAiB,EAAE,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,oBAAoB,CAAC;cA0B/H,oBAAoB,CAAC,cAAc,EAAE,oBAAoB,EAAE,MAAM,EAAE,iBAAiB,EAAE,WAAW,CAAC,EAAE,QAAQ;IA6B5H;;;;;;;;;;;;;;;;OAgBG;IACU,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAKjH;;;;;;;OAOG;YACW,qBAAqB;IAuEnC;;;;;;;OAOG;IACH,SAAS,CAAC,kBAAkB,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,GAAG,oBAAoB,EAAE;IAM7F;;;;;;;;;OASG;cACa,mBAAmB,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAiC3J;;;;;;;;OAQG;cACa,qBAAqB,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ;IA6CzG,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,EAAE,CAAC;IAkL9F,SAAS,CAAC,+BAA+B,CAAC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,GAAG,CAAA;KAAE,EAAE;IAStH;;;;;OAKG;IACI,qBAAqB,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,GAAG,MAAM;IAW7E,OAAO,CAAC,sBAAsB;IAY9B;;;;;;;;;;;;;;;OAeG;YACW,gBAAgB;IAwI9B;;;;;OAKG;IACH,OAAO,CAAC,yBAAyB;IAoDjC,OAAO,CAAC,qBAAqB;IAuC7B;;;;;;;;OAQG;IACH,SAAS,CAAC,cAAc,CAAC,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;IAsBpF,SAAS,CAAC,qBAAqB,CAC7B,OAAO,EAAE,GAAG,EACZ,OAAO,EAAE,GAAG,EACZ,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,GAAG,EACb,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,EACpC,IAAI,EAAE,QAAQ,EACd,oBAAoB,EAAE,OAAO;cAoBf,eAAe,CAC7B,OAAO,EAAE,GAAG,EACZ,OAAO,EAAE,GAAG,EACZ,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,GAAG,EACb,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,EACpC,IAAI,EAAE,QAAQ;IAShB;;;;;;OAMG;IACI,8BAA8B,CAAC,aAAa,EAAE,GAAG,EAAE,cAAc,GAAE,MAAY,EAAE,UAAU,GAAE,MAAc,GAAG,MAAM;IAqB3H,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;IAOzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmCG;IACH,SAAS,CAAC,wBAAwB,CAAC,GAAG,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,GAAG,GAAG;IAoCxE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACI,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,IAAI;IAgEpH,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,yBAAyB,EAAE,MAAM,EAAS,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC;IAyE1I;;;;;;;OAOG;IACH,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM;IAKlE;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IA8DlB,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAyIvG,4EAA4E;IAE5E,4EAA4E;IAE5E,4EAA4E;IAE5E,4EAA4E;IAE/D,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,qBAAqB,EAAE,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAsIhL;;;;;;OAMG;IACH,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;cAe5E,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,KAAA,EAAE,WAAW,KAAA,EAAE,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA8C1H;;;;;;OAMG;IACH,SAAS,CAAC,wBAAwB,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM;IA0C7D,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,qBAAqB,EAAE,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,uBAAuB,CAAC;cAyG5K,sBAAsB,CAAC,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;cAezE,uBAAuB,CAAC,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;cAU3E,eAAe,CAAC,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;cAe3D,wBAAwB,CAAC,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAe7F;;;;;;;;;;;;;;;;;;OAkBG;IACU,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAiI3G;;;;;;;;;;OAUG;IAEH;;;;OAIG;YACW,2BAA2B;IA2BzC;;;;OAIG;mBACkB,yBAAyB;IAc9C;;;;;;;;;;;;;;;;;;;;OAoBG;YACW,mBAAmB;IA+CjC;;;;;;OAMG;IACU,UAAU,CACrB,KAAK,EAAE,MAAM,EACb,UAAU,GAAE,GAAU,EACtB,OAAO,CAAC,EAAE,iBAAiB,EAC3B,WAAW,CAAC,EAAE,QAAQ,GACrB,OAAO,CAAC,GAAG,CAAC;IAoBf;;;;;;;;;;OAUG;WACiB,kBAAkB,CAAC,IAAI,EAAE,GAAG,CAAC,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,GAAG,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IA+BzI;;;;;;;;;;OAUG;WACiB,qBAAqB,CACvC,gBAAgB,EAAE,GAAG,CAAC,cAAc,GAAG,GAAG,CAAC,WAAW,GAAG,GAAG,CAAC,OAAO,EACpE,OAAO,EAAE,MAAM,EAAE,EACjB,UAAU,CAAC,EAAE,GAAG,EAAE,EAAE,EACpB,WAAW,CAAC,EAAE,QAAQ,GACrB,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;IA8FnB;;;;;;;;;;OAUG;IACU,eAAe,CAC1B,OAAO,EAAE,MAAM,EAAE,EACjB,UAAU,CAAC,EAAE,GAAG,EAAE,EAAE,EACpB,OAAO,CAAC,EAAE,sBAAsB,EAChC,WAAW,CAAC,EAAE,QAAQ,GACrB,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;IAyEnB;;;;;;;;;;;;;;;;;;;;OAoBG;IACU,6BAA6B,IAAI,OAAO,CAAC,OAAO,CAAC;IAW9D;;;OAGG;YACW,0BAA0B;IAoD3B,gBAAgB;IA6BhB,iBAAiB;IAoCjB,mBAAmB;IA2DhC;;;;OAIG;IACU,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC;IAWhD;;;;OAIG;YACW,oBAAoB;IA0BlC,IAAI,oBAAoB,IAAI,qBAAqB,CAIhD;IAEY,oBAAoB,CAAC,IAAI,EAAE,qBAAqB,EAAE,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAc9G,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAmBzH,SAAS,CAAC,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,GAAG,MAAM;IAuB3E,sBAAsB,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAIpE,4EAA4E;IAE5E,4EAA4E;IAC5E,SAAS,KAAK,QAAQ,IAAI,iBAAiB,CAE1C;CACF"}
@@ -53,6 +53,7 @@ const SqlLogger_js_1 = require("./SqlLogger.js");
53
53
  const actions_1 = require("@memberjunction/actions");
54
54
  const encryption_1 = require("@memberjunction/encryption");
55
55
  const uuid_1 = require("uuid");
56
+ const global_1 = require("@memberjunction/global");
56
57
  /**
57
58
  * Core SQL execution function - handles the actual database query execution
58
59
  * This is outside the class to allow both static and instance methods to use it
@@ -169,7 +170,19 @@ class SQLServerDataProvider extends core_1.DatabaseProviderBase {
169
170
  _recordDupeDetector;
170
171
  _needsDatetimeOffsetAdjustment = false;
171
172
  _datetimeOffsetTestComplete = false;
172
- _sqlLoggingSessions = new Map();
173
+ static _sqlLoggingSessionsKey = 'MJ_SQLServerDataProvider_SqlLoggingSessions';
174
+ get _sqlLoggingSessions() {
175
+ const g = global_1.MJGlobal.Instance.GetGlobalObjectStore();
176
+ if (g) {
177
+ if (!g[SQLServerDataProvider._sqlLoggingSessionsKey]) {
178
+ g[SQLServerDataProvider._sqlLoggingSessionsKey] = new Map();
179
+ }
180
+ return g[SQLServerDataProvider._sqlLoggingSessionsKey];
181
+ }
182
+ else {
183
+ throw new Error('No global object store available for SQL logging session');
184
+ }
185
+ }
173
186
  // Instance SQL execution queue for serializing transaction queries
174
187
  // Non-transactional queries bypass this queue for maximum parallelism
175
188
  _sqlQueue$ = new rxjs_1.Subject();
@@ -379,6 +392,16 @@ class SQLServerDataProvider extends core_1.DatabaseProviderBase {
379
392
  options: session.options,
380
393
  }));
381
394
  }
395
+ /**
396
+ * Gets a specific SQL logging session by its ID.
397
+ * Returns the session if found, or undefined if not found.
398
+ *
399
+ * @param sessionId - The unique identifier of the session to retrieve
400
+ * @returns The SqlLoggingSession if found, undefined otherwise
401
+ */
402
+ GetSqlLoggingSessionById(sessionId) {
403
+ return this._sqlLoggingSessions.get(sessionId);
404
+ }
382
405
  /**
383
406
  * Disposes all active SQL logging sessions.
384
407
  * Useful for cleanup on provider shutdown.
@@ -1101,6 +1124,10 @@ class SQLServerDataProvider extends core_1.DatabaseProviderBase {
1101
1124
  /**************************************************************************/
1102
1125
  async InternalRunView(params, contextUser) {
1103
1126
  // This is the internal implementation - pre/post processing is handled by ProviderBase.RunView()
1127
+ // Log aggregate input for debugging
1128
+ if (params?.Aggregates?.length) {
1129
+ (0, core_1.LogStatus)(`[SQLServerDataProvider] InternalRunView received aggregates: entityName=${params.EntityName}, viewID=${params.ViewID}, viewName=${params.ViewName}, aggregateCount=${params.Aggregates.length}, aggregates=${JSON.stringify(params.Aggregates.map(a => ({ expression: a.expression, alias: a.alias })))}`);
1130
+ }
1104
1131
  const startTime = new Date();
1105
1132
  try {
1106
1133
  if (params) {
@@ -1263,21 +1290,103 @@ class SQLServerDataProvider extends core_1.DatabaseProviderBase {
1263
1290
  }
1264
1291
  viewSQL += ` OFFSET ${params.StartRow} ROWS FETCH NEXT ${params.MaxRows} ROWS ONLY`;
1265
1292
  }
1266
- // now we can run the viewSQL, but only do this if the ResultType !== 'count_only', otherwise we don't need to run the viewSQL
1267
- const retData = params.ResultType === 'count_only' ? [] : await this.ExecuteSQL(viewSQL, undefined, undefined, contextUser);
1268
- // finally, if we have a countSQL, we need to run that to get the row count
1269
- // Run the count query if:
1270
- // 1. We're using pagination (always need total count for pagination)
1271
- // 2. ResultType is 'count_only'
1272
- // 3. The number of returned rows equals the max limit (might be more rows available)
1273
- let rowCount = null;
1293
+ // Build aggregate SQL if aggregates are requested
1294
+ let aggregateSQL = null;
1295
+ let aggregateValidationErrors = [];
1296
+ if (params.Aggregates && params.Aggregates.length > 0) {
1297
+ const aggregateBuild = this.buildAggregateSQL(params.Aggregates, entityInfo, entityInfo.SchemaName, entityInfo.BaseView, whereSQL);
1298
+ aggregateSQL = aggregateBuild.aggregateSQL;
1299
+ aggregateValidationErrors = aggregateBuild.validationErrors;
1300
+ }
1301
+ // Execute queries in parallel for better performance
1302
+ // - Data query (if not count_only)
1303
+ // - Count query (if needed)
1304
+ // - Aggregate query (if aggregates requested)
1305
+ const queries = [];
1306
+ const queryKeys = [];
1307
+ // Data query
1308
+ if (params.ResultType !== 'count_only') {
1309
+ queries.push(this.ExecuteSQL(viewSQL, undefined, undefined, contextUser));
1310
+ queryKeys.push('data');
1311
+ }
1312
+ // Count query (run in parallel if we'll need it)
1274
1313
  const maxRowsUsed = params.MaxRows || entityInfo.UserViewMaxRows;
1275
- if (countSQL && (usingPagination || params.ResultType === 'count_only' || (maxRowsUsed && retData.length === maxRowsUsed))) {
1314
+ const willNeedCount = countSQL && (usingPagination || params.ResultType === 'count_only');
1315
+ if (willNeedCount) {
1316
+ queries.push(this.ExecuteSQL(countSQL, undefined, undefined, contextUser));
1317
+ queryKeys.push('count');
1318
+ }
1319
+ // Aggregate query (runs in parallel with data/count queries)
1320
+ const aggregateStartTime = Date.now();
1321
+ if (aggregateSQL) {
1322
+ queries.push(this.ExecuteSQL(aggregateSQL, undefined, undefined, contextUser));
1323
+ queryKeys.push('aggregate');
1324
+ }
1325
+ // Execute all queries in parallel
1326
+ const results = await Promise.all(queries);
1327
+ // Map results back to their queries
1328
+ const resultMap = {};
1329
+ queryKeys.forEach((key, index) => {
1330
+ resultMap[key] = results[index];
1331
+ });
1332
+ // Process data results
1333
+ const retData = resultMap['data'] || [];
1334
+ // Process count results - also check if we need count based on result length
1335
+ let rowCount = null;
1336
+ if (willNeedCount && resultMap['count']) {
1337
+ const countResult = resultMap['count'];
1338
+ if (countResult && countResult.length > 0) {
1339
+ rowCount = countResult[0].TotalRowCount;
1340
+ }
1341
+ }
1342
+ else if (countSQL && maxRowsUsed && retData.length === maxRowsUsed) {
1343
+ // Need to run count query because we hit the limit
1276
1344
  const countResult = await this.ExecuteSQL(countSQL, undefined, undefined, contextUser);
1277
1345
  if (countResult && countResult.length > 0) {
1278
1346
  rowCount = countResult[0].TotalRowCount;
1279
1347
  }
1280
1348
  }
1349
+ // Process aggregate results
1350
+ let aggregateResults = undefined;
1351
+ let aggregateExecutionTime = undefined;
1352
+ if (params.Aggregates && params.Aggregates.length > 0) {
1353
+ aggregateExecutionTime = Date.now() - aggregateStartTime;
1354
+ if (resultMap['aggregate']) {
1355
+ // Map raw aggregate results back to original expressions
1356
+ const rawAggregateResult = resultMap['aggregate'];
1357
+ if (rawAggregateResult && rawAggregateResult.length > 0) {
1358
+ const row = rawAggregateResult[0];
1359
+ aggregateResults = [];
1360
+ let validExprIndex = 0;
1361
+ for (let i = 0; i < params.Aggregates.length; i++) {
1362
+ const agg = params.Aggregates[i];
1363
+ const alias = agg.alias || agg.expression;
1364
+ // Check if this expression had a validation error
1365
+ const validationError = aggregateValidationErrors.find(e => e.expression === agg.expression);
1366
+ if (validationError) {
1367
+ aggregateResults.push(validationError);
1368
+ }
1369
+ else {
1370
+ // Get the value from the result using the numbered alias
1371
+ const rawValue = row[`Agg_${validExprIndex}`];
1372
+ // Cast to AggregateValue - SQL Server returns numbers, strings, dates, or null
1373
+ const value = rawValue === undefined ? null : rawValue;
1374
+ aggregateResults.push({
1375
+ expression: agg.expression,
1376
+ alias: alias,
1377
+ value: value,
1378
+ error: undefined
1379
+ });
1380
+ validExprIndex++;
1381
+ }
1382
+ }
1383
+ }
1384
+ }
1385
+ else if (aggregateValidationErrors.length > 0) {
1386
+ // All expressions had validation errors
1387
+ aggregateResults = aggregateValidationErrors;
1388
+ }
1389
+ }
1281
1390
  const stopTime = new Date();
1282
1391
  if (params.ForceAuditLog ||
1283
1392
  (viewEntity?.ID && (extraFilter === undefined || extraFilter === null || extraFilter?.trim().length === 0) && entityInfo.AuditViewRuns)) {
@@ -1302,6 +1411,8 @@ class SQLServerDataProvider extends core_1.DatabaseProviderBase {
1302
1411
  ExecutionTime: stopTime.getTime() - startTime.getTime(),
1303
1412
  Success: true,
1304
1413
  ErrorMessage: null,
1414
+ AggregateResults: aggregateResults,
1415
+ AggregateExecutionTime: aggregateExecutionTime,
1305
1416
  };
1306
1417
  return result;
1307
1418
  }
@@ -1784,6 +1895,128 @@ class SQLServerDataProvider extends core_1.DatabaseProviderBase {
1784
1895
  }
1785
1896
  return true;
1786
1897
  }
1898
+ /**
1899
+ * Validates and builds an aggregate SQL query from the provided aggregate expressions.
1900
+ * Uses the SQLExpressionValidator to ensure expressions are safe from SQL injection.
1901
+ *
1902
+ * @param aggregates - Array of aggregate expressions to validate and build
1903
+ * @param entityInfo - Entity metadata for field reference validation
1904
+ * @param schemaName - Schema name for the table
1905
+ * @param baseView - Base view name for the table
1906
+ * @param whereSQL - WHERE clause to apply (without the WHERE keyword)
1907
+ * @returns Object with aggregateSQL string and any validation errors
1908
+ */
1909
+ buildAggregateSQL(aggregates, entityInfo, schemaName, baseView, whereSQL) {
1910
+ if (!aggregates || aggregates.length === 0) {
1911
+ return { aggregateSQL: null, validationErrors: [] };
1912
+ }
1913
+ const validator = global_1.SQLExpressionValidator.Instance;
1914
+ const validationErrors = [];
1915
+ const validExpressions = [];
1916
+ const fieldNames = entityInfo.Fields.map(f => f.Name);
1917
+ for (let i = 0; i < aggregates.length; i++) {
1918
+ const agg = aggregates[i];
1919
+ const alias = agg.alias || agg.expression;
1920
+ // Validate the expression using SQLExpressionValidator
1921
+ const result = validator.validate(agg.expression, {
1922
+ context: 'aggregate',
1923
+ entityFields: fieldNames
1924
+ });
1925
+ if (!result.valid) {
1926
+ // Record the error but continue processing other expressions
1927
+ validationErrors.push({
1928
+ expression: agg.expression,
1929
+ alias: alias,
1930
+ value: null,
1931
+ error: result.error || 'Validation failed'
1932
+ });
1933
+ }
1934
+ else {
1935
+ // Expression is valid, add to the query with an alias
1936
+ // Use a numbered alias for the SQL to make result mapping easier
1937
+ validExpressions.push(`${agg.expression} AS [Agg_${i}]`);
1938
+ }
1939
+ }
1940
+ if (validExpressions.length === 0) {
1941
+ return { aggregateSQL: null, validationErrors };
1942
+ }
1943
+ // Build the aggregate SQL query
1944
+ let aggregateSQL = `SELECT ${validExpressions.join(', ')} FROM [${schemaName}].${baseView}`;
1945
+ if (whereSQL && whereSQL.length > 0) {
1946
+ aggregateSQL += ` WHERE ${whereSQL}`;
1947
+ }
1948
+ return { aggregateSQL, validationErrors };
1949
+ }
1950
+ /**
1951
+ * Executes the aggregate query and maps results back to the original expressions.
1952
+ *
1953
+ * @param aggregateSQL - The aggregate SQL query to execute
1954
+ * @param aggregates - Original aggregate expressions (for result mapping)
1955
+ * @param validationErrors - Any validation errors from buildAggregateSQL
1956
+ * @param contextUser - User context for query execution
1957
+ * @returns Array of AggregateResult objects
1958
+ */
1959
+ async executeAggregateQuery(aggregateSQL, aggregates, validationErrors, contextUser) {
1960
+ const startTime = Date.now();
1961
+ if (!aggregateSQL) {
1962
+ // No valid expressions to execute, return only validation errors
1963
+ return { results: validationErrors, executionTime: 0 };
1964
+ }
1965
+ try {
1966
+ const queryResult = await this.ExecuteSQL(aggregateSQL, undefined, undefined, contextUser);
1967
+ const executionTime = Date.now() - startTime;
1968
+ if (!queryResult || queryResult.length === 0) {
1969
+ // Query returned no results, which shouldn't happen for aggregates
1970
+ // Return validation errors plus null values for valid expressions
1971
+ const nullResults = aggregates
1972
+ .filter((_, i) => !validationErrors.some(e => e.expression === aggregates[i].expression))
1973
+ .map(agg => ({
1974
+ expression: agg.expression,
1975
+ alias: agg.alias || agg.expression,
1976
+ value: null,
1977
+ error: undefined
1978
+ }));
1979
+ return { results: [...validationErrors, ...nullResults], executionTime };
1980
+ }
1981
+ // Map query results back to original expressions
1982
+ const row = queryResult[0];
1983
+ const results = [];
1984
+ let validExprIndex = 0;
1985
+ for (let i = 0; i < aggregates.length; i++) {
1986
+ const agg = aggregates[i];
1987
+ const alias = agg.alias || agg.expression;
1988
+ // Check if this expression had a validation error
1989
+ const validationError = validationErrors.find(e => e.expression === agg.expression);
1990
+ if (validationError) {
1991
+ results.push(validationError);
1992
+ }
1993
+ else {
1994
+ // Get the value from the result using the numbered alias
1995
+ const value = row[`Agg_${validExprIndex}`];
1996
+ results.push({
1997
+ expression: agg.expression,
1998
+ alias: alias,
1999
+ value: value ?? null,
2000
+ error: undefined
2001
+ });
2002
+ validExprIndex++;
2003
+ }
2004
+ }
2005
+ return { results, executionTime };
2006
+ }
2007
+ catch (error) {
2008
+ const executionTime = Date.now() - startTime;
2009
+ const errorMessage = error instanceof Error ? error.message : String(error);
2010
+ // Return all expressions with the error
2011
+ const errorResults = aggregates.map(agg => ({
2012
+ expression: agg.expression,
2013
+ alias: agg.alias || agg.expression,
2014
+ value: null,
2015
+ error: errorMessage
2016
+ }));
2017
+ return { results: errorResults, executionTime };
2018
+ }
2019
+ }
1787
2020
  getRunTimeViewFieldString(params, viewEntity) {
1788
2021
  const fieldList = this.getRunTimeViewFieldArray(params, viewEntity);
1789
2022
  // pass this back as a comma separated list, put square brackets around field names to make sure if they are reserved words or have spaces, that they'll still work.
@@ -4611,7 +4844,7 @@ class SQLServerDataProvider extends core_1.DatabaseProviderBase {
4611
4844
  }
4612
4845
  get LocalStorageProvider() {
4613
4846
  if (!this._localStorageProvider)
4614
- this._localStorageProvider = new NodeLocalStorageProvider();
4847
+ this._localStorageProvider = new core_1.InMemoryLocalStorageProvider();
4615
4848
  return this._localStorageProvider;
4616
4849
  }
4617
4850
  async GetEntityRecordNames(info, contextUser) {
@@ -4683,48 +4916,4 @@ class SQLServerDataProvider extends core_1.DatabaseProviderBase {
4683
4916
  }
4684
4917
  }
4685
4918
  exports.SQLServerDataProvider = SQLServerDataProvider;
4686
- /**
4687
- * In-memory storage provider for Node.js server-side usage.
4688
- * Uses a Map of Maps structure for category isolation:
4689
- * Map<category, Map<key, value>>
4690
- *
4691
- * This implementation is purely in-memory and doesn't persist to disk.
4692
- * Data is retained for the lifetime of the server process.
4693
- */
4694
- class NodeLocalStorageProvider {
4695
- static DEFAULT_CATEGORY = 'default';
4696
- _storage = new Map();
4697
- /**
4698
- * Gets or creates a category map
4699
- */
4700
- getCategoryMap(category) {
4701
- const cat = category || NodeLocalStorageProvider.DEFAULT_CATEGORY;
4702
- let categoryMap = this._storage.get(cat);
4703
- if (!categoryMap) {
4704
- categoryMap = new Map();
4705
- this._storage.set(cat, categoryMap);
4706
- }
4707
- return categoryMap;
4708
- }
4709
- async GetItem(key, category) {
4710
- const categoryMap = this.getCategoryMap(category || NodeLocalStorageProvider.DEFAULT_CATEGORY);
4711
- return categoryMap.get(key) ?? null;
4712
- }
4713
- async SetItem(key, value, category) {
4714
- const categoryMap = this.getCategoryMap(category || NodeLocalStorageProvider.DEFAULT_CATEGORY);
4715
- categoryMap.set(key, value);
4716
- }
4717
- async Remove(key, category) {
4718
- const categoryMap = this.getCategoryMap(category || NodeLocalStorageProvider.DEFAULT_CATEGORY);
4719
- categoryMap.delete(key);
4720
- }
4721
- async ClearCategory(category) {
4722
- const cat = category || NodeLocalStorageProvider.DEFAULT_CATEGORY;
4723
- this._storage.delete(cat);
4724
- }
4725
- async GetCategoryKeys(category) {
4726
- const categoryMap = this._storage.get(category || NodeLocalStorageProvider.DEFAULT_CATEGORY);
4727
- return categoryMap ? Array.from(categoryMap.keys()) : [];
4728
- }
4729
- }
4730
4919
  //# sourceMappingURL=SQLServerDataProvider.js.map