Anveo Web Portal / Instalacja / Logika biznesowa w tabelach
Jest to tłumaczenie automatyczne. Pierwotne stanowisko jest dostępne w angielski.

Logika biznesowa w tabelach

Ze względu na techniczną strukturę publikowania tabel za pośrednictwem Anveo Pages konieczne jest, aby cała logika biznesowa znajdowała się w tabelach i codeunits, a nie w formularzach/stronach. Pod względem koncepcyjnym, jest to czystsze od samego początku, ponieważ tabela musi się sprawdzić pod kątem spójności strukturalnych, ponieważ codeunits są przewidziane do pracy z procesami biznesowymi, a formularze/strony reprezentują jedynie dane wejściowe/wyjściowe dotyczące użytkownika aplikacji.

W rezultacie, przy publikowaniu tabeli należy sprawdzić, czy obliczenia lub testy znajdują się w odpowiedniku – formularzu/stronie w programie Microsoft Dynamics 365 Business Central Client – które mają być przeniesione do tabeli.

xRec i CurrFieldNo

xRec jest używany w wielu funkcjach tabelarycznych w ramach Microsoft Dynamics 365 Business Central i reprezentuje rekord przed modyfikacją. xRec może być użyty w wyzwalaczu OnValidate do sprawdzenia, czy pole rzeczywiście się zmieniło, na przykład w wyzwalaczu OnValidate dla tabeli Klienta.

Kod źródłowy wyzwalacza OnValidate pola nr. w ramach tabeli Klient

Jednakże, xRec jest dostępny tylko wtedy, gdy wejście odbywa się poprzez formularz/stronę. Brak xRec w przypadku funkcji w tabelach i codeunits jest ograniczeniem ze strony Microsoft Dynamics 365 Business Central, które nie jest widoczne przy korzystaniu z Microsoft Dynamics 365 Business Central Client, ponieważ dane są tam modyfikowane wyłącznie poprzez formularze i strony, a strony te oferują xRec automatycznie. Bez xRec, kod pokazany powyżej nie będzie działał poprawnie.

Anveo Client Suite udostępnia funkcję GetxRec w codeunit ACF Management, dzięki czemu Anveo Client Suite ustawia również poprawnie xRec i CurrFieldNo. W aplikacji podstawowej Anveo Client Framework znajduje się szablon funkcji GetxRec oraz przykładowy kod do poprawnej aktywacji. Postępuj jak pokazano poniżej, tak aby xRec i CurrFieldNo były dostępne dla Ciebie dla Twoich tabel:

  • Utwórz w swojej tabeli funkcję GetxRec z następującymi parametrami:
  • Dodaj do funkcji GetxRec następujący kod:
  • Dodać następujący kod na początku wszystkich wyzwalaczy tabelarycznych, które używają xRec lub CurrFieldNo:

Wykonanie kodu jest kompatybilne z klientem Classic, Role Tailored Client i klientem Windows Microsoft Dynamics NAV. Ponieważ kod działa na wszystkich klientach, nie jest konieczne osobne rozróżnienie przypadków. Wywołanie tej funkcji może być wykonywane przez każdą tabelę w systemie tak często, tylko pierwsze wywołanie przy użyciu Anveo Client Suite zwraca odpowiednio xRec i CurrFieldNo.