Try..Catch for .NET Interoperability

While it may be a cold day in hell before we see any TRY..CATCH constructs in pure C/AL, we are all far more lucky when it comes to .NET interoperability. In this blog post I’ll (re)present the same concept I demonstrated during NAV TechDays 2013 last year in Antwerp, because I am quite sure this nifty little trick got lost under piles of other posts on this blog.

So, let’s learn how to do try..catch..finally for .NET interoperability C/AL code, using mostly C/AL code.

(more…)

Continue Reading Try..Catch for .NET Interoperability

Adding a ControlAddInReady event to custom controls

When interacting with custom controls on your pages from C/AL, you must be absolutely sure that the control has been instantiated. If it is not, you’ll get an error such as this:

image

The reason why this happens is that C/AL code gets to execute before the page has been rendered, and thus also before the custom controls have been instantiated.

(more…)

Continue Reading Adding a ControlAddInReady event to custom controls

C/AL rollback without error

If you want to rollback the database changes, but do not want the code execution to end, simply call ASSERTERROR ERROR(''); The ERROR('') will quietly rollback the data changes, and…

Continue Reading C/AL rollback without error