Real world functional programming

The first time I heard something concrete about functional programming was few years ago at a talk in Prague given by Tomáš Petříček. He also mentioned his book Real world functional programming there. It all sounded quite interesting and I told myself that I would look at the book at some time. It took quite …

Continue reading ‘Real world functional programming’ »

Real world functional programming

Poprvé jsem se něco konkrétnějšího o funkcionálním programovaní dozvěděl před pár lety v Praze na jedné z přednášek Tomáše Petříčka. Tam také zmínil svoji knihu Real world functional programming. Celé to znělo docela zajímavě a já jsem si řekl, že se na tu knížku někdy podívám. Chvilku mi to trvalo, ale nakonec se čas našel …

Continue reading ‘Real world functional programming’ »

Box class

I still see a lot of X++ developers calling the Box class in code that is used in database transactions. It may cause nasty problems – as I show in this post. Imagine code like this, used in some table: void delete() { if (Box::yesNo("Are you sure?", DialogButton::No) == DialogButton::Yes) { super(); } } When …

Continue reading ‘Box class’ »

Třída Box

Stále vídám X++ programátory, kteří volají třídu Box v kódu, který se používá v databázových transakcích. To může způsobit ošklivé problémy – jak ukážu v tomto příspěvku. Představte si takovýto kód, použitý na nějaké tabulce: void delete() { if (Box::yesNo("Are you sure?", DialogButton::No) == DialogButton::Yes) { super(); } } Při mazání záznamu se zpracování zastaví …

Continue reading ‘Třída Box’ »

ReceivedFault is not marked as serializable

Minulý týden jsem potřeboval použít v AX2009 jednu webovou službu poskytovanou třetí stranou. Vytvořil jsem referenci v AOT, takže AX vygenerovala potřebný kód a konfiguraci a já jsem byl okamžitě schopný získat data z webové služby. Skvělé. Ale nepsal bych o tom, pokud by to bylo všechno. Ta daná webová služba se bude používat interaktivně …

Continue reading ‘ReceivedFault is not marked as serializable’ »