Eons ago, Microsoft published official technical training courses for Dynamics NAV. It was titled "C/SIDE Solution Development" with study case creating a Seminar Management Module for Dynamics NAV 2013.
Nowadays, of course, that training is very outdated and is no longer applicable to be used.
This application is intended to reimplement that training courses as close as possible using Extension and AL Language, along with some improvements from latest BC.
Each chapter will be divided into branches. Main/Master branch always provide the most complete source code.
These are the list that currently (hopefully) will be added to the solution
- (Basic) Approval integration to seminar registration
- Reverse posting/Cancel seminar registration
- Free pick which seminar ledger entries that will be invoiced instead of just a report along
- Add remaining unbilled amount to seminar ledger entries incase of participants is invoiced partially (non sense, but just for fun)
- And also, adds billed amount and paid amount to seminar ledger entries - these amount is normally shown in reports
You may find my codes little different, there are some codes optimization and tidy up here and there, compared to the original Dynamics NAV 2013 C/AL source code. There are so many changes happened between NAV 2013 and Business Central (currently at BC 17.x a.k.a. 2020 wave 2).
These are some different that you might want to keep in mind:
- Reduced nested IF..THEN whenever possible (more defensive programming)
- The use of ISEMPTY instead of FINDFIRST if it's applicable
- Updated codes from latest BC 17, if there are any
- Avoidance of FlowField in Name field whenever possible
- Updated fields' length from latest BC 17 (eg. Name are lengthen to 100 now)
- Of course the use of Enum instead of Option
- Of course (again), due to new regulation, every "with" statements are out
- Point #7, every single pages now requires to prefix "Rec." whenever referring to table's fields or functions
- And more, I will post them whenever I remember