Table of Contents

März 2017

Mehrfachauswahl in Grids mit Kontrollkästchen

In der neuen Version können Sie mehrere Zeilen im Grid über das Kontrollkästchen links in jeder Zeile auswählen. Direkt über dem Grid werden die Gesamtzahl der Elemente und die Anzahl der ausgewählten Elemente angezeigt. Mit dem Kontrollkästchen in der Kopfzeile wählen Sie alle Elemente aus oder heben die Auswahl auf.

Mehrfachauswahl in Grids mit Kontrollkästchen

Ausgewählte Zeilen gehen nicht verloren, wenn Sie den Filter über dem Grid verwenden. Sie können nach einigen Zeilen suchen und diese zu den ausgewählten Zeilen hinzufügen. Wenn Sie das Kontrollkästchen in der Kopfzeile bei aktivem Filter verwenden, werden die gefilterten Elemente zu den bereits ausgewählten Zeilen hinzugefügt.

Mehrfachauswahl in Grids mit Filter

Performance-Verbesserungen für Formulare

Um Entitätsobjekte vor dem Speichern zu validieren, lädt time cockpit das Entitätsobjekt mit allen seinen Beziehungen, um berechnete Eigenschaften, Validierungsregeln und Berechtigungen auszuwerten. Letztes Jahr haben wir vor etwa einem Jahr eine IncludeClause für Form-Definitionen eingeführt (mehr ...). Die IncludeClause hat uns geholfen, die Performance von Abfragen zu verbessern, indem unnötige Beziehungen nicht geladen werden.

Im HTML5-Client wird die IncludeClause nicht mehr benötigt. Wir ermitteln automatisch alle Beziehungen, die zum Validieren und Speichern von Entitätsobjekten nötig sind.

Select New With-Abfragen und Python-Skripte für Relation Cells

Relation Cells werden in time cockpit verwendet, um ein Kombinationsfeld in einem Formular oder in einem Filter einer Liste anzuzeigen. Es gibt mehrere Möglichkeiten, die Datenquelle für Relation Cells festzulegen. Die folgenden Beispiele zeigen eine Relation Cell für Projekte im Formular für Zeitbuchungen:

  1. <BoundCell Content="=Current.APP_Project" /> Geben Sie einfach den Inhalt für eine BoundCell oder RelationCell an. time cockpit weiß automatisch, wie alle Projekte ausgewählt werden.
  2. <BoundCell Content="=Current.APP_Project" /> mit einer „Standard Liste für Relationen“ für die Modellentität APP_Project Die „Standard Liste für Relationen“ wird im Editor für Modellentitäten festgelegt. Standard Liste für Relationen
  3. <RelationCell Content="=Current.APP_Project" List="USR_CustomProjectRelationList" /> In diesem Fall wird die Liste zum Laden der Daten explizit in der Relation Cell angegeben.

In den Szenarien 2 und 3 kann die verwendete Liste die Daten laden über:

  • eine Select-Abfrage,
  • eine Select New With-Abfrage oder
  • ein Python-Skript

Select New With-Abfragen und Python-Skripte sind diesen Monat neu im HTML5-Client.

Performance-Verbesserungen für Relation Cells

In den meisten Fällen verwenden Relation Cells entweder keine Liste als Datenquelle, oder die Liste verwendet eine Select-Abfrage wie die folgende als Datenquelle:

From P In Project Select P

Select-Abfragen können je nach berechneten Eigenschaften, Validierungsregeln und Berechtigungen der betroffenen Modellentität ein T-SQL-Statement mit vielen Joins und Spalten erzeugen. Der HTML5-Client parst solche Abfragen jetzt und erzeugt daraus eine neue Select New With-Abfrage:

From P In Project Select New With { .ObjectUuid = P.ProjectUuid, .Text = P.Fullname }

Die neue Abfrage muss nur zwei Spalten aus der Datenbank lesen. Das kann die Zeit für das Laden der Werte von Kombinationsfeldern bei Modellentitäten mit vielen Eigenschaften und Beziehungen deutlich verkürzen.