Rozszerzanie Dynamics 365 Business Central za pomocą programowania w AL
By Mirko Peters ·
Ewolucja programowania w Dynamics 365 Przejście od starszego środowiska C/AL, znanego z wcześniejszych wersji Dynamics NAV, do nowoczesnego języka AL oznacza istotną zmianę w kierunku architektury chmurowej w pierwszej kolejności.
Automatically translated with AI from the original post. Read the English original
Ewolucja programowania w Dynamics 365
Przejście od starszego środowiska C/AL, znanego z wcześniejszych wersji Dynamics NAV, do nowoczesnego języka AL oznacza istotną zmianę w kierunku architektury opartej przede wszystkim na chmurze. Podczas gdy C/AL wymagał modyfikowania samego rdzenia systemu, dzisiejszy model opiera się na samodzielnych rozszerzeniach, które pozostają odizolowane od aplikacji bazowej. Dzięki temu aktualizacje nie psują niestandardowej logiki biznesowej.
Ta ewolucja to coś więcej niż nowa składnia. Integruje ona Business Central z szerszym ekosystemem Microsoft 365. Dzięki standardowym narzędziom, takim jak Visual Studio Code, architekci mogą teraz łączyć dane ERP bezpośrednio z Power Platform, Azure i Teams. Podcast M365 FM często pokazuje, jak ta łączność pozwala programistom budować zautomatyzowane przepływy pracy wykraczające poza statyczne tabele.
Deweloperzy w dużych organizacjach wybierają tę drogę, aby automatyzować złożone zadania bez długu technicznego, jaki niosą monolityczne modyfikacje. Dzięki AppSourceCop, który egzekwuje standardy jakości, oraz modularnemu modelowi rozszerzeń, zapewniającemu stabilność, firmy mogą szybko modernizować swoje procesy. Stosowanie tych praktyk sprawia, że Twoje niestandardowe rozwiązania pozostają skalowalne, bezpieczne i gotowe na przyszłe funkcje chmurowe.
Pierwsze kroki w programowaniu AL dla Business Central
Wartość dla nowoczesnych architektów chmury
Czy warto dziś poświęcić czas na naukę programowania w Microsoft Dynamics 365 Business Central? Zdecydowanie tak. Nauka tworzenia rozwiązań na tej platformie łączy tradycyjne zarządzanie ERP z nowoczesnym, opartym na AI ekosystemem Microsoft w chmurze. Ponieważ organizacje coraz częściej polegają na Business Central w automatyzacji złożonych procesów finansowych i operacyjnych, na wysokie zapotrzebowanie mogą liczyć programiści, którzy potrafią posługiwać się językiem AL oraz Power Platform.
Microsoft intensywnie inwestuje w agentowe AI oraz integracje Copilot w tej platformie, co oznacza, że Twoja wiedza będzie niezbędna do tworzenia kolejnej generacji inteligentnych aplikacji biznesowych. Podcast M365 FM to codzienne źródło dla profesjonalistów technicznych, którzy chcą być na bieżąco z szybkimi zmianami w chmurze. Oferuje spostrzeżenia, które pomagają architektom zastępować przestarzałe procesy i wzmacniać automatyzację bez kosztów tradycyjnych szkoleń. W przeciwieństwie do monolitycznych, odizolowanych środowisk ERP Business Central integruje się natywnie z szerszym stosem M365 oraz Azure, dzięki czemu Twoje prace programistyczne pozostają częścią spójnego, gotowego na potrzeby przedsiębiorstw ekosystemu.
Przejście na modułowe programowanie oparte na rozszerzeniach wymaga zmiany sposobu myślenia, ale zapewnia skalowalność potrzebną w nowoczesnych, dużych środowiskach biznesowych. Najlepsze praktyki coraz mocniej podkreślają czystszy kod dzięki właściwemu strukturyzowaniu obiektów i programowaniu zdarzeniowemu, dzięki czemu możesz uniknąć długu technicznego związanego ze starszymi, modyfikowanymi systemami. Budując kompetencje w tym obszarze, zyskujesz możliwość dostarczania realnych rezultatów łączących finanse, operacje i inteligencję w sposób, którego nie zapewni ogólne oprogramowanie do tworzenia aplikacji.
Podstawowe mechanizmy języka AL
Jaką rolę pełni język AL w rozszerzaniu Microsoft Dynamics 365 Business Central? AL (Application Language) jest podstawowym językiem programistycznym do tworzenia rozszerzeń w Microsoft Dynamics 365 Business Central, który umożliwia dostosowywanie funkcjonalności bez modyfikowania kodu bazowej aplikacji. Dzięki rozszerzeniu AL Language w Visual Studio Code programiści mają dostęp do zestawu narzędzi obejmującego podświetlanie składni, zintegrowane debugowanie oraz bezpośrednią kompilację do chmury Microsoft. Ta platforma wspiera tworzenie niestandardowych tabel, stron i złożonej logiki biznesowej, dzięki czemu Twoje modyfikacje pozostają modułowe i łatwe w utrzymaniu. Poza standardowym tworzeniem oprogramowania AL pozwala architektom integrować się z usługami zewnętrznymi i automatyzować przepływy pracy, stanowiąc kluczowe narzędzie do rozbudowy platformy. Osoby pracujące z potokami CI/CD mogą również korzystać z narzędzi AL za pośrednictwem narzędzi programistycznych opartych na .NET, aby usprawnić pakowanie i wdrażanie poza lokalnym edytorem.
Budowanie z wykorzystaniem architektury opartej na obiektach
U podstaw systemu leży architektura oparta na obiektach, w której każdy komponent pełni określoną funkcję. Schemat danych definiujesz za pomocą obiektów Table, interfejs użytkownika tworzysz za pomocą obiektów Page, złożoną logikę biznesową zamykasz w obiektach Codeunit, a prezentację danych zarządzasz za pomocą obiektów Report. Dzięki rozszerzeniom tabel (Table Extensions) i rozszerzeniom stron (Page Extensions) możesz dodawać pola lub nadpisywać funkcjonalność bez bezpośredniej ingerencji w kod podstawowej aplikacji, co zapewnia, że Twoje zmiany pozostają odizolowane i w pełni zgodne z przyszłymi aktualizacjami platformy.
Siła programowania sterowanego zdarzeniami
Nowoczesne programowanie odchodzi od monolitycznych modyfikacji na rzecz modelu sterowanego zdarzeniami. Zamiast wpisywać zmiany na stałe w kodzie, subskrybujesz standardowe zdarzenia systemowe, aby uruchamiać własną logikę w określonych punktach cyklu życia aplikacji. Takie nieinwazyjne podejście oddziela Twoje dostosowania od głównej aplikacji, ułatwiając czystsze aktualizacje i stabilniejsze działanie w całym środowisku.
Pakowanie i zarządzanie manifestem
Gdy kod jest gotowy, system łączy obiekty w jeden plik .app przeznaczony do wdrożenia. Pakiet ten opiera się na pliku manifestu app.json, który pełni rolę tożsamości rozszerzenia, określając wydawcę, wersję oraz wymagane zależności. Poprawne utrzymywanie tych metadanych jest kluczowe przy zarządzaniu złożonymi rozwiązaniami, zwłaszcza gdy trzeba koordynować współdziałanie wielu rozszerzeń funkcjonalnych w ramach jednej dzierżawy.
Pierwsze kroki z Visual Studio Code

Aby rozpocząć pracę nad rozwiązaniami AL dla Business Central, zainstaluj Visual Studio Code oraz oficjalne rozszerzenie AL Language z Marketplace. Po konfiguracji otwórz paletę poleceń skrótem Ctrl+Shift+P (lub Cmd+Shift+P na Macu) i uruchom polecenie AL: Go!. Tworzy ono strukturę projektu, w tym niezbędne pliki konfiguracyjne app.json i launch.json. Wybierz środowisko docelowe, zazwyczaj sandbox Business Central, i po wyświetleniu monitu uwierzytelnij się swoimi danymi logowania. Polecenie automatycznie generuje przykładowy projekt, dzięki czemu klawiszem Ctrl+F5 możesz od razu skompilować, wdrożyć i sprawdzić rozszerzenie w swojej dzierżawie. Bardziej zaawansowana konfiguracja lub złożone procesy deweloperskie są opisane w obszernej dokumentacji Microsoft Learn.
Konfigurowanie środowiska deweloperskiego
Sprawna praca w tym środowisku wymaga stabilnego połączenia z sandboxem. Zanim zaczniesz pisać funkcjonalny kod, wykonaj polecenie AL: Download Symbols, aby pobrać z konkretnej instancji Business Central niezbędne odwołania do obiektów. Dzięki temu lokalne środowisko dysponuje kontekstem wymaganym przez IntelliSense i walidację kompilatora.
- Użyj pliku manifestu app.json, aby zdefiniować tożsamość rozszerzenia, w tym wydawcę, wersję i zależności.
- Zaktualizuj plik launch.json, wpisując unikalny adres URL sandboxa i identyfikator dzierżawy, aby wdrożenia przebiegały bez zakłóceń.
- Korzystaj z Ctrl+Spacja podczas pisania kodu, aby uzyskać inteligentne uzupełnianie, i używaj wbudowanej diagnostyki kompilatora, by wcześnie wychwytywać błędy.
- Organizuj kod według zasady jeden obiekt w jednym pliku, aby projekt pozostał łatwy w utrzymaniu w miarę jego rozwoju.
W przeciwieństwie do sztywnych, monolitycznych struktur starszych środowisk NAV, ten nowoczesny sposób pracy pozwala szybko iterować. Przestrzeganie dobrych praktyk pisania kodu AL, dotyczących konwencji nazewniczych i wcięć, pozwoli uniknąć znacznego długu technologicznego, gdy w przyszłości wdrożysz swoją pracę na środowisko produkcyjne.
Dobre praktyki dla skalowalnych rozszerzeń
Aby środowisko Business Central było skalowalne i łatwe w utrzymaniu, stosuj architekturę modułową: dziel funkcjonalność na odrębne, niezależne rozszerzenia zamiast budować monolityczne bloki. Gdy organizujesz kod według domeny funkcjonalnej, na przykład oddzielając specjalistyczną logikę podatkową od standardowych procesów sprzedaży, poprawiasz zarówno łatwość utrzymania, jak i zarządzanie wdrożeniami.
Ustandaryzuj cykl życia tworzenia rozwiązań, stosując oficjalne dobre praktyki pisania kodu AL, aby zapewnić długoterminową interoperacyjność. Obejmuje to przejrzyste konwencje nazewnicze, na przykład 'PageExt' dla rozszerzeń stron i 'Codeunit' dla obiektów z rozbudowaną logiką, a także konsekwentne stosowanie zasady jeden obiekt w jednym pliku. Zmienne i pola zapisuj zawsze w PascalCase, a wcięcia oraz umieszczanie nawiasów klamrowych utrzymuj spójnie w całym zespole.
Zarządzanie zależnościami i strukturą plików
Właściwa struktura projektu jest kluczowa w dużych rozwiązaniach. Uporządkuj pliki w logiczne podfoldery, takie jak \src i \test, i upewnij się, że manifest app.json jednoznacznie określa zależności między aplikacjami funkcjonalnymi. Jawne zdefiniowanie tych relacji zapobiega konfliktom i pozwala systemowi płynnie zarządzać integracją wielu rozszerzeń w miarę rozwoju platformy.
- Używaj codeunitów narzędziowych, aby oddzielić logikę biznesową od obiektów stron i tabel silnie związanych z interfejsem użytkownika.
- Odwołuj się do obiektów po ich unikalnych nazwach, a nie identyfikatorach, aby poprawić czytelność kodu.
- Do przechowywania danych wrażliwych zamiast własnych tabel zastosuj mechanizm 'IsolatedStorage', co zwiększy bezpieczeństwo.
- Użyj Git do kontroli wersji, aby efektywnie zarządzać złożonymi projektami.
Integracja AI i agentów Copilot
Czy Dynamics 365 Business Central integruje funkcje sztucznej inteligencji? Tak, Dynamics 365 Business Central w pełni integruje możliwości oparte na AI, w tym Copilot oraz autonomiczne agenty zaprojektowane tak, aby usprawniać przepływy pracy i automatyzować powtarzalne zadania. Copilot działa jako asystent współpracy, oferując funkcje takie jak czat w języku naturalnym do wyszukiwania danych, wsparcie analityczne do przekształcania danych z list oraz automatyczne podsumowywanie rekordów, dzięki którym użytkownicy mogą działać szybciej.
Poza standardowymi funkcjami Copilot można wdrażać autonomiczne agenty, które samodzielnie obsługują trwające procesy, na przykład przetwarzanie faktur lub generowanie zamówień. Te narzędzia AI są dostępne bez dodatkowych opłat i działają w chmurze Microsoft, zapewniając zgodność z istniejącymi uprawnieniami do danych, zabezpieczeniami i wymogami prywatności. Podczas gdy inne platformy często wymagają złożonych rozwiązań firm trzecich, aby uzyskać takie możliwości, ta natywna integracja pozwala zachować bezpieczeństwo danych w granicach dzierżawy.
Administratorzy zachowują pełną kontrolę i mogą audytować, konfigurować lub wyłączać poszczególne możliwości AI bezpośrednio w środowisku Business Central. Podczas tworzenia własnych rozwiązań zintegrowanych z Copilot deweloperzy mogą korzystać ze specjalistycznych szablonów projektów, używając skrótu Alt+A, a następnie Alt+P w Visual Studio Code. Taki przepływ pracy gwarantuje, że Twoje niestandardowe agenty spełniają te same rygorystyczne najlepsze praktyki co standardowe rozszerzenia AL, co pozwala zachować stabilność systemu w całej organizacji.
Certyfikacja i rozwój zawodowy
Rozwój kariery dewelopera wymaga czegoś więcej niż praktycznego kodowania. Microsoft udostępnia ustrukturyzowane ścieżki nauki, które prowadzą od wstępnej konfiguracji środowiska do wdrażania złożonych rozszerzeń. Zasoby te stanowią podstawę do opanowania AL i integracji z platformą.
Jakie zasoby są zalecane, aby zdobyć certyfikat dewelopera Business Central?
Aby zdobyć certyfikat Dynamics 365 Business Central Developer Associate, zacznij od ustrukturyzowanych ścieżek nauki w Microsoft Learn, które oferują dedykowane moduły dotyczące programowania w AL, konfiguracji środowiska i integracji z platformą. Uzupełnij samodzielną naukę oficjalnymi szkoleniami prowadzonymi przez instruktora, aby zdobyć praktyczne doświadczenie w środowisku zajęć. Przed zaplanowaniem egzaminu skorzystaj z testów praktycznych w Microsoft Learn, aby ocenić swoją gotowość i zidentyfikować konkretne luki w wiedzy. Polecamy także zapoznanie się z Exam Sandbox, aby oswoić się z interfejsem i formatami pytań. Na koniec nawiąż kontakt ze społecznością Dynamics 365, aby poznawać innych specjalistów i być na bieżąco z najnowszymi zmianami w produkcie oraz najlepszymi praktykami technicznymi.
Poza egzaminami certyfikacyjnymi utrzymanie wysokiej jakości kodu ma kluczowe znaczenie dla długofalowego rozwoju. Użyj narzędzia AppSourceCopBC-Bench, aby obiektywnie zmierzyć ich skuteczność w zadaniach z rzeczywistego świata. Opanowanie tych narzędzi tworzonych przez społeczność pokazuje duże zaangażowanie w budowanie skalowalnych i solidnych aplikacji biznesowych.
Tworzenie przyszłości aplikacji biznesowych
Przejście od monolitycznych systemów legacy do modularnych rozwiązań w języku AL to przełomowy krok dla każdego specjalisty IT. Przyjmując tę architekturę, pamiętaj, że Twój rozwój zależy od aktywnego udziału w społeczności i ciągłego uczenia się.
Stosując najlepsze praktyki i zachowując ciekawość wobec zmieniających się narzędzi, zyskujesz szansę na przewodzenie w ekosystemie chmury Microsoft. Przyszłość aplikacji biznesowych jest w Twoich rękach.