Seite 2 von 2

Nach Speichern sind DD-Felder leer

Verfasst: 07.05.2016, 16:32
von Andreas H.
Hallo armine,

die Datei Anforderungsprofil_Anfrage Forum_Benutzereingabe2 bietet sich an, die Frage zu stellen.

form1.Deckblatt.DatenEtikett.Einsatzgebiet.Drucksys::initialize

var tmp = Math.max(0,this.selectedIndex) ;
this.clearItems () ;
this.addItem("bitte wählen") ;
weitere Einträge ...
this.selectedIndex = tmp

DDL Drucksys > Häkchen: Benutzereingabe zulässig

bis hierhin ist das genau meine Übung!
(bei mir: Objekt > Feld > Listenelement = ohne Eintrag; Objekt > Wert > Standardwert = ohne Eintrag) erledigt ja die erste und letzte Zeile im initialize Event.

Die Frage fängt hier an:
Wird ein Eintrag aus der Liste gewählt z.B. A2+ und die Datei gespeichert, wird der Eintrag beim nächsten Öffnen angezeigt.

Wird eine Benutzereingabe z.B. "Test" eingegeben, wird die Eingabe nicht gespeichert und beim nächsten Öffnen steht "bitte wählen" in der DDL.

Muss ja, steht ja so im initialize Event.

Könntest du bitte erklären, wie ich das hinbekomme, dass auch Benutzereingaben gespeichert werden können?

Um die Insel zu umschiffen, habe ich die Zeilen var tmp = Math.max(0,this.selectedIndex) ; und this.selectedIndex = tmp gelöscht und den Standardwert "bitte wählen" gesetzt.

Es muss doch möglich sein, beim exit Event den selectedIndex = 0 bzw. alle addItem's auszuschliessen?

Gruß
Andreas

Nach Speichern sind DD-Felder leer

Verfasst: 08.05.2016, 11:09
von armine
Hallo Andreas,

du fragst: »Könntest du bitte erklären, wie ich das hinbekomme, dass auch Benutzereingaben gespeichert werden können?«
Schau dir die DDLs darunter an.

vg armine

Nach Speichern sind DD-Felder leer

Verfasst: 08.05.2016, 14:18
von Andreas H.
Hallo armine,

stimmt, ich habe mich zu sehr auf das erste DDL konzentriert. Ohne Dich wäre ich da nicht weitergekommem.

Formular1.Inhalt.DropdownListe1::initialize - (JavaScript, client)
   
    var Eingabe = this.selectedIndex == -1 ? this.rawValue : null ;
       
    this.clearItems() ;
    this.addItem("bitte wählen") ;                    // 0 = 1. Eintrag
    this.addItem("Eintrag 1") ;
    this.addItem("Eintrag 2") ;

    if (this.selectedIndex == -1) {
        if (Eingabe) {
            this.rawValue = Eingabe ;
            this.fontColor = "0, 0, 0" ;
    } else {
        this.selectedIndex = 0 ;
        this.fontColor = "141, 141, 141" ;
        }
    }
   
    this.caption.font.fill.color.value = "0,0,0" ;    // Beschriftung bleibt schwarz

Du bist der BESTE!!! Das angelegte "Muster" per Skripte für DDL's, den Rest erledigt das enter-, exit-, priPrint- und postPrint Event.

Vielen vielen Dank der Herr!!!

Gruß
Andreas