One Per Tenant Extension to ‘Rule Them All’
Oct25

One Per Tenant Extension to ‘Rule Them All’

Never shy away from a catchy title of your blog right? So enough said about why we need Design Patterns AKA Best Practices for Per Tenant Extensions, let’s dive into my suggestions. Rule #1 – As few as possible If you implement Business Central you should have a close fit to your business requirements. The times when we hacked the base app into anything are gone except for a few rusty… Continue Reading Marije...

Read More
Why best practices for Per Tenant Extensions?
Oct21

Why best practices for Per Tenant Extensions?

About a month or so ago I did (or try to do) a webinar about best practices for Per Tenant Extensions. I was unhappy about the result but I guess the story should be told and I did promise to get back to you and finish it. Well, I did and I am getting ready to start sharing what I think a “perfect” per-tenant extension should look like and as always I am looking for feedback and some… Continue Reading Marije...

Read More
Making a Business Central upgrade (so much) easier…
Oct15

Making a Business Central upgrade (so much) easier…

Since the beginning of the year I have a new job/project for a partner in Denmark that you may never have heard of. The reason for saying that is because they are (super) vertical and they don’t ever “sell against” other partners. The only competition is outside of the Business Central comminity. What makes that cool is that I can essentially share anything I learn with you without… Continue Reading Marije...

Read More
Easiest way to upgrade from NAV to Business Central – YouTube
Oct06

Easiest way to upgrade from NAV to Business Central – YouTube

Did you know you can upgrade from NAV with C/Side to Business Central without goofing with Extensions in your old system and running complex scripts? In this video I tell you how, using PrintVis as an example source

Read More
Would you configure a Porsche…
Sep26

Would you configure a Porsche…

…if you knew upfront that you would never get one? For obvious reasons I am getting a lot of questions lately about my transition and that is great. I love to talk about it and all the conversations I have help me process the transformation myself too. Some people ask me how long I knew about being a girl and the answer is, all my life. Even in my earliest memories I see myself in my… Continue Reading Marije...

Read More
HELP! My entire Business Central SAAS stopped running!
Sep13

HELP! My entire Business Central SAAS stopped running!

Today was my first day back at the (home) office programming in 2 and a half months. I had already spend a lot of time in the last month or so changing email addresses and other account names to my new name but I only looked at my BC Saas sandboxes today. When I looked at the admin portal it looked like this: All environments where set to Not Ready, all options to restart, delete… Continue Reading Marije Brummel’s Article...

Read More
Webinar Announcement : Design Considerations for PTE’s
Jun19

Webinar Announcement : Design Considerations for PTE’s

On July 6th this year I will make my first “public” webinar in about a year or two, since I decided to retire the NAV-Skills webinars. You can register for the webinar here. It will be hosted by Luc van Vugt on the Areopa channel. I had to look it up, but it has been exactly 5 years since I was in Iceland where I helped LS Retail with the first AppSource app for what was then called… Continue Reading Mark...

Read More
Why DevOps for Business Central is the responsibility of Microsoft, not the customer!
Jul24

Why DevOps for Business Central is the responsibility of Microsoft, not the customer!

I’ll start with saying that I’m not writing this blog to pick a fight or another online debate. I’m tired of getting the feeling that I’m talking into a brick wall not being heard and understood. I stopped reading most of the blogs and newsletters from MVP’s and from MSDynamicsWorld.com. I find them desturbingly sales oriented, egocentric and political. Today I was cleaning up my outlook… Continue...

Read More
About ISV’s, Being Stubborn and Flexibility
Jul04

About ISV’s, Being Stubborn and Flexibility

Let’s start with a short story. The year is 2014 and the world was spinning as it did until March this year with mass tourism and in person events. With the release of NAV 2013R2 and later 2015 our community was just starting to embrace the three tier concept and the Role Tailored Client. Nobody had heard of events or extensions. The economy is booming and everyone is busy not worrying… Continue Reading Mark...

Read More
Are you ready to move forward “WITH”-out AL?
Jun02

Are you ready to move forward “WITH”-out AL?

Sometimes I just have to write my frustration away in order to clear my head. Don’t expect technical tips and tricks in this post, but maybe some inspiration. Today I was absolutely flabbergasted. Both on Twitter and on LinkedIn (I am a social media junky) there were actually threads about Microsoft removing the WITH statement in AL. I was litterally like OMG! Go spend your time on the… Continue Reading Mark...

Read More
Setting up Azure SQL Analytics (Preview) – Dynamics NAV
May30

Setting up Azure SQL Analytics (Preview) – Dynamics NAV

Telemetry is everything, you cannot have enough data when users start asking you why the system is behaving differently than yesterday or performance is changing over time. This is where Azure SQL stands out from On Premises. You can get so much more data and in an easy way to analyse. However, you need to know where to find it because not everyting is setup automatically after you… Continue Reading Mark Brummel’s Article...

Read More
Azure Application Insights 101
May26

Azure Application Insights 101

In my series around Application Insights for Microsoft Dynamics Business Central / NAV this is probably the most booring one. However it is quite important. In order to teach you folks about KQL and the Application Insights API etc. Step 1 – Create Application Insights In your Azure Tenant search for Application Insights and select Add. There is not much to fill in here. The… Continue Reading Mark Brummel’s Article...

Read More
Tip #69 | Default Implementation for AL Interfaces
May13

Tip #69 | Default Implementation for AL Interfaces

I just love it when I get an error and nothing I search for answers what to do next. Like this one Value ‘ ‘ does not implement interface ‘ForNAV Layout’ and there is no default implentation for the mentioned interface.AL(AL0596) There is no mentioning of default implementations in the Microsoft documentation. And in fact, in this enum value, I do want a default implementation… Continue Reading Mark...

Read More
Tip #68 | Using Read-Scale Out in Business Central to improve Performance
May13

Tip #68 | Using Read-Scale Out in Business Central to improve Performance

Another quick tip for something I’ve used this week to help out a QBS partner with performance issues on Business Central. Since the last release it’s possible to issue read-only commands on a real-time copy of your Business Central database by using the DataAccessIntent property. This allows API Pages, reports and queries to be executed outside of your production database which is ideal… Continue Reading Mark...

Read More
Introduction | Business Central Performance Tuning – Application Insights
May12

Introduction | Business Central Performance Tuning – Application Insights

Microsoft wants to make things simple, and for a good reason. If it’s simple then everyone can understand it and the bigger the group of believers the easier it is to generate volume. So when I started to read on Business Central and Application Insigthts the first thing I looked at was a PowerPoint slide saying this… And to be honest, it is extremely simple to setup Application… Continue Reading Mark Brummel’s...

Read More
Tip #67 | Convert Option field to Enum Field
May08

Tip #67 | Convert Option field to Enum Field

So much to blog about. Insane. Our world has never changed so fast. Never. Today I was working on our ForNAV AppSource App and I decided to clean up some of the warnings that were introduced with BC16. This was about converting Options to Enums and vice versa. Converting an Enum into an Option is easy. Just add ToInteger() and you’re done. But how about the other way around? An… Continue Reading Mark Brummel’s...

Read More
Business Central Performance Tuning Series | Application Insights & More
May07

Business Central Performance Tuning Series | Application Insights & More

If you ask a random Microsoft partner about their worries with Business Central there is a fair chance “Performance” is in their top three. It probably depends if this partner has a background with NAV. If this is the case it’s a guarantee it’s in the list. As long as I remember I’ve been doing some form of performance tuning. First with the old Native Navision database, later with SQL… Continue...

Read More
Breaking up the Base App | Request new Interfaces
May03

Breaking up the Base App | Request new Interfaces

Most of you, if you are a more or less loyal reader of my blog, will remember that last year I blogged about breaking up the base app, how to do that and a call to action for volunteers. After that I blogged a bit about visiting the office in Lyngby and starting a project. However, I don’t think I’ve ever officially reported back how that project worked out and how it “ended”. Let me… Continue Reading...

Read More
SQL Azure, Dynamics NAV & Data I/O Issues
Apr26

SQL Azure, Dynamics NAV & Data I/O Issues

When I write a blog, and I should write more I know, it’s most of the time to share a tip or to write my opinion on something. This blog is more of a question, or a call to share knowledge of a piece of technology that is not used by many. About 4 months ago my largest customer moved to SQL Azure with their 200GB database after a lot of testing and careful considerations. I’m not… Continue Reading Mark...

Read More
Business Central; Developers, Developers, Developers
Mar01

Business Central; Developers, Developers, Developers

A new version of Business Central is around the corner. The codename is BC16 or 2020 Wave I. Both are the same thing. I think it is safe to say that Business Central is a great succes. In the competing world of Cloud Business Solutions it is the most flexible product and the customer base is growing rapidly. Business Central has a fantastic user interface and the extensibility model is… Continue Reading Mark Brummel’s...

Read More
Tip #66 | UTC Calculation
Feb27

Tip #66 | UTC Calculation

I have not blogged as much as I want to recently. Not because there is nothing to write about, but because I am so insanely busy. However, today I ran into a question that required first Google and then Statical Prism to solve. UTC Calculation in Dynamics NAV (Or Business Central) This used to be cumbersome and required dirty tricks. Alternatively (and this is how I managed to solve… Continue Reading Mark Brummel’s Article...

Read More
Working on Design Patterns for Business Central
Jan10

Working on Design Patterns for Business Central

Yesterday at Microsoft I had two meetings, or goals. The first as you know was about our initiative to do a proof of concept to break the BaseApp into smaller extensions. The second meeting was about revamping the old Design Patterns we had for Dynamics NAV and bringing them up to speed for Business Central. For those of you who don’t know or to refresh memories; a few years ago there… Continue Reading Mark Brummel’s...

Read More
Enum != SchemaChange
Jan10

Enum != SchemaChange

I love a nerdy title and I love learning about cool new smart stuff. But before you continue reading I want to say thanks to my colleagues at ForNAV, especially Michael Nielsen. Without him pushing me (again) to step out of my comfort zone this would not have been possible. Yesterday I visited the Microsoft office in Lyngby for the first time in a very, very long time to talk about our… Continue Reading Mark Brummel’s...

Read More
How To, Part I | Breaking a Monolyth
Dec23

How To, Part I | Breaking a Monolyth

I often wonder how I find myself in situations like this. On my day off I find myself behind my desk doing something which is not my responsibility, nor am I getting paid to do it. If you say A, you also have to be willing to say B and C. This is what my parents told me when I was young so when I promissed Bugsy and Jesper to look into making the Business Central Base Application smaller I… Continue Reading Mark Brummel’s...

Read More
Breaking up BaseApp | Business Central
Dec16

Breaking up BaseApp | Business Central

Social media is fantastic and it can be used in many different ways. Where most people are mostly consumers others use it to ask questions. Some share knowledge and experience and gain loyal followers. This is pure awesomeness and mostly rewarded with the Microsoft MVP award for those who don’t give up. Drive Change Very few succeed in using social media to drive change. Those who do are… Continue Reading Mark...

Read More
Submitting to Business Central Open Source, the code review…
Dec12

Submitting to Business Central Open Source, the code review…

So to continue where we left off yesterday when I did a pull request on the Business Central System App project on GitHub. After my pull request someone at Microsoft did a code review in order to make sure quality standards are respected. Here are the details: I have to admit something. First of all, this is not actually my code. It came from my colleague Michael Nielsen. Secondly… Continue Reading Mark Brummel’s Article...

Read More
Business Central System App is Open Source! Contribute, don't be shy…
Dec11

Business Central System App is Open Source! Contribute, don't be shy…

With the recent Wave II release of Business Central we also got the first wave of Open Source in our beloved NAV/BC product. This means that rather than making customization for one specific customer or ISV you can now have this pushed back into the product and stay there forever. Today I did my first Pull Request and I wanted to share how I did that. What did I need? With reports,… Continue Reading Mark Brummel’s Article...

Read More
Tip #65 | AppSourceCop & mandatoryPrefix
Dec05

Tip #65 | AppSourceCop & mandatoryPrefix

Today I was a bit puzzled by getting this error message and how to fix it. error AS0054: The AppSourceCop configuration must specify one of the following properties: ‘mandatorySuffix’, ‘mandatoryPrefix’, or ‘mandatoryAffixes’ Yes, you can google the message but that only brings you to pages that describe the message, not how to fix it. It appears to be easy so I wanted… Continue Reading Mark...

Read More
AL Extensions – File Naming and Organizing
Dec01

AL Extensions – File Naming and Organizing

This is a blog that I wanted to write for quite a while, but it’s only until last week or so that I think I’ve found what I like to call, a “best practice” or if you will, a “Design Pattern”. What is this all about? With the move from C/AL to Visual Studio Code we also moved to file based instead of stored in database. This means we also have to give these files a name and we… Continue Reading Mark Brummel’s Article on...

Read More
Managing DotNET Dependencies on AppSource for Business Central
Nov30

Managing DotNET Dependencies on AppSource for Business Central

When you try to convert existing C/Side objects to AL the first attempts are typically done while scoping OnPrem. This gives an overview of the errors to be fixed w.o things like DotNET. In this phase you typically switch between C/Side and Visual Studio Code all the time fixing the errors one-by-one and reconverting. Once the errors are fixed the software can be tested and deployed… Continue Reading Mark Brummel’s Article...

Read More
Monolith ≠ NoOfObjects | Breaking up your extension
Nov25

Monolith ≠ NoOfObjects | Breaking up your extension

If you have IP for Microsoft Dynamics NAV in C/Side your are either in the process of moving it to AL and Business Central or you are busy finding a buyer for your company. Both seem to be very valid options these days. When you talk to the engineers who are busy executing this task the number one question on their mind, once they got their stuff decoupled from BassApp, is how to break up… Continue Reading Mark Brummel’s...

Read More
NAVTechDays – It’s a peoples event…
Nov24

NAVTechDays – It’s a peoples event…

It’s the weekend after NAVTechDays and I rested from a busy week. Two days of pre-conference training and two days of talking at (a lot of) people mostly at the ForNAV booth but also at the booth of Meta UI, Continia, SQL Perform, Anveo, Prism and AL Ops. Design Patterns, once again Teaching the Design Patterns for AL the first time was fun, challenging and exhausting. It was fun because… Continue Reading Mark...

Read More
WARNING – The Data Upgrade Elephant
Nov18

WARNING – The Data Upgrade Elephant

Last Thursday I was at the QBShare event in Veghel, Holland. I’ve been attending these events ever since I joined ForNAV a few years back and since the audience is a bit different from my normal events (CEO vs. Developers) it took me a while to get to know people. No matter who you talk to at these events, all that they have on their minds is moving their IP to Business Central and most… Continue Reading Mark Brummel’s...

Read More
#BCALHelp
Nov17

#BCALHelp

It’s the week of NAVTechDays, the biggest Business Central Community event of the year and I thought it would be good to spend a few moments on the state of our community. Business Central is taking off. According to Microsoft there are more than 4000 paying tenants and the average number of users per tentant is 10+ which is the sweetspot where Navision used to be strong. I can also see… Continue Reading Mark...

Read More
Working with dates in AL vs. C/AL
Nov08

Working with dates in AL vs. C/AL

It’s friday afternoon and I’m goofing around a bit with the ForNAV AL Converter. I ran into something I want to share. AL seems to be more strickt in hardcoded dates than C/AL. Example < pre class=”wp-block-preformatted”>Constant value ‘99993112D’ is outside the range for a Date. The syntax for defining Date format is yyyymmddD, where D is a mandatory letter. For example, 20180325D, read as the...

Read More
Direct Printing to Label Printer from Business Central – YouTube
Nov04

Direct Printing to Label Printer from Business Central – YouTube

Preparing my webinar for Thursday with ForNAV source

Read More
Mapping Codeunit 10201 “Transfer Custom Fields” to Events (NA Only)
Oct30

Mapping Codeunit 10201 “Transfer Custom Fields” to Events (NA Only)

By Steve Krisjanovs Below is a list of all COD10201 external functions and where I believe their event equivalents live in. There were three functions in the list below that had me stumped so a second set of eyes would be helpful. I do still believe that BC’s out of the box COD10201 should still have been modified by MS to indicate that all of these external functions are dead. The… Continue Reading Mark Brummel’s...

Read More
AppSource; Prefix, Suffix & Intellisense
Oct30

AppSource; Prefix, Suffix & Intellisense

This article was triggered by a discussion on Yammer yesterday that I felt went a bit sideways. Business Central is a first class cloud citizen and it beats born in the cloud solutions easily but fact remains that it’s based on Navision, an ERP solution with a 30-some year legacy. Part of that legacy is a requirement for unique names in the objects, also in the cloud. Microsoft is… Continue Reading Mark Brummel’s Article...

Read More
Tip #64 | Show License Information in Business Central
Oct29

Tip #64 | Show License Information in Business Central

With the retirement of C/Side we have a challenge we did not have before regarding the license. We used to be able to see the license information from C/Side, upload the license and quickly create a new page that displays permissions. With Business Central this is no longer possible and we now need PowerShell to upload a license. On my GitHub you can find a repo you can clone to… Continue Reading Mark Brummel’s Article on...

Read More
Tip #63 | Export Warnings & Errors from Visual Studio Code
Oct24

Tip #63 | Export Warnings & Errors from Visual Studio Code

If I get asked the same question twice I am already tempted to blog about it. This one exceeds this number and is long overdue. It looks like the whole world is now converting from C/AL to AL and running into challenges with that. Right now I am analysing several databases and one thing you need after elliminating low hanging fruit and removing errors that crash the compiler is to find… Continue Reading Mark Brummel’s...

Read More
Business Central & Nintendo
Oct17

Business Central & Nintendo

WARNING!! Personal opinion here! Inspiration to write down idea’s are everywhere. Next week my youngest son has his birthday and we went out this evening with the train to the big city of Deventer to buy him (us) a Nintendo Switch. I’ve been loyal to Nintendo since the 1980ies and bought many of their consoles. I’m also loyal to Mario and have most of the games. When the Nintendo WII… Continue Reading Mark...

Read More
Directions EMEA 2019 Afterthoughts
Oct11

Directions EMEA 2019 Afterthoughts

It seems that when my blog posts appear some people hold their breath. Don’t worry, that won’t be nessesairy this time. I am at the Vienna airport and just wanted to write some thoughts I have after the event. When I look at 2.500 people wondering around I don’t see a community. I see individuals. We call it a community because we share the love of a product but we need to move to the… Continue Reading Mark...

Read More
Tip #62 | “Where-Used” in Visual Studio Code
Oct02

Tip #62 | “Where-Used” in Visual Studio Code

The “Where-Used” in Visual Studio Code is nice, but not always productive. Today I wanted to see where a field was used and came up with an alternative I wanted to share. ObsoleteState If you mark a field ObsoleteState::Pending the compile will throw warnings everywhere the field is used. This allows you to quickly use the error window to jump through the code and check whatever you want… Continue Reading Mark...

Read More
What if…
Sep22

What if…

Sometimes I can be a bit emotional when it comes to changes in the software product I work with on a daily bases. An example of that was my previous blog that I took offline in order to do some editing making it less about emotion and more about facts. The emotion is probably justified for a few reasons of which most the fact that Navision, NAV, Business Central (I stopped caring about the… Continue Reading Mark Brummel’s...

Read More
How Do I – Prevent an epic clusterfuck…
Sep17

How Do I – Prevent an epic clusterfuck…

Now that the NDA on Business Central Wave II has been lifted and the DVD preview is released partners got time to look at the code Microsoft has refactored. The reactions vary from being marketing correct to more realistic. I have a strong opinion about what Microsoft did, and especially how they did it. First of all, I agree that it’s a great idea to split NAV up into modules and I… Continue Reading Mark Brummel’s...

Read More
Working with Azure Blob and NAV
Sep16

Working with Azure Blob and NAV

This is something that’s long overdue, I wanted to write this before my summer vacation. My reason for holding back is that I want to share all the code for this project and this needs cleaning up. This is still not done and if you want the code you’ll have to contact me. Why am I still writing this? I am actually writhing this from the “International” airport of Cork Ireland where I… Continue Reading...

Read More
Tip #61 | .gitignore for AL projects
Sep11

Tip #61 | .gitignore for AL projects

The Business Central Community loves Git, but GitHub does not seem to even know we exist. It recognises our projects as perl projects and there is no suggestion for a .gitignore file. Why .gitignore? It’s generally considered best practice to use Git for managing uncompiled code, but not to store the result of a project, nor it’s dependencies. Also, settings that may vary from… Continue Reading Mark Brummel’s...

Read More
Tip #60 | Suppress Warnings in Visual Studio Code
Sep11

Tip #60 | Suppress Warnings in Visual Studio Code

One of the most anoying things about writing AL code in Visual Studio Code is getting warnings that you cannot fix. Simply impossible. My “favorite” warning is this one For almost a decade it’s been possible to sort on flowfields from code and in reports and in most cases it works fine. On larger datasets it might require a covering index for performance. This warning is a joke… Continue Reading Mark...

Read More
Tip #59 | Multiple Start Configurations in Visual Studio Code
Sep11

Tip #59 | Multiple Start Configurations in Visual Studio Code

When developing extensions for Business Central you have a wide array of publishing options to choose from. My most used options when working on the ForNAV Customizable Report Pack are our Sandbox and Docker. Testing is best on the Sanxbox for two reasons. First because all the Azure Active Directory stuff actually returns something which is useful for licensing scenario’s. Second… Continue Reading Mark Brummel’s...

Read More
Episode 4 – BC Fall Release | Give Feedback
Aug26

Episode 4 – BC Fall Release | Give Feedback

Feedback is critical for Microsoft to improve Business Central and all of their other products. For this reason a preview is published of the upcomming release this fall. You can install this using Docker and I’ve been told a DVD will be made available soon. This release will be the biggest change since the introduction of the Three Tier model and Role Tailored Client and fits into the… Continue Reading Mark...

Read More