Domino 9 und frühere Versionen > Entwicklung
Import erst beginnen wenn Importdatei komplett downgeloaded ist
Kadlec:
Hallo,
ich lade eine Datei vom Host und importiere diese dann in eine db.
Wenn die Datei eine grösse x hat, beginnt der Import schon obwohl die Datei noch nicht komplett ist. Das führt dazu das nur ein Teil der Datei importiert wird. Um dies zu verhindern habe ich zwischen dem download und dem import eine Sleep Anweisung. (Sleep(60)
Das ist nicht sehr ellegant da immer, auch bei einer kleinen Datei, gewartet wird.
Gibt es eine Möglichkeit dies anders zu lösen??
Danke Boris
koehlerbv:
Wie holst Du Dir denn die DB ? Im selben LS-Agent ?
Bernhard
Kadlec:
Ich bin in der db und starte den Download & Import manuell durch klick auf Button.
koehlerbv:
Hm, ich habe meine Frage sehr ungenau gestellt, sorry. Ich gehe aber jetzt mal davon aus, das in einem Agent sowohl der Export aus der Host-DB ausgeführt wird als auch der Import aus dem eben importierten File.
Normalerweise sollte es dabei eigentlich keine Überschneidungen geben, da Dein Code ja record by record die Daten vom Host holt. Vielleicht hast Du hier aber auch ein Add-on am Laufen. Wie gesagt - da sind Deine Infos gefragt.
Was Du aber machen kannst: In einer Schleife überprüfen (mit einem Sleep meanwhile), ob Dein Import-File noch wächst. Wenn dies nach n Durchläufen (das muss dann auf Deiner Erfahrung beruhen) nicht mehr passiert, verlässt Du die Schleife.
Nur so als Idee ...
Bernhard
Kadlec:
Hallo Bernhard,
nochmal kurz zum Ablauf.
Aus unserem "Freigabe" - System kann man sich z.B. mit TSO verschiedene Daten ziehen. Außerdem stellt das System verschiedene Reports zur Verfügung.Was ich nun mache ist, einen
dieser Reports mittels FTP in eine Datei auf meinen Rechner zu speichern. Diese Datei ist innerhalb weniger Sekunden downgeloaded. Die größe ist ca. 6kb. ca. 3 Din A4 Seiten.
Nach dem Download wird dann die Datei geöffnet, Zeile für Zeile eingelesen und die Daten der Zeilen in die entsprechenden Felder geschrieben. Als ich letztes Jahr mit der Db angefangen hatte habe ich am Anfang beobachtet das nicht alle Daten in die Db importiert wurden, obwohl die Datei korrekt vom Host gezogen wurde. Meine Schlussfolgerung war dann das obwohl die Datei noch nicht komplett ist der Import schon beginnt. Habe ich dann durch einfügen von Sleep abgefangen.
Ich hoffe es ist jetzt ein wenig klarer.
Aber Dein Vorschlag geht in die richtige Richtung. Meine Idee war (wenn möglich) abzufragen wenn die Datei "geschlossen" wird und dann mit Import fortfahren. Wo finde ich eigentlich Sleep meanwhile??
Danke und gruss
Boris
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln