Il mio script non verrà eseguito tramite il debugger ma verrà eseguito senza debuggerCiao!
Ho uno script che posso far funzionare perfettamente se utilizzo semplicemente il pulsante "Esegui script" nella finestra dello script, ma se apro il debugger e utilizzo il pulsante "Esegui" ottengo un messaggio di errore.
Il messaggio dice "La sottoscrizione di un elenco con un elemento elenco o matrice" flag "ora è un elenco non uno scalare.
La riga dello script a cui si riferisce è in grassetto qui sotto:
flag = loc(-5<=CalcMassesFromPeak<=5);
// Show(flag);
y= NRow(flag);
WellLookup = ESIOligoInfo["WellIDs"];
if(y!=0,FlaggedWells = WellLookup[flag],FlaggedWells = "");
Non penso che ci sia qualcosa di sbagliato nello script perché funziona bene quando non uso il debugger. Non so proprio cosa stia succedendo!
Ho allegato l'intero script nel caso possa essere d'aiuto.
Ri: Il mio script non verrà eseguito tramite il debugger ma verrà eseguito senza debugger
Preference dialogPreference dialogFinestra di dialogo delle preferenze
Il problema di compatibilità che di solito fa scattare questo per me è illustrato sopra; una volta l'indice [42] con 1::1 (un array di elementi da 1 a 1) restituirebbe 42. Ora ritorna [42]. Il pensiero originale era che il valore scalare fosse il caso comune, ma essere coerenti per tutti 1::N è meglio perché non esiste un caso speciale per N==1.
This makes the debugger pause, making debugging painful. Change the preference! It probably works the way you expect it to now.This makes the debugger pause, making debugging painful. Change the preference! It probably works the way you expect it to now.Questo mette in pausa il debugger, rendendo il debug doloroso. Cambia la preferenza! Probabilmente funziona come ti aspetti ora.
Ri: Il mio script non verrà eseguito tramite il debugger ma verrà eseguito senza debugger@Melanie_J_Drake
Mi rendo conto che questo è di anni fa, ma mi sono imbattuto in questo quando stavo cercando informazioni per lo stesso problema.Hai detto che l'avviso può essere disattivato.Non vedo come farlo in JMP 16. Sai se è ancora disponibile?
Grazie!
Ri: Il mio script non verrà eseguito tramite il debugger ma verrà eseguito senza debuggerPenso che questo provenga da due aggiornamenti apportati alla 13.0. Rubato dalle nuove funzionalità:
- Nelle preferenze di JSL Debugger, Break for Compatibility Warnings è una nuova opzione che
interrompe l'esecuzione dello script quando viene rilevato un potenziale problema di compatibilità JSL. Il debugger
si interrompe solo una volta per ogni potenziale problema nello script quando l'opzione è attiva. Se ci sono
molte occorrenze nello script e si determina che non sono un problema, è possibile
disattivare l'opzione. La preferenza è selezionata per impostazione predefinita.
- Quando usi una matrice 1x1 come pedice in una matrice o in una lista, ora il risultato è una matrice o
una lista invece di un numero scalare.
Il debugger ti sta dicendo che stai usando qualcosa che potrebbe darti un risultato di matrice o elenco invece di un risultato scalare. Puoi disattivare l'avviso nelle preferenze. Ma prima mi assicurerei che la tua sceneggiatura possa gestire il cambiamento di comportamento da 12 a 13.