<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ciao,
Ho difficoltà a selezionare le colonne in JMP10. Questo esempio è sollevato dallo JMP10 Scripting Guide:
/ *
dt = Open ("$ SAMPLE_DATA / Big Class.jmp");
cc = dt << Ottieni i nomi delle colonne (continuo);
ncols = N Articoli (cc);
Per (i = 1, i <= ncols, i ++,
cc << Imposta selezionati (1)
);
* /
Tuttavia, genera il seguente errore nel registro:
/ *
Send Expects Oggetto Scriptable in accesso o valutazione di 'Send', cc << Imposta selezionati (1)
Nel seguente script, errore contrassegnato da / * ### * /
dt = Open ("$ SAMPLE_DATA / Big Class.jmp");
cc = dt << Ottieni i nomi delle colonne (continuo);
ncols = N Articoli (cc);
Per (i = 1, i <= ncols, i ++,
cc << / * ### * / Imposta selezionati (1) / * ### * /
);
* /
Eventuali suggerimenti?
Grazie!
Grazie, Blackeneth,
Hai ragione. Il mio codice fa parte di uno script più grande con più tabelle aperte e JMP si stava confondendo. " Come colonna (dt, nome) "ha fatto il trucco. Grazie!
Ha, se copio il tuo script in JMP 10.0.2 ed eseguirlo, funziona! Senza errori!
Forse hai più tavoli aperti e JMP si confonde su quale sia quello 'corrente'. Quello, o sta interpretando come riferimento di fila.
In ogni caso - chiedetevi - cosa contiene la variabile cc? È una lista, di riferimenti di colonne.
mostra (cc);
cc = {altezza, peso};
ma poi esegui questo:
spettacolo (cc [1]);
spettacolo (cc [2]);
cc [1] =: altezza;
cc [2] =: peso;
Quindi il tuo ciclo, a sua volta, esegue questi comandi:
: altezza << imposta selezionato (1);
: peso << set selezionato (1);
Penso che l'uso della funzione As Column (dt, name) sia più chiaro e più infallibile:
dt = Open ("$ SAMPLE_DATA / Big Class.jmp");
cc = dt << Ottieni i nomi delle colonne (continuo);
mostra (cc);
ncols = N Articoli (cc);
Per (i = 1, i <= ncols, i ++,
come colonna (dt, cc ) << Imposta selezionati (1)
);
Quanto segue funzionerà anche:
dt = Open ("$ SAMPLE_DATA / Big Class.jmp");
cc = dt << Ottieni i nomi delle colonne (continuo);
mostra (cc);
ncols = N Articoli (cc);
Per (i = 1, i <= ncols, i ++,
y = cc ;
dt: y << Imposta selezionati (1)
);