Przejdź do treści

Metody obiektów biznesowych

Metoda - to kod w C# pisany przez dewelopera w NEOS Expert. Można w nim korzystać ze standardowych bibliotek .net oraz API udostępnianego przez serwer. Jest kompilowana przez serwer do metody w bibliotece dll. Każdy projekt otrzymuje własną bibliotekę dll, a każdy obiekt - swoją własną klasę w tej bibliotece.

Zastosowanie metod

Metody piszemy po to, aby zbudować w aplikacji logikę biznesową lub logikę działania interfejsów użytkownika. Metody redaguje się w osobnym oknie, do którego wchodzi się przyciskiem "z zębatką" okna NEOS Expert lub też kontekstowo z miejsca, gdzie dana metoda jest przypięta. Aby metoda mogła zadziałać musi być podpięta gdzieś w definicji aplikacji. Najczęściej wykorzystuje się metody wykonawcze akcji - takie metody uruchamiane są wtedy, kiedy użytkownik wywoła daną akcję i ich zadaniem jest realizacja funkcjonalności biznesowej akcji. Metoda może robić wszystko, w ramach dostępnego API i nie zwraca żadnej wartości. Oprócz tego tworzy się metody przeznaczone do sterowania zachowaniem i wyglądem konkretnych, pojedynczych elementów aplikacji. Takie metody podpina się do elementu, którym ma sterować. Metoda nie powinna wywoływać żadnych funkcji przeznaczonych do interakcji z użytkownikiem, a jedynie obliczać i zwracać wynik wykorzystywany do sterowania elementem, do którego jest podpięta. Przykład: jeśli mamy na formie panel którego etykieta powinna być zmienna i zależeć od pola NAZWA z bieżącego rekordu tworzymy metodę na etykietę tego panelu i piszemy w niej kod:

return Jakis tekst  + NAZWA +  inny tekst.;

Serwer wykrywa automatycznie od jakich pól bieżącego obiektu oraz parametrów zależy ta metoda i wywołuje ją jedynie wtedy, kiedy wartość pola się zmieniła. Deweloper nie może więc przewidzieć kiedy dokładnie i jak często taka metoda zostanie wywołana. Jeśli metoda nie będzie zależeć od żadnego pola to zostanie uruchomiona jednorazowo po otwarciu okna. Dopóki metoda nie zostanie wywołana, obowiązuje taka wartość elementu, jaką pierwotnie ustawiono w definicji okna. Dla powyższego przykładu będzie to etykieta panelu ustawiona w definicji okna. Metoda nie może zależeć od pól innego obiektu, niż tego w ramach którego zdefiniowano metodę, ale może zależeć od parametrów własnego obiektu - czyli pól nie związanych z danymi rekordu. W ten sposób - dzięki parametrom - można sterować wyglądem i działaniem formy.

Powiązane artykuły

Działanie metod

Aby serwer mógł wykonać kod metody, musi ją najpierw skompilować. Serwer generuje jeden plik C# dla całego projektu i kompiluje go do biblioteki dll, która jest następnie dynamicznie ładowana do serwera. Każdy obiekt otrzymuje własną klasę, której nazwa pochodzi z nazwy obiektu a przestrzeń nazw z nazwy projektu. Wszystkie pola obiektu odzwierciedlone są jako właściwości klasy, a więc można z nich odczytywać wartości pól bieżącego rekordu oraz zapisywać, o ile rekord jest w trybie edycji. Można także zapisywać i odczytywać parametry obiektu.

Dziedziczenie standardowych metod

Część metod klasy CustomObject można bardzo łatwo dziedziczyć. Więcej o tym jak dziedziczyć i do czego służą pooszczególne metody znajdziesz w tym artykule dziedziczenie standardowych metod.