Tuesday, 22 May 2018

Remote Desktop Connection Error "An authentication error has occurred. The function requested is not supported Remote computer: 165.168.2.102 This could be due to CredSSP encryption oracle remediation."

Hello reader, this time this blog article is not directly related to Dynamics NAV as usual. But in our routine work we encounter and troubleshoot errors that could originate from SQL server, Windows Server, Windows Client OS or Dynamics NAV itself.
Today i encountered the error below when i tried to remote to a server to sort out someone that needed help.




Luckily i looked up the web and landed on a blog with a quick fix.
Please note that my client PC is running Windows 10.
To fix the error, simply

  • edit client Windows’ local group policy (gpedit.msc):
  • Under Computer Configuration -> Administrative Templates -> System -> Credentials Delegation, there is a setting “Encryption Oracle Remediation”. Its default value is “Not configured”. Just change it to “Enabled”, and set “Protection Level” as “Vulnerable”.
For a detailed explanation and steps to follow please click here
Special credits to; Dixin

DYNAMICS NAV ERROR "The Service Principal Name (Delegation) configuration has been set incorrectly. "

Hello reader, today i received the above error when i attempted to login to Dynamics NAV server from my client PC.
Before i encountered the error everything worked correctly a few days back. I realized i had updated my password from the domain user account which i use to access NAV on the server.


My PC was set to use WINDOWS authentication.
I realised that my username and password i used to login to my PC is different from the domain account login information for accessing Dynamics NAV server.
I suspected the difference could have been the problem after checking up a few blogs online.

If you have encountered a similar error try this to fix.

  • Change your Clients credential type to UserName on your client PC.
  • Once you run NAV, it will prompt you for username and password
  • Login using the domain account information you use to access the NAV server instance on your Server.
Click here for additional info

if you don't know how to change the client credential type follow these steps;

  1. Open file explorer and navigate to C:\Users\[Current User]\AppData\Roaming\Microsoft\Microsoft Dynamics NAV\[folder 110 for NAV 2018, 90 for NAV 2017, 71 for NAV 2013]
  2. open clientsettings.config file
  3. Update clientCredentialType="UserName"
  4. Save and exit
  5. Run NAV again and it will prompt you for username & password
Please note that the square brackets above are a place holder
here is mine C:\Users\Mark\AppData\Roaming\Microsoft\Microsoft Dynamics NAV\110


You should be able to login successfully.
Good luck

Tuesday, 27 February 2018

MICROSOFT DYNAMICS NAV (SQL ERROR)

Hello, today i will share something slightly away from Microsoft Dynamics NAV but it's very important. We all know Dynamics NAV can not be accessed when SQL server is not running. I woke up to this error "Cannot connect to WMI Provider.You do not have permission or the server is unreachableNote that you can only manage SQL Server 2005 and later servers with SQL Server Configuration ManagerInvalid class[0x80041010]." upon running SQL configuration manager.
It is very frustrating to start with system errors even before you begin development.
If you get the same error just do what am about to describe.


Solution

  • Open command line as administrator
  • Navigate tC:\Program Files (x86)\Microsoft SQL Server\Number\Shared\
  • Run command "mofcomp sqlmgmproviderxpsp2up.mof"
  • You will receive the following message when your command is successful.


The value of Number depends on the version of SQL Server:nnn

Microsoft SQL Server 2012110
Microsoft SQL Server 2008 R2100
Microsoft SQL Server 2008100
Microsoft SQL Server 200590

 For details click here 

Thursday, 8 February 2018

MICROSOFT DYNAMICS NAV UPGRADES MADE EASIER AND FASTER USING EXTENSIONS

Hello reader, technology is changing every other day. The good news is that Microsoft has not been left behind in this race. I have only worked with Dynamics NAV for a mere 2 and half years, those of you that are familiar with it since the early days can testify this product has become even better. Lets dive back to Extensions and what it means to the future of Dynamics NAV Upgrade.


Dynamics NAV Extensions are a way for Microsoft Dynamics NAV developers and ISVs to extend the functionality of NAV without modifying Microsoft’s original source code. With the new model, when you come to upgrade Dynamics NAV with a cumulative update, you no longer need to merge all the customized objects. That means less upgrade issues.
With NAV Extensions, you can add functionality without changing the standard solution from Microsoft. This has the obvious advantage that major NAV upgrade projects are no longer necessary. Once you are using Extensions, the customizations no longer represent a problem when upgrading to the latest version of the solution.
If you want to prepare for this new model, you should start to work with Dynamics NAV Extensions today.

Barriers to editing Dynamics NAV extensions

Dynamics NAV Extensions are packages that contain additional functionality, report layouts (at least starting in NAV 2017), permissions, and more. The packages can be easily installed, uninstalled and upgraded without affecting the Dynamics NAV source code.
Once the Dynamics NAV extension package has been created, it is no longer easy for others to view the code of the extension, which means that your code is protected. You can view the source code of an extension through the debugger, but you cannot access the code through the development environment and you can’t modify an extension unless you have the source code.
Technically, there is no real problem. The new solution will work and the customer will be able to use the custom functionality. However, if another party wanted to further modify the functionality, it would not be possible because the functionality can only be modified if the developer has the source code.

How Dynamics NAV Extensions can make Dynamics NAV upgrades easier

We believe that in most cases, NAV Extensions can help developers to upgrade without any problem. Why in most? Because during any Dynamics NAV upgrade we currently carry out (which is classic, nothing to do with Extensions), we can upgrade the most part of the code without conflicts.
What about the exceptions? There are just a few scenarios where you may need to rethink your solution. Here are some examples:
  • When new functionality in an upgraded version of NAV can replace your extension. However, they probably can co-exist.
  • When Microsoft redesigns part of a solution. Even this doesn’t need to be a major problem. If, for example, you are upgrading to NAV2017, a major redesign of CU80 isn’t that much of a problem thanks to the hooks pattern. Decent code design always helps. If you have been using extensions, you would have been using events anyway, so that’s even less of a problem.

Visual Studio Code and Dynamics NAV Extensions.

  • The Microsoft NAV team has created a new VS Code extension that enables the creation of objects in AL language. But beware; creating a VS Code extension for a completely new language is not straightforward! It requires the creation of a model to support intelligence and the creation of a new compiler. That sounds easy, but it is not.

Microsoft tools for automatic migration to Dynamics NAV Extensions

To help develop solutions for this new programming environment, you can use a set of new Microsoft developer tools to build, test, and deploy NAV Extensions.
Microsoft In-App Designer
In the client, you can switch to In-App Designer mode. This enables you to change the look and feel of the client quickly and easily. Using this tool, you can define the elements (such as fields or groups) that appear on a page and change how they are displayed. You can also use In-App Designer as an interactive tool to create extensions based on changes you make in the client.
Microsoft In-App Designer includes a wide range of important features, such as:
  • Adding a field from the source table to a page
  • Moving a field to another position on a page
  • Removing a field from a page
  • Previewing your design in desktop, tablet, and phone clients
  • Saving the changes for the tenant or saving as an extension package file in Visual Studio Code.
  • Microsoft Dynamics NAV Developer Preview 3 (Coming soon)
  • Changing the caption of a field on the page.
  • Adding, moving, renaming, and removing an action.
  • Adding, moving, and removing page parts.
  • Adding new pages
See full article here
Special credit to  www.simplanova.com


Monday, 4 December 2017

WHAT IS NEW IN MICROSOFT DYNAMICS NAV 2018 ?

It's been 3 days since the news on Dynamics NAV 2018 broke out to the main stream. A lot is being blogged about this interesting product.
But first i would like to take this opportunity to welcome back our team from the Dynamics NAV boot camp held in Nairobi Kenya (28th Nov- 01 Dec 2017). Thank you to our partners and teams for the wonderful work done.

According to Dynamics community, the following are the new features in Dynamics NAV 2018

Ceridian payroll

You can now import payroll transaction files from Ceridian HR/Payroll in US and Ceridian Powerpay in CA by installing the Ceridian Payroll extension.
Aggregated payroll data, including date, payroll account, description, and amount, will be imported to your G/L accounts according to mappings that you perform once per payroll account.
The extension also contains a sample payroll file that you can use to try out the functionality, for example, in a demo company.

Quickbooks File Import

You can now import payroll transaction files in the Quickbooks IIF format by installing the Quickbooks Payroll File Import extension. Aggregated payroll data, including date, payroll account, description, and amount, will be imported to your G/L accounts according to mappings that you perform once per payroll account. The extension also contains a sample payroll file that you can use to try out the functionality, for example, in a demo company.

Integration API

To empower developers and service providers to easily integrate with Microsoft Dynamics NAV, we are adding a REST API based on web services with easy-to-use authentication.
The entities in the API can be used on their own or in combination with extensions when there is a need to add user interface elements or business logic Dynamics NAV.
The first iteration of the API publishes common record types, including company information, customer, vendor, employee, item (product), sales order, sales invoice, account, and journal.

Synchronize Vendors with Lexmark ICS

You can now take advantage of vendor synchronization when using Lexmark ICS. This will improve the vendor recognition rate in the Lexmark ICS and allow manual selection of vendors when performing visual training of new invoice layouts.
Vendor information including number, name, address, VAT registration, phone, and bank account data is transferred to Lexmark ICS when synchronizing. 

Personalize your workspace
Personalize your workspace to your tastes and work style!
With our upcoming personalization tool built directly into Dynamics NAV, all it takes is a few clicks to display the right data for your role and your business, or optimize for data entry in the browser.
  • Move or hide away content such as columns, fields, FactBoxes, charts and KPIs.
  • Show more business data by adding columns and fields.
  • Freeze any column in a list so that you always see key fields as you scroll.

Preview and Print Reports

Invoices, tax reports, checks and balance sheets - our upcoming Report Preview feature will display all kinds of reports directly in Dynamics NAV without having to download as a file.
On any browser or mobile device you can click, type or swipe to pan, zoom and flip pages. Select and copy text, or click to link out to your data.
You will also be able to print directly from the browser.

Full CRM Synchronization can be run in background

Dynamics CRM Connection Setup guide

The Dynamics CRM Connection Setup guide now includes coupling of salespersons to CRM users as this is a prerequisite for any synchronization of data between Dynamics CRM and Financials.
The guide now allows you to run full synchronization when the CRM connection has been set up. The synchronization runs in the background so that the user can continue working.

Dynamics CRM Connection Setup window

From the CRM Connection Setup window, you can open the Integration Synchronization Jobs window to check the progress of current synchronizations and to see detailed information about the number of records in Financials and the number of records in the connected Dynamics CRM solution.

Record coupling between Financials and Dynamics CRM

When coupling records between Financials and Dynamics CRM, the list of CRM records is filtered using integration table filters. This allows you to see and couple only records that are eligible for synchronization.
If you disable the Dynamics CRM integration, all integration synchronization jobs are now disabled.

Analyzing Financial Statements in Microsoft Excel

In the Business Manager and Accountant Role Centers, you can choose which financial statements to view in Excel from a drop-down menu in the Reports section of the ribbon. When you choose a statement, it will be opened in Excel or Excel Online. An add-in connects the data to Financials. 
In the ribbon, choose the relevant Excel report, and let it open so you can get the overview that you were looking for. In this version, we offer the following Excel reports:
  • Balance Sheet
  • Income Statement
  • Cash Flow Statement
  • Retained Earnings Statement
  • Aged Accounts Payable
  • Aged Accounts Receivable

Retrieve customer, vendor and contact name and address from VAT Registration Number [UK only]

You can validate the VAT registration number of new customers, vendors, and contacts against the EC VAT VIES web service and get the name and address details from the web service response.

Submission of EC Sales List with more than 9999 lines

You can now submit EC Sales List Report with more than 9999 lines. All you need to do is set threshold on number of lines in VAT Report Configuration for EC Sales List report in Maximum number of lines field to 9999 and we've got you covered. When you submit such large EC Sales List report we'll generate a number of messages and send them to Government Gateway. You can see results of submission in Log Entries.

3 Checks per Page

A new format has been created for check printing.  You now have the ability to print 3 checks per page to save of paper and make check printing faster.

Links and Resources

For a complete list of what’s new and what’s coming you can visit the Microsoft Dynamics 365 Roadmap
The Dynamics 365 Roadmap provides a full image of what we’re working on. Use this roadmap to find out what is being made generally available and what is in development. All dates and features that are in development are preliminary, are based on current expectations, and are subject to change without notice.

The Modern Development Tools for Dynamics NAV provides a detailed list of new tools that you will need to use in order to build extensions and apps in and for Dynamics NAV.

Make sure you visit the list of features that have not been implemented in on-premises deployments of Dynamics 365 for Financials. In this list you can find features that haven't been implemented yet and a list of features that are not intended for use with on-premises deployments, meaning that there are no plans to implement these features.

In order to connect and integrate your web service or SaaS solution with Microsoft Dynamics 365 for Financials you can use Microsoft Graph. Creating your integration through the Microsoft Graph provides simple access to all supported Microsoft products in a single endpoint, giving you a simplified experience for creating a single app with integrations across multiple Microsoft products.

Reach more customers by bringing apps for Dynamics 365 for Financials into Microsoft Appsource, the marketplace for Microsoft business apps. Dynamics 365 gives you rich functionality, a modern always up-to-date platform, and a set of great new development tools.

So just don’t wait and download the localization of your country and start exploring the new functionality and capabilities of the newly launched version of Microsoft Dynamics NAV 2018.
You can click here to download.
Here is the link to the PDF explaining the details of the new features

Enjoy !!




Thursday, 30 November 2017

Announcing Microsoft Dynamics NAV 2018!!

Hello, those of us that are familiar with Dynamics NAV, Microsoft usually releases a new version of NAV around this time of the year! As usual Microsoft has not disappointed. They will be releasing Dynamics NAV 2018 today.
Here is what we expect according to Dynamics NAV community.

The release date of Dynamics NAV 2018:
The wait is finally over and Marko Perisic announced in Madrid last week that we will have the publishedDynamics NAV 2018 on December 1st. 

Dynamics NAV 2018 and VS Code Extension v2:
Dynamics NAV 2018 will allow partners to use Visual Studio Code for Extensions v2. This will allow partners to get ready for new Dynamics NAV 2018 R2 version which will be released in spring of 2018. 

Same code two names: 
Dynamics NAV 2018 R2 and Dynamics 365 "Tenerife" will have the same codebase even though the names are totally different to each other which might change in near future. for more information follow this link



What's New in NAV 2018 - 

1. Ceridian payroll - Import payroll transaction files from Ceridian HR/Payroll in US and Ceridian Powerpay in CA by installing the Ceridian Payroll extension.

2. Quickbooks File Import
Import payroll transaction files in the Quickbooks IIF format by installing the Quickbooks Payroll File Import extension.

3. Integration API
Adding a REST API based on web services with easy-to-use authentication.The entities in the API can be used on their own or in combination with extensions when there is a need to add user interface elements or business logic Dynamics NAV.

The first iteration of the API publishes common record types, including company information, customer, vendor, employee, item (product), sales order, sales invoice, account, and journal.

4. Synchronize Vendors with Lexmark ICS
You can now take advantage of vendor synchronization when using Lexmark ICS. This will improve the vendor recognition rate in the Lexmark ICS and allow manual selection of vendors when performing visual training of new invoice layouts.

5. Personalize your workspace
With our upcoming personalization tool built directly into Dynamics NAV, all it takes is a few clicks to display the right data for your role and your business or optimize for data entry in the browser.

6. Preview and Print Reports
Invoices, tax reports, checks and balance sheets - our upcoming Report Preview feature will display all kinds of reports directly in Dynamics NAV without having to download as a file.
You will also be able to print directly from the browser.

7. Analyzing Financial Statements in Microsoft Excel
In the Business Manager and Accountant Role Centers, you can choose which financial statements to view in Excel from a drop-down menu in the Reports section of the ribbon. When you choose a statement, it will be opened in Excel or Excel Online. An add-in connects the data to Financials.

8. 3 Checks per Page
A new format has been created for check printing.  You now have the ability to print 3 checks per page to save paper and make check printing faster.


9. Full CRM Synchronization can be run in background

10. Submission of EC Sales List with more than 9999 lines

Sources - Oksana Kuzmina Blog.

What Developer need to focus -

  • Start using/learning visual studio code.
  • Start selling and usage of web client instead of windows client.  
  • Start using events & subscription & Events. 
Future is the cloud, VS Code, customization with events & web client. Here is in the video below from microsoft.
Source Saurav Dhyani blog

Wednesday, 22 November 2017

Dynamics NAV Document Posting in CSIDE/CAL

Hello there, as you work around in Dynamics NAV, there might be a time where you need to create and post for example a sales order in code. If you are new to Dynamics NAV, this might appear a daunting task. In the next few minutes, i will take you through the process. First a briefing.
Posting is the process where the system captures the information in the document and uses it to update the Sub Ledgers and General Ledger.
For example, if the sales order contains an item on the line. The system will update the item ledger entries, Vendor ledger entries, VAT account and Receivables Account. You can see the details when you navigate a customer ledger entry after posting.

All the posting in the system is achieved from Journals and that's the work of a document posting routine, to create journal entries which are posted to the various ledgers
So to post your sales order, simply create the document and call the posting routine. Posting routine reside in code units. Here is how it's done.

Note
I will assume you have already created a table to handle document data which you will then process into invoices using the posting routine.
I will also assume you have a page linked to the table above where users enter data and run the posting routine.

Your document posting routine should look like this

// SalesHeader is a record variable of table 36

//SalesLine is a record variable of table 37
//SalesPost is a codeunit variable of codeunit 80
//Invoices is a table where the document data is stored

SalesHeader.INIT; // Initializes the document & a document No. is given
        CLEAR(SalesHeader);

//Creating the invoice Document
        SalesHeader."Document Type" := SalesHeader."Document Type"::Invoice;
        SalesHeader.VALIDATE("Document Date",WORKDATE);
        SalesHeader.VALIDATE(SalesHeader."Posting Date",WORKDATE);
        SalesHeader.VALIDATE(SalesHeader."Sell-to Customer No.",Invoices."Student ID");

// This hides the dialog that prompts users to post
        SalesHeader.SetHideValidationDialog(TRUE);
        SalesHeader.VALIDATE(SalesHeader."Bill-to Customer No.",Invoices."Bill to No.");
        SalesHeader.VALIDATE(SalesHeader."VAT Bus. Posting Group",'DEFAULT');
        SalesHeader."Posting No. Series" := '';
        SalesHeader."Posting No." := 'TEST0001';// No for Sales header
             
        SalesHeader.INSERT(TRUE);// Inserts the record into Table 36
        // Creating the Sales Lines
        LineNo += 100000;
        SalesLine.INIT;
        CLEAR(SalesLine);
        SalesLine."Document Type"         := SalesLine."Document Type"::Invoice;
        SalesLine."Document No."          := SalesHeader."No.";
        PatientInvoiceNo                  := SalesHeader."No.";
        SalesLine."Line No."              := LineNo;
        SalesLine.VALIDATE("Sell-to Customer No.",SalesHeader."Sell-to Customer No.");
        SalesLine.VALIDATE(Type,Invoice.Type::"G/L Account");
        
        SalesLine.VALIDATE(Quantity,1);
        SalesLine.VALIDATE("Unit Price",Invoices.Price);// 
        SalesLine.VALIDATE(SalesLine."VAT Bus. Posting Group",'DEFAULT');
        SalesLine.VALIDATE(SalesLine."VAT Prod. Posting Group",'DEFAULT');
        SalesLine.INSERT(TRUE);

//Clears the posting codeUnit (80) of any data
        CLEAR(SalesPost);

// Runs the Document posting codeUnit 80 which posts the invoice document
        SalesPost.RUN(SalesHeader);// This call to the posting routine actually executes the posting


Good Luck