Articoli

Gestione scorte magazzino

Business Central, monitorare la giacenza del magazzino con Azure IoT ed Arduino

Parliamo di uno studio di fattibilità per gestire le scorte di magazzino utilizzando “Internet delle Cose” il cui acronimo è IoT (Internet of Things).

Lo scopo dello studio di fattibilità, fatto per un cliente, è stato quello di inviare i dati provenienti da un dispositivo connesso ad internet a Business Central per capire quando le scorte di magazzino raggiungono il livello per il riordino automatico. Possiamo dire che in alcuni settori merceologici possiamo arrivare ad avere un inventario di magazzino in real-time h24.

IoT (Internet of Things) sta cambiando il modo di lavorare e lo farà sempre di più appena la rete 5G in Italia sarà completata.

La richiesta del cliente è stata “Quando il peso di quei contenitori scende sotto 150 Kg, Business Central deve inviare una richiesta di approvvigionamento al magazzino esterno”.

La domanda che ci siamo fatti è stata “Come possiamo a fare in  modo che quei contenitori inviino un segnale a Business Central?”

La risposta è stata “Arduino”.
Arduino è una piattaforma hardware a basso costo, opensource e di progettazione Italiana.

Ok, ma poi ci siamo chiesti “Ma il segnale letto con Arduino, come lo inviamo a Business Central?”

La risposta è stata “Azure IoT Central”, perché semplice da configurare e molto più facile da utilizzare rispetto a “Azure IoT HUB”.

Gli step dello studio di fattibilità

Gli steps del nostro studio di fattibilità sono stati:

  • Creare un’applicazione utilizzando Azure IoT Central
  • Creare un device template
  • Creare un simulatore di device, permettendo di simulare la lettura dei dati e fare il test del software
  • Connettere Arduino
  • Creare una Azure Logic Application
  • Connettere Azure IoT a Business Central
  • Creare un worlflow in Business Central

Creare un’applicazione utilizzando Azure IoT Central

Il primo passaggio è stato quello di impostare una Azure IoT Central App

  • Dal link “apps.azureiotcentral.com” si crea una custom App e gli assegniamo un nome, policy application e scegliamo di associare alla nostra App un URL.

Tempo 30 secondi la nostra prima Azure IoT App è pubblicata.

Creare un Device Template

Cosa è un Device Template? E’ una tipologia generica di device.
Generalmente un progetto IoT all’interno di un ambiente produttivo ha più device dello stesso tipo.
Un Device Template ci permette di creare uno schema di configurazione per tipologia di device, così che possiamo impostare simultaneamente più devices dello stesso tipo: pese, termometri, pressostati, ecc.
Azure IoT Central ci permette, dalla dashboard, di creare un Device Template:

  • Assegnargli un nome
  • Selezionare il tipo di lettura che verrà letta
  • Impostare i vari parametri
  • Impostare una regola sulla tipologia di lettura scelta.

Creare un simulatore di device, permettendo di simulare la lettura dei dati e fare il test del software

Azure IoT Central ci permette di creare un device virtuale, utile, per simulare la lettura del dato, nel nostro caso il peso del contenitore; questo simulatore ci da la possibilità di testare tutta la parte software sia Azure che Business Central.

Connettere Arduino

Azure IoT Central ha un elenco di devices, selezionando dalla lista Real potremo inserire l’ID del device ed il nome.

I componenti hardware usati in laboratorio sono:

  • Arduino uno con scheda wi-fi
  • Un sensore di peso
  • Batteria da 9v
  • Basetta breadboard e cavetteria
  • Contenitore di plastica

Scaricato le librerie software del sensore di peso programmiamo l’Arduino connettendolo al pc tramite cavo USB. Aduino fornisce un tool di sviluppo opensource scaricabile dal sito ufficiale.

Creare una Azure Logic Application

Adesso che abbiamo montato il nostro Arduino, con il suo sensore di peso e programmato, dobbiamo far si che il peso letto dal sensore venga inviato a Business Central.

Accedendo ad Azure Portal selezioniamo Logic Apps e creiamo la nostra logic app assegnandogli un nome.
All’interno della nostra logic app selezionamo IoT Central connector e poi When a rule is fired che ci permette di scegliere:

  • L’Applicazione creata precedentemente
  • La Regola creata precedentemente.

Adesso, dobbiamo agire sulla regola, perché la lettura del peso viene fatta continuamente dal nostro Arduino attivando la nostra regola tutte le volte che il peso risulta nella soglia. Noi, invece, vogliamo che la regola si attivi una sola volta.

Per far si che la regola si attivi una sola volta configuriamo in IoT Central una proprietà, che abbiamo chiamato Refill.

Modifichiamo la nostra regola ed associamola alla nostra applicazione in IoT Central facendo si che venga applicata solo quando la nostra proprietà Refill sia valorizzata a NO.

Connettere Azure IoT a Business Central

Per poter far si, che il dato letto dal nostro Arduino possa essere inviato a Business Central occorre, che la comunicazione sia autorizzata attraverso OAuth, un protocollo di rete aperto e standard, progettato specificamente per lavorare con l’Hypertext Transfer Protocol (HTTP), altrimenti non è possibile chiamare un API in Business Central tenant.

Le credenziali di autenticazione verranno memorizzata in Azure Key Vault.

Fatto questo dovremo:

  • Registrare Business Central come una App in Azure portal
  • Generare il Token
  • Creare una Azure Logis App Workflow per ottenere un Business Central Access Token

Registrare Business Central come una App in Azure portal

Dobbiamo registrare Business Central come una App in Azure Portal utilizzando la funzionalità App Registrations per abilitare la richiesta del Token in OAuth.

Dovremo impostare i parametri: Name, Redirect URI, Client Secrets ed API Permission (Dynamics 365 Business Central user_impersonation).

Generare il Token

Dobbiamo ottenere un token manualmente usando Postman, un software scaricabile gratuitamente da internet.

Useremo Postman per simulare una chiamata GET al nostro tenant
https://api.businesscentral.dynamics.com/v1.0 HYPERLINK “https://api.businesscentral.dynamics.com/v1.0%3Ctenant”< HYPERLINK “https://api.businesscentral.dynamics.com/v1.0%3Ctenant”tenant domain>/api/v1.0
nel tab Autorization andremo ad impostare come tipo di autenticazione OAuth 2.0 e Request Headers.

A questo punto possiamo ottenere un Token impostando i parametri: Token Name, Grant Type, Callback URL, Auth URL, Access Token URL, Client ID, Client Secret, Scope, State (va lasciato vuoto), Client Autentication.

Il Token ottenuto lo recuperiamo dalla proprietà refresh_token e lo utilizziamo per fare un test  con Postman; se tutto va bene otteniamo la liste delle API utilizzabili in Business Central.

Creare una Azure Logis App Workflow per ottenere un Business Central Access Token

In Azure Portal scegliamo Logic Apps e creiamo una nuova App, scegliendo un blank template.

In questa sezione di Azure Portal impostiamo la logica necessaria per gestire creare, rigenerare, cancellare e memorizzare la chiave di autenticazione del Token, all’interno di Azure Key Vault.

Iniziamo con l’impostare una Request selezionando la scelta When a HTTP request is received, che ci permette di recuperare la chiave di autenticazione del Token, memorizzato precedentemente in Azure Vault.

Utilizzando l’indirizzo https://vault.azure.net visualizziamo a video un Json contenente i parametri, tramite una chiamata GET.

Ottenuta la chiave di autenticazione possiamo recuperare il Token con una chiamata POST all’URI

https://login.microsoftonline.com/ HYPERLINK “https://login.microsoftonline.com/%3Ctenant”< HYPERLINK “https://login.microsoftonline.com/%3Ctenant”tenant domain>/oauth2/token e passandogli i parametri necessari nel body della chiamata.

Ottenuto il Token lo dobbiamo sostituire a quello esistente in Azure Key Vault e questo lo facciamo creando due azioni: Delete e Put.

Il nuovo Token verrà restituito con una nuova azione Response.

Il nostro workflow è praticamente finito, non ci rimane che abilitare il parametro Identity in Azure Key Vault impostando i permessi: Role, Assign access to, Select solo alla nostra Logic App.

Connettere Azure IoT a Business Central

Possiamo chiamare la nostra API. Il nostro workflow è finito e la procedura può recuperare un Token necessario per accedere a Business Central.

Nella nostra Logic APP, creata precedentemente, dobbiamo impostare una nuova azione del tipo Choose a Logic Apps Workflow. Questa nuova azione ci permette di chiamare il nostro workflow per recuperare il Token necessario all’autenticazione in Business Central.

Aggiungiamo una nuova azione, di tipo HTTP, per chiamare la nostra API impostando i seguenti parametri: Method, URI, Headers, Body, Authentication e Value.

Creare un WorlFlow in Business Central

La API che chiamiamo attraverso Azure Logic App crea un record in una tabella denominata Az. IoT Central Measurement.

Creiamo un nuovo workflow con il compito di creare un ordine di tutte le volte che viene ricevuta una lettura da Azure IoT Central.

Nella risposta del WorkFlow abbiamo aggiunto altre informazioni come l’ID del Device che ha generato la lettura, il codice articolo ed il codice fornitore.

Considerazioni

Inevitabile dire che IoT è un mondo non solo affascinante, ma è sicuramente una via tracciata per tutte le aziende, specialmente di produzione e logistica.

Possiamo utilizzare IoT anche per tracciare i pacchi e all’interno di un magazzino ed in fase di pick-up, un esempio di questo tipo di attività è Amazon con i suoi magazzini automatici.

Business Central è il massimo per sfruttare questa tecnologia essendo completamente integrato in Azure.

Azure fornisce tutte le funzionalità per gestire devices, dispositivi che oggi costano pochissimi euro dandoci la possibilità di trasformare le piccole e media aziende in Aziende 4.0.

Le aziende dovranno fin da subito cambiare i loro attuale ERP scegliendo Microsoft Business Central in cluod Azure integrando la catena produttive e la logistica utilizzando IoT lnternet of things.

 

Semplifica i processi, prendi decisioni più informate e accelera la crescita con Dynamics 365 Business Central, una soluzione di gestione aziendale completa progettata per le piccole e medie imprese.

 

Dynamics 365 Developer

 

Sviluppare con Docker in Business Central

Realizzare un ambiente di sviluppo versatile per consentire lo sviluppo app in tutta flessibilità

Prima di iniziare facciamo un po’ di chiarezza.

Partiamo dalle basi, ossia da che cos’è Docker. Si tratta di uno strumento open-source per il deployment e la gestione dei container. Come detto sopra, è uno dei più diffusi e conosciuti, sebbene non sia l’unico. E’ un sistema studiato per creare ed eseguire applicazioni e servizi come container isolati.

Docker si esegue direttamente sul sistema operativo e i container condividono il kernel e l’hardware della macchina fisica grossomodo con lo stesso overhead dei processi eseguiti direttamente sulla macchina. Inoltre Docker permette di automatizzare il deployment delle applicazioni all’interno dell’ambiente containerizzato.

Con l’avvento di Microsoft Business Central è diventato necessario per gli sviluppatori prendere “confidenza” sempre più con la creazione di sandbox e container per poter sviluppare app con semplicità, anche direttamente in locale sulla propria macchina.

Ci viene in aiuto Docker, un software multipiattaforma di gestione dei container.

Perché abbiamo scelto Docker?

  • Docker permette di avere diverse versioni di BC installate in parallelo sulla propria macchina;
  • E’ possibile attivare i container anche su Azure, non consumando spazio sulla propria macchina;
  • Possiamo eseguire contemporaneamente versioni diverse della stessa applicazione eseguendo i container come se fossero isolati tra di loro ma condividendo le risorse della macchina come la CPU, la memoria e il sistema operativo;
  • I container sono usa e getta, ovvero possono essere ricreati con estrema facilità;

Container Docker

Per semplificare, ci concentreremo sulla creazione di un container in locale sul nostro laptop.

Requisiti minimi

Windows 10

  • Professional / Enterprise edition
  • Funzionalità attive Hyper-V e Contenitori

Funzionalità Windows

Come posso creare il primo container

Per procedere alla creazione di un container è necessario avere un minimo di conoscenze di base di Powershell.

Di seguito un esempio di script per la creazione di un container:

install-module navcontainerhelper -force

# set accept_eula to $true to accept the eula found here: https://go.microsoft.com/fwlink/?linkid=861843
$accept_eula = $false

$imagename = 'mcr.microsoft.com/businesscentral/sandbox:14.1.32615.0-it'
$containername = 'BusCentralIT'
$credential = New-Object System.Management.Automation.PSCredential `
    -argumentList "admin", (ConvertTo-SecureString -String "Admin123!" -AsPlainText -Force)

New-NavContainer -accept_eula `
                 -containername $containername `
                 -auth NavUserPassword `
                 -credential $credential `
                 -includeAL `
                 -alwaysPull `
                 -doNotExportObjectsToText `
                 -usessl:$false `
                 -updateHosts `
                 -assignPremiumPlan `
                 -shortcuts Desktop ` 

Notiamo subito la prima riga dove installiamo il modulo “navContainerhelper” per avere qualche facilitazione nella gestione dei comandi.

Gli elementi fondamentali sono

  • ContainerName: nell’esempio sopra “BusCentralIT”;
  • NavCredential: Sono le credenziali per accedere al Container, nell’esempio user: Admin e Password Admin123!;
  • Ultimo, ma non per importanza ImageName: Corrisponde all’immagine di BC\NAV che vogliamo installare nel container, di seguito la lista ufficiale di quelle disponibili

Esecuzione dello script

Dopo aver lanciato lo script se tutto è andato a buon fine si otterrà un risultato analogo a quello sotto.

Esecuzione Script

Configurazione ambiente di sviluppo

A questo punto si può procedere con la parametrizzazione in Visual Studio Code del file Launch.json, per agganciare il nuovo Container al nostro ambiente di sviluppo sarà sufficiente specificare il server e la server Instance che abbiamo ottenuto come output al termine dell’esecuzione dello script (vedi Screen):

ambiente_sviluppo

Ora, con l’ambiente disponibile, siamo pronti per iniziare a sviluppare!

 

Semplifica i processi, prendi decisioni più informate e accelera la crescita con Dynamics 365 Business Central, una soluzione di gestione aziendale completa progettata per le piccole e medie imprese.

Dynamics 365 Developer

 

Cambiamento senza paura verso il B2B in Cloud

Vedere in un cambiamento epocale un’opportunità, portare la rete vendita online

Il termine B2B (business to business), è un termine vecchio, ma poco conosciuto. Con il termine B2B identifichiamo un sistema di vendita online da azienda ad azienda, processo di vendita ormai sempre più integrato con l’ERP.

Cosa ci ha insegnato il COVID-19?  A cambiare, ad affrontare la paura del cambiamento. Il COVID-19 nel modo del commercio ha avuto un grosso impatto. Le aziende che non hanno voluto apportare nessun cambiamento alla loro infrastruttura informatica, affiancando ai loro clienti ed alla loro rete vendita un B2B in Cloud, vedendolo come un di più o un investimento di poco conto, si sono fatte trovare impreparate e sprovvedute.

Prima dell’evento COVID-19, nessuno si era accorto della necessità di non avere più una struttura informatica presso la propria azienda, difficilmente gestibile in caso di lockdown totale con blocco delle attività e della mobilità. Poi un giorno, ecco l’armageddon, un organismo invisibile, che ha portato nel mondo produttivo a:

  • Picchi di ordini inviati per mail o gestiti con B2B inadeguati
  • Assenza di ordini dovuti alla chiusura dei negozi
  • Cambiamento del modo di comprare negli acquirenti

Non aver paura del cambiamento porta a vedere nuove opportunità, come investire in un B2B sincronizzato con Microsoft Business Central, su piattaforma Azure.

Ecco quali sono i vantaggi di avere un B2B sincronizzato in tempo reale, con Microsoft Business Central completamente in Cloud Azure :

  • Portare i clienti online e tutta la rete vendita, garantendo la continuità operativa
  • Assicurare che l’ERP Microsoft Business Central incontri le necessità dei propri clienti B2B
  • Affrontare le interruzioni della domanda e della catena di approvvigionamento
  • Mettere in sicurezza il proprio personale e i clienti

Portare i clienti online e tutta la rete vendita, garantendo la continuità operativa

Per limitare il più possibile il contatto fisico durante un periodo di lockdown e garantire la continuità aziendale, nasce il bisogno di portare i clienti e la loro catena di vendita a fare ordini online. Questo è qualcosa su cui le aziende manifatturiere, commerciali e di grande distribuzione dovrebbero concentrarsi.

Un B2B sincronizzato con Microsoft Business Central, in cloud, permette alle aziende di restare aperte operando a livelli di normalità, garantendo il distanziamento, tenendo i clienti e personale al sicuro.

Un B2B in cloud è operativo H24 sette giorni su sette, anche se i punti vendita aziendali sono chiusi. Persino i rappresentanti di vendita on the road, che non possono più svolgere il loro tipico lavoro, in caso di lockdown, potranno continuare a lavorare in sicurezza.

Un B2B sincronizzato con Microsoft Business Central in cloud, aiuta i clienti ad effettuare ordini. Tramite la possibilità di funzioni che permettono alla rete vendita di accreditarsi come “cliente”, nel rispetto delle normative GPDR, si consente ai rappresentanti di vedere esattamente tutto quello che hanno comprato i clienti.

Assicurare che l’ERP Microsoft Business Central incontri le necessità dei propri clienti B2B

Poiché sempre più aziende si rivolgono ai loro fornitori utilizzando un servizio online, in questo periodo storico a causa della pandemia di COVID-19, non è più sufficiente solo avere un sito web. È necessario assicurarsi che il proprio sito web sia integrato con un B2B che soddisfi le esigenze dei clienti. Ciò significa un B2B comodo, affidabile e completo, che persuade i clienti a fare ordini da voi piuttosto che rivolgersi ai concorrenti.

Cosa si aspettano i clienti da un B2B in cloud?
Var Prime in base alla propria esperienza stabilisce che il  processo di acquisto di  un B2B deve rispettare quattro punti:

  • Visualizzare le informazioni in “just in time”: Un B2B deve fornire informazioni accurate, complete ed in tempo reale dalla scheda articolo alla disponibilità. Importantissima, in un periodo di emergenza, anche la tracciabilità della provenienza della merce.
  • Funzionalità ottimizzate: I clienti devono avere una user experience efficace, rapida garantendo un “buy up esay”, tenere traccia dei loro ordini e gestire i loro resi.
  • Gestire la complessità degli ordini: Un B2B in cloud deve avere motore web veloce per elaborare ordini complessi, compresi quelli basati su strutture di prezzi e scontistiche complesse.
  • Gestire la concorrenza sugli ordini: Ci sono situazioni commerciali in cui un B2B deve gestire la concorrenza sugli ordini prevenendo errori, che andrebbero ad aumentare la coda dei tickets da elaborare da parte del customer care.

Affrontare le interruzioni della domanda e della catena di approvvigionamento

Quello che ci ha insegnato l’emergenza del COVID-19 è la necessità d’implementare un B2B in cloud per garantire il miglior supporto ai clienti.

Var Prime ha scelto di fornire ai propri clienti un pacchetto ERP Microsoft Business Central e B2B in cloud su piattaforma Azure per garantire un alto livello di affidabilità.

Un B2B in cloud permette di aprire il proprio marketing in regioni in cui non si ha una presenza sul territorio. Ciò consentirà di vendere ed assistere continuamente i propri clienti permettendogli di fare acquisti, anche in caso di emergenze.

La soluzione fornita da Var Prime permette di raggiungere un nuovo pubblico ottimizzando i motori di ricerca (SEO), poiché il 65% dei clienti B2B effettua ricerche web per cercare informazioni, soluzioni e fornitori.

La soluzione B2B sviluppata da Var Prime è allo stesso tempo anche un CMS ed un CRM, permettendo di avere un contatto diretto con i clienti H24 sette giorni su sette in più lingue ed in differenti time zone.

Mettere in sicurezza il proprio personale e i clienti

Var Prime ti guiderà nell’implementazione del tuo B2B sincronizzato con l’ERP Microsoft Business Central in cloud su piattaforma Azure. La piattaforma di Var Prime è una scelta oculata e ponderata, scegliendola ti aiuterà a proteggere i tuoi clienti ed il tuo personale riducendo le interazioni faccia a faccia, in un periodo di emergenza come quello che abbiamo vissuto e da cui stiamo uscendo non troppo velocemente.

La conoscenza dei processi di vendita, di acquisto e della logistica  per il  settore manifatturiero, in tutti i suoi aspetti, maturata in anni di esperienza, fa di Var Prime il tuo partner ideale.

 

Semplifica i processi, prendi decisioni più informate e accelera la crescita con Dynamics 365 Business Central, una soluzione di gestione aziendale completa progettata per le piccole e medie imprese.

 

Dynamics 365 Developer

 

Sistema ERP Cloud

Le nuove funzionalità 2020 di Microsoft Dynamics 365 Business Central

Oggi più che mai le aziende devono poter disporre di processi efficienti, di flessibilità e di dati real-time affidabili.

Il panorama in continua evoluzione impone la scelta di tecnologie adatte al cambiamento.

Da un giorno all’altro il lavoro da remoto è passato da essere una necessità occasionale a diventare una realtà quotidiana per milioni di persone nel mondo.

Le aziende si sono dovute quindi adattare molto velocemente al cambiamento e quelle meno preparate tecnologicamente hanno subito ulteriori danni, oltre a quelli già elevati generati dal lockdown.

Le aziende più preparate sono sicuramente quelle che utilizzano strumenti Cloud integrati per la gestione aziendale.

In particolare, i sistemi ERP Cloud, come Microsoft Dynamics 365 Business Central, permettono di essere davvero indipendenti dal luogo fisico.

Per aiutare le aziende ad abbracciare la “nuova normalità” ed essere proattive verso futuri cambiamenti, si possono identificare due caratteristiche come plus per un sistema gestionale: innovazione ed integrazione.

Soluzioni sempre aggiornate

Nel mese di aprile, in pieno lockdown, Microsoft ha rilasciato la Wave 1 del 2020 di Dynamics 365 Business Central.

Le major release avvengono ogni 6 mesi apportando sempre utili strumenti per lo sviluppo di personalizzazioni integrate e mantenendo l’efficienza dei processi sempre in linea con le richieste del business.

La Wave 1 2020 ha portato una serie di innovazioni e migliorie al modern client, sia per i partner Microsoft che per gli utenti finali.

Per quanto riguarda le migliorie che avranno un impatto sulla User Experience, le principali sono:

  • Miglioramenti nell’input dei dati: utilizzo dei tasti F2 – tasti di spostamento – TAB – INVIO per facilitare le attività di data insert;
  • Possibilità di condividere con i colleghi un link URL legato al singolo record o documento;
  • Aggiunta di filtri avanzati nelle liste e nei reports;
  • Velocità di navigazione potenziata;
  • Notifiche delle richieste di approvazione (Workflow);
  • Possibilità di definire una stampante predefinita per ogni report, da cui stampare automaticamente;
  • Miglioramento della UX su Tablet e Mobile.

Tutte le features rilasciate con la Wave 1 del 2020 di Business Central lato applicativo – lato sviluppo e lato UX si possono trovare cliccando sul logo.

Integrazione con Power Platform

Una funzionalità importante, rilasciata ad aprile, è il connettore che permette l’integrazione di Business Central con le entità del Common Data Service.

Business Central e Power Platform permettono lo scambio dati, la connettività e l’utilizzo degli stessi per ottenere risposte affidabili in real-time.

I Common Data Service, abbreviati in CDS, sono essenzialmente un servizio di archiviazione dati, proprio come un database. Possono essere utilizzati per archiviare dati sotto forma di tabelle, denominate Entità.

Consentendo l’integrazione dei dati in un singolo archivio, CDS potrà quindi essere utilizzato in Power Apps, Power Automate, Power BI, Power Virtual Agents.

Si possono quindi creare Apps o restituire analisi che utilizzino direttamente i dati di Dynamics 365 con grandi potenzialità e in un ampio range di ambiti.

Microsoft Power Platform

Per concludere, in seguito a questa pandemia le aziende inizieranno a vedere le loro soluzioni ERP sotto una nuova luce.

Oltre a migliorare l’efficienza operativa, aumentare la redditività e fornire un servizio clienti di qualità superiore, le soluzioni ERP saranno sempre più valutate per la loro capacità di garantire la continuità aziendale e di integrare in modo agile le nuove soluzioni di automazione ed analisi.

 

Semplifica i processi, prendi decisioni più informate e accelera la crescita con Dynamics 365 Business Central, una soluzione di gestione aziendale completa progettata per le piccole e medie imprese.

 

Dynamics 365 Consultant

 

La nostra selezione di migliori extension del Marketplace VSCode, per sviluppare in codice AL

Tra le tante sfide che il passaggio da Dynamics NAV a Dynamics 365 Business Central ha presentato, quella che ha coinvolto gli sviluppatori, (oltre al cambio di linguaggio) è stato anche il cambio di front-end.

Per sviluppare in Business Central, infatti, gli sviluppatori hanno dovuto prendere confidenza con il linguaggio AL nuovo linguaggio di programmazione utilizzato per sviluppare in un database Dynamics 365 Business Cental in sostituzione di C/AL.

Il nuovo front end adottato è Visual Studio code, editor di codice sorgente sviluppato da Microsoft che può essere usato con vari linguaggi di programmazione.

Quello che ci siamo chiesti nel team developer Var Prime, in questi mesi (in realtà fin dai primi corsi in Microsoft) è stato: come possiamo sfruttare al massimo le potenzialità di questo strumento con il nuovo codice AL?

Da qui è nata la nostra “raccolta” di Extension (aggiornata ad aprile 2020) preferite trovate sul MarketPlace.

Le nostre extension consigliate

Per prima cosa abbiamo installato l’extension che ci permette di sviluppare in AL.

AZ AL DEV Tools/AL Code Outline

AZ AL DEV Tools - AL Code Outline

A questo punto ci siamo domandati: ma il vecchio e caro editor che mi permetteva di costruire una tabella senza scrivere l’intera struttura a mano non c’è più?

La risposta ufficiale è no ma grazie a Andrzej Zwierzchowski è nata AZ AL DEV Tools/AL Code Outline

La versione corrente dell’estensione è una raccolta di diversi strumenti di sviluppo.
L’extension è nata come un wizard per costruire oggetti in AL , ma nel tempo son state aggiunte tantissime funzionalità: dalla gestione dei commenti, alla visualizzazione ad albero degli oggetti, alla possibilità di vedere le immagini delle pageaction o di sfruttare delle codeaction per organizzare , modificare o inserire codice in maniera veloce.

Il punto di forza sicuramente è l’editor che permette la costruzione di una tabella o di altri oggetti simulando quanto conoscevamo già nel vecchio ambiente

Ve la consigliamo davvero perché è un tool molto comodo e che aiuta tantissimo nel velocizzare operazioni che spesso portano via tempo e sono ripetitive.

Potete scaricare l’estensione e trovare tutte le informazioni qui:
https://marketplace.visualstudio.com/items?itemName=andrzejzwierzchowski.al-code-outline 

 

L’AL Object Designer

AL Object Designer

Un altro strumento particolarmente utile è L’AL Object Designer di Marton Sagì

L’idea di base è quella di simulare l’object designer e quindi permette di vedere gli oggetti standard, il loro sorgente e gli eventi che mette a disposizione ogni singolo oggetto

Inoltre, si integra perfettamente con AZ AL DEV Tools/AL Code Outline, permettendo di richiamare il wizard direttamente dal suo menu.

Per tutte le informazioni e per scaricare questo utilissimo tool, potete visitare il marketplace
https://marketplace.visualstudio.com/items?itemName=martonsagi.al-object-designer

 

NAB AL Tools

NAB AL Tools

Tra le varie sfide che il cambiamento al linguaggio AL comporta una piuttosto onerosa per non dire piuttosto noiosa è la gestione dei file.xlf delle traduzioni delle app che si stanno creando.

Fortunatamente in nostro soccorso arriva un’estensione creata principalmente per la gestione di questa tipologia di file: suo nome è NAB AL Tools

Una volta installata sarà possibile aggiornare il file di traduzione rispetto al file.g con un semplice comando “NAB: Refresh XLF files from g.xlf”. Tutte le eventuali aggiunte vengono marcate con un prefisso specifico in modo da essere facilmente trovate e tradotte.

Il comando poi è in grado di trovare traduzioni simili e di tradurre in maniera semi automatica le caption dell’app.

Oltre alla gestione delle traduzioni sono contenute anche alcune funzionalità di gestione delle test codeunit e degli snippet aggiuntivi.

È possibile trovare maggiori informazioni nel git dell’extension: https://github.com/jwikman/nab-al-tools

O direttamente al link dello store: https://marketplace.visualstudio.com/items?itemName=nabsolutions.nab-al-tools

 

GitLens

GitLens

Un altro grosso cambiamento che ci ha portato questo nuovo linguaggio è il passaggio da gestione ad oggetto a gestione a file.

La gestione dei file contenuti in locale sull’app che si sta sviluppando potrebbe creare alla lunga dei problemi, specie se si vuole recuperare un oggetto allo stato che aveva giorni o mesi prima una determinata modifica.

Su VSCode può tornare utile l’addin GitLens.

Questo addin contiene alcune funzionalità utili a reperire le modifiche fatte in precedenza di qualunque parte dell’oggetto.

Non solo con un semplice click sarà possibile consultare le modifiche effettuate precedentemente senza dover entrare su altri siti ma tutto direttamente da VsCode.

Potete trovare questa estensione a questo indirizzo: https://marketplace.visualstudio.com/items?itemName=eamodio.gitlens

 

Waldo

Waldo

In una recensione delle migliori estensioni per Vs Code non può mancare infine quella di Waldo.

Le caratteristiche principali dell’estensione sono:

  • Esecuzione di oggetti nel client Windows e nel client Web

Sembrava scontato in C\AL ma ora non è così, l’esecuzione degli oggetti senza utility specifica, diventa un impresa macchinosa, vale a dire, essere in grado di eseguire un oggetto senza dover modificare e salvare launch.json . Il modo più semplice per trovare la funzionalità è nell’elenco comandi. Cerca “> crs: run” e ti darà tutte le opzioni utili per fare il run dell’oggetto.

  • Gestire automaticamente i nomi dei file (e le posizioni, se lo si desidera)
    Questa feature consente di far risparmiare tempo agli sviluppatori nella gestione di nomi e organizzazioni in cartelle,
    I due comandi principali sono :
    Rinomina
    Riorganizza

Basterà infatti scrivere CRS.OnSaveAlFileAction che eseguirà il Rename o il Reoganize al posto nostro in fase di salvataggio!

Ancora una volta possiamo dire che il grande Waldo ci viene incontro!

Di seguito il link dell’extension:
https://marketplace.visualstudio.com/items?itemName=waldo.crs-al-language-extension

 

Semplifica i processi, prendi decisioni più informate e accelera la crescita con Dynamics 365 Business Central, una soluzione di gestione aziendale completa progettata per le piccole e medie imprese.

&

Dynamics 365 Developer

Dynamics 365 Developer

Dynamics 365 Developer

Implementare-sistema-gestionale-erp

Come l’obiettivo aziendale può aiutarti a implementare un gestionale ERP

La vita di un’azienda è in continuo movimento. Per far fronte a questi tempi incerti, oggi più che mai c’è bisogno di semplificare e automatizzare i processi aziendali. Ma questo non basta in quanto la vita mette le aziende di fronte a scenari sempre più complessi e richiede ai manager risposte sempre più accurate.

Il manager passa gran parte del suo tempo a reperire ed elaborare informazioni, cercando di prevedere le esigenze dei suoi clienti per poter loro fornire prodotti in modo più veloce e a minor costo. Ovviamente questo presume che alla base di tutto ci sia uno strumento in grado di fornire le informazioni corrette: un ERP (Enterprise Resource Planning).

I sistemi gestionali sono nati come sistemi contabili o sistemi di gestione di magazzino; con il tempo però si sono evoluti verso soluzioni sempre più integrate. Con la globalizzazione dei mercati e con la digitalizzazione delle aziende, i processi da gestire sono diventati sempre più complessi e interconnessi tra loro e questa evoluzione ha fatto nascere i sistemi gestionali moderni. Avendo un unico database che collega tutte le transazioni aziendali, un ERP moderno diventa la scelta naturale di un manager per poter verificare l’andamento del proprio business.

Sfortunatamente spesso accade che l’implementazione di sistemi complessi non venga approcciata pensando “alla fine” ovvero per fornire i dati necessari al manager grazie ai quali dovrebbe prendere decisioni vitali per l’azienda o decidere eventuali cambi di rotta.

La maggior parte dei progetti d’implementazione segue una checklist che parte dalle anagrafiche per poi passare all’analisi dei processi senza concentrarsi però sugli obiettivi aziendali e loro KPI e sui leading indicators.

I consigli per implementare un nuovo gestionale

Di seguito troverete alcuni consigli su cosa prestare attenzione quando si implementa un nuovo gestionale:

  • Definisci i tuoi obiettivi
    Gli obiettivi aziendali possono variare da reparto a reparto e possono avere timeline diverse. Definire chiaramente quali siano gli obiettivi aziendali aiuta a capire dove concentrare maggiormente gli sforzi dell’azienda. Vuoi ridurre costi? Aumentare la marginalità? Investire nei prodotti?
    Per la loro corretta definizione si può usare lo strumento SMART, acronimo che sta per Specifico, Misurabile, Realizzabile, Realistico e Tempestivo.
  • Scegli i tuoi KPI (Key Performance Indicators)
    Una volta definiti gli obiettivi puoi scegliere come misurarli definendo alcuni KPI. I KPI misurano le prestazioni dei processi e nella stragrande maggioranza dei casi possono essere calcolati sulla base di dati presenti già nel tuo ERP.
    Un buon esempio di KPI è la percentuale di allocazione delle persone sui progetti o il costo medio di articoli che produciamo.  Sapendo quali KPI ci servono, possiamo renderci conto di quali macro-processi dobbiamo mettere a punto durante la nostra implementazione.
  • Stabilisci i Leading Indicators
    I Leading Indicators misurano la possibilità di arrivare a un determinato KPI. Ad esempio, se voglio che la produttività annuale del team sia maggiore del 70%, molto probabilmente posso misurare la percentuale di allocazione delle risorse inserite nella pianificazione mensile. Se mensilmente pianifico il 60% di attività produttive, non mi posso certo aspettare che il mio KPI sia al di sopra del 70%. I LI dipendono dai dati che andiamo ad inserire e i gestionali spesso possiedono una struttura che permette l’inserimento di questi dati. Durante l’implementazione dobbiamo essere sicuri che sia stata predisposta la struttura dati tale da dare la possibilità ai futuri utenti del sistema di inserire agilmente ciò che ci interessa.
  • Predisponi dei report o dei cruscotti
    Una volta definiti i KPI e i LI, nel nostro sistema gestionale possiamo predisporre una reportistica cucita su misura. I report possono fornire i dati aggiornati in tempo reale, dando la possibilità di filtrare il risultato per le variabili prestabilite. Durante l’implementazione del gestionale è importante fare un elenco di questi report, delle modalità di visualizzazione e dei filtri.

Oggi gestire un’azienda significa essere flessibili ed essere preparati a saper cambiare.

Solo avendo a disposizione dati corretti e coerenti tra loro, sarà possibile raggiungere gli obiettivi e poter far fronte ad eventi imprevedibili. Un ERP implementato in modo corretto è il tool primario di ogni manager in quanto non solo permette di gestire i processi ma è anche in grado di fornire i dati sul loro andamento.

 

Semplifica i processi, prendi decisioni più informate e accelera la crescita con Dynamics 365 Business Central, una soluzione di gestione aziendale completa progettata per le piccole e medie imprese.

&

Microsoft Team Leader | Empoli