Vertec AI Chatbot

Der Chatbot hilft Ihnen bei Fragen rund um das Produkt und die Anpassbarkeit der Software. Wie bei allen AI-generierten Daten sollten die Antworten bei kritischen Informationen verifiziert werden. Nehmen Sie dafür gerne Kontakt mit uns auf. Weitere Informationen zur Verarbeitung der Chat-Daten bieten wir auf der Datenschutzseite.

Die besten Antworten liefert der Chatbot, wenn Ihr Input möglichst viele Informationen enthält. Zum Beispiel:

«Welche Apps stehen im Vertec Cloud Abo zur Verfügung?»

Customizing von Steuerelementen in Listen

Customizing von Steuerelementen in Listen

Standard

|

Expert

CLOUD ABO

|

ON-PREMISES

Leistung & CRM

Budget & Teilprojekt

Fremdkosten

Ressourcenplanung

Business Intelligence

Erstellt: 23.02.2016
Aktualisiert: 30.03.2021 | Abschnitt ComboBox-Expression für Stern-Zeile an Version 6.4.0.21 angepasst.

Um via Customizing ein vorhandenes Steuerelement in einer Liste zu überschreiben, muss mit Override das entsprechende Steuerelement angesprochen werden:

Es können aber auch neue Steuerelemente erstellt werden, indem das Feld Steuerelement leergelassen und im Feld Steuerelement XML ein neues Steuerelement erzeugt wird. Dies wird zum Beispiel für gewisse Zusatzfelder gebraucht, wo es kein vordefiniertes Steuerelement gibt. Siehe dazu den Abschnitt Zusatzfelder in Listen anzeigen weiter unten.

Breite einer Spalte ändern

Die Code-Spalte des Steuerelements cmbProjekt verbreitern wir auf 150. Dafür wird die Eigenschaft Width der Spalte Code überschrieben:

<ComboBox Override="cmbProjekt">
    <ComboBox.ColumnDefinitions>
       <ColumnDefinition Override="Code" Width="150" />
    </ComboBox.ColumnDefinitions>
</ComboBox>

Wie die einzelnen Spalten der jeweiligen Steuerelemente heissen, finden Sie im Artikel Steuerelemente.

Eine Spalte verschieben

Die Spalte Betreffend stellen wir als zweite Spalte nach der Code-Spalte dar. Dafür setzen wir die Eigenschaft PlaceAfter:

<ComboBox Override="cmbProjekt">
    <ComboBox.ColumnDefinitions>
         <ColumnDefinition Override="Regarding" PlaceAfter="Code" />
    </ComboBox.ColumnDefinitions>
</ComboBox>

Eine neue Spalte hinzufügen

Eine neue Spalte einfügen geht gleich, nur dass wir diesmal kein Override verwenden. Dadurch ist klar, dass es sich um eine neue Spalte handelt. Als Expression geben wir die entsprechende OCL-Expression ein:

<ComboBox Override="cmbProjekt">
    <ComboBox.ColumnDefinitions>
       <ColumnDefinition Width="110" Expression="projektleiter" />
    </ComboBox.ColumnDefinitions>
</ComboBox>

Ohne Angabe von PlaceBefore oder PlaceAfter wird die neue Spalte zu-hinterst angefügt.

Navigationsbutton ein-/ausblenden

In der Combobox kann ein Pfeil eingeblendet werden, mit dem man direkt zum ausgewählten Objekt navigieren kann. Dieses wird dann in einem separaten Tab oder Fenster geöffnet.

Dafür muss ShowNavLinkButton auf "True" gestellt werden:

<ComboBox Override="cmbProjekt"
    ShowNavLinkButton="True" />

Möchten Sie einen Pfeil, der standardmässig eingeblendet ist, nicht anzeigen, stellen Sie ShowNavLinkButton auf "False".

Button Referenz entfernen ein-/ausblenden

Neu kann in der Combobox ein Löschbutton x eingeblendet werden. Damit kann eine bereits ausgewählte Referenz wieder entfernt werden.

Dafür muss ShowRemoveButton auf "True" gestellt werden:

<ComboBox Override="cmbTaetigkeit"
    ShowRemoveButton="True" />

Achten Sie darauf, dass Sie diesen Button nur dann einblenden, wenn das Löschen der Referenz nicht zu einem ungültigen Eintrag führt.

Möchten Sie einen Button, der standardmässig eingeblendet ist, nicht anzeigen, stellen Sie ShowRemoveButton auf "False".

Einen DatePicker anzeigen

Ab Vertec 6.2 kann in Datumsspalten in Listen ein DatePicker eingeblendet werden. Dafür muss im Feld Steuerelement XML der Code

<DatePicker />

eingegeben werden:

 

Daraufhin wird in der entsprechenden Spalte ein DatePicker zur Auswahl des Datums angezeigt:

Zusatzfelder in Listen anzeigen

Für die Anzeige von Auswahl- und Objekt-Zusatzfeldern gibt es das vordefinierte Steuerelement cmbZusatzfeld.

Um Zusatzfelder eines anderen Typs anzuzeigen, geben Sie nicht ein Steuerelement an, sondern erstellen dieses direkt im Feld Steuerelement XML. Als Beispiel blenden wir ein Dateizusatzfeld auf dem Vorschuss ein. Das Zusatzfeld ist wie folgt erfasst:

In den Listeneinstellungen lautet das entsprechende Steuerelement XML

<PathBox Label="Datei" ValueExpression="zusatzfeld('Datei')" SelectType="FileOpen" />

In der Liste wird daraufhin ein Feld angezeigt, wo die Datei ausgewählt werden kann:

Eine Auflistung, welches Steuerelement Sie für welchen Typ verwenden müssen, finden Sie im Abschnitt XML (Customizing) im Artikel über die Zusatzfelder.

Zusatzfeld ComboBox mit Objektwert <> Zeilenobjekt

Ab Vertec 6.1 ist es möglich, die ComboBox an einen Objektwert zu binden, welcher nicht vom Zeilenobjekt stammt.

Zum Beispiel soll in der Listenspalte einer Projektliste die Auswahl von einem Feld in einer verlinkten Zusatzklasse angeboten werden.

  • Expression:
    getlinks('projektstaende')->oclastype(Zusatzklasse1)
     ->orderby(zusatzfelddate('datum'))
     ->last.zusatzfeldint('status')
  • Steuerelement: cmbZusatzfeld
  • Renderer: rndZusatzfeld

ComboBox-Expression für Stern-Zeile

Die ListExpression der ComboBox bezieht sich auf das Zeilen-Objekt in der Liste. Im Falle der Hinzufügen Zeile (Zeile mit dem Stern für neue Einträge) gibt es dieses noch nicht. Daher funktioniert die Popup-Liste in der Sternzeile nur, wenn es sich bei der List-Expression um eine global auswertbare Expression handelt.

Einzelne spezifische ComboBoxen wie beispielsweise die ProjectComboBox haben Code implementiert, welcher im Falle der Sternzeile auf den Container und dessen Parent-Eintrag zugreifen kann. Im Falle von customized Listen-Comboboxen geht das via GhostrowListExpression. Diese kommt immer dann zur Anwendung, wenn die ComboBox in einer Sternzeile eingesetzt ist. Der Context für die Auswertung der Expression ist der Container, welcher die Liste enthält.

Ab Vertec 6.4.0.21 kann über varContainer auf den Container (Ordner oder LinkContainer) und über varParent auf das Objekt, dem der Container gehört (Parent-Objekt des Link-Containers), zugegriffen werden.

In Versionen vor 6.4.0.21 muss das über eine Expression gelöst werden. Nachfolgend das Beispiel einer ComboBox, die in einer Leistungszeile die Projekte des Bearbeiters der Leistung anzeigt, in der Sternzeile (Ghostrow) die des Parent-Bearbeiters des Containers:

<ComboBox ListExpression="bearbeiter.erfprojekte->orderby(code)" 
    GhostrowListExpression="if parentEintrag->oclIsTypeOf(Projektbearbeiter) then
    parentEintrag->oclAsType(Projektbearbeiter).erfprojekte else 
    TimSession.allinstances->first.login.erfprojekte endif->orderby(code)" />
 

 

Kontakt

Montag bis Freitag
9-12 und 14-17 Uhr

Vertec 30 Tage kostenlos ausprobieren

Lernen Sie unsere Software mit allen Kernfunktionen kennen

Jetzt testen
Bitte wählen Sie Ihren Standort