How-to: Design a Form in NAV 2015
2014-10-30 13:54

Don't believe you can? Have a look at this picture story ... Cool

Finding NAV 2015 MSDN Help - Let's Hope It Improves
2014-10-26 12:39

For ages Help has been the laughingstock of NAV. Many where evading the creation of it, even more were mocking about the content. For various reasons.

With NAV 2009 MS has picked up this gauntlet in various ways: creating better and more valuable content, putting it online, providing us with easier to use tools, not in the least the help server that was released last year. Now with the release of NAV 2015 the next version of standard help has been put online. But it appears that it's still showing up in search queries as dominant as it used to be for previous versions.

If you now do a search for NAV ShowMandory the msdn topic on ShowMandatory will only show as last entry on the first page (and guess what's the top 3 shown?). But ... it is improving. The search results were even worse some weeks ago.

Searching for NAV AccessByPermission will not even yield an msdn result! Not even on msdn itself.

Informing myself on this with one of my former MS colleagues I found I surely was not the only one experiencing this and that the issue has been escalated to the msdn team.

Let's hope it improves the coming weeks.

by Luc van Vugt | with no comments
Filed under: , ,
Running Help Servers Side-By-Side
2014-10-24 11:24

Digging myself into the new features in NAV 2015 I was referencing the Help and found myself looking at default page. My first thought was: Isn't there any help for this field?

So I returned to the page and selected the upper left dropdown arrow (forgotten the term for it), Help, Microsoft Dynamkics NAV Help to see if there wasn't any help for the page. Nope. Same topic shown.

Now looking a bit more closely I saw I wasn't looking at 2015 help at all.

Didn't I install the NAV 2015 Help Server?

Well, apparently I had and it was running also.

But ... it was running on the same port as the NAV 2013 R2 Help Server: 49000. My recent installation of both NAV 2013 R2 and NAV 2015 came to mind. I had set different ports for the service tier, but had totally neglected the Help Server and thus had both set on the same port. (Note that there as a useful post on this by my fellow MVP Saurav Dhyani.)

Piece of cake to change the port, I thought. Well, now looking in retrospect, it is, but it took me some while before I got it running and even spammed one of my former MS colleagues with it. Once more my apology for that. Embarrassed

I guess you figured out that I knew the Help Server as an IIS service. But not being a regular user of the IIS Manager, it's like "wow, there is a lot to configure". Surely if you only look at the middle pane (Feature View) and start browsing around there. Don't, I can tell you now.

Have a look at the right pane and click on Bindings .... Now writing this I can't recall anymore how I got to click on that; nevertheless, that's where to go.

I added a binding for port 48000, deleted the one for 49000 (and left that to the Help Server for NAV 2013 R2) and (re)started the service.

Time to return to NAV 2015 and ... No, no, not yet. As the referencing of the help is handled by the service tier there another thing to do.

Stop service, change the Help Server Port to the right one, i.e. 48000 in our case, and restart the service.

Back to my NAV 2015 windows client and click F1 again.

.......... Shooot. Should have thought of this. At least should have better read Saurav's post.

There is a third part in this: the user settings the be found in ClientUserSettings.config which typically resides in C:\Users\<user>\AppData\Roaming\Microsoft\Microsoft Dynamics NAV\80.

Change 49000 to 48000, save, restart my NAV 2015 windows client, and click F1.

NAV 2015 Glance 4: New Functions are Local by Default?
2014-10-17 14:51

It is considered a general coding best practice to declare a function as being local. Over time you could see that the NAV Team was also adhering this, even though C/SIDE wasn't helping a lot on this a a new functions would by default be global, i.e. the property Local would be <No> (or you might say undefined). Now with NAV 2015 any new function will get Local=Yes.

Well, that's not always true I found out today by accident when writing my previous post. It appears to be depending on the Subtype of the codeunit.

If Subtype is ...

  • Normal (or undefined, i.e. <Normal>) functions will be local by default
  • Test functions by default be global test functions (i.e. FunctionType=Test)
  • TestRunner we get the same behavior as for Subtype Normal
  • Upgrade functions will default to local upgrade functions (i.e. FunctionType=Upgrade)
by Luc van Vugt | with no comments
Filed under: , ,
Did You Have a Look at the C/AL Editor Status Bar Today?
2014-10-17 14:50

Well, I did and noticed something that has been there apparently for some time ... Huh?

... a year or so, since NAV 2013 R2. I surely had noticed that since then the C/AL editor shows the attributes. A simple but valuable feature that makes my live a lot easier.

So, no, this is not what I wanted to address here - I recon you did read the title. Cool

Have a look:

Maybe a bit to much. And now?

The first part ... wasn't there before NAV 2013 R2. You can now easily see in what function you are, on what line and column.

Or ...

... did you notice and I am just wasting your time? Geeked

This license is not compatible with this version of Microsoft Dynamics NAV
2014-10-3 14:00

So today I sat down to get things prepared for my session at Directions EMEA 2014, next week. Not in the least because this week I had to install a new laptop, hence having to let go of everything that was there and proofed working alright at Directions US. Indeed somewhat tricky. Hmm

Luckily everything got installed well and working, earlier on this week. Nothing really to worry about. NAV 2015 RTM NL was running and now I wanted to get a W1 database to put my things in. Having the W1 DVD at hand only a matter of restoring the Demo Database NAV (8-0).bak file, and renaming the database name and file names. This in order to discriminate between the various country versions (which MS be default always name Demo Database NAV (version)) and projects I am using c.q. working on. Therefor I decided to call my database: Demo Database NAV (8-0) - Directions EMEA, likewise I had done for Directions US.

Connected my NAV 2015 Development client and service tier to this database. And ... couldn't get the the windows client work. Quite fast I realised I had to get some things set on the account that is running my service tier: NT AUTHORITY\NETWORK SERVICE.

  • map it to this database and
  • mark the dd_datareader, db_datawriter and db_ddladmin roles

Restart the service and ...

... open the windows client again, I wanted to say.

Holy cow. My license not compatible? My mind started running, trying to unnerve myself.

  • Got one from MS before Directions US and was working right ... then ... two weeks ago
  • Did work last Tuesday when I had reinstalled everything on the new laptop
  • By all means, it worked this morning

Upload the license to the database? Nope, no use. Ask MS for a license update? Might, but will take too much time. Would it work with the other NAV 2015 databases on my SQL Server (see screen shot)? Yes, it does! With the same license!

Am I being fooled somehow? Well, it seems to be.

I recon that, when I named my database Demo Database NAV (8-0) - Directions EMEA, your mind was triggered. Mine was somehow, but I decided to disregard it. I shouldn't.

Once I had changed the name to Demo Database NAV (8-0) D-EMEA everything worked fine.

What the ****, "this license is not compatible with this version of Microsoft Dynamics NAV"?

A to-the-point message would have made it surely easier for me, mister MS.

BTW: Should the name be less than 30 characters? Is that the rule? No, time to figure that out now.

Added 2014-10-07

For those who would like NAV to be enhanced to get a meaningful message, please vote on msconnect: go here

NAV ALM with Team Foundation Server - On Tour
2014-9-30 14:01

Returned from summer vacation, picking up daily work and, as you might say, ... getting ready for the touring season. The NAV on TFS tour. Or somewhat longer: NAV ALM with Team Foundation Server - On Tour. By now the tour is already on the run. It started two weeks ago at Directions 2014 in San Diego, USA, being in great company of which not the least were almost three hands full of my fellow NAV MVPs.

And surely, when doing the presentation on Source Code Management, together with my brother in arms Soren Klemmensen, as part of the MVP Best Practices Track.

Next stop will be at Directions EMEA 2014, in Poznan, Poland, where we will have a kind of replay of best practices track, now called MVP Sessions. This time I will have to conduct the SCM session on my own and hope to see you there.

However ...

... will you miss either of the sessions at directions: there will be 3 chances more before the end of the year. These might even suite you better, as these will be deep dive workshops on the various aspects of the use of Team Foundation Server in NAV development.

  1. Hasselt, Belgium @ - 2 days | October 23 & 24, 2014
  2. Antwerp, Belgium @ NAV TechDays 2014 - 1 day (already sold out) | November 19, 2014
  3. Ulm, Germany, @ Infoma - 2 days | December 17 & 18, 2014

So ... see you there?


The Bear is Loose Again!
2014-9-25 18:42

It has been very silent and all of a sudden the bear is loose again. I mean Sigfredo Beerman is writing again. You might recall my amazement some years ago. As a matter of fact three years, on my birthday (check it out). In those days, finally somebody (or at least one of the few) started blogging on functional matters. I know I am a bit to blunt but there weren't many doing that and surely not at MS. Things have changed and there more people around, however , IMHO still to little.

In the mean time, for almost a year there haven't been any SCM post on the NAV Team Blog. And now with a few weeks we get 5 nice post! Yowza, yowza, yowza. Let the bear loose.

Welcome to the Dynamics blog-o-sphere! #10
2014-9-25 10:22

Now, on the Northern hemisphere, the meteorological summer is left behind, autumn will soon be falling on us. And with it these wonderfully colored leaves. However summer seems somehow lingering on and the only things that whirl upon me are various blogs. New or somewhat older. Today this came down with some useful information on NAV 2015 that I have immediately added to the NAV 2015 Blog Landing Page. The site looks nice and fresh (for weeks I have been wondering how to find time to get mine redone) and content wise looks very promising even though - being honest - I find some of the info is redundant as these have been addressed by others already. But 'Crow' don't let this stop you. No, don't. And be welcome to the Dynamics blog-o-sphere!

And just to set some expectations: in many cultures crow is considered to be the carrier of wisdom. (And now deliberately leave other connotations out Cool)

O, also read Crowfield's posts on Power BI.

Welcome to the Dynamics blog-o-sphere! #9
2014-9-22 22:28

Might be surprising to you, but if I read a blog post title saying Source control…is it really worth it?, you got me hooked! I guess I found, or actually it was Soren who did it for me, a non (ex) MSFT that seems to love Team Foundation Server (TFS). Hooray. Thawtz, join the club. Don't know if you have been following Soren and me, but be welcome. And let your posts flow in to the Dynamics blog-o-sphere. For sure this post makes me looking for the next.

NAV 2015 Blog Landing Page
2014-9-21 20:26

I guess that by now you have noticed that NAV 2015 GA has officially been announced and that the download has been made available to partners (including links to useful material like readiness library). Next to that various post from people like the NAV MVPs are popping up around us like mushrooms. Having been in the heart of this at the start of last week during Directions 2014 in San Diego, CA, when traveling home, I somewhat lost oversight over what we were all producing. Time to get me a kind of landing page collecting all the non-MS What's New communications. So here we go.

I'll do my best to keep this pages up-to-date. Feel free to add references to posts not (yet) mentioned in the comments section below. And also on any improvement of the layout.


Objects - Properties

Objects - Compiling Tables

C/AL - Editor

C/AL - Variables

C/AL - Functions








Last Update: 2014-10-17

Welcome to the Dynamics blog-o-sphere! #8
2014-9-18 22:32

Now that I started introducing I might just as well continue with this one. Actually my mind got running on a blog introduction because of the one I am on to now: Erik Hougaard's blog. And it wasn't his blog, but the fact that I met Erik for the very first time at Directions 2014 (US) and, shame on me, learned about him for the very first time. Due to the simple fact that Erik has been assigned NAV MVP, finally; after ages of having been working with NAV (since 1990, who of us can say the same) Erik has come out of the shade and started to move into the community by, among others, blogging.

Welcome to the Dynamics blog-o-sphere, Erik, and keep the posts flowing.

Welcome to the Dynamics blog-o-sphere! #7
2014-9-18 22:16

Today I was surprised to stumble over a new blog. You know there are so many blogs and forums to get your information from. And when googlebingen you will obviously hit one of those that have been around some while. But not today. I have totally forgotten to register what I was searching for, but I that I clearly stumbled over this blog that was started only recently. Although he seems to have been around the business for quite some while, NAV Viking aka Johannes Gudmundsson apparently has decided to share his findings and thoughts with which we all can only but be feel blessed about. What I have been reading seems worthwhile to me, as even though for some these may seem open doors, there is clearly a personal touch in that I always find worthwhile.

So definitely welcome to the Dynamics blog-o-sphere, Johannes.

NAV 2015 Glance 3: ShowMandatory Property
2014-9-16 14:43

You might have noticed that now, with GA (General Availability) communicated by Microsoft, as mushrooms blog posts and tweets are popping up addressing the new things NAV 2015 will bring to us. Look for example @MVPKine, Mohana, @masaccio1401 and waldo. And myself. Cool

As MVP's we have been involved in the road that led to NAV 2015 so we have been seeing (some of these) things in an earlier stage, gotten enthusiastic about them - or maybe not -, but we're tighten by NDA and had to hold back from shouting out loud. Clearly the NDA has been lifted and off we went. To be the first to shout, to be able to inform you about what is there (or will be there very soon). I guess there is no plan behind about whom is going to shout what. So each of us will probably find himself writing something - having been gloating on it already for some time - seeing the other getting away with it. Wink

This happened to me with this specific topic. Clearly Mohana outpaced me on the ShowMandatory property. Sh..t.. I mean, congrats, Mohana, But fortunately he left a crumb for me to pick up. Yep, even though I am getting close to 52 I still value crumbs. Big Smile Surely if the are essential, like IMHO in the case of the ShowMandatory property.

Complementary to ShowMandatory setting the NotBlank property to Yes on a primary key (PK) field will mark the field with a red asterisk on the UI.

Now setting the ShowMandatory to FALSE in the PK field control on the page will not override the behavior of the NotBlank property that was set to TRUE.

BTW ...

... the value of show ShowMandatory can be set to true, false, or using an expression.

NAV 2015 Glance 2: UI Elements Removal
2014-9-16 2:12

Way back in 2004 at Microsoft we had a project running called Elba. The goal of it was to release a wrap pack version of NAV (or Microsoft Business Solutions-Navision as it was called in those days) and was popularly known as Navision Light. Now with NAV 2015 Easy to Use pillar this project came to my mind again. Back then one of the attempts to get Navision lighter was to 'wipe out' needless UI elements with respect to the Elba user license, which obviously would have been much more restricted than the average user license used to be in those days. The thought up technical solution was to process all forms based on this Elba user license in such a way that all these needless UI controls would be removed from the object when building the application. Hence the eventual form objects would often be much lighter than their original version. In a way it resembles the UI Elements Removal feature that NAV 2015 entails even though they are technically totally different.

But before elaborating further, I first should confess that I somewhat have been sleeping since NAV 2013 R2 was released as part of this feature was already implemented in it. Cool

Nevertheless, now in NAV 2015, this has been extended. So what is this UI Elements Removal feature about? In a nutshell you could say that any UI element that accesses an object that your license or your role permissions do not grant you right to, will not be shown to you. This might be a field, an action or a page part. When rendering the UI this element will not appear on screen. Note that there are various facets to this 'story':

  • Those UI elements that have an implicit relation to an object outside your license will be removed on the fly; for example fields that reference an outside object by means of a TableRelation or a FlowField CalcFormula (already available on NAV 2013 R2)
  • But as developers we can now also set up a relation to such an outside object by means of the new AccessByPermission property, which you would typically use for UI elements that do not have an implicit relation or to overall such an implicit relation (like in the case of the Shipping Agent Code on TAB18 as shown in the following screen shot); note that the UI element will be removed if the user does not have permissions to outside object as specified in the Access By Permission window


  • In conjunction with the above the eventual result is determined by the mode the application server is running. On NAV 2013 R2 it was the RemoveUnlicensedUIElements key of the server that enabled you to turn it on or off. With NAV 2015 this has been replaced by a new key:

    <add key="UIElementRemovalOption" value="LicenseFileAndUserPermissions" />


    I guess the three options are self explanatory, but let me be somewhat redundant. When running the server ...
    • in the standard mode (i.e. with option LicenseFileAndUserPermissions) a UI element is removed if the related object is not included in the license file and the user does not have permissions to the object as defined in the AccessByPermission property
    • with option LicenseFile a UI element is removed if the related object is not included in the license file
    • with option None all UI elements are displayed


  • When configuring pages, make sure that the UI Elements Removal field is set to its default (i.e. LicenseFileAndUserPermissions) so that you only see the relevant UI elements are shown in the Customize window
  • In the same manner make sure, when developing, that the UI Elements Removal field is set None so that all UI elements are visible when you review the UI

You know ...

... even thought at first Elba looked promising it was 'killed' way before it even got to the market (by Microsoft's current CEO Satya Nadella). Some years later Entrepreneur suffered more or less the same fate.

[added the day after]

Now rereading the full post I was somewhat wonder-struck by the last paragraph as I now read is as a kind of premonition. NAV 2015 might go the same why. Ouch, no. Surely not. I think NAV is better shaped than ever. I guess some kind of old bewilderment just popped up. Zip it!

More Posts Next page »

Recent Posts


Email Notifications

This Blog


Favorite BLOGS


Team Foundation Server BLOGS