WebService C# - Feldinhalte werden nicht komplett übernommen

23. Mai 2011 11:07

Hallo zusammen,

ich habe ein Problem bei einer Tabelle in NAV, die ich über eine Programmierung in C# zu füllen versuche. Strings werden in die Textfelder übernommen. Jedoch Zahlenwerte (also in meiner Tabelle decimal und integer Felder) nicht immer. Jetzt kommt der interessante Teil. Das ganze passiert nur bei dem ersten Datensatz, den ich in die Tabelle schreiben möchte. Bei allen Datensätzen die darauf folgen läuft es problemlos.

Also ich mache Folgendes: ich habe in meiner WinForm Anwendung z.B. 10 Artikel. Diese möchte ich jetzt nach NAV in eine Tabelle schreiben. Beim ersten Artikel kommt dann dieser "Fehler". Alle weiteren Artikel werden problemlos gefüllt. Wenn ich meine Anwendung debugge, sind die Variablen auch mit Werten gefüllt, also er sollte es nach der Programmierung her halt schon füllen. Hat jemand einen Einfall dazu?

mfG

Re: WebService C# - Feldinhalte werden nicht komplett überno

23. Mai 2011 11:30

Also ohne Deinen Code zu kenne wird das wohl schwer. Dann bitte noch Info welche NAV-Version verwendet wird.

Volker

Re: WebService C# - Feldinhalte werden nicht komplett überno

23. Mai 2011 11:34

Hallo,


das Problemchen kommt mir bekannt vor:-)

Die Felder (Integer, Bool und Decimal Felder) haben zusätzlich noch eine Property "Specified".
Also FeldnameSpecified, diese musst du gleich true setzen.


Warum bei dir dennoch die anderen Datensätze richtig gefüllt werden, ist für mich merkwürdig.:-)?
Schreibst du alle mit CreateMultiple oder nur mit Create?


Gruß
Aydin

Re: WebService C# - Feldinhalte werden nicht komplett überno

23. Mai 2011 12:05

Hallo,

super danke es war das Property "Specified" :)
Hab die Felder auf true gesetzt und nun wird auch der erste Datensatz richtig in die Tabelle geschrieben.
Ich schreibe mit Create jeden einzeln in die Tabelle.

mfG

Re: WebService C# - Feldinhalte werden nicht komplett überno

23. Mai 2011 12:27

Trotz allem würde mich die NAV-Version interessieren. Mit R2 haben wir dieses Problem nämlich nicht.

Und wenn ich http://msdn.microsoft.com/en-us/library/ee414220.aspx richtig lese, dann ist es evtl. wichtig zu prüfen mit welcher NAV-Version man arbeitet, weil sonst u. U. ja durchaus Daten zerstört werden könnten.

Gibt es eigentlich eine Funktion mit der man die NAV-Version per Webservice auslesen kann?

Volker

Re: WebService C# - Feldinhalte werden nicht komplett überno

23. Mai 2011 14:51

Hallo Volker,


so eine (Default-) Funktion gibt es meiner Meinung nach nicht.
Aber kannst du nicht in eine vorhande Codeunite eine Funktion einbauen ,der dir nur die Version als string zurückgibt.
Bin nicht so bewandert in C/AL, daher die Frage, ob es so eine Fuktion in C/AL gibt?




Gruß
Aydin