Considerazioni relative all'asincronia per i componenti aggiuntivi di controllo

Completato

Quando si scrivono oggetti di componente aggiuntivo di un controllo che funzionano su tutte le destinazioni di visualizzazione, è necessario considerare alcune limitazioni relative alla comunicazione asincrona. Tutte le chiamate tra il codice AL in esecuzione nel server Business Central e il metodo di script in esecuzione nel Web browser sono asincrone.

Di conseguenza, i metodi nell'interfaccia del componente aggiuntivo del controllo devono essere di tipo void e i metodi di proprietà non devono essere usati.

Per trasferire un risultato da un trigger AL al metodo di script chiamante, è necessario aggiungere un metodo all'interfaccia del componente aggiuntivo del controllo che il trigger AL può richiamare per inviare il risultato allo script.

Per trasferire un risultato da un metodo di script a un trigger AL, è necessario aggiungere un evento all'interfaccia del componente aggiuntivo del controllo che il metodo di script può usare per richiamare un trigger AL che riceve il risultato.

Per richiamare un trigger AL sul server Business Central dalla pagina che contiene il componente aggiuntivo del controllo, è possibile usare il metodo InvokeExtensibilityMethod.

void Microsoft.Dynamics.NAV.InvokeExtensibilityMethod(name, arguments, skipIfBusy, callback);

Altre informazioni su alcune funzioni:

  • name: stringa che contiene il nome del trigger AL da richiamare.

  • arguments: matrice che contiene gli argomenti da passare al trigger AL. Gli argomenti devono essere forniti in una matrice, anche quando il trigger accetta solo un argomento.

  • skipIfBusy: valore che indica se richiamare il metodo di estendibilità se il client è occupato. Il parametro è facoltativo e il valore predefinito è false.

  • callback: funzione chiamata quando l'esecuzione del metodo di estendibilità sul server è terminata. Il parametro è facoltativo.

La funzione callback è utile per sincronizzare più chiamate con il server.