Hallo Julischka,
Die Schaltfläche erleichtert die Arbeit und fasst diese auch zusammen. Die Schaltfläche wird durch die Funktion "Formular1.#variables[0].nToolButtons.ExecCreateNewToolButton(nKunden)" ausgelöst.
Das das PopUp Menü nicht auslöst hat mehrere Uhrsachen.
1. Die Variable "nFunctionToolBar = null;" wurde im Initialize Event Ihre Formulars nicht gesetzt. Das PopUp Menü bezieht sich aber auf diese.
2. Die Funktion "nToolButtons.newButtons();" wurde im docReady Event nicht ausgeführt. Diese erzeugt die Schaltflächen für das PopUp Menü.
3. Die Variablen in der XML Ansicht wurden auch nicht definiert.
<xfa:datasets xmlns:xfa="
http://www.xfa.org/schema/xfa-data/1.0/">
<xfa:data xfa:dataNode="dataGroup"/>
<nNewVar xmlns="
http://www.xfa.org/schema/xfa-data/1.0/">
<nDatasatsHolder xmlns="">0</nDatasatsHolder>
<nPWHolder xmlns="">0</nPWHolder>
</nNewVar>
</xfa:datasets>
Weil die globalen Variablen, welche unter "Datei - Formulareigenschaften - Variablen" Probleme bei verschiedenen Versionen von LCD bereiten können wurden diese wie oben aufgeführt platziert.
<nNewVar xmlns="
http://www.xfa.org/schema/xfa-data/1.0/">
<nDatasatsHolder xmlns="">0</nDatasatsHolder>
<nPWHolder xmlns="">0</nPWHolder>
</nNewVar>
In der Funktion "Formular1.#variables[0].nToolButtons.CreateNewToolButton()" wird auch auf die Variable "nPWHolder" verwiesen.
if(xfa.datasets.nNewVar.nPWHolder.value == "0"){
nType1 = true;
}
4. Im Initial Event des Formulars fehlt auch der Eintrag "Scripte.nXLSNodes();". Dieser erzeugt immer einen Datenknoten "XLSData" für die zu speichernden Dateien. In der Funktion "Formular1.#variables[0].nToolButtons.CreateNewToolButton()" wird auch auf diese Funktion verwiesen.
if(xfa.host.appType != "Reader"){
nType2 = true;
if(xfa.datasets.data.XLSDaten.nodes.length > 0){
nType3 = true;
}
}
5. Im Initialize Event des Formulars fehlt auch der Eintrag "nDatensatz = xfa.datasets.nNewVar.nDatasatsHolder;" Auch unter Pkt. 3 beschrieben.
6. Die referenzierung auf die unsichtbare Schaltfläche ToolButtons wurde auch nicht aktualisiert.
function ExecCreateNewToolButton(nKunden){
if(nKunden){
var sAuswahl = CreateNewToolButton();
if(sAuswahl){
nFunctionToolBar = sAuswahl;
xfa.form.resolveNode("Formular1.#subform[0].ToolButtons").execEvent("click");
}
}
else{
nFunctionToolBar = 11;
xfa.form.resolveNode("Formular1.#subform[0].ToolButtons").execEvent("click");
}
}
Es ist nur ein Teil von den Uhrsachen für die Fehlfunktion des Formulars. Diese sollen zumindest Anhaltspunkte bieten, worauf zu achten ist. Bei Fragen stehe ich hier im Forum bereit.
Gruß,
Walde