Ankündigung

Einklappen
Keine Ankündigung bisher.

Kann der Parser nicht bis 3 zählen???

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    [EibParser] Kann der Parser nicht bis 3 zählen???

    Kann der Parser nicht bis 3 zählen???

    Code:
    Makrofehler in Zeile: [48] in der Datei "D:/EIB_KNX/EibPC-02/EibstudioData/tmpApp.txt
      Falsche Anzahl von Makroargumenten bei der Expansion Makro: "PVshowGlobalRadiation" ==> PVshowGlobalRadiation("WS2225_Globalstrahlung-1/0/114", btnInfoGlobalstrahlung, pgID_PV);
     ID:43
     EibParser wurde mit Fehler beendet.
    Dazu die Makrodefinition:

    Code:
    :begin PVshowGlobalRadiation(GA,btn,pgID)
    
    if change(GA) then {
        pdisplay(btn,convert(GA,$$) + $W/m²<br><font size=1><font color=#BB0000>&nbsp;&uarr; $ + stringformat(TodaysHigh(GA),4,1,5,1) + $</font></font>$, WEATHER, DISPLAY, GREEN, pgID);
    } endif
    
    :end
    Solche wenig hilfreichen Fehlermeldungen nerven....

    Der Fehler wird wohl wieder mal (ganz) woanders liegen.

    #2
    Geil - das muss man sich mal reinziehen:

    Meldung nach kompilieren - und es läuft tatsächlich:

    Code:
    Genutzte Objekte EibPC  3.74 %.
     Funktionen der Option NP verwendet
    
     EibParser wurde ohne Fehler beendet.
    
     (c) 2008-2015 Enertex Bayern GmbH
     www.enertex.de
    Makrodefinition (jetzt mit dummy als 4. Parameter):
    Code:
    :begin PVshowGlobalRadiation(GA,btn,pgID,dummy)
    
    if change(GA) then {
        pdisplay(btn,convert(GA,$$) + $W/m²<br><font size=1><font color=#BB0000>&nbsp;&uarr; $ + stringformat(TodaysHigh(GA),4,1,5,1) + $</font></font>$, WEATHER, DISPLAY, GREEN, pgID);
    } endif
    
    :end
    und der Makroaufruf im Hauptprogramm immer noch mit 3 Parametern:
    Code:
    PVshowGlobalRadiation("WS2225_Globalstrahlung-1/0/114", btnInfoGlobalstrahlung, pgID_PV);
    Der Unterstrich in pgID_PV, den ich erst im Verdacht hatte, ist nicht schuld, denn "7u08" zu schreiben, hat auch nichts bewirkt.
    Zuletzt geändert von klaus_kraemer; 16.08.2015, 11:14. Grund: besser zu verstehen...

    Kommentar


      #3
      Zitat von klaus_kraemer Beitrag anzeigen
      Der Unterstrich in pgID_PV, den ich erst im Verdacht hatte, ist nicht schuld, denn "7u08" zu schreiben, hat auch nichts bewirkt.
      Zur Fehlersuche:
      Geht das hier:
      _PVshowGlobalRadiation('1/0/114'f16, btnInfoGlobalstrahlung, pgID_PV);
      Grundsätzlich sind "_" und "^" eben Syntaxelemente des Makroparsers, das ist so im Compiler gebaut . Bevor nun das Gezeder losgeht "Ihr seid doch alle dumm, ich hätte das viel bessere Konzepte" - da ist eben auch viel erst nach und nach, und zudem nach wirtschaftlichen Gesichtspunkten entstanden.
      offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
      Enertex Produkte kaufen

      Kommentar


        #4
        Hab's probiert:

        Makroaufruf:
        Code:
        PVshowGlobalRadiation('1/0/114'f16, btnInfoGlobalstrahlung, 7);
        Makrodefinition für diesen Versuch:
        Code:
        :begin PVshowGlobalRadiation(GA, btn, pgID)
        
        if change(GA) then {
            pdisplay(btn,convert(GA,$$) + $W/m²<br><font size=1><font color=#BB0000>&nbsp;&uarr; $ + stringformat(TodaysHigh(GA),4,1,5,1) + $</font></font>$, WEATHER, DISPLAY, GREEN, pgID);
        } endif
        
        :end
        Parser meldet:
        Code:
           +---+ EibParser  - v3.021 (Windows Win32 Version) +---+  
        
         Keine Haftung für Schäden, die durch die Benutzung des Programms entstehen.
         Gruppenadressen-Import:
         Datei: "D:/EIB_KNX/EibPC-02/EibstudioData/tmpAddr.txt" wurde geschrieben
        
         Makrofehler in Zeile: [48] in der Datei "D:/EIB_KNX/EibPC-02/EibstudioData/tmpApp.txt
          Falsche Anzahl von Makroargumenten bei der Expansion Makro: "PVshowGlobalRadiation" ==> PVshowGlobalRadiation('1/0/114'f16, btnInfoGlobalstrahlung, 7);
         ID:43
         EibParser wurde mit Fehler beendet.
        Seltsamer Weise machen alle anderen Makros, was sie sollen...

        und mit dem 4. "dummy"-Parameter gehts dann wieder - aber da muss man ja erst mal drauf kommen (siehe Zeit zwischen erstem und zweitem Post...).
        Zuletzt geändert von klaus_kraemer; 16.08.2015, 12:48.

        Kommentar


          #5
          Des Rätsels Lösung:

          alter Makroaufruf:
          Code:
          PVshowGlobalRadiation("WS2225_Globalstrahlung-1/0/114", btnInfoGlobalstrahlung, pgID_PV);
          neuer Makroaufruf:
          Code:
          PVshowGlobalRadiation("WS2225_Globalstrahlung-1/0/114", btnInfoGlobalstrahlung, pgID_PV)
          Makrodefinition jetzt:
          Code:
          :begin PVshowGlobalRadiation(GA, btn, pgID)
          
          if change(GA) then {
              pdisplay(btn,convert(GA,$$) + $W/m²&lt;br&gt;&lt;font size=1&gt;&lt;font color=#BB0000&gt;&amp;nbsp;&amp;uarr; $ + stringformat(TodaysHigh(GA),4,1,5,1) + $&lt;/font&gt;&lt;/font&gt;$, WEATHER, DISPLAY, GREEN, pgID);
          } endif
          
          :end
          Der entscheidende Punkt war ein Strichpunkt ";" hinter dem Makroaufruf. Oh Mann!!!

          Kommentar


            #6
            Hüstel...
            @Enertex, so gemeine Fallen solltet Ihr schon beseitigen können und wollen - oder?

            Kommentar


              #7
              Na klar, da gibts nix zu hüsteln.
              offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
              Enertex Produkte kaufen

              Kommentar


                #8
                Zitat von enertegus Beitrag anzeigen
                Na klar, da gibts nix zu hüsteln.
                Das wirkt jetzt wie ein Salbeiguatl... Hustenanfall vorbe.

                Kommentar


                  #9
                  Zitat von klaus_kraemer Beitrag anzeigen
                  Das wirkt jetzt wie ein Salbeiguatl... Hustenanfall vorbe.
                  gefixt in der nächsten Version...
                  offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                  Enertex Produkte kaufen

                  Kommentar


                    #10
                    Zitat von enertegus Beitrag anzeigen
                    gefixt in der nächsten Version...
                    Danke!

                    Kommentar

                    Lädt...
                    X