Customizen von Datumslistboxen

Ziel
  • Customizen von Datumslistboxen (Kalenderlistboxen) mit der Calendar Control-Funktion

Information

  • Mit der Funktion Calendar Control können für Termindatenfelder spezielle Datumslistboxen (Kalenderlistboxen) gecustomized werden.

Beispiele

DatumLB.png

  • Durch Klick auf den Monatsnamen wechselt man in die Monatsübersicht des aktuellen Jahres.
    • Der aktuelle Monat wird farblich hervorgehoben.

Monat.png

Details

  • Durch Betätigen des Symbols am rechten Rand des Terminfeldes lässt sich die Datumslistbox öffnen und der gewünschte Eintrag kann ausgewählt werden.
  • Innerhalb des Kalenders sind verschiedene Sichtebenen implementiert. Diese bieten Möglichkeiten zum Navigieren an.
    • Standardmäßig wird beim Aufruf der aktuelle Monat mit der Tagesübersicht ausgegeben.
      • Das aktuelle Datum wird farblich hervorgehoben.
      • Über die Pfeile in der oberen Leiste kann in die Vor- oder Folgemonate gewechselt werden.
    • Durch Klick auf den gewünschten Monat wird in die Tagessicht des gewählten Monats gewechselt.
      • Die Funktion ist eine Alternative zum aufwendigen Blättern zwischen den Monaten auf der Tagessichtebene.
    • Von der Monatsübersichtsebene kann man durch Klick auf die Jahresbezeichnung in die Jahresübersicht wechseln.
    • Auf jeder Sichtebene kann über die Pfeile in der oberen Leiste zum Vor- oder Folgeobjekt geblättert werden.
      • Wie weit navigiert werden kann, hängt von den Einschränkungen im Customizing ab.
  • Wie bei normalen Listboxen kann der Customizer bei den Datumslistboxen über den Parameter Listboxzwang bestimmen, dass nur Daten aus der Listbox übernommen werden können.

Hinweise

  • Im PLANTA-Standard-System sind auf allen Eingabe-Terminfeldern Datumslistboxen mit Calendar Control hinterlegt.
  • new394.gif Systemweit werden 3 Arten von Datumslistboxen (bezogen auf das Anfangs- und End-Datum) verwendet:
    • Vergangenheit bis Heute
    • Heute bis Zukunft
    • Vergangenheit bis Zukunft

Vorgehensweise

  • Den gewünschten Datenbereich im Modul Datenbereiche aufrufen.
  • Für das gewünschte Terminfeld
    • DF-Verhalten = cc auswählen.
    • Es erscheint die Meldung Möchten Sie ein Template für das cc-Datenfeld einkopieren?
      • Ja :
        • Es werden 3 Arten von Templates zur Auswahl angeboten.
        • Das gewünschte Template auswählen.
        • Dieses wird automatisch in das Datenfeld Datenfeld-Konfiguration einkopiert.
        • Die Parameter im Feld Datenfeld-Konfiguration können anschließend bei Bedarf angepasst werden.
      • Nein :
Parameter Beschreibung Zulässige Werte Nicht zulässige Werte
def_start_date Default-Anfangstermin
  • absolute Werte (z.B. "14.08.2009")
  • Systemvariablen mit/ohne Operationen (z.B. "@123" oder "@123+10")
  • Dynamische Variablen
  • Python-IDs
  • start_date Anfangstermin
  • absolute Werte (z.B. 14.08.2009)
  • Systemvariablen mit/ohne Operationen
  • dynamische Variablen mit/ohne Operationen (z.B. @D123+15)
  • Python-ID des Anfangstermin-Datenfeldes
  •  
    def_end_date Default-Endtermin
  • absolute Werte (z.B. "14.08.2009")
  • Systemvariablen mit/ohne Operationen (z.B. "@123" oder "@123+10")
  • Dynamische Variablen
  • Python-IDs
  • end_date Endtermin
  • absolute Werte (z.B.: "14.08.2009")
  • Systemvariablen mit/ohne Operationen
  • dynamische Variablen mit/ohne Operationen (z.B. "@D123+15")
  • Python-ID des Endtermin-Datenfeldes
  •  
    def_calendar Default-Kalender-ID
  • Werte aus dem DI000305 Kalender aus der DT418 Kalender (z.B. "BK")
  • Systemvariablen (z.B. "@123")
  • Dynamische Variablen
  • Python-IDs
  • calendar Kalender-ID
  • Werte (Wert aus DI000305 Kalender aus der DT418 Kalender)
  • Systemvariablen
  • dynamischen Variablen (z.B. @D123)
  • Python-ID des Datenfeldes, das den Kalender bestimmt
  •  
    def_selection_mode Default-Auswahlmodus
  • Werte ("working", "non_working", "all")
  • Systemvariablen
  • Dynamische Variablen oder
  • Python-IDs
  • selection_mode Auswahlmodus
  • Python-ID des Datenfeldes, das den Auswahlmodus bestimmt
  • dynamische Variablen (z.B. @D123)
  • Systemvariablen
  • Werte ("working", "non_working", "all")
  •  
    xaml XML-Dokument, mit einem Root-Element, welches XAML mit Einstellungen für Calendar Control enthält. Ab Version 39.4.3.0 steht ein XAML zur Verfügung, das die Anzeige von Kalenderwochen (KW) in Datumslistboxen ermöglicht. Falls die Anzeige von Kalenderwochen erwünscht ist, muss der XAML-Eintrag ohne KW durch den XAML-Eintrag mit KW ersetzt werden.

    Details

    • Jeder Parameter wird in einer neuen Zeile eingetragen.
    • Aufbauschema: param_name=Wert
    • Bei Default-Parametern gilt der eingetragene Wert für die gesamte Spalte.
    • Bei Nicht-Default-Parametern gilt der eingetragene Wert ausschließlich für den entsprechenden Datensatz.
      • Falls beides eingetragen ist, übersteuern die Nicht-Default-Parameter die Default-Parameter.
    • Alle Customizing-Einstellungen werden in einem String gespeichert: "attr1=Wert1;attr2=Wert2;..."
    • Arbeitet man bei den Werten mit Variablen und addiert oder subtrahiert bestimmte Tageszahlen, muss darauf geachtet werden, dass vor und nach den Operatoren keine Leerzeichen eingetragen werden.
      • Z.B. Der Eintrag "@D123 + 10" wird interpretiert wie "@D123", weil auf den Eintrag @D123 im ersten Fall ein Leerzeichen folgt.
    • DI/DF-Python-IDs können nicht mit anderen Werten kombiniert werden.
      • Z.B. "end_date=requested_end+10" wird nicht unterstützt, "end_date=requested_end" dagegen schon.

    Beispiel

    CalendarControl.png
    def_start_date = 01.01.1970
    def_end_date = 31.12.2099
    calendar= @G150
    
    xaml = <StackPanel 
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
        <toolkit:Calendar xmlns:toolkit="clr-namespace:Microsoft.Windows.Controls;assembly=WPFToolkit" 
        Name="Calendar" 
        Margin ="0,-3,0,-2">
        </toolkit:Calendar>
      </StackPanel>

    Hinweis

    Listboxzwang

    Information

    • Genauso wie bei normalen Listboxen kann der Customizer bei den Datumslistboxen über den Parameter Listboxzwang bestimmen, dass nur Daten aus der Listbox übernommen werden können.
      • Das Programm prüft in diesem Fall die Gültigkeit.
        • Ist der Datenfeldeintrag nicht in der Listbox enthalten, wird er aus dem Feld entfernt. Der Benutzer muss die Eingabe wiederholen oder die Listbox öffnen und einen gültigen Wert auswählen.
        • Ist der Datenfeldeintrag in der Listbox enthalten, wird er übernommen.
    Topic attachments
    I Attachment History Size Date Comment
    Pngpng CalendarControl.png r2 r1 10.4 K 2009-11-05 - 12:06  
    Txttxt NewCalendarXAML.txt r1 15.0 K 2012-10-10 - 12:43  
    Txttxt OldCalendarXAML.txt r1 0.3 K 2012-10-10 - 12:44  

             PLANTA project









     
    • Suche in Topic-Namen

    • Suche in Topic-Inhalten
    This site is powered by the TWiki collaboration platform Powered by Perl