Individuare una specifica app installata

Salve lettore, in questo articolo voglio spiegarti come poter individuare una specifica app in una installazione di Business Central.

Un problema che si pone quando sviluppiamo con Business Central è identificare se una specifica app è installata. Un modo con una funzione standard c’è, il prerequisito, però, è quello di conoscere l’ID dell’app che vogliamo controllare.

Possiamo utilizzare la funzione [OK :=] NavApp.GetModuleInfo(AppId: Guid; var Info: ModuleInfo)

Vediamo con un piccolo esempio quello che ti sto raccontando. Creiamo una funzione che ci restituisca un messaggio se l’app con un certo ID esiste oppure no.

Se ti chiedi come recuperare l’ID dell’app (in questo caso è l’ID di CompanyHub di Microsoft), devi andare su Gestione Estensioni, poi accedere alla funzione configura. Si apre una pagina e nel campo ID puoi copiare e incollare tale ID sulla tua funzione per la ricerca.

Un metodo alternativo a quello che hai visto sopra, è quello di fare un filtro sulla tabella 2000000153 “Nav App Installed App”. Questa tabella contiene tutte le app installate a sistema. Come chiave primaria ha l’ID dell’app, per questo motivo, possiamo semplicemente fare una GET sulla tabella.

Entrambe le metodologie vanno bene. Sia ModuleInfo che il record della tabella “NAV App Installed App” contengono informazioni interessanti come la versione dell’app, il nome, il publisher. E’ interessante, però, come ModuleInfo abbia la funzione Dependencies che restituisce una lista.

Hai già provato ad utilizzare NavApp e il datatype ModuleInfo?

Leave a Reply

Il tuo indirizzo email non sarà pubblicato.