Pomimo, że nowym produktem jest już Dynamics AX 2012, często użytkownicy końcowi starszych instancji systemu w wersji 2009 mają problem z "zawieszaniem" się systemu przy otwieraniu formularzy lub raportów. Zwisy pojawiają się przy obciążonym serwerze bazy danych i po części mogą wynikać z zapisywania informacji do "Dziennika użycia elementu", który znajduje się w tabeli SysUtilElementsLog.
W zasadzie informacje o użyciu formularzy mogą stanowić źródło informacji statystycznych np. dla projektantów systemu (raport Administracja => Raporty => System => Dziennik użycia elementu), ale w wersji produkcyjnej moim zdaniem jest wielce nieefektywne zapisywać liczniki uruchomień formularzy, szczególnie jeśli konstrukcja AX wymusza często korzystanie z wielu okien.
Jak sobie poradzić z tym problemem i jak przyśpieszyć system? Przełączyć właściwość Temporary na Yes. Spowoduje to, że tabela będzie tymczasowa i nie będzie "zapychała" serwera bazy danych niepotrzebnymi insertami lub update'ami i może przynieść chociażby minimalną ulgę ciężko eksploatowanym systemom :)
Uwaga! Zanim zdecydujesz się włączyć tryb tymczasowy na środowisku produkcyjnym przetestuj rozwiązanie w środowisku testowym.
DEV Index
dynamics AX, flex, php, c#, oracle apex
"Niektórzy ludzie, kiedy napotkają problem, myślą: 'Wiem, użyję wyrażeń regularnych'.
I teraz mają dwa problemy."
Jamie Zawinski
I teraz mają dwa problemy."
Jamie Zawinski
poniedziałek, 12 sierpnia 2013
piątek, 10 grudnia 2010
Dynamics AX: Czytnik RSS
Kolejnym artykułem postanowiłem się podzielić z Wami, kiedy natknąłem się na swój przykład prostej aplikacji z czasów nauki programowania w Dynamics AX :) Aplikacja ta jest prostym czytnikiem kanałów RSS. Przykład w środowiskach AX może niepraktyczny, ale pomimo to można wykonać np. wyświetlanie najważniejszych informacji firmowych czy agregację najświeższych wiadomości ze świata biznesu. Dla Pani Kazi z księgowości można wyświetlać wiadomości o nowych przepisach ze świata finansów czy podatkach z portali branżowych, a także aktualne kursy walut ... Zastosowań jak się okazuje może być mnóstwo i jest to "bajer", który może być wielu użytkownikom przydatny.
Cała aplikacja zbudowana będzie z jednej tabeli i dwóch formularzy.
Cała aplikacja zbudowana będzie z jednej tabeli i dwóch formularzy.
czwartek, 2 grudnia 2010
Dynamics AX: Walidacja NIP
W kolejnym artykule dotyczącym systemu Dynamics AX (Axapta) postaram przedstawić budowę brakującej cegiełki systemu w lokalizacji polskiej. Jakież było moje zdziwienie, kiedy zobaczyłem, że w systemie ERP sprzedawanym na polskim rynku nie ma walidacji podstawowego numeru wykorzystywanego w celu identyfikacji podatkowej - NIP.
wtorek, 30 listopada 2010
Dynamics AX: Mapa Google do sprawdzania lokalizacji odbiorców - tutorial cz. 2
W drugiej części tutoriala pokażę, jak zintegrować komponent Flash z systemem Microsoft Dynamics AX (przykład zademonstruję na wersji 4.0, ale z powodzeniem można go zastosować do nowszych wersji).
Jeśli pominąłeś część pierwszą, a chcesz zacząć od początku to zapraszam tutaj.
Jeśli pominąłeś część pierwszą, a chcesz zacząć od początku to zapraszam tutaj.
Etykiety:
action script,
axapta,
Dynamics AX,
flash,
flex,
GIS,
X++
piątek, 26 listopada 2010
Dynamics AX: Mapa Google do sprawdzania lokalizacji odbiorców - tutorial cz. 1
W tym artykule pokażę jak zintegrować system Microsoft Dynamics AX z mapą Google na przykładzie lokalizacji odbiorców. W części pierwszej opisana zostanie część jaką należy wykonać, aby stworzyć aplikację w technologii Flex / Flash, w drugiej natomiast zajmiemy się integracją tej aplikacji w systemie Dynamics AX.
Etykiety:
action script,
axapta,
Dynamics AX,
flash,
flex,
GIS,
google API,
google maps,
X++
Dynamics AX: Debugowanie metody clicked
Wielu programistów X++ myśli, że nie jest możliwe debugowanie metod zdarzeniowych np. w metodach clicked. Są w błędzie :) Dzięki koledze Michałowi Lisowskiemu dowiedziałem się, że jednak jest to wykonalne:
Dzięki słowu kluczowemu "breakpoint" jest uruchamiany debugger.
Tematycznie polecam:
void clicked() { breakpoint; // ... action }
Dzięki słowu kluczowemu "breakpoint" jest uruchamiany debugger.
Tematycznie polecam:
Etykiety:
axapta,
breakpoint,
clicked,
debugger,
Dynamics AX,
X++
Dynamics AX: Odczytywanie separatora dziesiętnego
W kolejnym poście, tym razem krótkim, przedstawię jak pobrać separator dziesiętny z ustawień systemowych. Często przy imporcie/eksporcie plików CSV lub XLS występuje problem odpowiedniej konwersji liczb typu real. Oto kod, który za pomocą klas .NET wyciąga separator:
Zmienną systemDecimalSeparator możemy użyć do konwersji przed zapisem lub odczytem liczb w plikach tekstowych lub w Excelu.
System.Globalization.CultureInfo ci = System.Globalization.CultureInfo::get_CurrentCulture(); System.Globalization.NumberFormatInfo ni; str systemDecimalSeparator ; ni = ci.get_NumberFormat(); systemDecimalSeparator = any2str(CLRInterop::getAnyTypeForObject(ni.get_CurrencyDecimalSeparator()));
Zmienną systemDecimalSeparator możemy użyć do konwersji przed zapisem lub odczytem liczb w plikach tekstowych lub w Excelu.
Etykiety:
.NET,
axapta,
CSV,
CultureInfo,
Dynamics AX,
EXCEL,
NumberFormatInfo,
separator dziesiętny,
X++,
XLS
Subskrybuj:
Posty (Atom)