Zurück   KNX-User-Forum > Supportforen > eibPC
knx-user-forum - International KNX Award Winner 2010


Links
Kalender
Spende

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 12.06.2010, 09:58
Benutzer
 
Registriert seit: 30.01.2010
Ort: Belgium
Beiträge: 13
eulaersivan ist zur Zeit noch ein unbeschriebenes Blatt
Standard Local variables in macro

I've defined the following macro:

Code:
:begin CallDimmer(ButtonId,Dimwaarde)
ThisDimwaarde^CallDimmer=Dimwaarde
if webbutton(ButtonId)==2 then {
  if(Dimwaarde > 0) then {
    write(Dimwaarde, 0u08)
  } else {
    write(Dimwaarde, 255u08)
  } endif
} endif
if webbutton(ButtonId)==1 then {
  write(Dimwaarde, min(ThisDimwaarde^CallDimmer, 255u08 - 50u08) + 50u08)
} endif
if webbutton(ButtonId)==3 then {
  write(Dimwaarde, max(ThisDimwaarde^CallDimmer, 50u08) - 50u08)
} endif
if change(ThisDimwaarde^CallDimmer) then {
  webdisplay(ButtonId, convert(ThisDimwaarde^CallDimmer,$$),LIGHT,DISPLAY,GREY)
} endif
:end
When I call this macro the first time no problem. When I call this macro twice in my webserver application, the compiler responds with:
bserver_macros.lib
ThisDimwaarde^CallDimmer=Dimwaarde ==> ThisDimwaardeCallDimmer="Dim_Eetkamer-0/1/18"
string exeeds maximum length in >ThisDimwaardeCallDimmer="Dim_Eetkamer-0/1/18"<
ID:35
Any help is much appreciated - Ivan
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
  #2  
Alt 12.06.2010, 11:55
Benutzerbild von enertegus
Erfahrener Benutzer
 
Registriert seit: 25.04.2009
Ort: Forchheim
Beiträge: 1.330
enertegus wird schon bald berühmt werdenenertegus wird schon bald berühmt werden
Standard

Zitat von eulaersivan Beitrag anzeigen
I've defined the following macro:
Hi Ivan,
please post the Makrocode and your application code here or send both and your esf-data to eibpc@enertex.de
__________________
offizielles Supportforum für den Enertex® EibPC: http://knx-user-forum.de/eibpc/
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
  #3  
Alt 12.06.2010, 12:42
bmx bmx ist offline
Benutzer
 
Registriert seit: 16.05.2008
Ort: Bremen
Beiträge: 237
bmx ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Please try to change your makro code to:

Code:
:begin CallDimmer(ThisDimWaardeName, ButtonId, Dimwaarde)
ThisDimwaardeName^CallDimmer=Dimwaarde
if webbutton(ButtonId)==2 then {
  if(Dimwaarde > 0) then {
    write(Dimwaarde, 0u08)
  } else {
    write(Dimwaarde, 255u08)
  } endif
} endif
if webbutton(ButtonId)==1 then {
  write(Dimwaarde, min(ThisDimwaardeName^CallDimmer, 255u08 - 50u08) + 50u08)
} endif
if webbutton(ButtonId)==3 then {
  write(Dimwaarde, max(ThisDimwaardeName^CallDimmer, 50u08) - 50u08)
} endif
if change(ThisDimwaardeName^CallDimmer) then {
  webdisplay(ButtonId, convert(ThisDimwaardeName^CallDimmer,$$),LIGHT,DISPLAY,GREY)
} endif
:end
It just seemed you tried the right way by using a name for your macro in conjunction with ^ but omitted the definition it the macros' arguments.

Regards,
Bernd
__________________
EIB im EFH seit 10'2008, ETS3f, EibPC
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Antwort

Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
local process bus - .net StefanKr KNX EIB Forum 1 23.08.2010 14:32
Beschattung mit Macro: BeschattungRolloOstZeit nielemic eibPC 18 15.06.2010 23:46
eibd mit BCU1 automatisch starten wie??? nektar KNX EIB Forum 5 04.05.2010 12:23
[KNX/EIB] Gira IP Router: "The Device does not support local programming (BCU version %1)" ?? Roeller KNX EIB Forum 10 06.11.2009 19:54


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:38 Uhr.



SEO by vBSEO