D'abord... Je suis très nouveau dans les scripts et en ce moment je travaille dans l'éditeur de formules. J'essaie de faire quelque chose que je pensais être assez simple...
J'ai deux colonnes de données. La première colonne a des valeurs d'état qui sont les mêmes pendant une période de temps, puis changeront et seront à nouveau constantes pendant une période de temps. Par exemple...
DÉSACTIVÉ
DÉSACTIVÉ
DÉSACTIVÉ
DÉSACTIVÉ
DÉSACTIVÉ
SUR
SUR
SUR
etc.
Dans la deuxième colonne, je voudrais incrémenter un nombre chaque fois que le statut change. Ainsi, dans l'exemple ci-dessus, les OFF seraient 1, les ON seraient 2, la prochaine série de OFF serait 3, etc.
En ce moment, je mets en place une instruction conditionnelle comme celle-ci...
Si ( :C1 Statut[ Ligne ()] == :C1 Statut[ Ligne () + 1 ],
:X,
:x = :x + 1
)
Où C1 Status est la ligne OFF/ON. J'ai configuré x en tant que variable de table initialement égale à 1,
Mais je reçois une sorte d'avertissement de cycle et il n'augmente pas.
Toute aide serait appréciée.
Salut Scott,
J'ai tendance à utiliser la fonction LAG pour ce type d'opération comme indiqué ci-dessous :
If( Row() == 1,
1,
If( :C1== Lag( :C1, 1 ),
Lag( :PERIOD, 1 ),
Lag( :PERIOD, 1 ) + 1
)
)
Ce n'est pas aussi élégant mais c'est fiable.
Meilleur,
ST
Brillant! A fonctionné comme un charme. Merci!