Creating standard exceptions

One of things I really miss in X++ is any reasonable way to handle exceptions. AX doesn’t know exceptions as objects, it has only an enumeration type Exception and, morover, programmers should basically throw only Error, UpdateConflict and UpdateConflictNotRecovered explicitely, which effectively prevents any handling based on the type of exception. We can hardly do …

Continue reading ‘Creating standard exceptions’ »

Independent transaction in AX

Sometimes we need to write some data into a database independently on the currently running DB transaction. For example, we want to log some state occurred in the application, however any exception could cause a rollback of the whole transaction, including the log entry. It could look as follows: LogTable logTable; ; ttsbegin; logTable.Message = …

Continue reading ‘Independent transaction in AX’ »

MySQL Workbench

In pursuance of application design or an existing system analysis I sometimes need to draw entity-relationship diagrams. Diagrams are more illustrative than tables or word descriptions and they help especially with things involving relations (foreign keys, delete actions etc.) For this purpose I tried to find an easy to use piece of software with a …

Continue reading ‘MySQL Workbench’ »