Seite 2 von 2
Re: XMLPort Import
Verfasst: 4. Oktober 2017 13:57
von sweikelt
dann sollte deine Herausforderung mit "SKIP" hiermit gelöst werden:
http://www.msdynamics.de/viewtopic.php?t=3826&highlight=xmlport+breakPS: warum führst du eigentl. kein Insert(TRUE) aus?
Re: XMLPort Import
Verfasst: 4. Oktober 2017 14:03
von Ted
sweikelt hat geschrieben:dann sollte deine Herausforderung mit "SKIP" hiermit gelöst werden:
Ich würde eher die "Item" mit ner Temporaeren Integer Tabelle austauschen.
Er nutz ja keine Felder der Item Tabelle direkt.
Re: XMLPort Import
Verfasst: 4. Oktober 2017 14:15
von HM
Hallo zusammen,
habe den Skip und Insert(TRUE) eingesetzt.
Das Verhalten ist unverändert.
Dann das Element in Integer und Temporäre Tabelle geändert.
Keine Änderung
Ich habe das Gefühl das dem XMLPORT SKIP etc. Total egal sind...
Re: XMLPort Import
Verfasst: 4. Oktober 2017 14:29
von Ted
HM hat geschrieben:Dann das Element in Integer und Temporäre Tabelle geändert.
Keine Änderung
Was heißt denn keine Änderung?
Wenn du die Item Tabelle aus der Definition rausnimmst, dann macht er nur noch nen Insert durch deinen Code.
Wobei ich bei deinem Code auch merkwürdig finde: Woher nimmst du denn die Ganzen "< ... >" Variabeln? Hast du die alle unter Globals/Locals definiert?
statt "<Sno>" solltest du einmal Sno1 probieren.
Re: XMLPort Import
Verfasst: 4. Oktober 2017 14:46
von sweikelt
HM hat geschrieben:Ich habe das Gefühl das dem XMLPORT SKIP etc. Total egal sind...
nicht wirklich, aber für deine Anforderung anscheinend schon -> siehe mein Link zum Foreneintrag weiter oben (inkl. Lösung zu deiner Herausforderung)
Re: XMLPort Import
Verfasst: 4. Oktober 2017 15:26
von HM
So jetzt ist kein Item mehr drin nur Integer und Temporärer Eintrag.
Die Variablen angepasst...
Keine Inserts und trotzdem macht er mir die Leer Einträge...
Sorry, Ich dreh am Rad
oder sehe es einfach nicht mehr...
Re: XMLPort Import
Verfasst: 4. Oktober 2017 15:46
von Ted
Hast du dir das Ganze mal mit nem Debugger angeguckt?
Hast du dir mal ne zu importierende Datei gebastelt mit nur 1 nem Record drin wo du weist das er in der Datenbank drin ist? Hast du dir mal "MESSAGE" an den entsprechenden stellen eingebaut damit du weist wo er hin geht und wo nicht?
ich gehe davon aus das dein
IF Item2.FINDFIRST THEN BEGIN
einfach immer ausgeführt wird weil deine Bedingung nicht passt. Und anschließend fügt er dann Datensatz ein.
Re: XMLPort Import
Verfasst: 5. Oktober 2017 09:47
von sweikelt
Item2 ist aber hoffentlich nicht temporär, oder?
Re: XMLPort Import
Verfasst: 5. Oktober 2017 10:28
von HM
Item2 ist nicht Temporär!
Ich hab das ganze mal durch den Debugger laufen lassen.
Interessant trotzdem das er einen Datensatz findet legt er einen neuen leeren an!
???
Re: XMLPort Import
Verfasst: 5. Oktober 2017 10:30
von Ted
Hängst du bitte mal den XMLPort als Text an.
Re: XMLPort Import
Verfasst: 5. Oktober 2017 11:37
von HM
Ja hier ist er...
Re: XMLPort Import
Verfasst: 5. Oktober 2017 12:24
von Ted
damit das Ganze funktioniert solltest du nur folgende Änderung machen müssen:
Item2.SETRANGE("Sep No.",Sno1);
IF Item2.FINDFIRST THEN BEGIN
...
Item2.MODIFY;
END ELSE BEGIN
...
Item3.INSERT(TRUE);
END;
currXMLport.SKIP;
Ich empfinde deinen Code übrigens als grausam, mir würde der so nicht ins Live System kommen.
Re: XMLPort Import
Verfasst: 5. Oktober 2017 12:30
von sweikelt
versuch doch mal das im
- Code:
Item - Import::OnBeforeInsertRecord
-Trigger
- Code:
CLEAR(Item2);
Item2.RESET;
Item2.SETRANGE(Item2."Sep No.",Sno1);
IF Item2.FINDFIRST THEN BEGIN
Item2."Local Item No." := Localno1;
Item2.MODIFY;
//currXMLport.BREAK; weg damit
END ELSE BEGIN
Item3.INIT;
Item3."Sep No." := Sno1;
Item3."Local Item No." := Localno1;
Item3.Description := COPYSTR(des1,1,50);
Item3."Description 2" := COPYSTR(des2,1,50);
Item3."Base Unit of Measure" := COPYSTR(BUoM,1,10);
Item3.INSERT(TRUE);
END;
currXMLport.SKIP; //stattdessen skippen
ups - Ted war schneller
Re: XMLPort Import
Verfasst: 5. Oktober 2017 13:29
von HM
Vielen Dank für Eure Tipps.
Leider funktioniert das nicht wie gewünscht.
Er trägt trotzdem eine ArtikelNr mit Leeren Informationen ein.
Logisch sehen die Programmzeilen für mich auch aus.
Re: XMLPort Import
Verfasst: 5. Oktober 2017 13:41
von Ted
Ich gehe davon aus das deine CSV Datei noch Leerzeilen hat... das fängst du nirgendwo ab...
Re: XMLPort Import
Verfasst: 5. Oktober 2017 13:48
von HM
Datei geprüft...
keine Leerzeilen...
Re: XMLPort Import
Verfasst: 5. Oktober 2017 16:30
von sweikelt
lad doch auch mal die Datei hoch....ggf. können wir dann einzeln debuggen.
wenn du das nicht möchtest, bleibt dir nur, das ganze selbst zu debuggen...schritt für schritt
Re: XMLPort Import
Verfasst: 6. Oktober 2017 09:22
von HM
Hallo,
hier ist die Datei.
Re: XMLPort Import
Verfasst: 6. Oktober 2017 10:23
von HM
Hallo zusammen,
es Funktioniert jetzt.
Habe den xmlPort mal gelöscht und bin neu Angefangen.
Programmcode ist auch so drin wie Ihr den geschickt habt!
Ganz komische Sache, wäre mal Interessant wo es da gehakt haben soll.
Oder es gibt einfach Zeiten, da will es einfach nicht...
Vielen lieben Dank für Eure Bemühungen!!!
Wünsche Euch einen schönen Start ins WE
LG HM