Microsoft Dynamics NAV

Team Blog

September, 2010

  • Microsoft Dynamics NAV Team Blog

    Microsoft Dynamics NAV/SQL Server Configuration Recommendations


    Michael De Voe, a Senior Premier Field Engineer at Microsoft, has compiled a set of recommendations for SQL Server configuration to improve performance when running Microsoft Dynamics NAV 5.0 and later versions with one of the following versions of SQL Server:

    • Microsoft SQL Server 2005 SP3 x64
    • Microsoft SQL Server 2008 SP1 x64
    • Microsoft SQL Server 2008 R2 x64

     The attached document contains Michael's recommendations, including the following options and parameters:

    • Max Server Memory
    • Auto-Create Statistics
    • Auto-Update Statistics
    • Auto-Grow
    • Database Compatibility Level
    • Trace Flag 4136
    • Trace Flag 4119
    • Data files for TempDB
    • Disk Alignment
    • Read Committed Snapshot Isolation (RCSI)
    • Max Degree of Parallelism
    • Dynamics NAV Default Isolation Level
    • Dynamics NAV "Lock Timeout"
    • Dynamics NAV "Always Rowlock"
    • Maintenance Jobs
    • Instant File Initialization
    • Optimize for Ad Hoc Workloads
    • Page Verify
    • Lock Pages in Memory

     These postings are provided "AS IS" with no warranties and confers no rights. You assume all risk for your use.

  • Microsoft Dynamics NAV Team Blog

    NAV 2009 Tips and Tricks: Search for pages, reports and views from the Role Center


    You can find any page, report, or Departments view in your installation by using the Search box to the right of the Address box. In this way you reduce the amount of time you spend searching.

    When you start typing characters in the Search box, a drop-down list shows page and report names containing the character(s) you type. The drop-down list changes as you type more characters, and you can select the correct page or report from the list when it is displayed. The second column in the drop-down list shows the navigation paths to the found pages and reports. You can select the path in the second column to navigate to the Departments page where the page or report exists.

    Here are the detailed steps for searching for pages, reports, and Departments views from the Role Center.

    1. In the Search field in the top right corner, type "sales".

    The drop-down list changes as you type more characters, and you can select the correct page or report from the list when it is displayed.

    2. Continue typing with "invoices".

    The second column in the drop-down list shows the navigation paths to the found pages and reports and you can select the path to navigate to the Departments page where the page or report exists.

    3. Select either the page or report in the first column of the search results or the path in the second column of the search results.

     For more information about usability and the RoleTailored client, see the blog post Useful, Usable, and Desirable.

  • Microsoft Dynamics NAV Team Blog

    Few tips for NAV developers


    I have collected few tips maybe could be used in NAV 2009 developing.
    Don't claim me too much if this looks to easy... :)

    1. Files managing on RTC pc.
      In C/AL we have statements for working with files like: EXISTS(<File_Name>); RENAME(<Old_File_Name>,<New_File_Name>); ERASE(<File_Name>); COPY(<From_File_Name>,<To_File_Name> ) . But this is working only on CC, as on RTC these statements are executed on Service Tier. What to do if we want to managing files on RTC PC?
      I propose to use automation: 'Windows Script Host Object Model'.FileSystemObject.  If we create it using "Client side" parameter, then automation will be loaded on RTC and we can use all functions from it.
      For example functions:
      Function in NAV C/AL Function in automation
      EXISTS(<File_Name>); <automationName>.FileExists(<File_Name>);
      RENAME(<Old_File_Name>,<New_File_Name>); <automationName>.MoveFile(<Old_File_Name>,<New_File_Name>);
      ERASE(<File_Name>); <automationName>.DeleteFile(File_Name>[, BOOL Force]);
      COPY(<From_File_Name>,<To_File_Name> )  <automationName>.CopyFile(<From_File_Name>,<To_File_Name>);
    2. Different view of boolean fields in RTC.
      Usually boolean fields are showed as checkmarks in RTC, but we can make it in different view - show "Yes/No". This could be done by just adding comments to filed trigger "OnDrillDown".
      Here is example what we see in RTC: 1st boolean has comments in trigger as 2nd is typical view.
    3. Usage virtual table 2000000022 "File" in RTC.
      If you are using this virtual table somewhere in CC and now want to transfer functionality to RTC, you need to know few points:
      1. Virtual table will show files/olders on service tier (not on RTC) and this is different from CC where you saw info from user pc.
      2. If you are using table "File" in RTC, then don't use field "Data". In CC it shows "*" if there are data in file, however RTC starts reading all data from file and loads memory/processor.

    Thank you

  • Microsoft Dynamics NAV Team Blog

    Table Data Type values (used in Record Links)


    Sometime ago I have promised to publish the numbers used in NAV for the data types. These numbers are used all over the system, but are more visible when encoding record links (please refer to my post about encoding record links). This list contains the data types that are available in Tables in NAV 2009 SP1.

    Data type




    00 86



    00 88



    00 89



    00 32



    00 8B



    00 85



    00 2E

    (0x2E ‘+’ 0)


    01 2E

    (0x2E ‘+’ 1)








    16 2E

    (0x2E ‘+’ 22)





    00 8D



    00 90



    00 91



    7D 13

    (0x13 ‘+’ 125)


    00 92



    Internally some types are “extensions” of other types, and therefore are composed as a base type and subtype ID. As an example Time (2E ‘+’ 1) is a “subtype” of Date (2E ‘+’ 0).

  • Microsoft Dynamics NAV Team Blog

    Hosting Possibilities for Dynamics NAV 2009 R2


    With the release of Dynamics NAV 2009 R2 we have spent some time trying to understand the issues related to hosting the product. Based on these discussions we have added some things to the R2 release and will be adding things to the next release as well to accommodate hosting of NAV even further. The features we have added related to hosting the product are:

    • The ability to show a login dialog box upon opening the RoleTailored client
    • The ability to add a server-side certificate and thereby enable SSL/TLS
    • Last but not least we have put some effort into documenting how to configure the product to run over a Wide Area Network (WAN) and the performance and scalability implications of doing so

    To begin with let us have a look at the environment we are adding to the mix with these features.

    In current releases this would be possible by adding a VPN connection to the mix with the performance overhead and administrative cost that it adds.

    To mitigate a possible man in the middle attack we have added the ability to add a certificate on the server side of the setup. This helps ensure that the server to which the client is connecting is actually the one that it should be connecting to.

    As most hosting scenarios require any client to login to a domain that is run by the hosting company we have added the ability to show a login dialog when opening the RoleTailored client to allow a user of NAV to easily provide those credentials to the remote site in a secure fashion. This happens over an encrypted channel to the SSL-verified server in the other end.

    After the connection is established the communication between the RoleTailored client and the server is also encrypted to ensure that if someone is listening in on the communication it would be garbled while being transmitted over the internet.

    The natural question to ask is then "what does this mean in terms of performance?" We have spent quite a while looking into that to be able to come up with some guidelines about which requirements should be put upon the network connectivity between the hosting site and the customer site.

    We have focused our tests around two factors - latency and bandwidth. The way we have tested this is in a simulated environment where we were able to throttle both bandwidth and latency to be able to simulate different types of connectivity. The tests we performed were 10 concurrent users posting 10 one-line sales orders in an automated fashion through the User Interface of the RoleTailored client. An important note here is that this type of measurement is not entirely realistic as the actual entering of the Sales Orders are fast to the point that the UI doesn't render before the Post button is pressed. This also means that if this is the "benchmark load" any real life load with similar operations will be slower.

    We tested bandwidths ranging from a 10/1 mbit line up to a 300/300 mbit line which would be somewhat similar to a LAN. Bandwidths are setup so a 10/1 line would be 10 mbit download speed to the client site and 1 mbit upload speed from the client site.

    Latencies were tested between 0 ms to 600 ms, which is ranging between a fast LAN connection to a slow ADSL connection or even a fast satellite connection, which would be between 500-1000 ms.

    The graph below shows the response times as the red line, the maximum kilobytes received per second as well as the average kilobytes received per second, the maximum kilobytes sent per second and the average kilobytes sent per second.

    The x-axis signifies the round-trip time added to the connection in milliseconds.

    Looking at the graph it shows that latency linearly impacts the response time for obvious reasons. It also shows that a higher latency impacts the ability to utilize the available bandwidth and that the sweet spot/elbow is between a latency of 100ms and 150ms.

    The graph for the bandwidth scenario is somewhat less complicated. It shows the bandwidth per user on the x-axis and the response time for the 10 sales orders on the y-axis. Note that the bandwidth per user means that 5/1 is equivalent to a 50/10 mbit connection. 2/0,5 is a 20/5 mbit connection.

    The graph shows that the elbow is somewhere between 1,5/0,3 mbit per user or a 15/3 mbit line and 2/0,1 mbit per user or a 20/1 mbit line. Additional studies also show that the determining factor for these connections are the upload speed rather than the download speed and that the elbow is between 0,1 and 0,3 mbit per user for the tested scenarios.

    As this is targeted towards limited bandwidth scenarios it is worth noting that for any type of connection it will be possible for a single session to use it all if transferring a large file or even running a large report.

    Together with this release we will provide documentation to help configure the network infrastructure that is needed for the RoleTailored client to be able to communicate with the NAV Server over the WAN.

    Recently Microsoft hosted a Hot Topic Session called "Microsoft Dynamics NAV 2009 R2 Hot Topic: RoleTailored Client for remote and roaming users". A recorded version of the session can be seen at the Parther Learning Center

    - Claus Busk Andersen

  • Microsoft Dynamics NAV Team Blog

    NAV 2009 Tips and Tricks: Customize the Navigation Pane


    You can add and delete buttons and lists in the Navigation Pane.

    1.  In the top right corner of the Role Center, click Customize button.

    2.  Click Customize Navigation Pane.

    3.  In the Customize Navigation Pane window, click New to create a new button.

    4.  Type a name for the new button.

    5.  Choose an icon.

    6.  Click OK.

    7.  Use Move Up, Move Down, and Rename to edit the position and name of the new button.

    8.  Click Add to add new lists.

    9.  Browse to the list you want to add.

    10.  Click OK.

    11.  Repeat steps 8 through 10 for all the lists you want to add.

    12.  Use Move Up and Move Down to edit the position of the lists.

    13.  Use Move To and Copy To to move lists from one navigation pane button to another.

    14.  Click OK.

    15.  Click Yes to restart the Role Tailored Client.


    After restart, the changes will be applied to the Navigation Pane.


    For more information about usability and the RoleTailored client, see the blog post Useful, Usable, and Desirable.

  • Microsoft Dynamics NAV Team Blog

    Saving/creating a file from NST to another machine share


    In order for the RTC (Role Tailored Client) to export to a shared location using Constrained Delegation, you need to setup delegation for the account that is running the NST service to the machine that is hosting the share. Here are the instructions on setting up delegation:

    1. Open the User that is running in NAV Server Service in AD (Active Directory) and go to the Delegation Tab

    2. Click on 'Add'

    3. Select 'Users or Computers'

    4. Enter in the name of the machine that is hosting the Shared Folder

    5. Click 'Check Names' and now it should show an underline below the servername

    6. Click 'OK'

    7. Now you should see a list of Services for this machine that contains the shared folder

    8. Click on the Service called 'cifs'

    9. Click 'OK'

    10. The end result should now look like this:


    Nick Haman, North America Escalation Engineer


  • Microsoft Dynamics NAV Team Blog

    New SEPA Whitepaper on PartnerSource and CustomerSource


    I am happy to announce that due to popular demand, we have recently posted a whitepaper covering SEPA on PartnerSource and CustomerSource.  

    To give you a little bit of background, in 2002, key European banks decided to create a standardized payment strategy called the Single Euro Payments Area or (SEPA) to allow payments to easily transfer electronically. SEPA is the framework that manages the necessary infrastructure and standards for the euro. SEPA actually consists of two different core concepts: credit transfers and direct debits. SEPA Credit Transfers (SCT) are a payment that a payer initiates. The payer must send payment instructions to a bank and then the bank transfers the funds from the payer's to the beneficiary's account. These are transactions between two accounts held by financial institutions in the European Economic Area (EEA). SCT are currently supported in the following localized versions of Microsoft Dynamics NAV.

    SEPA Credit Transfers


    Date released

    Released in Microsoft Dynamics NAV version


    April 2009

    4.0 SP3, 5.0 SP1, 6.0 SP1


    August 2009

    4.0 SP3, 5.0 SP1, 6.0 SP1


    September 2010

    5.0 SP1, 6.0 SP1

    Development is currently underway for SEPA Credit Transfer XML payment format for the following countries.

    SEPA Credit Transfers


    Expected release date

    Released in Microsoft Dynamics NAV version


    October 2010

    5.0 SP1, 6.0 SP1

    (This list is subject to change.)

    SEPA Direct Debits (SDD) is the other part of SEPA. SDD are different from SCT because they are initiated by a creditor. We currently do not have any concrete plans on releasing support for SDD but are keeping up to date with business, market, and legal requirements and will continue to support direct debits in countries where the functionality already exists as a localization of Microsoft Dynamics NAV.

    For those of you who would like to know more about SEPA and how it affects our customers and products, please take a look at the whitepaper here:



    - Selena Laccinole Jensen

  • Microsoft Dynamics NAV Team Blog

    NAV 2009 Tips and Tricks: Change the default filter in fields that take input


    In fields that take input, such as Sell-to-Customer No., Location Code, or  Address, as you start entering characters, a drop-down list shows possible field values that match the characters you have typed. Typcally, Microsoft Dynamics NAV sets the default filter to the number value in number fields such as Customer No. and to the text value in fields such as Address.

    But you can change the default field you use as a filter. In this example, you can change the filter from No. to Name.

    1. In the drop-down list, click the heading of the column you want to set as a default filter column.
    2. Click Set as default filter column.


    Now, as you type in the Sell-to Customer No. field, the filter is set to look in the Name column rather than the No. column.

    For more information about usability and the RoleTailored client, see the blog post Useful, Usable, and Desirable.

Page 1 of 1 (9 items)