Finns det något scriptexempel där ett ev fenomen visar sig? Lasse kan inte hitta något vid en snabbtitt.
Allmänt meddelande
Collapse
No announcement yet.
Globala celler/variabler strular
Collapse
X
-
-
Är detta samma problem som beskrivs i tråden ?
Jag testar med dessa enkla script att kommunicera via globala variabler som jag tidigare gjort i AT8, om man ändrar värdet 1060 och sparar ritas det inte om i diagrammet förrän man antingen trycker "spara" i sl) test globala eller gör något som ritar om diagrammet, typ byter upplösning på det.
Har suttit några kvällar nu och inte fattat varför det inte funkar, har för mig att det inte var så i AT8 nämligen utan att det slog igenom direkt när man sparade ner värdet.
Verkar ju som om det funkar men inte ritar som det skall, kanske det ritar när man är live ? men då har jag inte tid att labba...
********************************
sl) konfigureringsscript globalt
test:=1060
i1(
setgvarif(test,100,1)
)
********************************
sl) test globala
draw(getgvar(100),1,mqb)
********************************
Comment
-
Kom på en sak om SetGVarIf(), det finns ju en parameter L för Later, vilket kanske kan användas för att bara skriva till cellen om tidstämpeln för datat är senare än den som redan ligger i cellen. Dvs, ritning i diagram blir ju en tidigare tidstämpel vilket då blockerar skrivning. All "live"-körning får ju automatiskt tidstämpel som är senare och då skrivs det som vanligt. Kanske värt att testa?
Comment
-
Lysande. Det är väl bara i diagram detta kan bli problem? Annars borde tidpunkt alltid vara senare än tidigare. Behövs det inget komma eller går det inte att blanda L med annat villkor? Är SetGvarIf(c,155,L) = SetGvarIf(c,155,and(1,1),L) eller SetGvarIf(c,155,and(and(1,1),L))
Comment
-
Nja, jag har inte hunnit prova själv, men det borde bara vara diagramritning som får betydelse. Tror inte det går att kombinera med andra parametrar, så om man vill ha parameter T som i True får man skriva det med någon extra rad kod istället. Men om det funkar att isolera bort "falska" signaler från diagramritning är det ju ett bra steg framåt.
Om någon provar och får oväntade resultat får vi konsultera Lasse lite närmare.
Comment
-
Ursprungligen postat av Henric Visa inläggLysande. Det är väl bara i diagram detta kan bli problem? Annars borde tidpunkt alltid vara senare än tidigare. Behövs det inget komma eller går det inte att blanda L med annat villkor? Är SetGvarIf(c,155,L) = SetGvarIf(c,155,and(1,1),L) eller SetGvarIf(c,155,and(and(1,1),L))
dummy=If(mitt_villkor,SetGvarIf(c,155,and(and(1,1),L)),0)
Mvh
Comment
-
Ursprungligen postat av NickoTrader Visa inläggRikard, hur ska man skriva någon extra rad kod om man vill ha ett villkor för att styra skrivningen som Henric vill, för Henrics fråga är ju det intressanta. Kan man skriva:
dummy=If(mitt_villkor,SetGvarIf(c,155,and(and(1,1),L)),0)
Mvh
dummy=If(mitt_villkor,SetGvarIf(c,155,L),0).... Jag är osäker på om resultatet av if måste returneras till något, därav dummyn.
Henric, du har nog helt rätt och om man kombinerar dina två rader:
dummy=if(mitt_villkor,c,GetGvar(155))
SetGvarIf(dummy,155,L)
till
SetGvarIf(if(mitt_villkor,c,GetGvar(155)),155,L)
så skrivs c endast in i global cell 155 om mitt_villkor är sant OCH det är senare, annars skrivs 155:an värde in igen, om det är senare. Ditt skrivsätt på två rader blir nog tydligare
Mvh
Comment
Comment