Fehler bei Dialogmeldung

  • Führt zu einer Fehlermeldung beim Absenden der Meldung.

    KrlMsg_T -> Msg.Nr[] Wert ungültig.

    Mehrere Versuche mit Änderungen sind auch fehlgeschlagen.

    Stimmt da etwas an der Syntax nicht?

    Fehler werden beim Schliessen und Spechern des Editors keine angezeigt.

    Gruß Roland


    Wie poste ich falsch?

    Nachdem ich die Suche und die FAQ erfolgreich ignoriert habe, erstelle ich das gleiche Thema in mehreren Unterforen, benutze einen sehr kreativen Titel wie "Hilfe", am Besten noch mit mehreren Ausrufezeichen, und veröffentliche einen so eindeutigen Text, dass sich jeder etwas Anderes darunter vorstellt.


    Ich bin wie ich bin. Die Einen kennen mich, die Anderen können mich.

    Konrad Adenauer

  • Hab den Fehler gefunden

    Gruß Roland


    Wie poste ich falsch?

    Nachdem ich die Suche und die FAQ erfolgreich ignoriert habe, erstelle ich das gleiche Thema in mehreren Unterforen, benutze einen sehr kreativen Titel wie "Hilfe", am Besten noch mit mehreren Ausrufezeichen, und veröffentliche einen so eindeutigen Text, dass sich jeder etwas Anderes darunter vorstellt.


    Ich bin wie ich bin. Die Einen kennen mich, die Anderen können mich.

    Konrad Adenauer

  • Ja, melding NR war nicht initializiert:

    msg = {MODUL[] "HatPad pruefen", MSG_TXT[] "Zeichnungsnummer: %1 ist angewaehlt"}


    so geht es:

    msg = {MODUL[] "HatPad pruefen", MSG_TXT[] "Zeichnungsnummer: %1 ist angewaehlt", NR 12}

  • hallo ich habe da auch ein Problem mit dialogmeldungen.


    Ich habe das genau so gemacht wie auf dem Foto zu sehen.


    Das funktioniert soweit gut. Aber wenn ich irgendwo anders im Programm nochmal ein Dialog brauche dann werden mir manchmal diese softkeys in die zweite Meldung mit eingefügt und ich weiß nicht warum.


    Beide dialogmeldungen sind unterschiedlich.


    Zb. Bei der ersten benötige ich nur den Text mit 2 Buttons ja / nein . Als meldungsnummer hab ich die 1 eingetragen.


    Der zweite Dialog hat die meldungsnummer 2 .

    Dort habe ich auch den Text und 7 Buttons belegt. Die Buttons heißen Typ1 Typ2 ...Typ7.


    Manchmal wenn der zweite Dialog aufploppt stehen die ersten 2 Buttons vom ersten Dialog drin.

    Also ja...nein....Typ3...Typ4..Typ5....typ6....typ7!


    Warum ist das so? Muss ich beim beantworten des Dialoges irgendwas löschen mit clear?


    Wie gesagt mit einer Meldung klappt das. Wenn ich noch eine einfüge kommt misch masch raus.


    Kss krc4 8.5.7


    Grüße

    Edited once, last by woodys ().

  • Im Beispiel Zeile 11 schreibst Du das komplette Array SK [ ] raus.

    Wenn Du vorher was in SK[1] und SK[2] geschrieben hast, schreibt er Dir dies natürlich auch noch raus.

    SK[] ist im Bsp. lokal deklariert. Wenn Du dies innerhalb dieses Programms machst, hast Du genau den Effekt, den Du hast.

    Wenn die 2. Meldung in einem anderen Programm wäre, wo Du wiederum neu lokal deklarierst, dann würde es funken.


    Besser aber ist, wenn Du immer alle (SK[1]..SK[7]) richtig stellst, bevor sie rausgeschrieben werden.

    Leere Tasten statt #value mit #empty belegst.

    Manche Maenner bemuehen sich lebenslang, das Wesen einer Frau zu verstehen. Andere befassen sich mit weniger schwierigen Dingen z.B. der Relativitaetstheorie.

  • hi also die Deklaration Zeile 1-5 liegt bei mir in der config.dat.


    Das ist das komische.


    Warum wird das array beim zweiten Dialog nicht überschrieben?


    Leere Tasten werde ich mit #empty belegen. Wusste ich nicht.

  • Schick mal den Originalcode.


    Anscheinend ists doch nicht so wie in Deinem Bild.

    Manche Maenner bemuehen sich lebenslang, das Wesen einer Frau zu verstehen. Andere befassen sich mit weniger schwierigen Dingen z.B. der Relativitaetstheorie.



  • config

    Edited once, last by woodys ().

  • Ich lösche zuerst immer alle Bezeichnugen bevor ich neue sende.

    Code
    1. FOR I = 1 TO 7
    2. sk[I] = {sk_type #Value, sk_txt[] " "}
    3. ENDFOR

    Gruß Roland


    Wie poste ich falsch?

    Nachdem ich die Suche und die FAQ erfolgreich ignoriert habe, erstelle ich das gleiche Thema in mehreren Unterforen, benutze einen sehr kreativen Titel wie "Hilfe", am Besten noch mit mehreren Ausrufezeichen, und veröffentliche einen so eindeutigen Text, dass sich jeder etwas Anderes darunter vorstellt.


    Ich bin wie ich bin. Die Einen kennen mich, die Anderen können mich.

    Konrad Adenauer

  • Manchmal wenn der zweite Dialog aufploppt stehen die ersten 2 Buttons vom ersten Dialog drin.

    Also ja...nein....Typ3...Typ4..Typ5....typ6....typ7!



    Dein Problem hängt an der Deklaration in der $config.dat.

    Du schreibst im ersten Dialog nur 2 Tasten, beim ersten Durchlauf alles i.O

    Du schreibst im 2. Dialog alle Tasten, da wars beim ersten Durchlauf auch alles i.O.

    Softkey[1.7] stehen nun aktuell Typ1...Typ7 drin.

    Du resetierst das Programm.

    Bei lokaler Definition verlieren Softkey[1..7] den Inhalt, also wie gelöscht.

    Wenn Du dies in der $Config.dat deklariert hast, verlieren sie den Inhalt nicht.

    Du startest das Programm.

    Du beschreibst Softkey 1+2 mit JA / NEIN, Softkey 3-7 machst Du nichts...

    Die sind aber immer noch belegt mit Deinen TYP3...Typ7

    Wenn Du nun die Message rausschreibst, also das komplette Array Softkey[] bringt er Dir tatsächlich:

    JA / NEIN / Typ3 / Typ4...….Typ7


    Darum immer alle Tasten ansprechen, leere mit #EMPTY, oder zumindest, wie Vorschlag Roland, alle löschen und danach neu beschreiben.


    Gruss SJX

    Manche Maenner bemuehen sich lebenslang, das Wesen einer Frau zu verstehen. Andere befassen sich mit weniger schwierigen Dingen z.B. der Relativitaetstheorie.

  • Hi danke für die Info .


    Ich habe die Dekla jetzt lokal gemacht für den fall bei Reset.


    Nicht verwendete Tasten mit #Emty belegt.


    Nach abfeuern der meldung mittels For Schleife die Tasten gelöscht.

    Beim Aufruf des 2.ten Dialogs kann das entsprechende hineingeschrieben werden.


    Nach abfeuern der 2.te meldung mittels For Schleife die Tasten gelöscht , wenn im nachhinein nochmals ein dialog benötigt wird.