L'utente riceve errori con il mio script che non riesco a riprodurre.Ho finito la mia app e funziona come previsto sulla mia macihne. L'ho inviato a pochi utenti per testare l'app. Gli utenti ricevono messaggi di errore dove non dovrebbero.
Parte dello script è necessario scegliere una colonna dalla Lista Col.
Ho creato questa casella di riepilogo Col in precedenza nello script e assegnato uno script onChange che legge praticamente quale colonna è selezionata:
colListX = Col List Box (Data Table(dt<<GET name=""></GET>
Ora, quando gli utenti fanno clic su una colonna nella casella di riepilogo Col, ottengono il seguente messaggio di errore. Ho inserito alcuni comandi show () nel codice e ho chiesto loro di eseguirlo:

Quindi, qui colListX - è la Col List Box con cui lavoro. colListXselected - è la colonna attualmente selezionata che ho ottenuto da Get Selected. Interessante: gli utenti lo hanno mostrato nel registro come
colListXselected = {"eventtime"};
Is Scriptable(colListXselected) = 1;
wihle il mio registro lo mostra come
colListXselected = {:eventtime};
Is Scriptable(colListXselected) = 1;
e il codice in esecuzione è identico.
Immagino che l'intero errore si verifichi perché gli utenti non lo hanno come una colonna, quindi, anche se l'oggetto è scrivibile tramite script, non è possibile applicare il messaggio Ottieni nome poiché non è una colonna?
Comunque, qualche idea del perché gli utenti hanno questa differenza dalla mia uscita? Come risolverlo?
Grazie,
M
Ri: l'utente riceve errori con il mio script che non riesco a riprodurre.Questo era un problema in JMP 13.0.0. Si prega di consultare JMP Nota problema 59737 per dettagli. È possibile scaricare l'aggiornamento gratuito per JMP 13.2.1 da Aggiornamenti software JMP pagina.
Spero che sia d'aiuto!
Ri: l'utente riceve errori con il mio script che non riesco a riprodurre.Ho appena avuto il tempo di tornare a questo.
Grazie mille per la risoluzione dei problemi: ora ha senso, perché so perché i miei utenti ottengono questo errore.
Quello che non capisco è il motivo per cui il mio JMP restituisce un elenco di riferimenti alle colonne, mentre è supposto (e lo fa con altri utenti) l'elenco delle stringhe di ritorno.
Per escludere il resto del codice e assicurarmi che non abbia alcun effetto su di esso, ho scritto questo piccolo script e ho chiesto ai miei utenti di eseguirlo:
Names Default To Here( 1 );
Clear Log();
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
New Window( "Col List Box Example",
colList = Col List Box( all, width( 250 ), maxSelected( 1 ) ),
);
colList << Set Selected (2);
colListSelected = colList<< Get Selected;
testString="test";
show(Type(testString));
show(Type(colListSelected));
show(Type(colListSelected[1]));
show(colListSelected[1]);
Il mio JMP restituisce questo:
Type(testString) = "String";
Type(colListSelected) = "List";
Type(colListSelected[1]) = "Name";
colListSelected[1] = :age;
Il loro JMP restituisce questo:
Type(testString) = "String";
Type(colListSelected) = "List";
Type(colListSelected[1]) = "String";
colListSelected[1] = "age";
Com'è possibile? Chiunque da JMP può dare un'occhiata a questo? O dovrei inviarlo per il supporto?
Grazie,
M
Ri: l'utente riceve errori con il mio script che non riesco a riprodurre.È possibile utilizzare la funzione JMPVersion () per stampare la versione di JMP.
Ri: l'utente riceve errori con il mio script che non riesco a riprodurre.Miguello,
ColListBox << get selected restituisce un elenco di nomi di colonne, ovvero un elenco di stringhe tra virgolette. Non ho idea di come il risultato sia un riferimento di colonna. Riguardo all'errore: guarda lo script qui sotto. Entrambi gli elenchi usrsel1 e usrsel2 sono elenchi e script. usrsel1 [1] è scriptable perché è un riferimento di colonna: contiene messaggi (metodi). usrsel2 [1] è una stringa che non è scriptable. Questo è ciò che il tuo messaggio di errore riportato ti sta dicendo.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
usrsel1 = { :height };
usrsel2 = { "height" };
//Run one line at a time
Show( IsScriptable(usrsel1), IsScriptable(usrsel2) ); // both are 1
Show( IsScriptable(usrsel1[1]), IsScriptable(usrsel2[1]) ); //results are 1, 0
show(usrsel1[1] <<GET name=""></GET>Non conosco alcuna preferenza o opzione per impostare (su Windows) dove ottenere i riferimenti di colonna restituiti selezionati.