Uso della variabile locale in una formulaHo una tabella che ha una colonna (Samp Pt) che elenca il nome dell'apparecchiatura come Equip_n dove n è compreso tra 1 e 9.
La colonna "Data / Ora" è la data e l'ora.
I dati sono ordinati per Equip_n e poi Data / Ora.
Voglio creare un valore chiamato Run che è il numero Run per ogni pezzo di equipaggiamento.La corsa è la corsa numero dell'attrezzatura, ad esempio 1-1.Viene definita una nuova esecuzione quando la differenza tra righe successive di data/ora è maggiore di 190.000 secondi.
Ho provato a utilizzare due variabili locali per tenere traccia del valore numerico della "n". Crea correttamente il primo valore di esecuzione per ciascuna apparecchiatura ("1-1, "2-1", ecc.) ma quando le righe successive sono separate da >190000 secondi, ottengo "1-.", "2-.") .Sono abbastanza sicuro di non utilizzare correttamente le variabili locali. Che cosa sto facendo di sbagliato?Grazie.
Ri: Uso della variabile locale in una formulaGrazie!
Ri: Uso della variabile locale in una formulaIl mio errore, quando ho incollato la formula nella risposta, non ho ricevuto tutta la formula....ho tralasciato una riga
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 );
Ri: Uso della variabile locale in una formulaGrazie, ma quando taglio e incollo la tua soluzione nell'editor di formule, la seconda e la terza clausola If non hanno nulla nella clausola else. Funziona ma fornisce solo il valore 1 nella prima riga, tutti gli altri sono vuoti.Sto eseguendo jmp (non Pro) 14.2 se questo è un fattore.
Ri: Uso della variabile locale in una formulaQuesta formula sembra funzionare
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;
);
)