SOAP Webservice und OData Webservice mit NET

Werbung
nav@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
Dynamics NAV 2013
•
Microsoft Dynamics NAV 2013 unterstützt zwei
Webservice 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
Architektur
Client
NAV Server
Metadata
…
ELEMENTS
{
{ 1; ; DataItem;
;
DataItemTable=Table18 }
{ 5; 1; Column ; CustomerName;
DataSource=Name }
{ 6; 1; Column; CustomerAddress;
DataSource=Address }
…
SQL
Query
Page
Codeunit
Select Name as CustomerName,
Address as
CustomerAddress
From Customer
…
Dipl.-Inf. (FH) Ingo Jansen
SQL Server
NAV
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
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
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
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
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
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
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
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
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
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
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
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
kurze Pause
Dipl.-Inf. (FH) Ingo Jansen
Open Data Protocol
Ich
spreche
OData!
NAV 2013 @
Contoso.com
OData erlaubt Dynamics NAV 2013
auf einfache Art, Daten anderen
Anwendungen zur Verfügung zu
stellen
Ich
verstehe
OData!
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
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/
Einfacher Zugriff
http://<Server>:<WSP>/<ServerInstance>/OData
Beispiel:
http://localhost:7048/DynamicsNAV70/ODATA
Rückgabe der Daten erfolgt als AtomPub feed
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
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
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
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
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
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
Nicht vergessen!
2.
nav@night am 3.7.2013
Performance Steigerung durch Einsatz des
Dynamics NAV 2013 Query Objektes
Anmeldung unter http://www.vinor.de
Q&A
Vielen Dank für ihre Aufmerksamkeit…
[email protected]
Herunterladen