Materiály k AX2012

Před pár dny se PartnerSource objevily tréninkové materiály k Dynamics AX 2012. Konečně nějaká aktivita! Ale mfp, který byl nucen stáhnout videa o AX2012 ze svého blogu, zřejmě stále nedostal povolení je tam vrátit. PartnerSource odkazy jsou zde: Development Implementation Finance, PA, Case Mgmt., HRM and Public Sector Supply Chain Management and Manufacturing Local Functionality

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’ »

Vytváření standardních výjimek

Jedna z věcí, které mi v X++ nejvíce chybí, je alespoň trochu rozumná práce s výjimkami. Dynamics AX nezná objekty výjimek, má jen výčtový typ Exception a navíc by programátoři měli explicitně vyhazovat v podstatě jen Error, UpdateConflict a UpdateConflictNotRecovered, což efektivně znemožňuje zpracovávat chyby na základě jejich typu. S vlastnostmi X++ těžko něco uděláme, …

Continue reading ‘Vytváření standardních výjimek’ »

Nezávislá transakce v AX

Někdy je potřeba zapsat data do databáze nezávisle na aktuálně běžící transakci. Například chceme zalogovat nějaký stav, ke kterému v aplikaci došlo, ale případná výjimka by měla za následek zrušení celé transakce, včetně onoho zápisu do logu. Mohlo by to vypadat následovně: LogTable logTable; ; ttsbegin; logTable.Message = "Něco se stalo"; logTable.insert(); //nějaký následný kód …

Continue reading ‘Nezávislá transakce v AX’ »

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’ »