NAV 2013 ODATA und SOAP mit - · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData...

29
nav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Transcript of NAV 2013 ODATA und SOAP mit - · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData...

Page 1: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

nav@night

Microsoft Dynamics NAV 2013

SOAP und OData Webservices mit .NET nutzen

Dipl.-Inf. (FH) Ingo Jansen

Page 2: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Agenda

• Microsoft Dynamics NAV 2013

• Infrastruktur

• Konfiguration der Instanzen

• Zugriff auf Microsoft Dynamics NAV 2013 SOAP Webservices

• URL / WSDL

• Einfache .NET Client Anwendung

• Zugriff auf N Microsoft Dynamics AV 2013 ODATA Webservices

• URL / Metadaten

• Einfache .NET Client Anwendung

Dipl.-Inf. (FH) Ingo Jansen

Page 3: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Dynamics NAV 2013

• Microsoft Dynamics NAV 2013 unterstützt zweiWebservice Protokolle

• SOAP (Simple Object Access Protocol)

• Eingeführt mit Microsoft Dynamics NAV 2009

• OData (Open Data Protocol)

• Neu in Microsoft Dynamics NAV 2013

Dipl.-Inf. (FH) Ingo Jansen

Page 4: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Architektur

Dipl.-Inf. (FH) Ingo Jansen

NAV Server

Metadata…

ELEMENTS

{

{ 1; ; DataItem; ;

DataItemTable=Table18 }

{ 5; 1; Column ; CustomerName;

DataSource=Name }

{ 6; 1; Column; CustomerAddress;

DataSource=Address }

SQLSelect Name as CustomerName,

Address as

CustomerAddress

From Customer

Client

Query

Page

Codeunit

SQL Server

NAV

Page 5: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

OData und SOAP Webservices

SOAP OData

Pages – Read

Pages – Create/Update/Delete

NAV Query

Codeunits

Servergetriebenes Paging

Clientgetriebenes Paging

FlowFilter

Dipl.-Inf. (FH) Ingo Jansen

Page 6: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Zugriff auf NAV 2013 Codeunit SOAP Webservices

• Codeunit in NAV 2013 erstellen

• Veröffentlichen der Codeunit als Webservice

• Verfügbarkeit des Webvservices überprüfen

• .NET Konsolen Anwendung erstellen und auf Webservice zugreifen

Dipl.-Inf. (FH) Ingo Jansen

Page 7: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Zugriff auf NAV 2013 Codeunit SOAP Webservices

• Codeunit in NAV 2013 erstellen

• Veröffentlichen der Codeunit als Webservice

• Verfügbarkeit des Webservices überprüfen

• .NET Konsolen Anwendung erstellen und auf Webservice zugreifen

Dipl.-Inf. (FH) Ingo Jansen

Page 8: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Zugriff auf NAV 2013 Codeunit SOAP Webservices

• Codeunit in NAV 2013 erstellen

• Veröffentlichen der Codeunit als Webservice

• Verfügbarkeit des Webservices überprüfen

• .NET Konsolen Anwendung erstellen und auf Webservice zugreifen

Dipl.-Inf. (FH) Ingo Jansen

Page 9: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Zugriff auf NAV 2013 Codeunit SOAP Webservices

• Codeunit in NAV 2013 erstellen

• Veröffentlichen der Codeunit als Webservice

• Verfügbarkeit des Webservices überprüfen

• .NET Konsolen Anwendung erstellen und auf Webservice zugreifen

Dipl.-Inf. (FH) Ingo Jansen

Page 10: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

URL Format SOAP Webservice

http://<Server>:<WSP>/<ServerInstance>/WS/<Mandant>/services

Beispiel:http://localhost:7047/DynamicsNAV70/WS/CRONUS International Ltd./services

ACHTUNG! <Mandant> ist case sensitive

Page 11: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Zugriff auf NAV 2013 Codeunit SOAP Webservices

• Codeunit in NAV 2013 erstellen

• Veröffentlichen der Codeunit als Webservice

• Verfügbarkeit des Webservices überprüfen

• .NET Konsolen Anwendung erstellen und auf Webservicezugreifen

Dipl.-Inf. (FH) Ingo Jansen

Page 12: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Zugriff auf NAV 2013 Page SOAP Webservices

• Veröffentlichen einer Page als Webservice

• Verfügbarkeit des Webvservices überprüfen

• .NET Konsolen Anwendung erstellen und auf Webservice zugreifen

• Aufruf der Create, Read, Update, and Delete Funktionen eines Page Webservices.

Dipl.-Inf. (FH) Ingo Jansen

Page 13: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Zugriff auf NAV 2013 Page SOAP Webservices

• Veröffentlichen einer Page als Webservice

• Verfügbarkeit des Webservices überprüfen

• .NET Konsolen Anwendung erstellen und auf Webservice zugreifen

• Aufruf der Create, Read, Update, and Delete Funktionen eines Page Webservices.

Dipl.-Inf. (FH) Ingo Jansen

Page 14: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Zugriff auf NAV 2013 Page SOAP Webservices

• Veröffentlichen einer Page als Webservice

• Verfügbarkeit des Webservices überprüfen

• .NET Konsolen Anwendung erstellen und auf Webservice zugreifen

• Aufruf der Create, Read, Update, and Delete Funktionen eines Page Webservices.

Dipl.-Inf. (FH) Ingo Jansen

Page 15: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Zugriff auf NAV 2013 Page SOAP Webservices

• Veröffentlichen einer Page als Webservice

• Verfügbarkeit des Webvservices überprüfen

• .NET Konsolen Anwendung erstellen und auf Webservicezugreifen

• Aufruf der Create, Read, Update, and Delete Funktionen eines Page Webservices.

Dipl.-Inf. (FH) Ingo Jansen

Page 16: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Zugriff auf NAV 2013 Page SOAP Webservices

• Veröffentlichen einer Page als Webservice

• Verfügbarkeit des Webvservices überprüfen

• .NET Konsolen Anwendung erstellen und auf Webservice zugreifen

• Aufruf der Create, Read, Update, and Delete Funktioneneines Page Webservices.

Dipl.-Inf. (FH) Ingo Jansen

Page 17: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

kurze Pause

Dipl.-Inf. (FH) Ingo Jansen

Page 18: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Open Data Protocol

NAV 2013 @

Contoso.com

Ich

spreche

OData!

Ich

verstehe

OData!

OData erlaubt Dynamics NAV 2013

auf einfache Art, Daten anderen

Anwendungen zur Verfügung zu

stellen

Page 19: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Open Data Protocol

OData macht es einfacher, Applikationen miteinander zu

verbinden

•Nutzung der Daten über Applikationsgrenzen hinweg

•“OData ist das webbasierte äquivalent zu ODBC”

Beispiel:

Dynamics NAV 2013 veröffentlicht OData

+ PowerPivot für Excel 2010 konsumiert OData

= “Selbstbedienungs BI”

Weitere Info unter: http://www.odata.org

Page 20: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Einfacher Zugriff

• PowerPivot

• Freies Excel add-in unter

http://www.microsoft.com/en-us/bi/powerpivot.aspx

• Programatischer Zugriff

• .NET und .NET LINQ

• Nutzung als C/FRONT “Ersatz” (lesend)

• “Freihändige” Abfragen

• http://localhost:7148/dynamicsnav70/OData/

Page 21: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Einfacher Zugriff

http://<Server>:<WSP>/<ServerInstance>/OData

Beispiel:

http://localhost:7048/DynamicsNAV70/ODATA

Rückgabe der Daten erfolgt als AtomPub feed

Page 22: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Einfacher Zugriff auf Mandantendaten

http://<Server>:<WSP>/<ServerInstance>/OData/Company(<Ma

ndant>)/Customer

Beispiel:

http://localhost:7048/DynamicsNAV70/ODATA/Company(‘CRONUS%20AG’)/

Customer

Rückgabe der Daten erfolgt als AtomPub feed

Page 23: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

gefilterter Zugriff auf Mandantendaten

http://<Server>:<WSP>/<ServerInstance>/OData/Company(<Ma

ndant>)/Customer/?$filter=<Feld>< >eq< >’Feldwert’

Beispiel:

http://localhost:7048/DynamicsNAV70/ODATA/Company(‘CRONUS%20AG’)/

Customer?$filter=City%20eq%20’Birmingham’

Rückgabe der Daten erfolgt als AtomPub feed

Page 24: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Zugriff auf NAV 2013 Page ODATA Webservices

• Veröffentlichen einer Page als Webservice

• Verfügbarkeit des Webservices überprüfen

• .NET Konsolen Anwendung erstellen und auf Webservice zugreifen

• Abruf der Daten

Dipl.-Inf. (FH) Ingo Jansen

Page 25: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Zugriff auf NAV 2013 Page ODATA Webservices

• Veröffentlichen einer Page als Webservice

• Verfügbarkeit des Webservices überprüfen

• .NET Konsolen Anwendung erstellen und auf Webservice zugreifen

• Abruf der Daten

Dipl.-Inf. (FH) Ingo Jansen

Page 26: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Zugriff auf NAV 2013 Page ODATA Webservices

• Veröffentlichen einer Page als Webservice

• Verfügbarkeit des Webservices überprüfen

• .NET Konsolen Anwendung erstellen und auf Webservicezugreifen

• Abruf der Daten

Dipl.-Inf. (FH) Ingo Jansen

Page 27: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Zugriff auf NAV 2013 Page ODATA Webservices

• Veröffentlichen einer Page als Webservice

• Verfügbarkeit des Webservices überprüfen

• .NET Konsolen Anwendung erstellen und auf Webservice zugreifen

• Abruf der Daten

Dipl.-Inf. (FH) Ingo Jansen

Page 28: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Nicht vergessen!

2. nav@night am 3.7.2013

Performance Steigerung durch Einsatz desDynamics NAV 2013 Query Objektes

Anmeldung unter http://www.vinor.de

Page 29: NAV 2013 ODATA und SOAP mit -  · PDF filenav@night Microsoft Dynamics NAV 2013 SOAP und OData Webservices mit .NET nutzen Dipl.-Inf. (FH) Ingo Jansen

Q&AVielen Dank für ihre Aufmerksamkeit…

[email protected]