TECHNISCHER BLOG

.net & Dynamics BC06 Nov2019

Kategorie: Installation Tags: .net, installation

Business Central, AL, Visual Studio Code and .NET Interoperabilität

In diesem Artikel zeigen wir, welche Einstellungen und Schritte vorgenommen werden sollten, um die .net Interoperability in Dynamics 365 Business Central (früher Navision) benutzen zu können. .NET Interoperabilität ist nur in On-Premise Version vorhanden. Cloud Versionen bleiben außerhalb dieses Artikels.

  1. Im ersten Schritt muss die app.json Datei ergänzt werden um einen Parameter, der zeigt, es ist eine On-Premise Installation. "target": "OnPrem"

Visual Studio Code - Dynamics 365 Business Central (Navision) Einrichtung für OnPrem .NET Interoperabilität

  1. Im nächsten Schritt müssen wir den Compiler informieren, wo alle DLL-Bibliotheken gespeichert werden. Der Compiler weiß standardmäßig nur, wo die mscorlib Assembly gesucht werden sollte. Der Pfad kann mit einer Command "al.assemblyProbingPaths" definiert werden. Die Einrichtung wird im Benutzer-Setting gespeichert, in der settings.json - Datei. Detaillierte Schritte:
    • Command Pallete öffnen mit Strg + Umschalt + P;

VS Code Dynamics 365 Business Central (Navision) - AL: Download symbols

  • suchen nach Configure Language Specific Settings...

Visual Studio Code - Configure Language Specific Settings für .NET

  • AL Sprache auswählen. Die Benutzer-Einrichtungsdatei settings.json wird zum Editieren geöffnet;

Visual Studio Code und Dynamics 365 Business Central (Navision)

  • Nach dem Command al.assemblyProbingsPahts suchen und die Funktion ausführen;

Visual Studio Code Pfade für .NET Interoperability in Dynamics 365 Business Central (Navision)

  • Alle Pfade wegschreiben. In unserem Beispiel sehen die so aus.

Visual Studio Code Beispiel des Pfades für .NET Interoperability

  1. Jetzt schreiben wir eine Codeunit, wo die .NET Methoden benutzt werden.
    1. Wir haben eine Methode vom mscorlib hinzugefügt: System.DateTime;
    2. Wir haben eine Methode außer mscorlib hinzugefügt: System.Net.Http.HttpResponseMessage. Die wird in einem anderen Beispiel über OData verwendet;
    3. Wir haben einen EventSubscriber hinzugefügt zur Seite "Firmendaten", OnOpenPageEvent;
    4. In der Subscriber-Methode wird die DateTime Methode aufgerufen;
    5. Beide .NET Assemblies werden kompiliert.

Dynamics 365 Business Central (Navision) - .NET Klasse DateTime Beispiel

  1. Das Ergebnis wird beim Öffnen der Firmendaten-Seite angezeigt.

Dynamics 365 Business Central (Navision) - Infofenster - Datum von .NET DateTime

  1. Jetzt zum Testzweck, löschen wir vorübergehend alle Pfade, die wir im Schritt 1 in settings.json definiert haben. Nachdem die Datei wieder gespeichert wird, kann der Compiler keine Klasse außer mscorlib erkennen.

Dynamics 365 Business Central (Navision) - .NET Pfade werden auskommentiert

Dynamics 365 Business Central TM (Navision) Entwicklerin und Beraterin View Konrad Buczkowski's LinkedIn profile Monika Wichrowska

Wir verwenden Cookies
Einige von ihnen sind essenziell (z.B. speichern von gewählten Optionen des Lizenzrechners), während andere uns helfen unsere Website bei Werbung zu analysieren. Sie können dies akzeptieren oder ablehnen sowie diese Einstellungen jederzeit aufrufen und Cookies auch nachträglich abwählen (im Fußbereich unserer Website unter "Cookies Einrichtung"). Nähere Hinweise in unserer Datenschutzerklärung.
Individuelle Cookie Einstellungen
Notwendig ( 3 / 3 )
Notwendige Cookies helfen dabei, eine Webseite nutzbar zu machen, indem sie Grundfunktionen wie Seitennavigation und Zugriff auf sichere Bereiche der Webseite ermöglichen. Die Webseite kann ohne diese Cookies nicht richtig funktionieren.
v
Details in dieser Gruppe einblendenDetails in dieser Gruppe ausblenden
  • AkzeptiertNameKonfigurierungscookieAnbieterseccount.comZweckSpeichert vom Besucher in einem Feld ausgewählte Einstellungen.Cookie Namemod_cookies_125Cookie Laufzeit1 Jahr
  • AkzeptiertNameSessionAnbieterSeccount.comZweckCookies, die für die Sessionsitzung auf der Website verantwortlich sind.Cookie Names81a877_vv, s81a877_verify, s81a877, s81a877_v, c_verifyCookie Laufzeit1 Tag, Session
  • AkzeptiertNameCookiesAnbieterSeccount.comZweckCookies, die die Verwendung von Cookies bestätigen.Cookie Namec_verifyCookie Laufzeit38 Monate
Statistiken ( 1 / 1 )
Statistik-Cookies helfen Webseiten-Besitzern zu verstehen, wie Besucher mit Webseiten interagieren, indem Informationen anonym gesammelt und gemeldet werden.
v
Details in dieser Gruppe einblendenDetails in dieser Gruppe ausblenden
  • AkzeptiertNameGoogle AnalyticsAnbieterGoogle LLCZweckRegistriert eine eindeutige ID, die verwendet wird, um statistische Daten dazu, wie der Besucher die Website nutzt, zu generieren.Datenschutzerklärunghttps://policies.google.com/privacyCookie Name_ga,_gat,_gidCookie Laufzeit24 Monate
aaa1604053742