Sollevamento intenzionale di errori in JSLHo cercato nel forum e nell'indice degli script un modo per farlo, ma non ho trovato nulla per realizzare ciò che sto cercando di fare.Sto cercando qualcosa che abbia funzionalità simili alla funzione "Raise" di Python.O essenzialmente la stessa funzionalità delle istruzioni Try Throw ma senza che venga sollevata un'eccezione JSL.
Ad esempio, sto scrivendo una funzione che richiede all'utente di inserire una data sotto forma di stringa.Per evitare errori, voglio controllare l'input prima di utilizzarlo nella funzione.
Example Function = Function({start_date,end_date},
chk1 = Is String(start_date);
If(chk1 == 0, //Raise some error here);
);Penso che potrei ottenere ciò che desidero con una sequenza Show ("Messaggio di errore") e Break(), ma mi chiedo se esistano metodi JSL nativi per eseguire questa attività.
Ri: Sollevamento intenzionale di errori in JSLPuoi usare Throw per generare un errore.Nel contesto dell'acquisizione degli errori di input dell'utente è possibile utilizzare una finestra modale con un messaggio OnValidate:
NewWindow("Demo", <<MODAL></MODAL>
Ri: Sollevamento intenzionale di errori in JSLUtilizzo una combinazione di una finestra modale per fornire un messaggio di errore all'utente e lanciarla per terminare l'esecuzione.
Example Date Check = Function({start_date,end_date},
chk1 = Is String(start_date);
If (!chk1 == 0,
emsg = "Invalid start date [" || char(start_date) || "]";
ew = new window("Invalid date", << modal(),
text box(emsg),
);
throw(emsg);
);
chk2 = Is String(end_date);
If (!chk2 == 0,
emsg = "Invalid end date [" || char(end_date) || "]";
ew = new window("Invalid date", << modal(),
text box(emsg),
);
throw(emsg);
);
);
example date check(today(), today());
example date check("31-Feb-2018", today());Ri: Sollevamento intenzionale di errori in JSLPuoi usare Gettare() senza provare. Penso che sia simile a Raise() in Python.
//:*/
show("Here");
throw("This didn't work");
show("Here 2");
/*:
"Here";
This didn't work
Ri: Sollevamento intenzionale di errori in JSLutilizzare la funzione Try() e quindi controllarne i risultati