Verwendung einer lokalen Variablen in einer FormelIch habe eine Tabelle mit einer Spalte (Samp Pt), die den Gerätenamen als Equip_n auflistet, wobei n 1 bis 9 ist.
Die Spalte "Datum / Uhrzeit" enthält das Datum und die Uhrzeit.
Die Daten werden sortiert nach Equip_n und dann Datum / Uhrzeit.
Ich möchte einen Wert namens Run erstellen, der die Run-Nummer für jedes Gerät ist.Der Run ist der Gerätenummer-Run, zB 1-1.Ein neuer Lauf wird definiert, wenn der Unterschied zwischen aufeinanderfolgenden Datums-/Uhrzeitzeilen größer als 190.000 Sekunden ist.
Ich habe versucht, zwei lokale Variablen zu verwenden, um den numerischen Wert des "n" zu verfolgen. Es erstellt den ersten Laufwert für jedes Gerät korrekt ("1-1, "2-1" usw.), aber wenn die aufeinanderfolgenden Reihen > 190000 Sekunden auseinander liegen, erhalte ich "1-.", "2-.") .Ich bin mir ziemlich sicher, dass ich die lokalen Variablen nicht richtig verwende. Was mache ich falsch?Vielen Dank.
Betreff: Verwendung einer lokalen Variablen in einer FormelVielen Dank!
Betreff: Verwendung einer lokalen Variablen in einer FormelMein Fehler, als ich die Formel in die Antwort eingefügt habe, habe ich nicht die gesamte Formel erhalten ... Ich habe eine Zeile ausgelassen
If( Row() == 1,
hold = 1;
hold2 = 1;
,
If( :Name( "Date / Time" ) - Lag( :Name( "Date / Time" ) ) > 190000,
hold2 = hold2 + 1
);
If( :Samp Pt != Lag( :Samp Pt ),
hold = hold + 1;
hold2 = 1;
);
);
Char( hold ) || "-" || Char( hold2 );
Betreff: Verwendung einer lokalen Variablen in einer FormelDanke, aber wenn ich Ihre Lösung ausschneide und in den Formeleditor einfüge, haben die zweite und dritte If-Klausel nichts in der else-Klausel. Es läuft aber es gibt nur den Wert 1 in der ersten Zeile, alle anderen sind leer.Ich verwende jmp (nicht Pro) 14.2, falls dies ein Faktor ist.
Betreff: Verwendung einer lokalen Variablen in einer FormelDiese Formel scheint zu funktionieren
If( Row() == 1,
hold = 1;
hold2 = 1;
,
If( :Name( "Date / Time" ) - Lag( :Name( "Date / Time" ) ) > 190000,
hold2 = hold2 + 1
);
If( :Samp Pt != Lag( :Samp Pt ),
hold = hold + 1;
hold2 = 1;
);
)