@memberjunction/external-change-detection 2.112.0 → 2.113.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.
- package/README.md +3 -3
- package/dist/ChangeDetector.d.ts +2 -2
- package/dist/ChangeDetector.d.ts.map +1 -1
- package/dist/ChangeDetector.js +120 -122
- package/dist/ChangeDetector.js.map +1 -1
- package/package.json +5 -4
package/README.md
CHANGED
|
@@ -35,7 +35,7 @@ This package relies on the following MemberJunction packages:
|
|
|
35
35
|
|
|
36
36
|
```typescript
|
|
37
37
|
import { ExternalChangeDetectorEngine } from '@memberjunction/external-change-detection';
|
|
38
|
-
import { Metadata } from '@memberjunction/
|
|
38
|
+
import { Metadata } from '@memberjunction/core';
|
|
39
39
|
|
|
40
40
|
async function detectAndReplayChanges() {
|
|
41
41
|
// Get the engine instance
|
|
@@ -252,7 +252,7 @@ if (result.Success && result.Changes.length > 0) {
|
|
|
252
252
|
|
|
253
253
|
```typescript
|
|
254
254
|
import { ExternalChangeDetectorEngine } from '@memberjunction/external-change-detection';
|
|
255
|
-
import { UserInfo } from '@memberjunction/
|
|
255
|
+
import { UserInfo } from '@memberjunction/core';
|
|
256
256
|
|
|
257
257
|
async function runScheduledChangeDetection(contextUser: UserInfo) {
|
|
258
258
|
const detector = ExternalChangeDetectorEngine.Instance;
|
|
@@ -311,4 +311,4 @@ This package requires the following database objects:
|
|
|
311
311
|
|
|
312
312
|
## License
|
|
313
313
|
|
|
314
|
-
ISC
|
|
314
|
+
ISC
|
package/dist/ChangeDetector.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BaseEngine, BaseEntity, CompositeKey, EntityField, EntityInfo, IMetadataProvider, Metadata, UserInfo } from
|
|
2
|
-
import { RecordChangeEntity, RecordChangeReplayRunEntity } from
|
|
1
|
+
import { BaseEngine, BaseEntity, CompositeKey, EntityField, EntityInfo, IMetadataProvider, Metadata, UserInfo } from "@memberjunction/core";
|
|
2
|
+
import { RecordChangeEntity, RecordChangeReplayRunEntity } from "@memberjunction/core-entities";
|
|
3
3
|
/**
|
|
4
4
|
* Represents a change to a single field in a record
|
|
5
5
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChangeDetector.d.ts","sourceRoot":"","sources":["../src/ChangeDetector.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"ChangeDetector.d.ts","sourceRoot":"","sources":["../src/ChangeDetector.ts"],"names":[],"mappings":"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"}
|
package/dist/ChangeDetector.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ExternalChangeDetectorEngine = exports.ChangeDetectionResult = exports.ChangeDetectionItem = exports.FieldChange = void 0;
|
|
4
|
-
const
|
|
4
|
+
const core_1 = require("@memberjunction/core");
|
|
5
5
|
/**
|
|
6
6
|
* Represents a change to a single field in a record
|
|
7
7
|
*/
|
|
@@ -43,15 +43,15 @@ exports.ChangeDetectionResult = ChangeDetectionResult;
|
|
|
43
43
|
*
|
|
44
44
|
* This is a server only package
|
|
45
45
|
*/
|
|
46
|
-
class ExternalChangeDetectorEngine extends
|
|
46
|
+
class ExternalChangeDetectorEngine extends core_1.BaseEngine {
|
|
47
47
|
async Config(forceRefresh, contextUser, provider) {
|
|
48
|
-
const p = (provider ||
|
|
48
|
+
const p = (provider || core_1.Metadata.Provider);
|
|
49
49
|
const c = [
|
|
50
50
|
{
|
|
51
|
-
EntityName:
|
|
52
|
-
PropertyName:
|
|
53
|
-
Filter: `ID IN (SELECT ID FROM ${p.MJCoreSchemaName}.vwEntitiesWithExternalChangeTracking)
|
|
54
|
-
}
|
|
51
|
+
EntityName: "Entities",
|
|
52
|
+
PropertyName: "_EligibleEntities",
|
|
53
|
+
Filter: `ID IN (SELECT ID FROM ${p.MJCoreSchemaName}.vwEntitiesWithExternalChangeTracking)` // limit to entities that are in this view. This view has the logic which basically is TrackRecordChanges=1 and also has an UpdatedAt field
|
|
54
|
+
}
|
|
55
55
|
];
|
|
56
56
|
await this.Load(c, provider, forceRefresh, contextUser);
|
|
57
57
|
}
|
|
@@ -83,7 +83,7 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
83
83
|
* * The entity is not in the IneligibleEntities list. See info on the IneligibleEntities property for more information on excluded entities.
|
|
84
84
|
*/
|
|
85
85
|
get EligibleEntities() {
|
|
86
|
-
const netEligible = this._EligibleEntities.filter(
|
|
86
|
+
const netEligible = this._EligibleEntities.filter(e => !this.IneligibleEntities.map(i => i.toLowerCase().trim()).includes(e.Name.toLowerCase().trim()));
|
|
87
87
|
return netEligible;
|
|
88
88
|
}
|
|
89
89
|
/**
|
|
@@ -94,16 +94,16 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
94
94
|
try {
|
|
95
95
|
// check to make sure that the entity is in the eligible list
|
|
96
96
|
if (!entity) {
|
|
97
|
-
throw new Error(
|
|
97
|
+
throw new Error("entity parameter is required");
|
|
98
98
|
}
|
|
99
|
-
else if (!this.EligibleEntities.find(
|
|
99
|
+
else if (!this.EligibleEntities.find(e => e.ID === entity.ID)) {
|
|
100
100
|
throw new Error(`Entity ${entity.Name} is not eligible for external change detection. Refer to the documentation on the EligibleEntities and IneligibleEntities properties for more information.`);
|
|
101
101
|
}
|
|
102
|
-
const md = new
|
|
102
|
+
const md = new core_1.Metadata();
|
|
103
103
|
const sqlCreates = this.generateDetectCreationsQuery(entity);
|
|
104
104
|
const sqlUpdates = this.generateDetectUpdatesQuery(entity);
|
|
105
105
|
const sqlDeletes = this.generateDetectDeletionsQuery(entity);
|
|
106
|
-
const provider =
|
|
106
|
+
const provider = core_1.Metadata.Provider;
|
|
107
107
|
const createResult = await provider.ExecuteSQL(sqlCreates);
|
|
108
108
|
const updateResult = await provider.ExecuteSQL(sqlUpdates);
|
|
109
109
|
const deleteResult = await provider.ExecuteSQL(sqlDeletes);
|
|
@@ -113,15 +113,15 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
113
113
|
for (const row of createResult) {
|
|
114
114
|
const item = new ChangeDetectionItem();
|
|
115
115
|
item.Entity = entity;
|
|
116
|
-
item.PrimaryKey = new
|
|
116
|
+
item.PrimaryKey = new core_1.CompositeKey(entity.PrimaryKeys.map(pk => {
|
|
117
117
|
return {
|
|
118
118
|
FieldName: pk.Name,
|
|
119
|
-
Value: row[pk.Name]
|
|
119
|
+
Value: row[pk.Name]
|
|
120
120
|
};
|
|
121
121
|
}));
|
|
122
122
|
item.Type = 'Create';
|
|
123
123
|
item.ChangedAt = row.CreatedAt >= row.UpdatedAt ? row.CreatedAt : row.UpdatedAt;
|
|
124
|
-
item.Changes = []; // not relevant because the row is new
|
|
124
|
+
item.Changes = []; // not relevant because the row is new
|
|
125
125
|
changes.push(item);
|
|
126
126
|
}
|
|
127
127
|
}
|
|
@@ -129,31 +129,31 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
129
129
|
for (const row of updateResult) {
|
|
130
130
|
const item = new ChangeDetectionItem();
|
|
131
131
|
item.Entity = entity;
|
|
132
|
-
item.PrimaryKey = new
|
|
132
|
+
item.PrimaryKey = new core_1.CompositeKey(entity.PrimaryKeys.map(pk => {
|
|
133
133
|
return {
|
|
134
134
|
FieldName: pk.Name,
|
|
135
|
-
Value: row[pk.Name]
|
|
135
|
+
Value: row[pk.Name]
|
|
136
136
|
};
|
|
137
137
|
}));
|
|
138
138
|
item.Type = 'Update';
|
|
139
139
|
item.ChangedAt = row.UpdatedAt;
|
|
140
140
|
// push the item but first make sure it is NOT already in the changes from the
|
|
141
141
|
// create detection, if it is, we do not push it into changes
|
|
142
|
-
if (!changes.find(
|
|
142
|
+
if (!changes.find(c => c.PrimaryKey.Equals(item.PrimaryKey))) {
|
|
143
143
|
changes.push(item);
|
|
144
144
|
}
|
|
145
145
|
}
|
|
146
146
|
}
|
|
147
147
|
if (deleteResult && deleteResult.length > 0) {
|
|
148
|
-
deleteResult.forEach(
|
|
148
|
+
deleteResult.forEach(row => {
|
|
149
149
|
const item = new ChangeDetectionItem();
|
|
150
150
|
item.Entity = entity;
|
|
151
|
-
const ck = new
|
|
151
|
+
const ck = new core_1.CompositeKey();
|
|
152
152
|
// row.RecordID should have a format of Field1|Value1||Field2|Value2, however in some cases there is legacy
|
|
153
153
|
// data in the RecordChange table that just has a single value in it and in that case assuming that the entity
|
|
154
154
|
// in question has a single-valued primary key, we can just use that value as the key, so we need to test for that
|
|
155
155
|
// first and if we find that the RecordID is just a single value, we can use that as the key
|
|
156
|
-
if (row.RecordID.indexOf(
|
|
156
|
+
if (row.RecordID.indexOf(core_1.CompositeKey.DefaultValueDelimiter) === -1) {
|
|
157
157
|
// there is no field delimiter, so we can assume this is a single value
|
|
158
158
|
ck.LoadFromSingleKeyValuePair(entity.PrimaryKeys[0].Name, row.RecordID); // this is a string like 'Field1Value' (no quotes
|
|
159
159
|
item.LegacyKey = true;
|
|
@@ -178,15 +178,15 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
178
178
|
}
|
|
179
179
|
return {
|
|
180
180
|
Success: true,
|
|
181
|
-
Changes: changes
|
|
181
|
+
Changes: changes
|
|
182
182
|
};
|
|
183
183
|
}
|
|
184
184
|
catch (e) {
|
|
185
|
-
(0,
|
|
185
|
+
(0, core_1.LogError)(e);
|
|
186
186
|
return {
|
|
187
187
|
Success: false,
|
|
188
188
|
ErrorMessage: e.message,
|
|
189
|
-
Changes: []
|
|
189
|
+
Changes: []
|
|
190
190
|
};
|
|
191
191
|
}
|
|
192
192
|
}
|
|
@@ -214,7 +214,7 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
214
214
|
changes.push({
|
|
215
215
|
FieldName: field.Name,
|
|
216
216
|
NewValue: differResult.castValue1, // use the typecast values so they're the right types
|
|
217
|
-
OldValue: differResult.castValue2
|
|
217
|
+
OldValue: differResult.castValue2 // use the typecast values so they're the right types
|
|
218
218
|
});
|
|
219
219
|
}
|
|
220
220
|
}
|
|
@@ -222,7 +222,7 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
222
222
|
return { changes, latestRecord: record };
|
|
223
223
|
}
|
|
224
224
|
else {
|
|
225
|
-
(0,
|
|
225
|
+
(0, core_1.LogStatus)(` WARNING: No record found, or no FullRecordJSON found, in vwRecordChanges for ${change.Entity.Name}: ${change.PrimaryKey.ToConcatenatedString()}`);
|
|
226
226
|
return { changes: [], latestRecord: record };
|
|
227
227
|
}
|
|
228
228
|
}
|
|
@@ -230,31 +230,31 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
230
230
|
throw new Error(`Failed to load record: ${change.Entity.Name}: ${change.PrimaryKey}`);
|
|
231
231
|
}
|
|
232
232
|
catch (e) {
|
|
233
|
-
(0,
|
|
233
|
+
(0, core_1.LogError)(e);
|
|
234
234
|
return { changes: [], latestRecord: null };
|
|
235
235
|
}
|
|
236
236
|
}
|
|
237
237
|
DoValuesDiffer(field, value1, value2) {
|
|
238
238
|
// type specific comparisons
|
|
239
|
-
// for each scenario, make sure both value1 and value 2 are of the type we care about, if they're not, create new variables
|
|
239
|
+
// for each scenario, make sure both value1 and value 2 are of the type we care about, if they're not, create new variables
|
|
240
240
|
// of those types and then do type specific comparisons for equality
|
|
241
241
|
switch (field.EntityFieldInfo.TSType) {
|
|
242
|
-
case
|
|
242
|
+
case core_1.EntityFieldTSType.Boolean:
|
|
243
243
|
// check to see if value1 and value2 are both boolean, if not, convert them to boolean
|
|
244
244
|
const v1 = typeof value1 === 'boolean' ? value1 : value1 === 'true' ? true : false;
|
|
245
245
|
const v2 = typeof value2 === 'boolean' ? value2 : value2 === 'true' ? true : false;
|
|
246
246
|
return { differ: v1 !== v2, castValue1: v1, castValue2: v2 };
|
|
247
|
-
case
|
|
247
|
+
case core_1.EntityFieldTSType.Date:
|
|
248
248
|
// check to see if value1 and value2 are both dates, if not, convert them to dates
|
|
249
249
|
const d1 = value1 instanceof Date ? value1 : new Date(value1);
|
|
250
250
|
const d2 = value2 instanceof Date ? value2 : new Date(value2);
|
|
251
251
|
return { differ: d1.getTime() !== d2.getTime(), castValue1: d1, castValue2: d2 };
|
|
252
|
-
case
|
|
252
|
+
case core_1.EntityFieldTSType.Number:
|
|
253
253
|
// check to see if value1 and value2 are both numbers, if not, convert them to numbers
|
|
254
|
-
const n1 = value1 ?
|
|
255
|
-
const n2 = value2 ?
|
|
254
|
+
const n1 = value1 ? typeof value1 === 'number' ? value1 : parseFloat(value1) : value1;
|
|
255
|
+
const n2 = value2 ? typeof value2 === 'number' ? value2 : parseFloat(value2) : value2;
|
|
256
256
|
return { differ: n1 !== n2, castValue1: n1, castValue2: n2 };
|
|
257
|
-
case
|
|
257
|
+
case core_1.EntityFieldTSType.String:
|
|
258
258
|
// check to see if value1 and value2 are both strings, if not, convert them to strings
|
|
259
259
|
const s1 = typeof value1 === 'string' || !value1 ? value1 : value1.toString();
|
|
260
260
|
const s2 = typeof value2 === 'string' || !value2 ? value2 : value2.toString();
|
|
@@ -267,15 +267,15 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
267
267
|
}
|
|
268
268
|
async GetLatestRecordChangesDataForEntityRecord(change) {
|
|
269
269
|
const Provider = this.ProviderToUse;
|
|
270
|
-
const sql = `SELECT
|
|
271
|
-
TOP 1 FullRecordJSON
|
|
272
|
-
FROM
|
|
273
|
-
${Provider.MJCoreSchemaName}.vwRecordChanges
|
|
274
|
-
WHERE
|
|
275
|
-
RecordID = '${change.PrimaryKey.ToConcatenatedString()}'
|
|
276
|
-
AND EntityID = '${change.Entity.ID}'
|
|
270
|
+
const sql = `SELECT
|
|
271
|
+
TOP 1 FullRecordJSON
|
|
272
|
+
FROM
|
|
273
|
+
${Provider.MJCoreSchemaName}.vwRecordChanges
|
|
274
|
+
WHERE
|
|
275
|
+
RecordID = '${change.PrimaryKey.ToConcatenatedString()}'
|
|
276
|
+
AND EntityID = '${change.Entity.ID}'
|
|
277
277
|
AND Status <> 'Pending'
|
|
278
|
-
ORDER BY
|
|
278
|
+
ORDER BY
|
|
279
279
|
ChangedAt DESC`;
|
|
280
280
|
const result = await Provider.ExecuteSQL(sql);
|
|
281
281
|
if (result && result.length > 0)
|
|
@@ -305,11 +305,11 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
305
305
|
const entities = [];
|
|
306
306
|
const provider = this.ProviderToUse;
|
|
307
307
|
for (const c of changes) {
|
|
308
|
-
let e = entities.find(
|
|
308
|
+
let e = entities.find(e => e.entity.ID === c.Entity.ID);
|
|
309
309
|
if (!e) {
|
|
310
310
|
e = {
|
|
311
311
|
entity: c.Entity,
|
|
312
|
-
keys: [c.PrimaryKey]
|
|
312
|
+
keys: [c.PrimaryKey]
|
|
313
313
|
};
|
|
314
314
|
entities.push(e);
|
|
315
315
|
}
|
|
@@ -321,25 +321,23 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
321
321
|
// select statement for each entity
|
|
322
322
|
for (const e of entities) {
|
|
323
323
|
const sql = `SELECT * FROM [${e.entity.SchemaName}].[${e.entity.BaseView}]
|
|
324
|
-
WHERE ${e.keys
|
|
325
|
-
.
|
|
326
|
-
const
|
|
327
|
-
const quotes = f?.NeedsQuotes ? "'" : '';
|
|
324
|
+
WHERE ${e.keys.map(k => `(${k.KeyValuePairs.map(kvp => {
|
|
325
|
+
const f = e.entity.Fields.find(f => kvp.FieldName.trim().toLowerCase() === f.Name);
|
|
326
|
+
const quotes = f?.NeedsQuotes ? "'" : "";
|
|
328
327
|
return `[${kvp.FieldName}]=${quotes}${kvp.Value}${quotes}`;
|
|
329
|
-
}).join(' AND ')})`)
|
|
330
|
-
.join(' OR ')} `;
|
|
328
|
+
}).join(' AND ')})`).join(' OR ')} `;
|
|
331
329
|
const result = await provider.ExecuteSQL(sql);
|
|
332
330
|
if (result) {
|
|
333
331
|
// we have the rows from the result, now go back through each of the changes we have in the changes array
|
|
334
|
-
// and associate the data with each one
|
|
332
|
+
// and associate the data with each one
|
|
335
333
|
for (const r of result) {
|
|
336
|
-
const kvp = e.entity.PrimaryKeys.map(
|
|
334
|
+
const kvp = e.entity.PrimaryKeys.map(pk => {
|
|
337
335
|
return {
|
|
338
336
|
FieldName: pk.Name,
|
|
339
|
-
Value: r[pk.Name]
|
|
337
|
+
Value: r[pk.Name]
|
|
340
338
|
};
|
|
341
339
|
});
|
|
342
|
-
const changeItem = changes.find(
|
|
340
|
+
const changeItem = changes.find(ci => ci.Entity === e.entity && ci.PrimaryKey.EqualsKey(kvp));
|
|
343
341
|
if (changeItem) {
|
|
344
342
|
// found the match, update latest Record
|
|
345
343
|
const record = await md.GetEntityObject(changeItem.Entity.Name, this.ContextUser);
|
|
@@ -352,73 +350,73 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
352
350
|
return true;
|
|
353
351
|
}
|
|
354
352
|
catch (e) {
|
|
355
|
-
(0,
|
|
353
|
+
(0, core_1.LogError)(e);
|
|
356
354
|
return false;
|
|
357
355
|
}
|
|
358
356
|
}
|
|
359
357
|
getPrimaryKeyString(entity, tablePrefix) {
|
|
360
|
-
return entity.PrimaryKeys.map(
|
|
358
|
+
return entity.PrimaryKeys.map(pk => `'${pk.Name}${core_1.CompositeKey.DefaultValueDelimiter}' + CAST(${tablePrefix}.[${pk.Name}] AS NVARCHAR(MAX))`).join(` + '${core_1.CompositeKey.DefaultFieldDelimiter}' + `);
|
|
361
359
|
}
|
|
362
360
|
generateDetectUpdatesQuery(entity) {
|
|
363
361
|
const primaryKeyString = this.getPrimaryKeyString(entity, 'ot');
|
|
364
362
|
return `
|
|
365
|
-
SELECT
|
|
366
|
-
${entity.PrimaryKeys.map(
|
|
367
|
-
FROM
|
|
363
|
+
SELECT
|
|
364
|
+
${entity.PrimaryKeys.map(pk => `ot.[${pk.Name}]`).join(', ')}, ot.${core_1.EntityInfo.UpdatedAtFieldName} AS UpdatedAt, rc.last_change_time LatestRecordChangeAt
|
|
365
|
+
FROM
|
|
368
366
|
[${entity.SchemaName}].[${entity.BaseView}] ot
|
|
369
367
|
INNER JOIN (
|
|
370
|
-
SELECT
|
|
368
|
+
SELECT
|
|
371
369
|
RecordID, MAX(ChangedAt) AS last_change_time
|
|
372
|
-
FROM
|
|
370
|
+
FROM
|
|
373
371
|
__mj.vwRecordChanges
|
|
374
|
-
WHERE
|
|
372
|
+
WHERE
|
|
375
373
|
Type IN ('Update', 'Create') AND EntityID = '${entity.ID}'
|
|
376
|
-
GROUP BY
|
|
374
|
+
GROUP BY
|
|
377
375
|
RecordID
|
|
378
376
|
) rc ON ${primaryKeyString} = rc.RecordID
|
|
379
|
-
WHERE
|
|
380
|
-
FORMAT(ot.${
|
|
377
|
+
WHERE
|
|
378
|
+
FORMAT(ot.${core_1.EntityInfo.UpdatedAtFieldName}, 'yyyy-MM-dd HH:mm:ss.fff') > COALESCE(FORMAT(rc.last_change_time, 'yyyy-MM-dd HH:mm:ss.fff'), '1900-01-01 00:00:00.000');`;
|
|
381
379
|
// use up to 3 digits of precision because when we get the values back into JavaScript objects, Date objects only have 3 digits of precision
|
|
382
380
|
}
|
|
383
381
|
generateDetectCreationsQuery(entity) {
|
|
384
382
|
const primaryKeyString = this.getPrimaryKeyString(entity, 'ot');
|
|
385
383
|
return `
|
|
386
|
-
SELECT
|
|
387
|
-
${entity.PrimaryKeys.map(
|
|
388
|
-
FROM
|
|
384
|
+
SELECT
|
|
385
|
+
${entity.PrimaryKeys.map(pk => `ot.[${pk.Name}]`).join(', ')}, ot.${core_1.EntityInfo.CreatedAtFieldName} AS CreatedAt, ot.${core_1.EntityInfo.UpdatedAtFieldName} AS UpdatedAt
|
|
386
|
+
FROM
|
|
389
387
|
[${entity.SchemaName}].[${entity.BaseView}] ot
|
|
390
|
-
LEFT JOIN
|
|
391
|
-
__mj.vwRecordChanges rc
|
|
392
|
-
ON
|
|
393
|
-
(${primaryKeyString} = rc.RecordID) AND
|
|
394
|
-
rc.Type = 'Create' AND
|
|
395
|
-
rc.EntityID = '${entity.ID}'
|
|
396
|
-
WHERE
|
|
388
|
+
LEFT JOIN
|
|
389
|
+
__mj.vwRecordChanges rc
|
|
390
|
+
ON
|
|
391
|
+
(${primaryKeyString} = rc.RecordID) AND
|
|
392
|
+
rc.Type = 'Create' AND
|
|
393
|
+
rc.EntityID = '${entity.ID}'
|
|
394
|
+
WHERE
|
|
397
395
|
rc.RecordID IS NULL;
|
|
398
396
|
`;
|
|
399
397
|
}
|
|
400
398
|
generateDetectDeletionsQuery(entity) {
|
|
401
399
|
const primaryKeyString = this.getPrimaryKeyString(entity, 'ot');
|
|
402
400
|
return `
|
|
403
|
-
SELECT
|
|
401
|
+
SELECT
|
|
404
402
|
rc.RecordID, MAX(rc.ChangedAt) ChangedAt
|
|
405
|
-
FROM
|
|
403
|
+
FROM
|
|
406
404
|
__mj.vwRecordChanges rc
|
|
407
|
-
LEFT JOIN
|
|
408
|
-
[${entity.SchemaName}].[${entity.BaseView}] ot
|
|
409
|
-
ON
|
|
405
|
+
LEFT JOIN
|
|
406
|
+
[${entity.SchemaName}].[${entity.BaseView}] ot
|
|
407
|
+
ON
|
|
410
408
|
rc.RecordID = ${primaryKeyString}
|
|
411
|
-
WHERE
|
|
412
|
-
${entity.PrimaryKeys.map(
|
|
409
|
+
WHERE
|
|
410
|
+
${entity.PrimaryKeys.map(pk => `ot.[${pk.Name}] IS NULL`).join(' AND ')}
|
|
411
|
+
AND
|
|
412
|
+
rc.EntityID = '${entity.ID}'
|
|
413
413
|
AND
|
|
414
|
-
|
|
415
|
-
AND
|
|
416
|
-
NOT EXISTS
|
|
414
|
+
NOT EXISTS
|
|
417
415
|
(
|
|
418
|
-
SELECT rc2.ID FROM __mj.vwRecordChanges rc2 WHERE
|
|
416
|
+
SELECT rc2.ID FROM __mj.vwRecordChanges rc2 WHERE
|
|
419
417
|
rc2.RecordID = rc.RecordID AND rc2.EntityID=rc.EntityID AND rc2.Type='Delete'
|
|
420
|
-
)
|
|
421
|
-
GROUP BY
|
|
418
|
+
)
|
|
419
|
+
GROUP BY
|
|
422
420
|
rc.RecordID
|
|
423
421
|
`; // last part of above query makes sure we don't include records already deleted in Record Changes
|
|
424
422
|
}
|
|
@@ -429,37 +427,37 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
429
427
|
async DetectChangesForEntities(entities) {
|
|
430
428
|
try {
|
|
431
429
|
if (!entities)
|
|
432
|
-
throw new Error(
|
|
430
|
+
throw new Error("entities parameter is required");
|
|
433
431
|
else if (entities.length === 0)
|
|
434
|
-
throw new Error(
|
|
432
|
+
throw new Error("entities parameter must have at least one entity in it");
|
|
435
433
|
const result = new ChangeDetectionResult();
|
|
436
434
|
result.Success = true;
|
|
437
435
|
result.Changes = [];
|
|
438
436
|
const promises = [];
|
|
439
437
|
// fire them all off in parallel
|
|
440
|
-
(0,
|
|
438
|
+
(0, core_1.LogStatus)(`Detecting changes for ${entities.length} entities`);
|
|
441
439
|
let numFinished = 0;
|
|
442
440
|
entities.forEach((e) => {
|
|
443
|
-
(0,
|
|
441
|
+
(0, core_1.UpdateCurrentConsoleLine)(` Starting change detection changes for ${e.Name}`, core_1.ConsoleColor.gray);
|
|
444
442
|
const p = this.DetectChangesForEntity(e); // no await
|
|
445
443
|
promises.push(p);
|
|
446
|
-
p.then(
|
|
447
|
-
(0,
|
|
444
|
+
p.then(entityResult => {
|
|
445
|
+
(0, core_1.UpdateCurrentConsoleProgress)(` Finished change detection changes for ${e.Name}`, ++numFinished, entities.length, entityResult.Success ? core_1.ConsoleColor.cyan : core_1.ConsoleColor.crimson);
|
|
448
446
|
result.Changes = result.Changes.concat(entityResult.Changes);
|
|
449
447
|
result.Success = result.Success && entityResult.Success;
|
|
450
448
|
});
|
|
451
449
|
});
|
|
452
450
|
// now wait for all of the promises to finish
|
|
453
451
|
await Promise.all(promises);
|
|
454
|
-
(0,
|
|
452
|
+
(0, core_1.UpdateCurrentConsoleProgress)(` Finished detecting changes for ${entities.length} entities`, entities.length, entities.length, result.Success ? core_1.ConsoleColor.green : core_1.ConsoleColor.red);
|
|
455
453
|
return result;
|
|
456
454
|
}
|
|
457
455
|
catch (e) {
|
|
458
|
-
(0,
|
|
456
|
+
(0, core_1.LogError)(e);
|
|
459
457
|
return {
|
|
460
458
|
Success: false,
|
|
461
459
|
ErrorMessage: e.message,
|
|
462
|
-
Changes: []
|
|
460
|
+
Changes: []
|
|
463
461
|
};
|
|
464
462
|
}
|
|
465
463
|
}
|
|
@@ -479,16 +477,16 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
479
477
|
let run; // delcare outside of try block so we have access to it in the catch block
|
|
480
478
|
try {
|
|
481
479
|
if (changes && changes.length > 0) {
|
|
482
|
-
const md = new
|
|
480
|
+
const md = new core_1.Metadata();
|
|
483
481
|
const results = [];
|
|
484
482
|
run = await this.StartRun();
|
|
485
|
-
(0,
|
|
483
|
+
(0, core_1.LogStatus)(`Replaying ${changes.length} changes`);
|
|
486
484
|
let numProcessed = 0;
|
|
487
485
|
for (let i = 0; i < changes.length; i += batchSize) {
|
|
488
486
|
const batch = changes.slice(i, i + batchSize);
|
|
489
487
|
// Process the current batch
|
|
490
488
|
const batchPromises = batch.map(async (change) => {
|
|
491
|
-
(0,
|
|
489
|
+
(0, core_1.UpdateCurrentConsoleProgress)(` Replaying ${change.Entity.Name} ${change.Type} ${change.PrimaryKey.ToConcatenatedString()}`, ++numProcessed, changes.length, core_1.ConsoleColor.gray);
|
|
492
490
|
const result = await this.ReplaySingleChange(md, run, change);
|
|
493
491
|
return { Success: result, change: change };
|
|
494
492
|
});
|
|
@@ -502,19 +500,19 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
502
500
|
// results.push({Success: result, change: change});
|
|
503
501
|
// }
|
|
504
502
|
run.EndedAt = new Date();
|
|
505
|
-
run.Status = results.every(
|
|
503
|
+
run.Status = results.every(r => r.Success) ? 'Complete' : 'Error';
|
|
506
504
|
if (await run.Save()) {
|
|
507
|
-
return results.every(
|
|
505
|
+
return results.every(r => r.Success);
|
|
508
506
|
}
|
|
509
507
|
else {
|
|
510
|
-
throw new Error(
|
|
508
|
+
throw new Error("Failed to save run");
|
|
511
509
|
}
|
|
512
510
|
}
|
|
513
511
|
else
|
|
514
512
|
return true; // no changes to process
|
|
515
513
|
}
|
|
516
514
|
catch (e) {
|
|
517
|
-
(0,
|
|
515
|
+
(0, core_1.LogError)(e);
|
|
518
516
|
if (run) {
|
|
519
517
|
// attempt to mark the run as error
|
|
520
518
|
try {
|
|
@@ -523,8 +521,8 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
523
521
|
await run.Save(); // dont' care about return value here, we've already tried to save it and the return value will be false anyway and message is the original root cause of the first exception
|
|
524
522
|
}
|
|
525
523
|
catch (innerError) {
|
|
526
|
-
(0,
|
|
527
|
-
(0,
|
|
524
|
+
(0, core_1.LogError)('Attempted to mark run as error failed, make sure you update the database for future runs to be allowed.');
|
|
525
|
+
(0, core_1.LogError)(innerError);
|
|
528
526
|
return false; // couldn't get it done
|
|
529
527
|
}
|
|
530
528
|
}
|
|
@@ -536,17 +534,17 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
536
534
|
*/
|
|
537
535
|
async StartRun() {
|
|
538
536
|
// first make sure an existing run isn't in progress
|
|
539
|
-
const rv = new
|
|
537
|
+
const rv = new core_1.RunView();
|
|
540
538
|
const existingRun = await rv.RunView({
|
|
541
|
-
EntityName:
|
|
542
|
-
ExtraFilter: "Status NOT IN('Complete', 'Error')"
|
|
539
|
+
EntityName: "Record Change Replay Runs",
|
|
540
|
+
ExtraFilter: "Status NOT IN('Complete', 'Error')"
|
|
543
541
|
}, this.ContextUser);
|
|
544
542
|
if (existingRun && existingRun.Success) {
|
|
545
543
|
if (existingRun.Results.length > 0)
|
|
546
544
|
throw new Error(`Existing Record Change Replay Run ${existingRun.Results[0].ID} is not complete or marked as error, cannot start a new run.`);
|
|
547
545
|
else {
|
|
548
|
-
const md = new
|
|
549
|
-
const run = await md.GetEntityObject(
|
|
546
|
+
const md = new core_1.Metadata();
|
|
547
|
+
const run = await md.GetEntityObject("Record Change Replay Runs", this.ContextUser);
|
|
550
548
|
run.StartedAt = new Date();
|
|
551
549
|
run.UserID = this.ContextUser.ID;
|
|
552
550
|
run.Status = 'In Progress';
|
|
@@ -554,12 +552,12 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
554
552
|
return run;
|
|
555
553
|
}
|
|
556
554
|
else
|
|
557
|
-
throw new Error(
|
|
555
|
+
throw new Error("Failed to start run");
|
|
558
556
|
}
|
|
559
557
|
}
|
|
560
558
|
else {
|
|
561
559
|
// failed to run the view
|
|
562
|
-
throw new Error(
|
|
560
|
+
throw new Error("Failed to check for existing run: " + existingRun.ErrorMessage);
|
|
563
561
|
}
|
|
564
562
|
}
|
|
565
563
|
/**
|
|
@@ -591,7 +589,7 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
591
589
|
// if we get here, entityObject is now all set to go for replay!
|
|
592
590
|
if (change.Type === 'Delete') {
|
|
593
591
|
const result = await entityObject.Delete({
|
|
594
|
-
ReplayOnly: true
|
|
592
|
+
ReplayOnly: true
|
|
595
593
|
});
|
|
596
594
|
return this.FinishRecordChangeRecord(rc, result ? 'success' : 'error', entityObject.LatestResult?.Error);
|
|
597
595
|
}
|
|
@@ -599,17 +597,17 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
599
597
|
// for updates and creates we just call Save() with the ReplayOnly option
|
|
600
598
|
const result = await entityObject.Save({
|
|
601
599
|
ReplayOnly: true,
|
|
602
|
-
IgnoreDirtyState: false
|
|
600
|
+
IgnoreDirtyState: false //not relevant for replay
|
|
603
601
|
});
|
|
604
602
|
return this.FinishRecordChangeRecord(rc, result ? 'success' : 'error', entityObject.LatestResult?.Error);
|
|
605
603
|
}
|
|
606
604
|
}
|
|
607
605
|
else {
|
|
608
|
-
throw new Error(
|
|
606
|
+
throw new Error("Failed to create Record Change record");
|
|
609
607
|
}
|
|
610
608
|
}
|
|
611
609
|
catch (e) {
|
|
612
|
-
(0,
|
|
610
|
+
(0, core_1.LogError)(e);
|
|
613
611
|
return false;
|
|
614
612
|
}
|
|
615
613
|
}
|
|
@@ -626,7 +624,7 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
626
624
|
return false;
|
|
627
625
|
}
|
|
628
626
|
catch (e) {
|
|
629
|
-
(0,
|
|
627
|
+
(0, core_1.LogError)(e);
|
|
630
628
|
return false;
|
|
631
629
|
}
|
|
632
630
|
}
|
|
@@ -636,7 +634,7 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
636
634
|
*/
|
|
637
635
|
async CreateRecordChangeRecord(md, run, change) {
|
|
638
636
|
try {
|
|
639
|
-
const rc = await md.GetEntityObject(
|
|
637
|
+
const rc = await md.GetEntityObject("Record Changes", this.ContextUser);
|
|
640
638
|
rc.EntityID = change.Entity.ID;
|
|
641
639
|
if (change.LegacyKey)
|
|
642
640
|
rc.RecordID = change.LegacyKeyValue; // need to match legacy key otherwise the other RC records will keep coming back up in detect changes runs in the future
|
|
@@ -659,7 +657,7 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
659
657
|
changesObject[field.FieldName] = {
|
|
660
658
|
field: field.FieldName,
|
|
661
659
|
oldValue: field.OldValue,
|
|
662
|
-
newValue: field.NewValue
|
|
660
|
+
newValue: field.NewValue
|
|
663
661
|
};
|
|
664
662
|
}
|
|
665
663
|
if (change.Type === 'Update')
|
|
@@ -688,11 +686,11 @@ class ExternalChangeDetectorEngine extends global_1.BaseEngine {
|
|
|
688
686
|
return rc;
|
|
689
687
|
}
|
|
690
688
|
else {
|
|
691
|
-
throw new Error(
|
|
689
|
+
throw new Error("Failed to save Record Change record: " + rc.LatestResult?.Message);
|
|
692
690
|
}
|
|
693
691
|
}
|
|
694
692
|
catch (e) {
|
|
695
|
-
(0,
|
|
693
|
+
(0, core_1.LogError)(e);
|
|
696
694
|
return null;
|
|
697
695
|
}
|
|
698
696
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChangeDetector.js","sourceRoot":"","sources":["../src/ChangeDetector.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ChangeDetector.js","sourceRoot":"","sources":["../src/ChangeDetector.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/external-change-detection",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.113.0",
|
|
4
4
|
"description": "Library used by server side applications to determine if changes have been made to entities by external systems/integrations",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -19,9 +19,10 @@
|
|
|
19
19
|
"typescript": "^5.4.5"
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@memberjunction/core
|
|
23
|
-
"@memberjunction/
|
|
24
|
-
"@memberjunction/
|
|
22
|
+
"@memberjunction/core": "2.113.0",
|
|
23
|
+
"@memberjunction/core-entities": "2.113.0",
|
|
24
|
+
"@memberjunction/global": "2.113.0",
|
|
25
|
+
"@memberjunction/sqlserver-dataprovider": "2.113.0"
|
|
25
26
|
},
|
|
26
27
|
"repository": {
|
|
27
28
|
"type": "git",
|