@cap-js/change-tracking 1.1.3 → 2.0.0-beta.1
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/CHANGELOG.md +36 -1
- package/README.md +45 -71
- package/_i18n/i18n.properties +12 -20
- package/_i18n/i18n_ar.properties +3 -3
- package/_i18n/i18n_bg.properties +3 -3
- package/_i18n/i18n_cs.properties +3 -3
- package/_i18n/i18n_da.properties +3 -3
- package/_i18n/i18n_de.properties +3 -3
- package/_i18n/i18n_el.properties +3 -3
- package/_i18n/i18n_en.properties +3 -3
- package/_i18n/i18n_en_US_saptrc.properties +3 -32
- package/_i18n/i18n_es.properties +3 -3
- package/_i18n/i18n_es_MX.properties +3 -3
- package/_i18n/i18n_fi.properties +3 -3
- package/_i18n/i18n_fr.properties +3 -3
- package/_i18n/i18n_he.properties +3 -3
- package/_i18n/i18n_hr.properties +3 -3
- package/_i18n/i18n_hu.properties +3 -3
- package/_i18n/i18n_it.properties +3 -3
- package/_i18n/i18n_ja.properties +3 -3
- package/_i18n/i18n_kk.properties +3 -3
- package/_i18n/i18n_ko.properties +3 -3
- package/_i18n/i18n_ms.properties +3 -3
- package/_i18n/i18n_nl.properties +3 -3
- package/_i18n/i18n_no.properties +3 -3
- package/_i18n/i18n_pl.properties +3 -3
- package/_i18n/i18n_pt.properties +3 -3
- package/_i18n/i18n_ro.properties +3 -3
- package/_i18n/i18n_ru.properties +3 -3
- package/_i18n/i18n_sh.properties +3 -3
- package/_i18n/i18n_sk.properties +3 -3
- package/_i18n/i18n_sl.properties +3 -3
- package/_i18n/i18n_sv.properties +3 -3
- package/_i18n/i18n_th.properties +3 -3
- package/_i18n/i18n_tr.properties +3 -3
- package/_i18n/i18n_uk.properties +3 -3
- package/_i18n/i18n_vi.properties +3 -3
- package/_i18n/i18n_zh_CN.properties +3 -3
- package/_i18n/i18n_zh_TW.properties +3 -3
- package/cds-plugin.js +17 -260
- package/index.cds +199 -75
- package/lib/TriggerCQN2SQL.js +42 -0
- package/lib/h2/java-codegen.js +843 -0
- package/lib/h2/register.js +27 -0
- package/lib/h2/triggers.js +42 -0
- package/lib/hana/composition.js +250 -0
- package/lib/hana/register.js +28 -0
- package/lib/hana/sql-expressions.js +224 -0
- package/lib/hana/triggers.js +254 -0
- package/lib/localization.js +59 -115
- package/lib/model-enhancer.js +266 -0
- package/lib/postgres/composition.js +191 -0
- package/lib/postgres/register.js +44 -0
- package/lib/postgres/sql-expressions.js +271 -0
- package/lib/postgres/triggers.js +115 -0
- package/lib/skipHandlers.js +34 -0
- package/lib/sqlite/composition.js +235 -0
- package/lib/sqlite/register.js +28 -0
- package/lib/sqlite/sql-expressions.js +238 -0
- package/lib/sqlite/triggers.js +164 -0
- package/lib/utils/change-tracking.js +394 -0
- package/lib/utils/composition-helpers.js +67 -0
- package/lib/utils/entity-collector.js +297 -0
- package/lib/utils/session-variables.js +278 -0
- package/lib/utils/trigger-utils.js +94 -0
- package/package.json +57 -39
- package/lib/change-log.js +0 -575
- package/lib/entity-helper.js +0 -216
- package/lib/format-options.js +0 -66
- package/lib/template-processor.js +0 -115
package/CHANGELOG.md
CHANGED
|
@@ -4,7 +4,7 @@ All notable changes to this project will be documented in this file.
|
|
|
4
4
|
This project adheres to [Semantic Versioning](http://semver.org/).
|
|
5
5
|
The format is based on [Keep a Changelog](http://keepachangelog.com/).
|
|
6
6
|
|
|
7
|
-
## Version
|
|
7
|
+
## Version 2.0.0 - TBD
|
|
8
8
|
|
|
9
9
|
### Added
|
|
10
10
|
|
|
@@ -12,6 +12,41 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/).
|
|
|
12
12
|
|
|
13
13
|
### Changed
|
|
14
14
|
|
|
15
|
+
## Version 2.0.0-beta - 27.02.26
|
|
16
|
+
|
|
17
|
+
### Added
|
|
18
|
+
- Trigger generation for SQLite, HANA, Postgres and H2 to perform change tracking on a database level
|
|
19
|
+
- Allow grouping of changes via new `transactionID` column
|
|
20
|
+
- Added `valueChangedFromLabel` and `valueChangedToLabel` to `sap.changelog.Changes` for localized labels
|
|
21
|
+
- Allow change tracking skip via session variables for entire transactions, entities, elements (`ct.skip`)
|
|
22
|
+
|
|
23
|
+
### Fixed
|
|
24
|
+
- Performance issues when working with entities that include a large number of fields and children
|
|
25
|
+
- Creation of changelogs at bulk operations
|
|
26
|
+
- Fixed search and sort functionality on the `ChangeView`
|
|
27
|
+
- `LargeString` are truncated and don't lead to failing insert
|
|
28
|
+
- Supports change tracking with every kind of update operation
|
|
29
|
+
|
|
30
|
+
### Changed
|
|
31
|
+
- Switch from event handler registration to native database triggers for change capture mechanism
|
|
32
|
+
- Removed table entity `sap.changelog.ChangeLog` and flattened into `sap.changelog.Changes`
|
|
33
|
+
- Display changes with a Tree Table
|
|
34
|
+
- Modifications on `sap.changelog.Changes`
|
|
35
|
+
- Removed `serviceEntityPath`, `keys` and foreign key `changeLog`
|
|
36
|
+
- Renamed `entityID` to `objectID`
|
|
37
|
+
- Renamed `parentEntityID` to `rootObjectID` and `parentKey` to `rootEntityKey`
|
|
38
|
+
- Added `entityKey`, `createdAt` and `createdBy` from deleted entity `sap.changelog.ChangeLog`
|
|
39
|
+
- Added `rootEntity` field
|
|
40
|
+
- Localization is performed on database level and therefore the table `sap.changelog.i18nKeys` that stores localized labels was added
|
|
41
|
+
- Expose localized label fields on `sap.changelog.ChangeView`
|
|
42
|
+
|
|
43
|
+
## Version 1.1.4 - 03.12.25
|
|
44
|
+
|
|
45
|
+
### Fixed
|
|
46
|
+
- Server no longer crashes when after a DB migration the service name or attribute name change
|
|
47
|
+
- Fix crash when applications uses feature toogles or extensibility
|
|
48
|
+
|
|
49
|
+
|
|
15
50
|
## Version 1.1.3 - 27.10.25
|
|
16
51
|
|
|
17
52
|
### Changed
|
package/README.md
CHANGED
|
@@ -5,23 +5,7 @@ a [CDS plugin](https://cap.cloud.sap/docs/node.js/cds-plugins#cds-plugin-package
|
|
|
5
5
|
[](https://api.reuse.software/info/github.com/cap-js/change-tracking)
|
|
6
6
|
|
|
7
7
|
> [!IMPORTANT]
|
|
8
|
-
>
|
|
9
|
-
|
|
10
|
-
> [!IMPORTANT]
|
|
11
|
-
> This release establishes support for multi-tenant deployments using MTX and extensibility.
|
|
12
|
-
>
|
|
13
|
-
> To achieve this, the code was modified significantly. While we tested extensively, there still may be glitches or unexpected situations which we did not cover. So please **test this release extensively before applying it to productive** scenarios. Please also report any bugs or glitches, ideally by contributing a test-case for us to incorporate.
|
|
14
|
-
>
|
|
15
|
-
> See the changelog for a full list of changes
|
|
16
|
-
|
|
17
|
-
> [!Warning]
|
|
18
|
-
>
|
|
19
|
-
> Please note that if your project is multi-tenant, then the CDS version must be higher than 8.6 and the mtx version higher than 2.5 for change-tracking to work.
|
|
20
|
-
|
|
21
|
-
> [!Warning]
|
|
22
|
-
>
|
|
23
|
-
> When using multi-tenancy with MTX, the generated facets and associations have to be created by the model provider of the MTX component. Therefore, the plugin also must be added to the `package.json` of the MTX sidecar.
|
|
24
|
-
>Although we tested this scenario extensively, there still might be cases where the automatic generation will not work as expected. If this happends in your scenario, we suggest using the `@changelog.disable_assoc` ([see here](#disable-association-to-changes-generation)) for all tracked entities and to add the association and facet manually to the service entity.
|
|
8
|
+
> With version 2.0 we completely refactored how changes are tracked. Previously the logic was completely on the application layer, which limited the types of queries trackable and came with major performance penalties in larger projects. With v2.0 the changes are now fully tracked on the database layer via database triggers. Furthermore with v2.0 the table definition for changes was cleaned up. This means any upgrade involves a schema change.
|
|
25
9
|
|
|
26
10
|
|
|
27
11
|
### Table of Contents
|
|
@@ -46,61 +30,37 @@ a [CDS plugin](https://cap.cloud.sap/docs/node.js/cds-plugins#cds-plugin-package
|
|
|
46
30
|
|
|
47
31
|
## Try it Locally
|
|
48
32
|
|
|
49
|
-
In this guide, we use the [Incidents Management reference sample app](https://github.com/cap-js/incidents-app) as the base to add change tracking to.
|
|
50
|
-
|
|
51
|
-
1. [Prerequisites](#1-prerequisites)
|
|
52
|
-
2. [Setup](#2-setup)
|
|
53
|
-
3. [Annotations](#3-annotations)
|
|
54
|
-
4. [Testing](#4-testing)
|
|
55
|
-
|
|
56
|
-
### 1. Prerequisites
|
|
57
|
-
|
|
58
|
-
Clone the repository and apply the step-by-step instructions:
|
|
59
|
-
|
|
60
|
-
```sh
|
|
61
|
-
git clone https://github.com/cap-js/incidents-app
|
|
62
|
-
cd incidents-app
|
|
63
|
-
npm i
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
**Alternatively**, you can clone the incidents app including the prepared enhancements for change-tracking:
|
|
67
|
-
|
|
68
|
-
```sh
|
|
69
|
-
git clone https://github.com/cap-js/calesi --recursive
|
|
70
|
-
cd calesi
|
|
71
|
-
npm i
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
```sh
|
|
75
|
-
cds w samples/change-tracking
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
### 2. Setup
|
|
79
|
-
|
|
80
33
|
To enable change tracking, simply add this self-configuring plugin package to your project:
|
|
81
34
|
|
|
82
35
|
```sh
|
|
83
36
|
npm add @cap-js/change-tracking
|
|
84
37
|
```
|
|
85
|
-
If you use multi-tenancy, please add the plugin also to the MTX poroject(The mtx version must be higher than 2.5).
|
|
86
38
|
|
|
87
|
-
|
|
39
|
+
> [!Warning]
|
|
40
|
+
>
|
|
41
|
+
> Please note that if your project is multi-tenant, then the CDS version must be higher than 8.6 and the mtx version higher than 2.5 for change-tracking to work.
|
|
42
|
+
|
|
43
|
+
> [!Warning]
|
|
44
|
+
>
|
|
45
|
+
> When using multi-tenancy with MTX, the generated database triggers, facets and associations have to be created by the model provider of the MTX component. Therefore, the plugin also must be added to the `package.json` of the MTX sidecar.
|
|
46
|
+
|
|
47
|
+
### Annotations
|
|
88
48
|
|
|
89
49
|
> [!WARNING]
|
|
90
50
|
> Please be aware that [**sensitive** or **personal** data](https://cap.cloud.sap/docs/guides/data-privacy/annotations#annotating-personal-data) (annotated with `@PersonalData`) is not change tracked, since viewing the log allows users to circumvent [audit-logging](https://cap.cloud.sap/docs/guides/data-privacy/audit-logging#setup).
|
|
91
51
|
|
|
92
|
-
All
|
|
52
|
+
All you need to do is to identify what should be change-tracked by annotating respective entities and elements in our model with the `@changelog` annotation. Following the [best practice of separation of concerns](https://cap.cloud.sap/docs/guides/domain-modeling#separation-of-concerns), we do so in a separate file _db/change-tracking.cds_:
|
|
93
53
|
|
|
94
54
|
```cds
|
|
95
|
-
using {
|
|
55
|
+
using { sap.capire.Incidents, sap.capire.Conversations } from './schema.cds';
|
|
96
56
|
|
|
97
|
-
annotate
|
|
57
|
+
annotate Incidents {
|
|
98
58
|
customer @changelog: [customer.name];
|
|
99
59
|
title @changelog;
|
|
100
60
|
status @changelog;
|
|
101
61
|
}
|
|
102
62
|
|
|
103
|
-
annotate
|
|
63
|
+
annotate Conversations with @changelog: [author, timestamp] {
|
|
104
64
|
message @changelog @Common.Label: 'Message';
|
|
105
65
|
}
|
|
106
66
|
```
|
|
@@ -109,7 +69,7 @@ The minimal annotation we require for change tracking is `@changelog` on element
|
|
|
109
69
|
|
|
110
70
|
Additional identifiers or labels can be added to obtain more *human-readable* change records as described below.
|
|
111
71
|
|
|
112
|
-
###
|
|
72
|
+
### Testing
|
|
113
73
|
|
|
114
74
|
With the steps above, we have successfully set up change tracking for our reference application. Let's see that in action.
|
|
115
75
|
|
|
@@ -119,7 +79,7 @@ With the steps above, we have successfully set up change tracking for our refere
|
|
|
119
79
|
cds watch
|
|
120
80
|
```
|
|
121
81
|
|
|
122
|
-
2. **Make a change** on your change-tracked elements. This change will automatically be persisted in the database table (`sap.changelog.
|
|
82
|
+
2. **Make a change** on your change-tracked elements. This change will automatically be persisted in the database table (`sap.changelog.Changes`) and made available in a pre-defined view, namely the [Change History view](#change-history-view) for your convenience.
|
|
123
83
|
|
|
124
84
|
#### Change History View
|
|
125
85
|
|
|
@@ -239,7 +199,24 @@ The system now uses the SAPUI5 default setting `![@UI.PartOfPreview]: true`, suc
|
|
|
239
199
|
|
|
240
200
|
### Disable UI Facet generation
|
|
241
201
|
|
|
242
|
-
If you do not want the UI facet
|
|
202
|
+
If you do not want the auto-provided UI facet for viewing changes, you can provide your own facet for the `changes` association in the `@UI.Facets` annotation and the plugin won't override it.
|
|
203
|
+
|
|
204
|
+
Furthermore if you annotate the association as not readable, the facet is also not added. You can achive this, like
|
|
205
|
+
|
|
206
|
+
```cds
|
|
207
|
+
@Capabilities.NavigationRestrictions.RestrictedProperties : [
|
|
208
|
+
{
|
|
209
|
+
NavigationProperty : changes,
|
|
210
|
+
ReadRestrictions : {
|
|
211
|
+
Readable : false,
|
|
212
|
+
},
|
|
213
|
+
},
|
|
214
|
+
]
|
|
215
|
+
entity SalesOrders {
|
|
216
|
+
key ID : Int16;
|
|
217
|
+
title : String @changelog;
|
|
218
|
+
}
|
|
219
|
+
```
|
|
243
220
|
|
|
244
221
|
### Disable Association to Changes Generation
|
|
245
222
|
|
|
@@ -337,7 +314,6 @@ This section describes modelling cases for further reference, from simple to com
|
|
|
337
314
|
- [Don'ts](#donts)
|
|
338
315
|
- [Use Case 1: Don't trace changes for field(s) with `Association to many`](#use-case-1-dont-trace-changes-for-fields-with-association-to-many)
|
|
339
316
|
- [Use Case 2: Don't trace changes for field(s) with *Unmanaged Association*](#use-case-2-dont-trace-changes-for-fields-with-unmanaged-association)
|
|
340
|
-
- [Use Case 3: Don't trace changes for CUD on DB entity](#use-case-3-dont-trace-changes-for-cud-on-db-entity)
|
|
341
317
|
|
|
342
318
|
### Specify Object ID
|
|
343
319
|
|
|
@@ -622,25 +598,23 @@ entity AggregatedBusinessTransactionData @(cds.autoexpose) : cuid {
|
|
|
622
598
|
}
|
|
623
599
|
```
|
|
624
600
|
|
|
625
|
-
The reason is that: When deploying to relational databases, Associations are mapped to foreign keys. Yet, when mapped to non-relational databases they're just references. More details could be found in [Prefer Managed Associations](https://cap.cloud.sap/docs/guides/domain-models#managed-associations). In the above sample, there is no column for FootprintInventory in the table AggregatedBusinessTransactionData, but there is a navigation property
|
|
601
|
+
The reason is that: When deploying to relational databases, Associations are mapped to foreign keys. Yet, when mapped to non-relational databases they're just references. More details could be found in [Prefer Managed Associations](https://cap.cloud.sap/docs/guides/domain-models#managed-associations). In the above sample, there is no column for FootprintInventory in the table AggregatedBusinessTransactionData, but there is a navigation property FootprintInventory of in OData entity metadata.
|
|
626
602
|
|
|
627
|
-
#### Use Case 3: Don't trace changes for CUD on DB entity
|
|
628
603
|
|
|
629
|
-
|
|
630
|
-
this.on("UpdateActivationStatus", async (req) =>
|
|
631
|
-
// PaymentAgreementsOutgoingDb is the DB entity
|
|
632
|
-
await UPDATE.entity(PaymentAgreementsOutgoingDb)
|
|
633
|
-
.where({ ID: paymentAgreement.ID })
|
|
634
|
-
.set({ ActivationStatus_code: ActivationCodes.ACTIVE });
|
|
635
|
-
);
|
|
636
|
-
```
|
|
604
|
+
## Contributing
|
|
637
605
|
|
|
638
|
-
|
|
606
|
+
This project is open to feature requests/suggestions, bug reports etc. via [GitHub issues](https://github.com/cap-js/change-tracking/issues). Contribution and feedback are encouraged and always welcome. For more information about how to contribute, the project structure, as well as additional contribution information, see our [Contribution Guidelines](CONTRIBUTING.md).
|
|
639
607
|
|
|
608
|
+
### Testing changes locally
|
|
640
609
|
|
|
641
|
-
|
|
610
|
+
In the `tests/bookshop` folder a full sample application is provided, against which you can test your changes:
|
|
642
611
|
|
|
643
|
-
|
|
612
|
+
```sh
|
|
613
|
+
git clone https://github.com/cap-js/change-tracking
|
|
614
|
+
npm i
|
|
615
|
+
cd tests/bookshop
|
|
616
|
+
cds watch
|
|
617
|
+
```
|
|
644
618
|
|
|
645
619
|
## Code of Conduct
|
|
646
620
|
|
package/_i18n/i18n.properties
CHANGED
|
@@ -3,11 +3,7 @@
|
|
|
3
3
|
#XTIT: Field Name
|
|
4
4
|
Changes.ID=Changes ID
|
|
5
5
|
#XTIT: Field Name
|
|
6
|
-
Changes.
|
|
7
|
-
#XTIT: Field Name
|
|
8
|
-
Changes.parentEntityID=Parent Object ID
|
|
9
|
-
#XTIT: Field Name
|
|
10
|
-
Changes.parentKey=Parent Key
|
|
6
|
+
Changes.objectID=Object ID
|
|
11
7
|
#XTIT: Field Name
|
|
12
8
|
Changes.serviceEntityPath=Service Entity Path
|
|
13
9
|
#XTIT: Field Name
|
|
@@ -23,32 +19,28 @@ Changes.valueChangedTo=New Value
|
|
|
23
19
|
#XTIT: Field Name
|
|
24
20
|
Changes.entity=Object Type
|
|
25
21
|
#XTIT: Field Name
|
|
26
|
-
Changes.serviceEntity=Service Object Type
|
|
27
|
-
#XTIT: Field Name
|
|
28
22
|
Changes.valueDataType=Value Data Type
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
ChangeLog.entity=Entity
|
|
23
|
+
#XFLD: Field label
|
|
24
|
+
Changes.createdAt=Changed at
|
|
25
|
+
#XFLD: Field label
|
|
26
|
+
Changes.createdBy=Changed by
|
|
34
27
|
#XTIT: Field Name
|
|
35
|
-
|
|
28
|
+
Changes.transactionID=Transaction ID
|
|
36
29
|
#XTIT: Field Name
|
|
37
|
-
|
|
38
|
-
|
|
30
|
+
Changes.entityKey=Entity Key
|
|
39
31
|
|
|
40
32
|
## Change Log Modifications##
|
|
41
33
|
########################################
|
|
42
34
|
#XFLD: Field label
|
|
43
|
-
|
|
35
|
+
Changes.modification.create=Create
|
|
44
36
|
#XFLD: Field label
|
|
45
|
-
|
|
37
|
+
Changes.modification.update=Update
|
|
46
38
|
#XFLD: Field label
|
|
47
|
-
|
|
39
|
+
Changes.modification.delete=Delete
|
|
48
40
|
#XFLD: Field label
|
|
49
|
-
|
|
41
|
+
Changes.createdAt=Changed On
|
|
50
42
|
#XFLD: Field label
|
|
51
|
-
|
|
43
|
+
Changes.createdBy=Changed By
|
|
52
44
|
|
|
53
45
|
## Change History Table##
|
|
54
46
|
########################################
|
package/_i18n/i18n_ar.properties
CHANGED
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=\u0643\u064A\u0627\u0646 \u0627\u0644\u062E\u062F\u0645\
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=\u0625\u0646\u0634\u0627\u0621
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=\u062A\u062D\u062F\u064A\u062B
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=\u062D\u0630\u0641
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=\u0648\u0642\u062A \u0627\u0644\u062A\u063A\u064A\u064A\u0631
|
|
50
50
|
#XFLD: Field label
|
package/_i18n/i18n_bg.properties
CHANGED
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=\u0415\u0434\u0438\u043D\u0438\u0446\u0430 \u0437\u0430
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=\u0421\u044A\u0437\u0434\u0430\u0432\u0430\u043D\u0435
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=\u0410\u043A\u0442\u0443\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=\u0418\u0437\u0442\u0440\u0438\u0432\u0430\u043D\u0435
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=\u041F\u0440\u043E\u043C\u0435\u043D\u0435\u043D\u043E \u0432
|
|
50
50
|
#XFLD: Field label
|
package/_i18n/i18n_cs.properties
CHANGED
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=Entita slu\u017Eby
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=Vytvo\u0159it
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=Aktualizovat
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=Odstranit
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=Zm\u011Bn\u011Bno v
|
|
50
50
|
#XFLD: Field label
|
package/_i18n/i18n_da.properties
CHANGED
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=Serviceentitet
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=Opret
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=Opdater
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=Slet
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=\u00C6ndret kl.
|
|
50
50
|
#XFLD: Field label
|
package/_i18n/i18n_de.properties
CHANGED
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=Service-Entit\u00E4t
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=Anlegen
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=Aktualisieren
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=L\u00F6schen
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=Ge\u00E4ndert am
|
|
50
50
|
#XFLD: Field label
|
package/_i18n/i18n_el.properties
CHANGED
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=\u039F\u03BD\u03C4\u03CC\u03C4\u03B7\u03C4\u03B1 \u03A5\
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=\u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=\u0394\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=\u0386\u03BB\u03BB\u03B1\u03BE\u03B5 \u03C3\u03C4\u03B9\u03C2
|
|
50
50
|
#XFLD: Field label
|
package/_i18n/i18n_en.properties
CHANGED
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=Service Entity
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=Create
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=Update
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=Delete
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=Changed at
|
|
50
50
|
#XFLD: Field label
|
|
@@ -1,55 +1,26 @@
|
|
|
1
|
-
## Change Table Fields Description##
|
|
2
|
-
####################################
|
|
3
|
-
#XTIT: Field Name
|
|
4
1
|
Changes.ID=VfK41Fkk0DbVUFpSXQ8AqA_Changes ID
|
|
5
|
-
#XTIT: Field Name
|
|
6
2
|
Changes.entityID=ZiKVAYEIaFE0mFC3IeEFbg_Object ID
|
|
7
|
-
#XTIT: Field Name
|
|
8
3
|
Changes.parentEntityID=rnkgCvsaOC/hCPg0vF5EwA_Parent Object ID
|
|
9
|
-
#XTIT: Field Name
|
|
10
4
|
Changes.parentKey=AF/Za63Sqdiz7MXXjEROnA_Parent Key
|
|
11
|
-
#XTIT: Field Name
|
|
12
5
|
Changes.serviceEntityPath=viNxBh1vYxxG3kXw60lQPg_Service Entity Path
|
|
13
|
-
#XTIT: Field Name
|
|
14
6
|
Changes.attribute=cWjA87iS+Cm9tvOovmGGeg_Field
|
|
15
|
-
#XTIT: Field Name
|
|
16
7
|
Changes.keys=yOxQrAVGEhnkFKx3Uu+UQA_Changes Keys
|
|
17
|
-
#XTIT: Field Name
|
|
18
8
|
Changes.modification=uubj6khCgQZXWKOkGbkQgQ_Change Type
|
|
19
|
-
#XTIT: Field Name
|
|
20
9
|
Changes.valueChangedFrom=iohxHdR2acDLGNkvq8miKw_Old Value
|
|
21
|
-
#XTIT: Field Name
|
|
22
10
|
Changes.valueChangedTo=y65Nf+sdmQLjY6WGSnP5Sg_New Value
|
|
23
|
-
#XTIT: Field Name
|
|
24
11
|
Changes.entity=X+l1TGFuUkDEx610r4yjKQ_Object Type
|
|
25
|
-
#XTIT: Field Name
|
|
26
12
|
Changes.serviceEntity=BsNZh4ZOpOzpazhamfXqww_Service Object Type
|
|
27
|
-
#XTIT: Field Name
|
|
28
13
|
Changes.valueDataType=t2TcrxYWauHkEKY0ZWU2sQ_Value Data Type
|
|
29
14
|
|
|
30
|
-
## Change Log Table Fields Description##
|
|
31
|
-
########################################
|
|
32
|
-
#XTIT: Field Name
|
|
33
15
|
ChangeLog.entity=D240DzaTaZ7FAgpA7cLIiQ_Entity
|
|
34
|
-
#XTIT: Field Name
|
|
35
16
|
ChangeLog.entityKey=xK+ceOtLvrRhC38wITucIg_Entity Key
|
|
36
|
-
#XTIT: Field Name
|
|
37
17
|
ChangeLog.serviceEntity=TWafyw7HrjY/21RcCMxxgQ_Service Entity
|
|
38
18
|
|
|
39
19
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
ChangeLog.modification.create=HzvJkMkINr79zGGMJxCQhg_Create
|
|
44
|
-
#XFLD: Field label
|
|
45
|
-
ChangeLog.modification.update=Jy7YgwcIfJ78NVdC9GBHXg_Update
|
|
46
|
-
#XFLD: Field label
|
|
47
|
-
ChangeLog.modification.delete=6Vb15r75SwLYaAwPBAAlXA_Delete
|
|
48
|
-
#XFLD: Field label
|
|
20
|
+
Changes.modification.create=HzvJkMkINr79zGGMJxCQhg_Create
|
|
21
|
+
Changes.modification.update=Jy7YgwcIfJ78NVdC9GBHXg_Update
|
|
22
|
+
Changes.modification.delete=6Vb15r75SwLYaAwPBAAlXA_Delete
|
|
49
23
|
ChangeLog.createdAt=It3muKsTssohbqCBz66Waw_Changed at
|
|
50
|
-
#XFLD: Field label
|
|
51
24
|
ChangeLog.createdBy=uceIpGWLWLeh6E5F5GHPdQ_Changed by
|
|
52
25
|
|
|
53
|
-
## Change History Table##
|
|
54
|
-
########################################
|
|
55
26
|
ChangeHistory=kUlw1/MxgMjeCPEQdQ3gRg_Change History
|
package/_i18n/i18n_es.properties
CHANGED
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=Entidad de servicio
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=Crear
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=Actualizar
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=Eliminar
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=Hora de modificaci\u00F3n
|
|
50
50
|
#XFLD: Field label
|
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=Entidad de servicio
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=Crear
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=Actualizar
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=Eliminar
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=Hora de modificaci\u00F3n
|
|
50
50
|
#XFLD: Field label
|
package/_i18n/i18n_fi.properties
CHANGED
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=Palveluentiteetti
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=Luo
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=P\u00E4ivit\u00E4
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=Poista
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=Muutosaika
|
|
50
50
|
#XFLD: Field label
|
package/_i18n/i18n_fr.properties
CHANGED
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=Entit\u00E9 de service
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=Cr\u00E9er
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=Mettre \u00E0 jour
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=Supprimer
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=Date/Heure de modification
|
|
50
50
|
#XFLD: Field label
|
package/_i18n/i18n_he.properties
CHANGED
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=\u05D9\u05E9\u05D5\u05EA \u05E9\u05D9\u05E8\u05D5\u05EA
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=\u05E6\u05D5\u05E8
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=\u05E2\u05D3\u05DB\u05DF
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=\u05DE\u05D7\u05E7
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=\u05E9\u05D5\u05E0\u05D4 \u05D1\u05E9\u05E2\u05D4
|
|
50
50
|
#XFLD: Field label
|
package/_i18n/i18n_hr.properties
CHANGED
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=Entitet usluge
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=Stvori
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=A\u017Euriraj
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=Izbri\u0161i
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=Promijenjeno
|
|
50
50
|
#XFLD: Field label
|
package/_i18n/i18n_hu.properties
CHANGED
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=Szolg\u00E1ltat\u00E1sentit\u00E1s
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=L\u00E9trehoz\u00E1s
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=Aktualiz\u00E1l\u00E1s
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=T\u00F6rl\u00E9s
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=M\u00F3dos\u00EDt\u00E1s id\u0151pontja
|
|
50
50
|
#XFLD: Field label
|
package/_i18n/i18n_it.properties
CHANGED
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=Entit\u00E0 di servizio
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=Crea
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=Aggiorna
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=Elimina
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=Ora di modifica
|
|
50
50
|
#XFLD: Field label
|
package/_i18n/i18n_ja.properties
CHANGED
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=\u30B5\u30FC\u30D3\u30B9\u30A8\u30F3\u30C6\u30A3\u30C6\u
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=\u4F5C\u6210
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=\u66F4\u65B0
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=\u524A\u9664
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=\u5909\u66F4\u6642\u523B
|
|
50
50
|
#XFLD: Field label
|
package/_i18n/i18n_kk.properties
CHANGED
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=\u049A\u044B\u0437\u043C\u0435\u0442 \u043E\u0431\u044A\
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=\u0416\u0430\u0441\u0430\u0443
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=\u0416\u0430\u04A3\u0430\u0440\u0442\u0443
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=\u0416\u043E\u044E
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=\u04E8\u0437\u0433\u0435\u0440\u0442\u0456\u043B\u0433\u0435\u043D \u0443\u0430\u049B\u044B\u0442\u044B
|
|
50
50
|
#XFLD: Field label
|
package/_i18n/i18n_ko.properties
CHANGED
|
@@ -40,11 +40,11 @@ ChangeLog.serviceEntity=\uC11C\uBE44\uC2A4 \uC5D4\uD2F0\uD2F0
|
|
|
40
40
|
## Change Log Modifications##
|
|
41
41
|
########################################
|
|
42
42
|
#XFLD: Field label
|
|
43
|
-
|
|
43
|
+
Changes.modification.create=\uC0DD\uC131
|
|
44
44
|
#XFLD: Field label
|
|
45
|
-
|
|
45
|
+
Changes.modification.update=\uC5C5\uB370\uC774\uD2B8
|
|
46
46
|
#XFLD: Field label
|
|
47
|
-
|
|
47
|
+
Changes.modification.delete=\uC0AD\uC81C
|
|
48
48
|
#XFLD: Field label
|
|
49
49
|
ChangeLog.createdAt=\uBCC0\uACBD \uC2DC\uAC04
|
|
50
50
|
#XFLD: Field label
|