Skip to main content

Microsoft Dynamics NAV 2016 Extensions - Develop Extension Part 1.

Hi All,

Recap - "We understand Concept of Extension Using an Example of Shipping of Jet Report Solutions."

If you are not following the Extension Series Then Refer the Table of Contents For Extensions.

In This Article Series We will see How to Create Extension. Let's see What Microsoft Says About Developing Extensions. Below Image is What Microsoft Says.



If you don't understand the Image, don't worry We will discuss all in this article.

** Assumption - For The Extension Demo I am Using Microsoft Dynamics NAV 2016 W1 Initial Build. There are Some Issues Related to Extensions In Cumulative Update 2.
If you want to Follow the Steps then Please Install Initial Build of Microsoft Dynamics NAV 2016.



Pre-Requisites - (Please Use Same Names If you want to Practice with Me)

> Restore two Microsoft Dynamics NAV 2016 W1 Initial Release Database, named That as Extension_Demo1 & Extension_Demo2.

> Map Two Services to Respective Database With Name as ExtensionDemo1 & ExtensionDemo2.

Consider An Example My Customer Require an Customization As Below -

> Require Possibility To Cancel Purchase Order (Delete) with Below Conditions -
 1. Only Purchase Order Which are Not Received or Invoiced can be cancelled.
 2. Before Cancel Archive Purchase Order.
 3. Archive Purchased Order Should have a Boolean Cancelled set to True With Cancelled By As User ID.
 4. Only Selected Users can Cancel Purchase Orders.
 5. Cancel Purchase Order can only be activated/deactivated From Setup.

So For Above Requirements I have Customized Below Objects.


In Purchase Header & Purchase Header Archive Tables I have Added Two Fields -



In User Setup and Purchases & Payables Setup Tables I have Added One Field -


Added Actions On Purchase Header Pages For Calling the Customized Code -



** Remember While Trying to use Extensions You cannot write Customized Code in Old Approach. You Need to use Events and Subscriptions for Using Extensions.

All my Events and Subscription are placed in Codeunit 70000 Purchase Cancel Events.

When User Clicked on the Actions in Purchase Order Pages
1) Then On Run Trigger Get Called Which Validate the Field Cancelled in Purchase Header Table.

2) In the Same Codeunit There is a Subscriber Which Subscribe The OnBeforeValidateEvent Of Cancelled Field in Purchase Header Table, as shown Below -



In the Next Article we will see how we can pack this customization as Extension & Deploy it on Customer Environment.

Till we Discuss Next Article You Can download the Objects from SkyDrive and Test the Customization on Extension_Demo1 Database (NAV 2016 W1 Initial Release).

SKYDRIVE LINK 

File Name - Microsoft Dynamics NAV 2016 - Extensions Demo (Part 1 Objects)

Regards,
+saurav dhyani
saurav-nav.blogspot.com

Comments

Popular posts from this blog

BC 21 and Higher - PowerShell Cmdlet (Replacement of Business Central Administration).

Hi Readers, As discussed in last article about deprecating of Business Central Administration, there are few common actions that we use in administration till Business Central 20. For our on-prem customers, we will still require doing activities. As Microsoft suggest we need to start using PowerShell cmdlet.    Let's see how to do those via PowerShell, or Administration Shell. I will be keep adding commands as you comment to this article.

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 - 

MSDYN365BC - Data Upgrade To Microsoft Dynamics 365 Business Central on premises.

Hi Readers, We have already talked about the number of steps for upgrading to Business Central on Premises from different NAV versions. After that article, I received multiple requests for an article which list down steps for Data Migration. In this article, we will discuss steps of data migration to MSDYN365BC (on-Prem) from NAV 2017. For this article, I am considering a Cronus Demo Database without any customization. For an actual upgrade project, we will have to complete object merge using compare and Merge process. After the Merge Process, the next step is data migration. Let's discuss those steps. Direct Upgrade to Microsoft Dynamics 365 Business Central (on-Prem) is from following versions - 1. NAV 2015. 2. NAV 2016. 3. NAV 2017. 4. NAV 2018.