[Gelöst] .Net Var. per Webservice in VisualStudio nutzen

25. Mai 2012 09:44

Hallo liebe Community,

wir haben folgendes Problem mit dem Navision Webservice und Funktionen in C#.
Über einen Webservice rufen wir in Visual Studio diverse Funktionen auf welche aus Navision Parameter zurückgeben. Die zurückgegeben Werte zeigen wir dann mithilfe von C# auf einem Scanner an.

Nun möchten wir eine Funktion aufrufen, welche uns ein Array aus Visual Studio an die Codeunit in Navision übergibt. Dieses Array wird entsprechend unseres Filters gefüllt und an Visual Studio zurückgegeben.

Folgende Möglichkeiten haben wir bereits getestet.

Möglichkeit 1:
Definition in Navision:
- Array als Code mit Dimension 1000
Durchlauf einer Schleife von 1 - x
(Arrays beginnen in Navision bei 1 und in C# bei 0)
Hier bekommen wir beim zurückschreiben der Arrays die Meldung -> "Index ist außerhalb des zulässigen Bereichs"

Möglichkeit 2:

Definition in Navision:

Array vom Typ DotNet und Subtype ('mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.Array)
Hier wurde mit der Funktion SETVALUE gearbeitet.

Nach compilierung der Codeunit in Navision + Neustart des Webservices wollten wir in unserem Visual Studio den Menüpunkt Webreferenz -> "Webserviceserver" (Rechte Maustaste -> Webverweis aktualisieren). Nach aktualisierung hat man dann alle neuen und geänderten Funktionen zur Verfügung. Sobald wir aber eine DotNet Variable in der genannten Codeunit definiert haben können wir den Webverweis nicht aktualisieren und bekommen die Meldung "Fehler beim Download von <Adresse des Webservers>."

Hat vielleicht jemande ne Lösung wie man aus Visual Studio (C#) eine Funktion aus Navision (via Webservice) aufrufen kann und Arrays zurückbekommt welche man dann in C# weiter verarbeiten kann?

Bin um jeden Tipp dankbar.

Sonnige Grüße aus Bayern
Zuletzt geändert von schummd am 8. Oktober 2012 16:55, insgesamt 1-mal geändert.

Re: .Net Variablen per Webservice in Visual Studio nutzen

25. Mai 2012 10:56

Du wirst wohl Funktionen bauen müssen, die einen Wert pro Array-Element zurückgibt.
Sowas wie Set/Get/Item[i] usw.

Re: .Net Variablen per Webservice in Visual Studio nutzen

25. Mai 2012 10:57

Wie sieht denn die WDSL vom Webservice aus? Eventuell muss man die Variablen für C# serialisieren.

Hier gibts ein Tutorial
http://msdn.microsoft.com/en-us/library/dd355316.aspx

Re: .Net Variablen per Webservice in Visual Studio nutzen

25. Mai 2012 11:55

Es gibt auf Mibuso ein Video von der letzten Konferenz in Belgien, wo über .NET Interop referiert wurde. Dabei wurden auch Konvertierungen/Möglichkeiten gesprochen.
Such mal in den Downloads von mibuso nach .NEt Interop

Re: .Net Variablen per Webservice in Visual Studio nutzen

13. Juni 2012 13:13

Hallo,
mit der Funktion "ReadMultiple" hat es funktioniert.

Hier nochmal der Link wie bereits oben geposted.

Beitrag von JoergR » 25. Mai 2012 10:57
Wie sieht denn die WDSL vom Webservice aus? Eventuell muss man die Variablen für C# serialisieren.

Hier gibts ein Tutorial
http://msdn.microsoft.com/en-us/library/dd355316.aspx


Danke