|
6 | 6 |
|
7 | 7 | SELECT
|
8 | 8 | [PIT_EFFECTIVE_DATETIME],{{#each sourceDataObjects}}{{stringcompare dataObjectClassifications.0.classification 'CoreBusinessConcept'}}{{sourceData}}
|
9 |
| - LEAD(PIT_EFFECTIVE_DATETIME,1,'9999-12-31') OVER (PARTITION BY [{{name}}.{{../../businessKeys.0.surrogateKey}}] ORDER BY PIT_EFFECTIVE_DATETIME ASC) AS PIT_EXPIRY_DATETIME, |
10 |
| - COALESCE([{{name}}.{{../../businessKeys.0.surrogateKey}}],0x00000000000000000000000000000000) AS [{{name}}.{{../../businessKeys.0.surrogateKey}}], |
| 9 | + LEAD(PIT_EFFECTIVE_DATETIME,1,'9999-12-31') OVER (PARTITION BY [{{name}}.{{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}}] ORDER BY PIT_EFFECTIVE_DATETIME ASC) AS PIT_EXPIRY_DATETIME, |
| 10 | + COALESCE([{{name}}.{{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}}],0x00000000000000000000000000000000) AS [{{name}}.{{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}}], |
11 | 11 | {{else}}
|
12 |
| - COALESCE([{{name}}.{{../../businessKeys.0.surrogateKey}}],0x00000000000000000000000000000000) AS [{{name}}.{{../../businessKeys.0.surrogateKey}}], |
| 12 | + COALESCE([{{name}}.{{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}}],0x00000000000000000000000000000000) AS [{{name}}.{{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}}], |
13 | 13 | {{#each dataItems}}
|
14 | 14 | [{{../name}}.{{name}}],
|
15 | 15 | {{/each}}
|
|
20 | 20 | (
|
21 | 21 | SELECT
|
22 | 22 | *,{{#each sourceDataObjects}}{{stringcompare dataObjectClassifications.0.classification 'CoreBusinessConcept'}}{{sourceData}}
|
23 |
| - LAG(ATTRIBUTE_CHECKSUM, 1, 0x00000000000000000000000000000000) OVER(PARTITION BY [{{name}}.{{../../businessKeys.0.surrogateKey}}] ORDER BY PIT_EFFECTIVE_DATETIME ASC) AS PREVIOUS_ATTRIBUTE_CHECKSUM |
| 23 | + LAG(ATTRIBUTE_CHECKSUM, 1, 0x00000000000000000000000000000000) OVER(PARTITION BY [{{name}}.{{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}}] ORDER BY PIT_EFFECTIVE_DATETIME ASC) AS PREVIOUS_ATTRIBUTE_CHECKSUM |
24 | 24 | {{/stringcompare}}
|
25 | 25 | {{/each}}
|
26 | 26 | FROM
|
27 | 27 | (
|
28 | 28 | SELECT
|
29 | 29 | *,{{#each sourceDataObjects}}{{stringcompare dataObjectClassifications.0.classification 'CoreBusinessConcept'}}{{sourceData}}
|
30 |
| - ISNULL(RTRIM(CONVERT(VARCHAR(100),[{{name}}.{{../../businessKeys.0.surrogateKey}}])),'NA')+'|'+ |
| 30 | + ISNULL(RTRIM(CONVERT(VARCHAR(100),[{{name}}.{{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}}])),'NA')+'|'+ |
31 | 31 | {{else}}
|
32 |
| - ISNULL(RTRIM(CONVERT(VARCHAR(100),[{{name}}.{{../../businessKeys.0.surrogateKey}}])),'NA')+'|'+ |
| 32 | + ISNULL(RTRIM(CONVERT(VARCHAR(100),[{{name}}.{{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}}])),'NA')+'|'+ |
33 | 33 | {{#each dataItems}}
|
34 | 34 | ISNULL(RTRIM(CONVERT(VARCHAR(100),[{{../name}}.{{name}}])),'NA')+'|'+
|
35 | 35 | {{/each}}
|
|
40 | 40 | FROM
|
41 | 41 | (
|
42 | 42 | SELECT{{#each sourceDataObjects}}{{stringcompare dataObjectClassifications.0.classification 'CoreBusinessConcept'}}{{sourceData}}
|
43 |
| - {{name}}.{{../../businessKeys.0.surrogateKey}} AS [{{name}}.{{../../businessKeys.0.surrogateKey}}], |
| 43 | + {{name}}.{{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}} AS [{{name}}.{{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}}], |
44 | 44 | {{else}}
|
45 |
| - {{name}}.{{../../businessKeys.0.surrogateKey}} AS [{{name}}.{{../../businessKeys.0.surrogateKey}}], |
| 45 | + {{name}}.{{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}} AS [{{name}}.{{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}}], |
46 | 46 | {{name}}.{{../../../metadataConfiguration.loadDateTimeAttribute}} AS [{{name}}.{{../../../metadataConfiguration.loadDateTimeAttribute}}],
|
47 | 47 | {{#each dataItems}}
|
48 | 48 | {{../name}}.{{name}} AS [{{../name}}.{{name}}],
|
|
53 | 53 | FROM
|
54 | 54 | (
|
55 | 55 | SELECT
|
56 |
| - {{businessKeys.0.surrogateKey}}, |
| 56 | + {{businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}}, |
57 | 57 | PIT_EFFECTIVE_DATETIME,
|
58 |
| - LEAD(PIT_EFFECTIVE_DATETIME,1,'9999-12-31') OVER (PARTITION BY {{businessKeys.0.surrogateKey}} ORDER BY PIT_EFFECTIVE_DATETIME ASC) AS PIT_EXPIRY_DATETIME |
| 58 | + LEAD(PIT_EFFECTIVE_DATETIME,1,'9999-12-31') OVER (PARTITION BY {{businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}} ORDER BY PIT_EFFECTIVE_DATETIME ASC) AS PIT_EXPIRY_DATETIME |
59 | 59 | FROM
|
60 | 60 | (
|
61 | 61 | {{#each sourceDataObjects}}
|
62 | 62 | {{stringcompare dataObjectClassifications.0.classification 'CoreBusinessConcept'}}
|
63 |
| - SELECT {{../../businessKeys.0.surrogateKey}}, CONVERT(DATETIME2(7), '1900-01-01') AS PIT_EFFECTIVE_DATETIME FROM {{../../../metadataConfiguration.vdwSchemaName}}.{{name}} |
| 63 | + SELECT {{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}}, CONVERT(DATETIME2(7), '1900-01-01') AS PIT_EFFECTIVE_DATETIME FROM {{../../../metadataConfiguration.vdwSchemaName}}.{{name}} |
64 | 64 | UNION
|
65 |
| - SELECT {{../../businessKeys.0.surrogateKey}}, {{../../../metadataConfiguration.loadDateTimeAttribute}} AS PIT_EFFECTIVE_DATETIME FROM {{../../../metadataConfiguration.vdwSchemaName}}.{{name}} |
| 65 | + SELECT {{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}}, {{../../../metadataConfiguration.loadDateTimeAttribute}} AS PIT_EFFECTIVE_DATETIME FROM {{../../../metadataConfiguration.vdwSchemaName}}.{{name}} |
66 | 66 | {{else}}
|
67 |
| - SELECT {{../../businessKeys.0.surrogateKey}}, {{../../../metadataConfiguration.loadDateTimeAttribute}} AS PIT_EFFECTIVE_DATETIME FROM {{../../../metadataConfiguration.vdwSchemaName}}.{{name}} |
| 67 | + SELECT {{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}}, {{../../../metadataConfiguration.loadDateTimeAttribute}} AS PIT_EFFECTIVE_DATETIME FROM {{../../../metadataConfiguration.vdwSchemaName}}.{{name}} |
68 | 68 | {{/stringcompare}}
|
69 | 69 | {{#unless @last}} UNION{{/unless}}
|
70 | 70 | {{/each}}
|
71 | 71 | ) PIT
|
72 | 72 | ) TimeRanges
|
73 | 73 | {{#each sourceDataObjects}}{{stringcompare dataObjectClassifications.0.classification 'CoreBusinessConcept'}}{{sourceData}}
|
74 | 74 | INNER JOIN {{../../../metadataConfiguration.vdwSchemaName}}.{{name}}
|
75 |
| - ON TimeRanges.{{../../businessKeys.0.surrogateKey}} = {{../../../metadataConfiguration.vdwSchemaName}}.{{name}}.[{{../../businessKeys.0.surrogateKey}}] |
| 75 | + ON TimeRanges.{{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}} = {{../../../metadataConfiguration.vdwSchemaName}}.{{name}}.[{{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}}] |
76 | 76 | {{else}}
|
77 | 77 | LEFT OUTER JOIN {{../../../metadataConfiguration.vdwSchemaName}}.{{name}}
|
78 |
| - ON TimeRanges.{{../../businessKeys.0.surrogateKey}} = {{../../../metadataConfiguration.vdwSchemaName}}.{{name}}.[{{../../businessKeys.0.surrogateKey}}] |
| 78 | + ON TimeRanges.{{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}} = {{../../../metadataConfiguration.vdwSchemaName}}.{{name}}.[{{../../businessKeys.0.businessKeyComponentMapping.0.targetDataItem.name}}] |
79 | 79 | AND {{../../../metadataConfiguration.vdwSchemaName}}.{{name}}.{{../../../metadataConfiguration.loadDateTimeAttribute}} <= TimeRanges.PIT_EFFECTIVE_DATETIME
|
80 | 80 | AND {{../../../metadataConfiguration.vdwSchemaName}}.{{name}}.{{../../../metadataConfiguration.expiryDateTimeAttribute}} >= TimeRanges.PIT_EXPIRY_DATETIME
|
81 | 81 | {{/stringcompare}}
|
|
0 commit comments