Come cercare nelle intestazioni delle colonne?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ciao,
Sono nuovo nello scripting JSL e voglio sapere come cercare nelle intestazioni delle colonne.
Fondamentalmente, ho usato la tabella dati preparata da un'altra persona che ho bisogno di analizzare. Prima di iniziare l'analisi, cambio le intestazioni delle colonne attraverso lo script.
Tuttavia, a volte la tabella dei dati non ha l'intestazione specifica che sto cercando e lo script JSL si interromperà.
Ecco una parte del mio codice:
col = Colonna ( "% L (i) _MRR"); col << Imposta nome ("irawLossMRR");
col = Column ("% L (i) _QSNR - Production_Avg."); col << Imposta nome ("irawLossQSNR");
Il mio problema: se non c'è l'intestazione di colonna "% L (i) _MRR", lo script si interromperà e non eseguirà il comando successivo.
Requisito: come mostrare una finestra pop-up per mostrare un messaggio: "No% L (i) _MRR column" e procedere con il comando successivo.
- Marknight -
Come cercare nelle intestazioni delle colonne?Sembra che voglia visualizzare il messaggio di errore, ma continuare con il resto delle funzioni di rinomina della colonna. È possibile farlo con una finestra di dialogo modale (è necessario fare clic su "OK" prima che lo script proceda) o su una finestra di didascalia (non interrompe lo script o richiede una risposta), a seconda delle proprie preferenze. Negli esempi seguenti, "old_name" si riferisce al nome della colonna che si desidera individuare e sostituire e "new_name" si riferisce al nome con cui si desidera sostituirlo.
col_names = dt << ottieni i nomi delle colonne (stringa);
if (! contains (col_names, "old_name"),
dlg = dialog ("Nessuna colonna old_name",
pulsante ("Annulla"), pulsante ("OK")),
Se (dlg ["Button"] == -1, Throw ()),
Column ("old_name") << Imposta nome ("new_name")
);
Per utilizzare il comando didascalia non modale:
col_names = dt << ottieni i nomi delle colonne (stringa);
if (! contains (col_names, "old_name"),
Caption ({x, y}, "No old_name column");
Aspetta (2);
Didascalia (rimuovi),
Column ("old_name") << Imposta nome ("new_name")
);
x e y nella didascalia si riferiscono alle coordinate di visualizzazione, quindi se la risoluzione dello schermo è 1024 x 768, usando {500,350} otterrai una finestra di didascalia che si trova approssimativamente nel mezzo dello schermo. È inoltre possibile modificare l'ora del comando "wait" se il messaggio è troppo lungo (o non abbastanza lungo).
Dovrai ripetere il condizionale per ogni colonna, sostituendo "old_name" e "new_name" ogni volta.
Come cercare nelle intestazioni delle colonne?Dovresti usare qualcosa come il seguente:
dt = Aperto ( "$ sample_data \ Big Class.jmp" ) ;
col_names = dt << Ottieni nomi di colonne ( Stringa ) ;
Se ( ! contiene ( col_names , "nome di battesimo" ) ,
dlg = dialogo ( "Colonna non trovata" ,
"Colonna di avviso [nome] non trovata" ,
pulsante ( "OK" )) ;
gettare () ;
) ;
Si noti che la funzione contiene è case sensitive.
Saluti,
Peter