<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ciao,
Ho trovato un "bug" potenzialmente pericoloso nella funzione di aggiornamento. Quando si aggiorna una tabella dati usando "Abbinando colonne", se la "s" finale è omessa, questo script verrà aggiornato per riga. Questo è un errore facile da fare e difficile da catturare (poiché non viene generato alcun errore). Questo può essere risolto nel prossimo aggiornamento JMP? Questo problema è stato trovato su JMP12.
Grazie!!
Nomi predefiniti qui ( 1 ) ;
dt = Aperto ( "$ SAMPLE_DATA / Big Class.jmp" ) ;
dt << Nuova colonna ( "UniqueID" ,
Personaggio ,
Nominale ,
Formula ( : nome || "," || carbonizzare ( : età ) || "," || : sesso || "," || carbonizzare ( : altezza ) || "," || carbonizzare ( : peso ) )
) ;
dt << Nuova colonna ( "Numero" , Numerico , Continuo , Formato ( "Migliore" , 12 ) , Formula ( Sequenza ( 1 , N righe () , 1 , 1 ) ) ) ;
Colonna ( dt , "UniqueID" ) << Elimina la formula ;
Colonna ( dt , "Numero" ) << Elimina la formula ;
dt2 = dt << sottoinsieme ( colonne ( "UniqueID" , "Numero" ) ) ;
dt2 << Ordinare ( Sostituisci tabella , Di ( : Numero ) , Ordine ( Discendente ) ) ;
dt2 << Nuova colonna ( "Some Column" , Personaggio , Nominale , Imposta ciascun valore ( "X" ) ) ;
dt << Aggiornare ( Con ( dt2 ) , Dalla colonna corrispondente ( : UniqueID == : UniqueID ) ) ;
// dt << Aggiorna (con (dt2), in corrispondenza di colonne (: UniqueID ==: UniqueID));
dt << Porta la finestra in primo piano ;
L'obbligo di avere una formulazione specifica e precisa per piattaforme, elementi e messaggi JMP è in tutto JMP. Devi essere coscienzioso della corretta specifica della sintassi.
Ciao robot ,
Posso confermare che succede anche in JMP11.
il problema persiste anche se si utilizza "colonna di corrispondenza". la verità è che qualsiasi combinazione di lettere che non siano "colonne di corrispondenza" o "colonne di corrispondenza" fa sì che JMP lo ignori e aggiorni per riga (predefinito se non indicato dalle colonne).
dt << Aggiornare ( Con ( dt2 ) , Colonna di corrispondenza ( : UniqueID == : UniqueID ) ) ; // ancora corrispondente per riga
// dt << Aggiornare ( Con ( dt2 ) , Colonne corrispondenti ( : UniqueID == : UniqueID ) ) ; // funziona bene - per colonne
// dt << Aggiornare ( Con ( dt2 ) , Msfgsdfsfgatvvch Colonna ( : UniqueID == : UniqueID ) ) ; // nessun messaggio di errore - corrisponde per riga
che minaccia davvero.
l'unico conforto è che la maggior parte delle persone, incluso me, non scrive quasi mai il comando di aggiornamento, ma lo prenda da JMP dopo averlo fatto manualmente. Altrimenti, ora sarebbero fluttuanti alcune brutte conseguenze.