Prima di tutto... Sono molto nuovo nello scripting e in questo momento sto lavorando nell'editor di formule. Sto cercando di fare qualcosa che pensavo fosse abbastanza semplice...
Ho due colonne di dati. La prima colonna ha valori di stato che sono gli stessi per un periodo di tempo e poi cambieranno e saranno di nuovo costanti per un periodo di tempo. Per esempio...
SPENTO
SPENTO
SPENTO
SPENTO
SPENTO
SOPRA
SOPRA
SOPRA
eccetera.
Nella seconda colonna vorrei incrementare un numero ogni volta che lo stato cambia. Quindi nell'esempio sopra, gli OFF sarebbero 1, gli ON sarebbero 2, il prossimo set di OFF sarebbe 3, ecc.
In questo momento sto impostando una dichiarazione condizionale come questa...
Se ( :C1 Stato[ Riga ()] == :C1 Stato[ Riga () + 1 ],
:X,
:x = :x + 1
)
Dove C1 Status è la riga OFF/ON. Ho impostato x come variabile di tabella inizialmente uguale a 1,
Ma ricevo una sorta di avviso di ciclo e non aumenta.
Qualsiasi aiuto sarebbe apprezzato.
Ciao Scott,
Tendo a utilizzare la funzione LAG per questo tipo di operazione come mostrato di seguito:
If( Row() == 1,
1,
If( :C1== Lag( :C1, 1 ),
Lag( :PERIOD, 1 ),
Lag( :PERIOD, 1 ) + 1
)
)
Non è così elegante ma è affidabile.
Migliore,
TS