Addin JMP di array associativoLo script funziona perfettamente bene da solo.
Ma quando lo faccio in un add-in jmp, funziona fino a creare il tavolo finale, ma si ferma dopo.
Fondamentalmente nel mio script, quando si esegue, chiede all'utente il file1 e quindi il file 2. Una volta che l'utente ha fornito entrambi i file, unisce il file e sputa i grafici nella cartella designata.
Come ho detto, se lo eseguo come script non ho alcun problema.
Ma dopo aver creato l'addin JMP, si ferma subito dopo la concatenazione delle 2 tabelle. Non entra nell'array associativo del tavolo finale e fa il calcolo.
Ho addin.def, addin.jmpcust e il file .jsl nella cartella.
C'è qualcosa che devo aggiornare rispetto all'array associativo per il ciclo "for" quando sto provando a correre attraverso l'addin JMP?
Apprezzo molto l'aiuto. Grazie
Ri: Addin associativa JMP arrayUna grande differenza tra l'esecuzione di uno script e l'esecuzione di uno script come componente aggiuntivo è che gli script eseguiti come componenti aggiuntivi (e, più in generale, gli script eseguiti dalle personalizzazioni dei menu) vengono eseguiti per impostazione predefinita con Nomi predefiniti qui (1) , mentre quando si esegue uno script, se non lo si è aggiunto esplicitamente Nomi predefiniti qui (1) al tuo script, viene utilizzato lo spazio dei nomi globale. Puoi controllare questa differenza tramite l'editor di menu:

Quella casella è selezionata per impostazione predefinita. Il mio suggerimento è che, se si dispone di uno script che funziona bene da solo ma non riesce quando viene eseguito tramite una voce di menu personalizzata, provare a deselezionare quella casella e vedere se questo risolve il problema. Se lo fa, cerca problemi di scoping nel tuo script (e sembra che sia quello che hai trovato). Un'altra cosa che puoi fare è prendere l'abitudine di aggiungere Nomi predefiniti qui (1) come prima riga di tutti gli script, e quindi dovrebbero comportarsi allo stesso modo sia che vengano eseguiti da soli o come parte di un componente aggiuntivo.
Perché non deselezionare la casella e lasciarla deselezionata? Bene, è buona pratica usare il Qui spazio dei nomi per impedire agli script di avere effetti collaterali indesiderati su altri script e componenti aggiuntivi.
HTH,
Eric
Ri: Addin associativa JMP arrayAggiustato. Dovuto fare riferimento di nuovo alla tabella dei dati.
Grazie mille.Ri: Addin associativa JMP arrayGrazie per la risposta Jeff.
Ho trovato un errore nell'esecuzione del jmp addin nella finestra di log.
Ho un'espressione che dice dove (Wafer == Expr (currentwafer)) e corro attraverso tutti i numeri di wafer in un ciclo.
Questa clausola Where per la tabella di dati "Tabella finale" non ha generato righe: Wafer == "11" // (Ho righe per il wafer 11)
Send Expects Oggetto Scriptable {1} in accesso o valutazione di 'Send'
Non ricevo questo errore quando sono solo in esecuzione come script.
qualche idea?Ri: Addin associativa JMP arrayPuò essere difficile eseguire il debug di cose che funzionano quando vengono eseguite come script ma falliscono come un componente aggiuntivo.
La prima cosa da fare è vedere se ci sono messaggi di errore nella finestra Log dopo aver eseguito il componente aggiuntivo. Se ci sono che ti darà (e noi) un indizio sul problema.
Puoi anche instrumentare il tuo codice con le istruzioni show () in varie sezioni per iniziare a restringere la sezione in errore.
Prova questi passaggi e facci sapere i tuoi risultati qui.