Neues Property IsDirty in OrmBABase

Mit orm.IsDirty kann man jetzt abfragen, ob an einem ORM logische Änderungen gemacht wurden. Das entspricht im im Prinzip dem Sternchen in einer Maske. Logische Änderungen sind:

  • Änderungen von persistenten Feldern,
  • Änderungen an Teildatensätzen des ORMs (hinzufügen, entfernen, einzelne Felder von Teildatensätzen ändern) und
  • Hinzufügen oder Entfernen von Source-Relationen.

Das Property IsDirty kann z.B. dazu verwendet werden, um in Hintergundprozessen das unnötige und zeitaufwändige Speichern von unveränderten Objekten zu sparen, falls eine Neuberechnung von irgendetwas beim jeweiligen Datensatz keine Änderung ergeben hat.

IsDirty triggert nicht, wenn sich nur interne, berechnete Felder (mit OptimisticLockingIgnoredAttribute) ändern, also z.B. Common_EntityTitle. Dies setzt im allgemeinen auch eine Änderung weiterer Felder voraus.

Formeln

Die Unterschiede zwischen den Formeln für .Net und Datenbankabfragen (LINQ-Queries) wurden minimiert. Beispielsweise ist nun die Verwendung von BAGetPrimarySource und damit von JoinOperand in .Net Formlen möglich.

Detailansichten unterstützen jetzt Aktionsleisten

Detailansichten in Masken bieten nun die Möglichkeit Aktionsleisten anzuzeigen. Hierfür wird die bei der zugrundeliegenden Ansichtenkonfiguration hinterlege Navigationskonfiguration herangezogen.

Ob eine Aktion in Detailansichten zur Verfügung steht, wird programmatisch über eine neue VisibilityForParentTypes Option im entsprechenden Navigationssteuerelement gesteuert (s. Leitfaden für Anpassungen). Es muss also schon bei der Entwicklung festgelegt werden, in welchen Kontexten eine neue Aktion auf was aufrufbar sein soll.

Felder mit automatischer Nummernvergabe

Die neue Funktionalität für die automatische Nummernvergabe, kann auch in der Programmierung gesetzt werden. Siehe

Eigene Dateiparser für die Suche

Die Suche kann die Inhalte bekannter Dateien indexieren. Fall ein gewünschter Dateityp nicht unterstützt wird, kann dafür ein eigener Parser implementiert werden.