Nome risolto errore prima che la variabile sia assegnata / utilizzataHo una sceneggiatura la cui struttura di base è:
generare alcuni elenchi che alimentano l'interfaccia utente
creare un'interfaccia utente
accetta l'input dell'utente
condurre analisi
Ho scritto lo script usando espressioni e tutto ciò che va oltre la creazione dell'interfaccia utente viene chiamato per essere eseguito solo dopo che l'utente ha premuto il pulsante OK sull'interfaccia utente
L'utente deve selezionare un intervallo di tempo per l'analisi che quindi importa e utilizzo come variabile denominata "giorni" durante l'analisi. L'unica volta in cui questa variabile viene definita e utilizzata è nell'espressione per ottenere l'input dell'utente da alimentare nel fare l'analisi, tuttavia quando eseguo lo script creerà l'interfaccia utente e quindi darà un avviso Nome non risolto per la variabile giorni anche prima qualsiasi cosa viene inserita dall'utente. Dopo aver chiuso la finestra di avviso e immesso le opzioni nell'interfaccia utente, lo script sembra funzionare correttamente.
La variabile viene definita e quindi utilizzata in un calcolo. L'avviso sta accadendo sulla linea che utilizza la variabile e non la sezione che la definisce. Ho già affrontato problemi di Name Unresolved in precedenza, ma non riesco a capire perché venga visualizzato prima che l'espressione non sia stata chiamata.
Ri: Nome risolto errore prima che la variabile sia assegnata / utilizzataSembra che tu stia usando una finestra non modale con il codice dopo di essa. Puoi:
1. Passa a una finestra modale
nw = new window("test", << modal(),
tb = text edit box(),
okb = button box("OK")
)
);
<POST-USER-INTERFACE steps=""></POST-USER-INTERFACE>
2. O metti la logica da eseguire tramite il pulsante OK all'interno del pulsante OK, magari con un'inclusione.
nw = new window("test",
tb = text edit box(),
okb = button box("OK",
include("post-user-interface.jsl");
)
);Ri: Nome risolto errore prima che la variabile sia assegnata / utilizzataGrazie! Inserire l'ulteriore codice all'interno del pulsante è proprio quello che stavo cercando. Si scopre che c'è stato un altro problema in seguito nella sceneggiatura che non ho mai notato prima e stava rendendo le cose più complicate.