Dynamics 365 Business Central SaaS: save a file to an SFTP server (the Logic App way)
Mar31

Dynamics 365 Business Central SaaS: save a file to an SFTP server (the Logic App way)

Yesterday I’ve provided a solution for saving a file generated directly from a Dynamics 365 Business Central SaaS tenant to an SFTP server by using Azure Functions. I’ve to admit that this is my preferred way because it gives me more freedom, scalability and adaptability. But obviously, that’s not the only possible way to do so. Today, I want to describe another possible solution,… Continue Reading...

Read More
Dynamics 365 Business Central SaaS: save a file to an SFTP server
Mar30

Dynamics 365 Business Central SaaS: save a file to an SFTP server

In our recently released “Mastering Dynamics 365 Business Central” book, in the Azure Function chapter I’ve provided a full example on how to upload and download a file to Azure Blob Storage from a SaaS environment (this was one of the top request I’ve received on all my trainings this year). But many of you have also raised a new more request: in a Dynamics 365 Business Central SaaS… Continue Reading...

Read More
A quick way to deploy your Azure Functions in the cloud
Mar26

A quick way to deploy your Azure Functions in the cloud

After my last webcast about Azure Functions, I received an interesting question: how can I quickly deploy a function to Azure? Or maybe to different Azure subscriptions or regions? We saw in the webcast how you can deploy an Azure Function by using Visual Studio or Visual Studio Code directly. But Azure Functions have also a full range of continuous deployment and integration options… Continue Reading demiliani’s Article...

Read More
Live sharing your AL code directly in the browser
Mar22

Live sharing your AL code directly in the browser

In this terrible period where COVID-19 is changing our days (and our life) and where homeworking is becoming a must, I think it could be helpful for some of you to know that Microsoft has opened the preview of a nice Visual Studio Live Share feature. I think that many of you knows what is Visual Studio Live Share, if not please read this post I’we written two years ago. With Visual Studio… Continue Reading...

Read More
The new life with an app-based ERP
Mar19

The new life with an app-based ERP

I’ve written an article for Simplanova website by summarizing the biggest technical changes that every partner should start thinking and managing in order to be able to work efficiently with the new Microsoft Dynamics 365 Business Central platform. This is my personal opinion but I hope it will be a good starting point for everyone in order to start thunking on how to change its internal… Continue Reading demiliani’s...

Read More
Dynamics 365 Business Central: something more about dependency propagation
Mar18

Dynamics 365 Business Central: something more about dependency propagation

One week ago I’ve written a post about the new “proxy app” (Microsoft.Application.app file) introduced with the 15.3 version (you can read the post here). This app uses a new property called propagateDependencies that permits you to specify whether the dependencies of this project should be propagated as direct dependencies of projects that depend on this one. As you can imagine, this is… Continue Reading...

Read More
Using Deployment slots for your Dynamics 365 Business Central Azure Functions
Mar16

Using Deployment slots for your Dynamics 365 Business Central Azure Functions

In my session at Ignite Tour Milan in January I’ve talked (with a real demo too) about how to use Deployment slots when you need to deploy a web application in the cloud and you have the need to separate the production environment from a “testing” environment or a “preview” environment (for scenarios where you want that only some users can use the preview version of your application). I’ve…...

Read More
Dynamics 365 Business Central and the new Microsoft Application "proxy" app
Mar11

Dynamics 365 Business Central and the new Microsoft Application "proxy" app

If someone of you has installed or upgraded a Dynamics 365 Business Central database instances with the new 15.3 version, I think that you could have noted that a new Microsoft extension is appeared on the Extensions Management page: What is this Microsoft Application app? This is a nice trick that Microsoft has done to solve a noisy problem that you could have if you modify the Base… Continue Reading demiliani’s Article...

Read More
Dynamics 365 Business Central: please always check AL warnings!
Mar09

Dynamics 365 Business Central: please always check AL warnings!

This is a quick post that want to describe a curious thing discovered 3 days ago. A partner contacted me on a social network (yes, I answer also on my socials but please don’t abuse on questions here, I have an email address…) and said me that he had problems on deploying an update of a per-tenant extension (big extension) to a SaaS tenant (the extension was previously working). The error… Continue Reading...

Read More
Dynamics 365 Business Central 2020 Wave 1: FAQ about updating apps for v16
Mar03

Dynamics 365 Business Central 2020 Wave 1: FAQ about updating apps for v16

I’m receiving a lot of questions from partners about what they will have to do for their existing apps in order to be ready for Dynamics 365 Business Central version 16. I’ve summarized here the Q&A: Does Dynamics 365 Business Central introduces breaking changes to my existing apps? It depends. Dynamics 365 Business Central version 16 has no major breaking changes like version 15 but… Continue Reading demiliani’s...

Read More
Dynamics 365 Business Central 2020 Wave 1: price management with interfaces
Feb28

Dynamics 365 Business Central 2020 Wave 1: price management with interfaces

The upcoming Dynamics 365 Business Central 2020 Wave 1 release (version 16) introduces the concept of Interfaces in AL. An interface is used when you want to decide which capabilities need to be available for an object, while allowing actual implementations to differ, as long as they comply with the defined interface. This allows for writing code that reduces the dependency on… Continue Reading demiliani’s Article on their...

Read More
Something new about Dynamics 365 Business Central 2020 Wave 1
Feb25

Something new about Dynamics 365 Business Central 2020 Wave 1

As I think you know (I’ve posted this on my Linkedin account some days ago) you can now start testing your apps with Dynamics 365 Business Central 2020 Wave 1 release (version 16) by creating a new online sandbox targeting the new preview version. Together with this new preview version, you have also a new AL language version (actually 5.x). When you start a new project with the new AL… Continue Reading demiliani’s...

Read More
Dynamics 365 Business Central: obsoleting events
Feb13

Dynamics 365 Business Central: obsoleting events

I’ve written a lot in the past about handling breaking schema changes on extensions and the best practice to use the ObsoleteState object property to signal to your developers or third-party ISV users of your extensions that you’re planning to remove something in your codebase. You can find articles here and here. Today I want to write a quick post for talking about events and about a worst… Continue Reading...

Read More
Learning DevOps for Dynamics 365 Business Central developers
Feb11

Learning DevOps for Dynamics 365 Business Central developers

In the next months Microsoft Western Europe has planned a series of one-day training events for helping Dynamics 365 Business Central partners on improving their development process by applying DevOps techniques. Official announcement is here: Dear Microsoft partner, Learn how to manage and ensure development lifecycle in the new world of continuous development using the latest tools… Continue Reading demiliani’s Article...

Read More
Dynamics 365 Business Central and data compression
Feb04

Dynamics 365 Business Central and data compression

Yesterday Kennie Nybo Pontoppidan (from the Dynamics 365 Business Central Team) asked us an interesting question: do you use data compression on your Dynamics 365 Business Central on-premise database? If yes, what type of compression? From the answers I can see that there are partners that uses data compression widely, partners that uses data compression only on certain tables and partners… Continue Reading demiliani’s...

Read More
Dynamics 365 Business Central Wave 1 2020: what I love and what I want
Feb03

Dynamics 365 Business Central Wave 1 2020: what I love and what I want

As you already know, Microsoft last week published the 2020 release wave 1 plans for Dynamics 365 and Microsoft Power Platform document. This is the document that announces the roadmap for the next major releases of these products. Regarding Microsoft Dynamics 365 Business Central, there are lots of interesting new features announced (or planned) and the things that I think will be… Continue Reading demiliani’s Article on...

Read More
Dynamics 365 Business Central: handling BLOB fields on APIs
Jan24

Dynamics 365 Business Central: handling BLOB fields on APIs

I’m not a big fan of using BLOB fields on the Dynamics 365 Business Central database, but there are many scenarios where you need to handle BLOBs inside the database directly. As an example, imagine to have an application that handles different types of labels related to items and these labels are stored inside the Dynamics 365 Business Central database in a table called Labels. This table… Continue Reading...

Read More
Executing your .exe tasks on a Cloud environment by using Azure Functions
Jan17

Executing your .exe tasks on a Cloud environment by using Azure Functions

I think that many of you on your Dynamics NAV or Dynamics 365 Business Central projects have tasks executed by using console applications (.exe) scheduled by using Windows Task Scheduler or other systems. This works good for on-premise environments (just take your .exe application, create a new schedule with Windows Task Scheduler and you’re ready to go), but what about using these .exe… Continue Reading demiliani’s...

Read More
Microsoft Ignite The Tour – Milan
Jan16

Microsoft Ignite The Tour – Milan

Microsoft Ignite The Tour brings the very best of Microsoft Ignite to a city near you. The tour provides technical training led by Microsoft experts and your community. You’ll learn new ways to build solutions, migrate and manage infrastructure, and connect with local industry leaders and peers. This big Microsoft conference is coming to Milan on January 27–28, 2020 at Milano… Continue Reading demiliani’s Article on...

Read More
DynamicsPower! 2020 Milan
Jan10

DynamicsPower! 2020 Milan

DynamicsPower! 365 Saturday Milan is returning in 2020 at Microsoft House with the biggest Dynamics 365 italian community event covering Hands on Workshops and Deepdives into Dynamics 365 Customer Engagement, Unified Operations, Dynamics 365 Business Central, Power Platform, Finance & Operation and more! This year (thanks to Microsoft Italy) we have a dedicated ERP track with technical… Continue Reading demiliani’s...

Read More
Dynamics 365 Business Central and the "mistery" of Library Apps
Jan07

Dynamics 365 Business Central and the "mistery" of Library Apps

More than an year ago I wrote this article for Simplanova website mentioning some “architectural choices” when moving a C/AL solution to the extension model. One of the ideas mentioned here was to create an “hidden layer” that can contain common business logic and objects and then create N separated extensions on top of this layer. This permits you to “share” common logic between extensions…...

Read More
Dynamics 365 Business Central: again about obsoleting fields
Dec31

Dynamics 365 Business Central: again about obsoleting fields

More than an year ago I’ve written this post explaining how to handle breaking schema changes on a production Dynamics 365 Business Central SaaS tenant. I think that every Dynamics 365 Business Central developer now knows that in a production environment you cannot remove objects or fields (breaking schema in the database) but all schema changes must always be additive. Despite this, I see… Continue Reading...

Read More
"Mastering Dynamics 365 Business Central" is out!
Dec23

"Mastering Dynamics 365 Business Central" is out!

Just in time for Christmas, I’m very happy and proud to announce that the book “Mastering Dynamics 365 Business Central” is finally out and available on Packt website and on Amazon in all the two formats (eBook and printed copy). This was a very huge work (my biggest writing work ever), we’ve spent a lot of time on writing this book for the Dynamics 365 Business Central community and I… Continue Reading...

Read More
Planned activities for Dynamics 365 Business Central Partners in 2020: quick preview
Dec20

Planned activities for Dynamics 365 Business Central Partners in 2020: quick preview

I’ve received (and I’m receiving too) a lot of emails and messages on social networks from many of you asking for news about the future activites that Microsoft Italy has planned for Microsoft Dynamics 365 Business Central partners during 2020, so I hope that a quick public post can help you on planning your future I cannot go too much in details for now (Microsoft Italy has a great staff… Continue Reading...

Read More
LinkedObjects on Dynamics 365 Business Central: be careful now!
Dec17

LinkedObjects on Dynamics 365 Business Central: be careful now!

One of the common (and basic) way to create integrations between systems in Microsoft Dynamics NAV in the past was to directly work at the SQL Server level and create tables linked to SQL objects by using the table’s LinkedObject property. With Microsoft Dynamics NAV, you can create a SQL Server view, then create a table with the same name as the view and set the LinkedObject property to true…. Continue Reading...

Read More
Webhooks with Dynamics 365 Business Central
Dec10

Webhooks with Dynamics 365 Business Central

When integrating external applications with Dynamics 365 Business Central, one of the classical way is to use APIs (standard or custom APIs) and then call the relative endpoints from the external application. As said in the past, exposing entities by using standard or custom API pages is the recommended way for doing integrations with Dynamics 365 Business Central. By using APIs, the schema of… Continue Reading demiliani’s...

Read More
Dynamics 365 Business Central Sandbox and performance testing
Dec06

Dynamics 365 Business Central Sandbox and performance testing

During the last technical workshops done for Microsoft in Finland and Norway, I’ve discovered that many partners are doing (together with the customer) a lot of load testing and performance testing for their solutions and for the standard application in the online sandbox environment. Testing applications in the sandbox environment before moving them to the production environment is a good… Continue Reading...

Read More
New book “Migrating applications to the cloud with Azure” finally released
Nov26

New book “Migrating applications to the cloud with Azure” finally released

While waiting to officially announce to the Dynamics 365 Business Central community our latest and biggest work ever, I’m happy today to announce another work where I was involved in the last 7 months: Migrating applications to the Cloud book is out. This is an interesting project started months ago for Microsoft with other Azure MVPs. If you’re developing solutions for the cloud, I recommend… Continue Reading...

Read More
Exposing Dynamics 365 Business Central data to the outside world: my two cents
Nov22

Exposing Dynamics 365 Business Central data to the outside world: my two cents

I had a discussion in the last days on socials with some of my followers (yes, I have them :D) about what’s the best way to expose Dynamics 365 Business Central data to external systems for integrations and for data analysis. Exposing data is an hot topic on every ERP implementation. With Dynamics 365 Business Central on-premise you have the possibility to access the ERP data by directly… Continue Reading demiliani’s...

Read More
Dynamics 365 Business Central: handling telemetry with Azure Application Insights
Nov18

Dynamics 365 Business Central: handling telemetry with Azure Application Insights

Handling telemetry is on of the most important activities that should always be done on a Dynamics 365 Business Central SaaS tenant. The classical way to inspect the telemetry of a tenant is going to the Admin portal of your tenant, access the Telemetry tab and here inspect the data (by applying filters and so on). Starting from Dynamics 365 Business Central version 15, you can setup your… Continue Reading demiliani’s...

Read More
CI/CD for .NET with GithHub Actions
Nov14

CI/CD for .NET with GithHub Actions

We manage all our internal projects with Azure DevOps (projects not only related to Dynamics 365 Business Central). All our code is hosted on Azure DevOps but personally I’m using also GitHub for “external” projects or for sharing codes with the community (yes, Azure DevOps has public repository too but I prefer a separation on many cases). Unfortunately, build pipelines was a big lack for the… Continue Reading...

Read More
SD Extension Pack for Dynamics 365 Business Central Developers
Nov12

SD Extension Pack for Dynamics 365 Business Central Developers

On all the Dynamics 365 Business Central training activities I’ve done in the last year for Microsoft Italy, I’ve always received the following question: why your Visual Studio Code has all these features? Are there a list of extensions that you recommend for working with Dynamics 365 Business Central? I’ve always shared a list of my recommended extensions in the training’s GitHub repository,… Continue...

Read More
Dynamics 365 Business Central: exporting a database backup from a SaaS tenant
Nov06

Dynamics 365 Business Central: exporting a database backup from a SaaS tenant

Microsoft has recently activated the feature for downloading a backup of a Dynamics 365 Business Central SaaS tenant. A database can be exported from a selected environment as a .bacpac file, can be automatically saved into an Azure Storage account and from there you can download it offline and restore it into your on-premise network (multi-tenant database). How this feature works? As a first… Continue Reading demiliani’s...

Read More
Visual Studio Online preview: coding in the browser seems promising.
Nov04

Visual Studio Online preview: coding in the browser seems promising.

Today at Ignite 2019 Microsoft has launched the public preview for Visual Studio Online, a managed cloud-based development environment based on Visual Studio Code that works in the browser. The tool is actually not finished (it’s a preview version) but I think it’s extremely promising and it opens the doors to many interesting scenarios for developers (imagine to be able to edit and review… Continue Reading...

Read More
“Azure Functions for Dynamics 365 Business Central Developers” webcast recording
Oct31

“Azure Functions for Dynamics 365 Business Central Developers” webcast recording

The recording of my last webcast for Areopa Academy is available on their YouTube channel. Again, sorry for the initial GotoMeeting problem and sorry for my error during the first demo (function deployed on the wrong subscription) In-depth explanations for some topics will follow soon.   Continue Reading demiliani’s Article on their blog “Azure Functions for Dynamics 365 Business Central Developers” webcast...

Read More
Dynamics 365 Business Central: Using Azure Traffic Manager to geo-distribute your Azure Functions
Oct30

Dynamics 365 Business Central: Using Azure Traffic Manager to geo-distribute your Azure Functions

Some months ago I’ve written this post describing an interesting solution we’ve deployed for a geo-distributed solution that involves Dynamics 365 Business Central SaaS, Azure Functions and Azure CosmosDB as a final backend. I’ve received lots of questions related to this architecture and in this post I want to explain the right part of the above diagram. The problem to solve here is: if I… Continue Reading...

Read More
Dynamics 365 Business Central: debugging the Base Application
Oct25

Dynamics 365 Business Central: debugging the Base Application

Yesterday at our “Dynamics 365 Business Central Wave 2 What’s new” event in Microsoft Italy we quickly saw hot to debug the Microsoft’s Base Application from Visual Studio Code. I’ve not spent too much time on this topic due to lack of time, but here is a summary of what I’ve done yesterday (answer to a question received after the event). As a first step, you need the Microsoft Base… Continue...

Read More
Dynamics 365 Business Central: TRANSFERFIELDS and Obsolete fields
Oct17

Dynamics 365 Business Central: TRANSFERFIELDS and Obsolete fields

Do you know the wonderful C/AL (ops, now AL) command called TRANSFERFIELDS? This command permits you to copy all matching fields in one record to another record: Record.TRANSFERFIELDS(FromRecord [, InitPrimaryKeyFields]) TRANSFERFIELDS copies fields based on the Field No. Property of the fields. For each field in Record (the destination), the contents of the field that has the same Field… Continue Reading demiliani’s...

Read More
Dynamics 365 Business Central on-premise Wave 2: how to create databases and perform technical upgrades
Oct09

Dynamics 365 Business Central on-premise Wave 2: how to create databases and perform technical upgrades

I’ve explained few days ago how to change a license from customer’s one to partner’s one when working with Dynamics 365 Business Central Wave 2 on-premise. This more tricky process occours mainly because now you don’t have the Development Environment available anymore. Another problem that you could have strictly related to this is the following: how can I create a new Dynamics 365 Business… Continue...

Read More
Landing to Directions EMEA 2019…
Oct08

Landing to Directions EMEA 2019…

This is the meeting’s week for all the european Microsoft Dynamics 365 Business Central partners (and not only them I think) and Vienna for the second time hosts a great 3 days of conference. This is the event to attend to know more about the Microsoft’s strategy for Dynamics 365 Business Central (present and future) and for making interactions with all the great partner’s community. My… Continue Reading...

Read More
Dynamics 365 Business Central on-premise Wave 2: changing license
Oct04

Dynamics 365 Business Central on-premise Wave 2: changing license

I was sure this was an obvious topic until today, but after receiving so many desperate questions from partners that are unable to change the license for an on-premise Dynamics 365 Business Central Wave 2 database for development purposes, I’ve decided to spent few minutes for sharing this. When you install Dynamics 365 Business Central on-premise Wave 2 (or version 15) release, you’ll see… Continue Reading...

Read More
Dynamics 365 Business Central: checking Users Plans in Wave 2 release
Oct01

Dynamics 365 Business Central: checking Users Plans in Wave 2 release

Checking which plan is assigned to a specific user (Essential, Premium, Team Member) is become a quite different thing with the Wave 2 release (version 15). Users plans are now managed in the System Application via the Azure AD Plan module. The Plan and User Plan tables are now marked as internal, so you must use the methods provided in this module to query them. How can you check if a user is… Continue Reading demiliani’s...

Read More
Dynamics 365 Business Central APIs, Powershell, CSV and a bit of fancy notifications
Sep26

Dynamics 365 Business Central APIs, Powershell, CSV and a bit of fancy notifications

In one of my last development workshops for Microsoft Italy, when talking about Dynamics 365 Business Central APIs, I’ve done a small demo on how to retrieve data from APIs directly from a Powershell script and save those data in a CSV file. Due to a lack of time, I’ve not talked too much about that script but (attendees will remember that) it ended in the following way: This is a classical… Continue Reading...

Read More
Dynamics 365 Business Central Wave 2: customizing the Base Application
Sep24

Dynamics 365 Business Central Wave 2: customizing the Base Application

In a previous post I described how you can start building extensions for the upcoming Dynamics 365 Business Central Wave 2 release on top of the Microsoft’s System Application. Today I want to show you how you can directly customize the Microsoft’s Base Application (alias, the standard Microsoft codebase). This is a top request I receive every day on all the partners I met, but before… Continue Reading...

Read More
Creating an Azure SQL Database backup via Powershell
Sep20

Creating an Azure SQL Database backup via Powershell

I have several Azure SQL databases (mainly Microsoft Dynamics NAV databases) on different Azure subscriptions and often I need to download a backup for some of them. Yesterday I’ve decided to automate this process by using Powershell and the Azure REST APIs (in particular the Database – Export API). I want to have a Powershell scripts that connect to an Azure SQL Database, creates a backup… Continue Reading...

Read More
Dynamics 365 BC Wave 2 Release: What happens now?
Sep17

Dynamics 365 BC Wave 2 Release: What happens now?

Microsoft Dynamics 365 Business Central Wave 2 release date is just around the corner and there are many aspects of which you should be aware. I’ve written an article for my Simplanova‘s friends that summarizes some important technical aspects to take care. You can read it at the following link: Dynamics 365 BC Wave 2 Release: What Happens Now? – Simplanova Microsoft Dynamics 365 Business Central is the latest...

Read More
Dynamics 365 Business Central Wave 2: on-premise and direct SQL integrations
Sep16

Dynamics 365 Business Central Wave 2: on-premise and direct SQL integrations

Do you remember this post? I wrote it long time ago to explain what happens on SQL Server when you create a new table or you customize an existing table with an AL extension: the new table is created by appending the extension’s ID to the table’s name and also the customization to a standard table creates a new table with the primary key of the original table plus the newly added fields and… Continue Reading...

Read More
Dynamics 365 Business Central Wave 2: building apps on top of System Application
Sep09

Dynamics 365 Business Central Wave 2: building apps on top of System Application

As you already knows from this official Microsoft post, with Dynamics 365 Business Central Wave 2 release Microsoft has splitted the application into two main modules: Base Application (that contains all the ERP business logic) and System Application (that contains all the system layer). Separation between business and system layers is a first step for a future goal to have an application… Continue Reading demiliani’s...

Read More
Dynamics 365 Business Central on-premise: checking extension’s status via Powershell
Sep04

Dynamics 365 Business Central on-premise: checking extension’s status via Powershell

An interesting question pops out yesterday: with Dynamics 365 Business Central on-premise, how can I programmatically check if a particular extension is installed or not? The standard Powershell command (in the Microsoft.Dynamics.Nav.Apps.Management module) that gets informations about an extension in a specified Business Central Server instance is the Get-NAVAppInfo cmdlet (more info about… Continue Reading demiliani’s...

Read More
Dynamics 365 Business Central: access modifiers
Aug26

Dynamics 365 Business Central: access modifiers

If someone of you know C# or other object oriented languages in general, you know also that those languages have access modifiers. Access modifiers are keywords used to specify the declared accessibility of a member or a type. With Dynamics 365 Business Central Wave 2 release, this feature will appear also on the AL language. A table object can have an Access level with the following… Continue Reading demiliani’s Article...

Read More