Thursday, February 28, 2019

MSDYN365BC - Futuristic CAL Development - Summary.


Hi Readers,

I hope you all are following this series and learned something new with this series.

If you haven't read any article in this series then Please
Refer Table of Index.

First, I thank you for all your suggestions, comments and Questions. Your engagement with this series kept me motivated to keep writing about this. I am always open to your suggestion about articles that you would like to see in this blog. Use Contact Us Page and let me know your suggestions for future Post.


Consider this series as the first step toward moving to Future even coding in CAL.

To Summarize -


  • To Start with If anyone did not understand is that everyone needs to upgrade today at least to NAV 2016. I would argue that you should at least upgrade to NAV 2018 or Business Central on Prem.


  • If you as the customer is not planning to upgrade sooner then we need to make sure that all customization is done going forward partner developers should use HOOKS.


  • We as partners should start looking at customs that we have done for our customers where we have done changes which are "Anti-Patterns". If there are "Anti-Patterns" we should try to rewrite in a way that its future ready.


  • Whatever version our customers are using, we should not modify anything that comes with the Base Product. For all customs that we would require to fulfill customer requirements should be using HOOKS / Event.

  • We call it "Detangling the Hairball", which will become a blocker for the customer if we don't logically break our code into features so that they can become extensions in the future. "Detangling the Hairball" - is when you don't know what customs are there and which custom changes can be grouped together as logical extensions.


  • While Creating HOOKS don't create based on your requirements!. Try to Keep HOOK as close as it exists as an Event in Future, which will save effort in the future.


  • As developer always keep the latest version (with latest CU) accessible to refer and see all new events added in the product.


  • Always do - Test Driven Development!. Its the futuristic way of development all code segment should come with all testing scenario and possibly Test cases.

  • The limited modification is allowed in Table and Pages. All other objects are not allowed to be modified in the future.


If you want to download the NAV Modified Objects that we developed in this series then clone or download using the Github link, as shown below.

** It contains Base objects and modified objects for comparing (if required)


Next series we will talk about What is the benefit of using Futuristic C/AL and why should we consider this approach while writing our code.

If you have any other thoughts about the next series before I think of it please share that via Contact Us Form. I will try my best to have a series for your suggestion.

Stay Tuned for more and please add comments if any questions/suggestions.

Regards,
Saurav Dhyani
https://saurav-nav.blogspot.com

2 comments:

  1. Hello Saurav,do we have any info on Indian localization for Business Central, any of indian partner working on it,Can you please help me with some info if you can provide. Thanks in advance.

    ReplyDelete
    Replies
    1. I dont have any Idea Madhu as i dont work with Indian customers.
      You can reach out to Microsoft to identify plan and about partner who is working on it or not.

      Delete