Skip to main content

#msdyn365bc - Returning complex types.

Hi Readers,

In this article we will talk about one of the cool feature that is available with release of #msdyn365bc 2021 Release Wave 1 (a.k.a BC 18).

AL Code was introduced from C/AL and with initial releases it was exactly same as C/AL Code. But with great community support and feedback to Microsoft, Microsoft is able to make it modern with new versions.

If you are a regular reader then you would have noticed that I keep on saying that we need to unlearn NAV or C/AL  before we start working on AL. The Reason I keep on saying this is because there are better ways to code and that is possible with enhancement in the product.

One of such long waited feature is what we are going to discuss today.

As NAV Developer we always hated how functions were able to return limited data types like code, Text, Boolean etc.

With Business Central 2021 Release Wave 1, most types can be returned from procedures – both user-defined types and most built-in types. 

Now We can write any procedure and Return any Data Type Including objects like record, Codeunit etc.

What Does That Mean?

In past we are limited to return 25 data Types as listed below.

With Business Central 2021 Release wave 1, We can return any defined data types like below. 

That Means that we can return any possible simple / complex Data type in Business Central.

Examples - 

If I have to return all Customers where Blocked in Blank we can write something like this.

If I have to return all customer ledger entries for a specific customer we can write something like

We can also use the complex return type directly as part of other expressions like Get Due Date of a Sales Order Created from a procedure.

This article was discussed in last #bcopendiscussion. You can find recording below.

Cool isn’t it?

Let me know your views as comment to article.

Saurav Dhyani


Popular posts from this blog

Send Mail with Attachment From Navision.

Hi all, We have seen how to save a report into PDF and how to send mail to a customer. Let's link these two post in one i.e. Mailing statement to a customer into PDF Format. This article is part of the Series. Please Refer  Table of Content here . If you have the old objects set let me brief you what I will be changing - 

Error After Restore SQL Backup of NAV 2013 Database

Hi all, we are facing a conman issue during restoring a SQL Database backup restored for NAV 2013. While Trying to run object from Object Designer we get below listed error (even the service is configured properly) - --------------------------- Microsoft Dynamics NAV Development Environment --------------------------- There are no NAV Server instances available for this database. You must ensure that a NAV Server instance is running and is configured to use the database before you perform this activity. --------------------------- OK    ---------------------------

Future - What Next After NAV 2016. Code Name - Madeira...

Hi All, While Browsing web I came across some article which says about next release of Microsoft Dynamics NAV. Let's see the History of Code Names Given to Previous Version  - NAV 2013 - Code Name 'Sicily' NAV 2015 - Code Name 'CRETE' NAV 2016 - Code Name 'CORFU' And as we all know that all these are the Islands.