Dataport einlesen von Daten in Tabelle

Bild Microsoft Dynamics NAV 2009 (aka "NAV 6")
Forumsregeln
Impressum • Community-Knigge • Nutzungsbedingungen • Datenschutzrichtlinie

Bitte unbedingt angeben, ob sich eure Frage auf den RoleTailored-Client (RTC) oder den Classic-Client (CC) bezieht!

Dataport einlesen von Daten in Tabelle

Beitragvon PascalRoman » 21. November 2016 08:59

Hallo,

bin zurzeit in der Ausbildung als NAV Entwickler somit noch relativ am Anfang. Nun stehe ich aber vor einem Problem und zwar soll ich einen Dataport bauen der verschiedene Daten aus einer .CSV Datei einlesen soll, dies funktioniert bis 97% und dann Erfolgt ein Abbruch mit der Meldung 'XX,XX C' ist kein GĂĽltiges Datum.

Wobei ich denke das er beim Einlesen eine Zeile verrutscht und somit versucht den Betrag in das Datumsfeld hinzuzufügen. Wobei dies nicht möglich wäre.
Wie kann ich nun rausfinden welches die Betroffene Zeile ist, habe das ganze über C/AL probiert zu Lösen dennoch bis jetzt kein Erfolg.

Code: Alles auswählen
xPZN := '';
xlang:='';
xzahl:='';
xEinheit:='';
xtxEinstufung:='';
AdrID:=0;
xFirmename:='';
xtxmwst:='';
xApu:='';
xApoEk:='';
xApoVk:='';
xDatum:=0D;

Integer - OnAfterImportRecord()
ApoPH.INIT;
ApoPH.PZN := xPZN;
ApoPH.Langname := xlang;
ApoPH.Zahl := xzahl;
ApoPH.Einheit := xEinheit;
ApoPH.txEinstufung := xtxEinstufung;
IF STRPOS(AdrIDText,'AdrID')<>0 THEN CurrDataport.SKIP
  ELSE EVALUATE(AdrID,AdrIDText);
ApoPH.AdrID_Anbieter := AdrID;
ApoPH.Firmenname := xFirmename;
ApoPH.txMwSt := xtxmwst;
//ApoPH.GDatumPreise:= xDatum;

EVALUATE(ApoPH.ApU,EntSpace(xApu));
EVALUATE(ApoPH.Apo_Ek,EntSpace(xApoEk));
EVALUATE(ApoPH.Apo_Vk,EntSpace(xApoVk));

ApoPH.INSERT;

Integer - OnPostDataItem()

EntSpace(Text : Code[40]) test : Text[100]
EXIT(COPYSTR(Text,1,STRPOS(Text,' ')-1));



Das Einlesen der Daten funktioniert nach mehrmaligen Tests dennoch hängt er ab einer bestimmten Zeile wie kann ich mir nun diese eine betroffene Zeile ausgeben lassen in C# gibt es sowas wie Try & Catch zB.

NAV Version 2009 (6.0 Classic)

GrĂĽĂźe,

Pascal
PascalRoman
 
Beiträge: 2
Registriert: 21. November 2016 08:53
Arbeitsort: Köln
Bezug zu Microsoft Dynamics: SchĂĽler / Student
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: 6.0

Re: Dataport einlesen von Daten in Tabelle

Beitragvon McClane » 21. November 2016 09:21

Wenn du die csv-Datei im Texteditor öffnest und nach der Textstelle suchst, über die er stolpert: findest du sie da nicht?

Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! DafĂĽr ist dieses Forum da.
McClane
Moderator
Moderator
 
Beiträge: 3864
Registriert: 2. April 2008 10:00
Realer Name: Stefan
Bezug zu Microsoft Dynamics: End-Anwender
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: 2009, 2016

Re: Dataport einlesen von Daten in Tabelle

Beitragvon Natalie » 21. November 2016 09:23

Herzlich Willkommen bei uns!
Ein Verrutschen beim Einlesen entsteht dadurch, dass irgendein einzulesendes "Feld" in der CSV-Datei ein Zeichen enthält, das im Dataport als Feld-Trennzeichen (Spaltenversatz) oder Datensatz-Trennezichen (Zeilenversatz) definiert ist. Die Trennzeichen steuerst du ja in deiner Dataport-Einrichtung.
Hier muss der Export ggf. korrigiert werden, damit "verbotene" Zeichen nicht in die Daten rutschen, oder man einigt sich export- und importseitig auf andere Trennzeichen, die garantiert nicht anderweitig verwendet werden.
GruĂź, Natalie

Frage beantwortet oder Problem von allein gelöst? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.

Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! DafĂĽr ist dieses Forum da.
Benutzeravatar
Natalie
Moderator
Moderator
 
Beiträge: 9257
Registriert: 31. Oktober 2006 19:51
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV

Re: Dataport einlesen von Daten in Tabelle

Beitragvon PascalRoman » 21. November 2016 10:50

Leider finde ich diese Stelle nicht als "Field Separator" ist ";" eingegeben.
Bestehend aus 8 Spalten und knapp 500.000 Zeilen.

Kann sein das der Seperator 2mal hintereinander vorkommt und er deshalb stolpert aber die genau

Somit ist es mir leider mit dem Texteditor nicht möglich dadurch die Zeile zu finden.
Benötige eine Zeilenangabe leider dafür.
PascalRoman
 
Beiträge: 2
Registriert: 21. November 2016 08:53
Arbeitsort: Köln
Bezug zu Microsoft Dynamics: SchĂĽler / Student
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: 6.0

Re: Dataport einlesen von Daten in Tabelle

Beitragvon Natalie » 21. November 2016 11:00

PascalRoman hat geschrieben:Kann sein das der Seperator 2mal hintereinander vorkommt und er deshalb stolpert

Nö, das sagt lediglich aus, dass ein Feld leer bleibt und dafür das nächste anfängt. Pro Zeile sollte die Anzahl an Semikolons aber gleich sein ....

Somit ist es mir leider mit dem Texteditor nicht möglich dadurch die Zeile zu finden.
Kommt denn der Inhalt laut Fehlermeldung so oft vor, dass du danach ebenfalls nicht suchen kannst?
Du hast selber gesagt, es kommt ungefähr bei 97% vor, also sehr weit hinten in der Textdatei.
GruĂź, Natalie

Frage beantwortet oder Problem von allein gelöst? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.

Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! DafĂĽr ist dieses Forum da.
Benutzeravatar
Natalie
Moderator
Moderator
 
Beiträge: 9257
Registriert: 31. Oktober 2006 19:51
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV

Re: Dataport einlesen von Daten in Tabelle

Beitragvon Kowa » 21. November 2016 12:19

PascalRoman hat geschrieben:Leider finde ich diese Stelle nicht als "Field Separator" ist ";" eingegeben.

So etwas ist meist schneller ĂĽber einen CSV-Import in Excel zu finden, dann verrutscht der Spalteninhalt gegenĂĽber den richtigen Zeilen an der Fehlerstelle.
GruĂź, Kai

Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, Messenger oder Telefon! DafĂĽr ist dieses Forum da.

Download: Dynamics NAV Object Text Explorer (Alternativlink). MVP Alumni
Benutzeravatar
Kowa
Moderator
Moderator
 
Beiträge: 7835
Registriert: 17. Juni 2005 17:32
Wohnort: Bremen
Realer Name: Kai Kowalewski
Arbeitsort: Osterholz-Scharmbeck
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics 365
Microsoft Dynamics Version: BC, NAV 2018 bis Navision 2.01


ZurĂĽck zu NAV 2009

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot], Unbekannter Robot und 1 Gast