Help an old dog learn new tricks

So I need to start understanding solution design for BC now, coming from a C/Side developer standpoint.  I think the biggest issue I'm having to get my head around not being able to modify standard codeunits.  I think I understand I can only use extensions / handles to add fields, code etc but what if I had a major customization in code unit 80 of an existing NAV 2018 client and wanted to replicate in BC - I.m guessing the answer is, you can't.  Which means I need to start thinking differently to designing solutions.  So my question is what tips have you guys got for me.  How should I be thinking now, what are the do's and don'ts for an old NAV developer.

Some specific questions:

Would you copy a standard codeunit into a custom codeunit and by-pass the standard one? (doesn't make sense to me).

Are there limitations to what we can develop within BC compared to NAV?  My feeling which I hope is wrong is that we are limited to adding fields and code to those fields and pages.

How are the ISV solution developers handling BC upgrades?  Are they finding things they cannot do?

If anyone is interested in having a chat please send me a message so we can chat



  • Hi Matt,

    As another old dog, then I understand you confusion. It's important that you understand that BC is NOT NAV. It's a completely different way of developing, than how we did it in Navision. You will face a lot of situations where things that were so easy before, now is impossible to do, or would take hours or even months waiting for MS to add a new event publisher. If you wanted to do something in codeunit 80, then the only way is through the published events.

    But you ask a lot of questions, which would take hours to answer fully.

    Instead let me recommend a YouTube video from NavTechDays which may help you get started: