Von CER direkt erkannte Abhängigkeitsfaktoren

Das Dienstprogramm erkennt die folgenden Typen von Abhängigkeiten für einen berechneten Attributwert direkt:

Tabelle 1. Von CER direkt erkannte Abhängigkeitsfaktoren
Name Zeitpunkt der Erkennung Auslöser für Neuberechnung
Gespeicherter Attributwert

Erkennt einen "eingegebenen" Attributwert, der in den CER-Datenbanktabellen gespeichert ist und während der Gesamtberechnung des Attributwerts abgerufen wurde. 1

Die Abhängigkeitsfaktor-ID verweist auf die interne ID für die Datenbankzeile des Attributs in den CER-Datenbanktabellen.

Falls sich der Wert des gespeicherten Attributs ändert, wird ein Änderungselement für Abhängigkeitsfaktoren für den gespeicherten Attributwert in einen Änderungssatz für Abhängigkeitsfaktoren geschrieben.
Regelwerkdefinitionen

Erkennt jedes Regelwerk, das eines der Attribute enthält, die in der Gesamtberechnung des Attributwerts verwendet werden.

Die Abhängigkeitsfaktor-ID verweist auf den Namen des Regelwerks, in dem eine oder mehrere bei der Gesamtberechnung festgestellte Attributdefinitionen enthalten sind.

Falls Änderungen an einem CER-Regelwerk veröffentlicht werden, wird ein Änderungselement für Abhängigkeitsfaktoren für das geänderte Regelwerk in einen Änderungssatz für Abhängigkeitsfaktoren geschrieben.
Suche mit "readall"

Erkennt alle Ausdrücke "readall" (siehe readall) ohne verschachtelte Ausdrücke match, die während der Gesamtberechnung festgestellt wurden und die in CER-Datenbanktabellen gespeicherte Regelobjekte abgerufen haben (im Gegensatz zu Regelobjekten, die mit Regelobjektkonvertern abgerufen wurden; siehe hierzu stattdessen Von Regelobjektkonvertern erkannte Abhängigkeitsfaktoren).

Die Abhängigkeitsfaktor-ID verweist auf den Namen der Regelklasse, die vom Ausdruck "readall" (siehe readall) gesucht wurde.

Ein Änderungselement für Abhängigkeitsfaktoren für die Regelklasse wird in einen Änderungssatz für Abhängigkeitsfaktoren geschrieben, wenn eine der folgenden Bedingungen zutrifft:

  • In den CER-Datenbanktabellen wird ein neues Regelobjekt für diese Regelklasse gespeichert.
  • Aus den CER-Datenbanktabellen wird ein vorhandenes Regelobjekt für diese Regelklasse entfernt.
Suche mit "readall"/"match"

Erkennt alle Ausdrücke "readall" (siehe readall), die während der Gesamtberechnung festgestellt wurden und die in CER-Datenbanktabellen gespeicherte Regelobjekte abgerufen haben (im Gegensatz zu Regelobjekten, die mit Regelobjektkonvertern abgerufen wurden; siehe hierzu stattdessen Von Regelobjektkonvertern erkannte Abhängigkeitsfaktoren).

Die Abhängigkeitsfaktor-ID verweist auf den Namen der Regelklasse, die vom Ausdruck "readall" (siehe readall) gesucht wurde, zusammen mit dem als Suchbedingung verwendeten Attributnamen und -wert.

Ein Änderungselement für Abhängigkeitsfaktoren für die Regelklasse und ihren Attributnamen sowie Übereinstimmungswert wird in einen Änderungssatz für Abhängigkeitsfaktoren geschrieben, wenn eine der folgenden Bedingungen zutrifft:

  • In den CER-Datenbanktabellen wird ein neues Regelobjekt für diese Regelklasse gespeichert.
  • Aus den CER-Datenbanktabellen wird ein vorhandenes Regelobjekt für diese Regelklasse entfernt.
  • Der Wert des als Suchbedingung verwendeten Attributs ändert sich für ein vorhandenes Regelobjekt (in diesem Fall werden zwei Änderungselemente für Abhängigkeitsfaktoren geschrieben, eines für den alten Wert des Attributs und ein weiteres für den neuen Wert des Attributs).
2

Diese Typen von Abhängigkeiten lassen sich am besten anhand eines Beispiels veranschaulichen.

Ausgangspunkt des Beispiels ist ein neu geschriebenes System, das die Steuerpflicht einer Person mithilfe von CER berechnet. Dieses Steuerpflichtsystem verwendet den Abhängigkeitsmanager, um Abhängigkeiten zu speichern, damit die Steuerpflicht (mit CER) neu berechnet werden kann, falls sich die Lebensumstände der Person ändern.

Das Steuerpflichtsystem speichert systemweite Informationen zu "Steuergrenzwerten" in Regelobjekten. Diese Regelobjekte werden in den CER-Datenbanktabellen gespeichert. Die CER-Regeln für die Berechnung der Steuerpflicht einer Person enthalten einen Ausdruck "readall" (siehe readall), um alle Steuergrenzwerte im System abzurufen.

Das Steuerpflichtsystem speichert auch systemweite Informationen zu "Vermögen" in Regelobjekten. Diese Regelobjekte werden in den CER-Datenbanktabellen gespeichert. Für jedes Vermögen ist der Eigentümer und der Marktwert angegeben. Die CER-Regeln für die Berechnung der Steuerpflicht einer Person enthalten einen Ausdruck "readall" (siehe readall), um das gesamte Vermögen im Eigentum dieser Person (also der Person mit einer Übereinstimmung von Asset.ownedByPersonID für Person.personID) abzurufen. Der Marktwert eines Vermögens kann geändert werden. Ebenso kann auch ein Vermögen von einer Person auf eine andere übertragen werden. Hierzu wird der Wert für Asset.ownedByPersonID von einer Personen-ID in eine andere Personen-ID geändert.

Die CER-Regeln für die Berechnung der Steuerpflicht einer Person beinhalten die Summierung des Wertes von Asset.marketValue für alle Vermögensbestandteile, die im Besitz dieser Person sind.

Das Steuerpflichtsystem enthält getrennte CER-Regelwerke für das Abrufen der Eingabedaten, die für die Berechnung der Steuerpflicht erforderlich sind, und für die eigentlichen Geschäftsberechnungen, die die Steuerpflicht einer Person anhand der abgerufenen Daten berechnen.

Ein Benutzer berechnet mit dem Steuerpflichtsystem die Steuerpflicht von Joe (personID 456) und von Mary (personID 457), die jeweils über ein Vermögenselement verfügen. Das Steuerpflichtsystem erkennt mithilfe des CER-Dienstprogramms Abhängigkeiten und übergibt diese zur Speicherung an den Abhängigkeitsmanager. Dies führt dazu, dass die folgenden Abhängigkeiten gespeichert werden:

Tabelle 2. Im Steuerpflichtbeispiel gespeicherte Abhängigkeiten
Typ des Abhängigkeitsprodukts ID des Abhängigkeitsprodukts Typ des Abhängigkeitsfaktors ID des Abhängigkeitsfaktors
Steuerpflicht 456 (Personen-ID von Joe) Suche mit "readall" Regelklasse: TaxThreshold 3
Steuerpflicht 456 Suche mit "readall"/"match" Regelklasse: Asset, mit Attributwert "ownedByPersonID=456" 4
Steuerpflicht 456 Gespeicherter Attributwert 789, also die interne ID von Asset.marketValue für Joes Vermögenselement 5
Steuerpflicht 456 Regelwerkdefinitionen TaxLiabilityDataRetrievalRuleSet 6
Steuerpflicht 456 Regelwerkdefinitionen TaxLiabilityBusinessCalculationsRuleSet 7
Steuerpflicht 457 (Personen-ID von Mary) Suche mit "readall" Regelklasse: TaxThreshold 8
Steuerpflicht 457 Suche mit "readall"/"match" Regelklasse: Asset, mit Attributwert "ownedByPersonID=457" 9
Steuerpflicht 457 Gespeicherter Attributwert 780, also die interne ID von Asset.marketValue für Marys Vermögenselement 10
Steuerpflicht 457 Regelwerkdefinitionen TaxLiabilityDataRetrievalRuleSet 11
Steuerpflicht 457 Regelwerkdefinitionen TaxLiabilityBusinessCalculationsRuleSet 12
13 14 15 16 17 18 19 20 21 22

Nachfolgend ist dargestellt, wie Neuberechnungen der Steuerpflicht durch verschiedene Änderungen der Daten ausgelöst werden:

Tabelle 3. Beispiel für Änderungselemente für Abhängigkeitsfaktoren bei Steuerpflicht
Datenänderung Aufgezeichnete Änderungselemente für Abhängigkeitsfaktoren Ausgelöste Neuberechnungen
Der Marktwert von Joes Vermögenselement steigt von 100 auf 120 Euro.
  • Gespeicherter Attributwert, 789
  • Joes Steuerpflicht wird neu berechnet.
Mary verkauft ihr Vermögenselement und das zugehörige Regelobjekt wird entfernt.
  • Suche mit "readall"/"match", Regelklasse: Asset, mit Attributwert "ownedByPersonID=457"
  • Marys Steuerpflicht wird neu berechnet.
Joe erhält ein neues Vermögenselement, das als neues Regelobjekt gespeichert wird.
  • Suche mit "readall"/"match", Regelklasse: Asset, mit Attributwert "ownedByPersonID=456"
  • Joes Steuerpflicht wird neu berechnet.
Joe überträgt sein erstes Vermögenselement auf Mary. Der Wert des Attributs "ownedByPersonID" für das Vermögenselement ändert sich daher von 456 in 457.
  • Suche mit "readall"/"match", Regelklasse: Asset, mit Attributwert "ownedByPersonID=456" (alter Wert)
  • Suche mit "readall"/"match", Regelklasse: Asset, mit Attributwert "ownedByPersonID=457" (neuer Wert)
  • Joes Steuerpflicht wird neu berechnet.
  • Marys Steuerpflicht wird neu berechnet.
Ein Administrator führt einen neuen Steuergrenzwert ein, der als neues Regelobjekt gespeichert wird.
  • Suche mit "readall", Regelklasse: TaxThreshold
  • Joes Steuerpflicht wird neu berechnet.
  • Marys Steuerpflicht wird neu berechnet.
Ein Administrator entfernt einen vorhandenen Steuergrenzwert. Das zugehörige Regelobjekt wird daher entfernt.
  • Suche mit "readall", Regelklasse: TaxThreshold
  • Joes Steuerpflicht wird neu berechnet.
  • Marys Steuerpflicht wird neu berechnet.
Ein Administrator veröffentlicht Änderungen am Regelwerk "TaxLiabilityBusinessCalculationsRuleSet".
  • Regelwerkdefinitionen, TaxLiabilityBusinessCalculationsRuleSet
  • Joes Steuerpflicht wird neu berechnet.
  • Marys Steuerpflicht wird neu berechnet.
1 Dies ist die Berechnung für das eigentliche Attribut oder für einen der internen Attributwerte, von dem es letztendlich abhängig ist (die "Zwischenberechnungen" zwischen dem berechneten Attributwert und seinen externen Dateneingaben).
2 Dies ist die Berechnung für das eigentliche Attribut oder für einen der internen Attributwerte, von dem es letztendlich abhängig ist (die "Zwischenberechnungen" zwischen dem berechneten Attributwert und seinen externen Dateneingaben).
3 Wird gespeichert, weil die Berechung von Joes Steuerpflicht den Abruf aller TaxThreshold-Regelobjekte verursachte.
4 Wird gespeichert, weil die Berechnung von Joes Steuerpflicht einen Abruf aller Asset-Regelobjekte verursacht hat, deren Eigentümer Joe ist.
5 Wird gespeichert, weil die Berechnung von Joes Steuerpflicht auf den gespeicherten Wert des Attributs "marketValue" für das einzige für Joe abgerufene Vermögenselement zugegriffen hat.
6 Wird gespeichert, weil an der Berechnung von Joes Steuerpflicht die Definitionen von Regelattributen in "TaxLiabilityDataRetrievalRuleSet" beteiligt waren (verwendet zum Abrufen der TaxThreshold- und Asset-Regelobjekte).
7 Wird gespeichert, weil an der Berechnung von Joes Steuerpflicht die Definitionen von Regelattributen in "TaxLiabilityBusinessCalculationsRuleSet" beteiligt waren (verwendet zum Berechnen der Gesamtsteuerpflicht anhand der Eingabedaten).
8 Wird gespeichert, weil die Berechung von Marys Steuerpflicht den Abruf aller TaxThreshold-Regelobjekte verursachte.
9 Wird gespeichert, weil die Berechnung von Marys Steuerpflicht einen Abruf aller Asset-Regelobjekte verursacht hat, deren Eigentümerin Mary ist.
10 Wird gespeichert, weil die Berechnung von Marys Steuerpflicht auf den gespeicherten Wert des Attributs "marketValue" für das einzige für Mary abgerufene Vermögenselement zugegriffen hat.
11 Wird gespeichert, weil an der Berechnung von Marys Steuerpflicht die Definitionen von Regelattributen in "TaxLiabilityDataRetrievalRuleSet" beteiligt waren (verwendet zum Abrufen der TaxThreshold- und Asset-Regelobjekte).
12 Wird gespeichert, weil an der Berechnung von Marys Steuerpflicht die Definitionen von Regelattributen in "TaxLiabilityBusinessCalculationsRuleSet" beteiligt waren (verwendet zum Berechnen der Gesamtsteuerpflicht anhand der Eingabedaten).
13 Wird gespeichert, weil die Berechnung von Joes Steuerpflicht den Abruf aller TaxThreshold-Regelobjekte verursacht hat.
14 Wird gespeichert, weil die Berechnung von Joes Steuerpflicht den Abruf alle Asset-Regelobjekte verursacht hat, deren Eigentümer Joe ist.
15 Wird gespeichert, weil die Berechnung von Joes Steuerpflicht auf den gespeicherten Wert des Attributs "marketValue" für das einzige für Joe abgerufene Vermögenselement zugegriffen hat.
16 Wird gespeichert, weil an der Berechnung von Joes Steuerpflicht die Definitionen von Regelattributen in "TaxLiabilityDataRetrievalRuleSet" beteiligt waren (verwendet zum Abrufen der TaxThreshold- und Asset-Regelobjekte).
17 Wird gespeichert, weil an der Berechnung von Joes Steuerpflicht die Definitionen von Regelattributen in "TaxLiabilityBusinessCalculationsRuleSet" beteiligt waren (verwendet zum Berechnen der Gesamtsteuerpflicht anhand der Eingabedaten).
18 Wird gespeichert, weil die Berechung von Marys Steuerpflicht den Abruf aller TaxThreshold-Regelobjekte verursachte.
19 Wird gespeichert, weil die Berechnung von Marys Steuerpflicht einen Abruf aller Asset-Regelobjekte verursacht hat, deren Eigentümerin Mary ist.
20 Wird gespeichert, weil die Berechnung von Marys Steuerpflicht auf den gespeicherten Wert des Attributs "marketValue" für das einzige für Mary abgerufene Vermögenselement zugegriffen hat.
21 Wird gespeichert, weil an der Berechnung von Marys Steuerpflicht die Definitionen von Regelattributen in "TaxLiabilityDataRetrievalRuleSet" beteiligt waren (verwendet zum Abrufen der TaxThreshold- und Asset-Regelobjekte).
22 Wird gespeichert, weil an der Berechnung von Marys Steuerpflicht die Definitionen von Regelattributen in "TaxLiabilityBusinessCalculationsRuleSet" beteiligt waren (verwendet zum Berechnen der Gesamtsteuerpflicht anhand der Eingabedaten).