Javascript box Verschachtelung

Fragen und Antworten rund um das Thema JavaScript im LiveCycleDesigner
Antworten
Dr. Faustus
Beiträge: 10
Registriert: 08.04.2010, 11:58

Javascript box Verschachtelung

Beitrag von Dr. Faustus » 04.05.2010, 11:33

http://www.acronaut.de/forum44/1446.html

Hallo, auf Basis der Vorlage von Julischka habe ich mir etwas zusammen gebaut, mir fehlen aber noch Funktionen und es wird mir zu kompliziert. :X

Okay, zunächst mal, was habe ich (auszug):

Formular1.Formular.Seite1.deutsch.#area[0].abteilung::mouseUp - (JavaScript, client)


var kst = {

"Standort1":{
"1111111111   Vorstand":1,
"1111111112   Personalmanagement":2,},
"Standort2":{
"2222222222   Personalmanagement":902,
"2222222223  Instandhaltung":903,
},};
var dialog3 = {
    initialize: function(dialog){
        var dlgInit =
        {
            subl:kst,
        };
        dialog.load(dlgInit);
    },
    commit: function(dialog){
        var oRslt = dialog.store();
        abteilung.rawValue = oRslt["stat"];
    },
    "subl": function(dialog){
        var nReturn;
        var Elements = dialog.store()["subl"];
        nSuche(Elements);
        newStatus(dialog, nReturn);
       
        function nSuche(nVariable){
            for (var i in nVariable){
                if(nVariable
> 0){
                    nReturn = nVariable;
                    break;
                }
                else{
                    nSuche(nVariable);
                }
            }
        }
    },
    loadDefaults: function (dialog){},
    description:{
        name: "Abteilungsauswahl",
        elements:
        [
        {
            type: "view",
            align_children: "align_left",
            elements:
            [
            {
                type: "cluster",
                name: "Auswahl",
                elements:
                [
                {
                    type: "hier_list_box",
                    item_id: "subl",
                    width: 600,
                    height: 400
                },
                {
                    type: "static_text",
                    name: "Vorschau",
                    width: 200,
                },
                {
                    type: "edit_text",
                    item_id: "stat",
                    multiline: true,
                    readonly: true,
                    width: 200,
                    height: 60
                },
                {
                    type: "static_text",
                    name: "Bitte Abteilung auswählen!",
                    width: 200,
                },
               ]
            },
            {
                type: "ok_cancel"
            }
            ]
        }
        ]
    }
}
app.execDialog(dialog3);

function newStatus(dialog, nValue){
    var nWerte = new Array();
    nWerte[1] = "Vorstand";
    nWerte[2] = "Personal";
    nWerte[902] = "Personalmanagement";
    nWerte[903] = "Instandhaltung";
      
    for (var i in nWerte){
        if(i == nValue){
            dialog.load({"stat":nWerte});
        }
    }
}



Dieses Script öffnet mir ein Javaskript Fenster-  in dem ich 2 items "Standorte" drin habe, darunter jeweils kostenstellen.

Wenn ich die Kostenstelle anwähle, macht er mir eine Vorschau, beispw. "Vorstand"
Auf dem Formular habe ich zwei unterschiedliche Textfelder,  "Abteilung" und "Kostenstelle.

Zu meinen Problemen:

1.: Wenn er die Javaskript-box öffnet, sind die Unterpunkte bereits aufgeklappt, das soll aber der User machen. Wie sage ich ihm, dass er das "+" zum Aufklappen der einzelnen Standorte beibehält?

2.: In dem Textfeld "Abteilung" steht als Beschreibung "Abteilung" dran. Wenn ich aber z.B. "Vorstand" per dialogbox auswähle, dann steht da gar nichts mehr dran, ich kann aber innerhalb des Feldes runter scrollen, dann steht da "Vorstand". Er soll mir aber die Beschreibeung "Abteilung" löschen und stattdessen "Vorstand" da stehen haben. Warum bricht er an dieser Stelle um? Update: Mit einem tabstopp schreibt er das richtige hin und springt ins nächste Fenster. Es sieht aber für den User erst so aus, als hätte er hier nichts ausgewählt.

3.: Ich will die Felder "Abteilung" und "Kostenstelle "in Beziehung setzen. Bedeutet, wenn der User "Vorstand" auswählt, soll bei Abteilung "Vorstand" stehen, das Kostenstellenfeld soll mit der zugehörigen Nummer gefüllt werden. Wäre schön, wenn das umgekehrt auch gehen würde, also wenn man die Kostenstelle per Hand eingibt, dass er sich automatisch die Bezeichnung sucht. Muss ich dazu den festen Ausdruck
"1111111111    Vorstand" auftrennen und in jeweils eine Variable packen? Falls ja, wie geht das?

4.: Es handelt sich um ein mehrsprachiges Formular, ich mache die Skripte grade an einem Feld auf dem deutschen Teil des Formulars fest. Kann man so etwas irgendwie global ablegen, falls es für alle Sprachen gültig ist?





Antworten