AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

DbImport hängt sich auf

Ein Thema von blondervolker · begonnen am 12. Aug 2013 · letzter Beitrag vom 14. Aug 2013
Antwort Antwort
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

AW: DbImport hängt sich auf

  Alt 13. Aug 2013, 11:23
"hängt sich auf" oder "spinnt" sind eine super Fehlerbeschreibung und würde ich bei einem DAU auch durchgehen lassen - er weiß es einfach nicht besser.

Jemand der selber programmiert, sollte es besser wissen (beschreiben können).

Also (mitdenfingernindernasepuhlundherauszieh) wie ist die genaue Reaktion des Programms?
Was zeigt der Taskmanager zu der Anwendung an?
Hast du das Programm schon mal mit den 1000 Datensätzen laufen gelassen und so ca. 30 Minuten abgewartet?
Tauchen in der DB die Datensätze auf?
Arbeitest du mit Transaktionen?

Ach ja, bislang hast du dich erfolgreich vor jeglicher Beantwortung von Fragen gedrückt.
Wenn du das nicht möchtest, dann würde ich dir ein Häkelkreisforum empfehlen, aber erwarte hier keine Lösungen.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo (13. Aug 2013 um 11:26 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von blondervolker
blondervolker

Registriert seit: 14. Sep 2010
Ort: Bei: Leeeiipzzhhh
381 Beiträge
 
Delphi XE2 Architect
 
#2

AW: DbImport hängt sich auf

  Alt 13. Aug 2013, 11:45
Nee,Nee... ich hab mich nicht gedrückt,sondern in der Zwischenzeit habe ich das Teil im meiner vorherigen Antwort mit drangehangen.
Ich habe das Programm laufen lassen und die importierten Datensätze werden auch korrekt angezeigt.Die Speicherauslatung zeigt beim Import keine erhöhten Werte an.
Sir Rufo, an einem Häkelkurs habe ich noch gar nicht gedacht?!
www.bewerbungsmaker.de
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: DbImport hängt sich auf

  Alt 13. Aug 2013, 11:50
Nee,Nee... ich hab mich nicht gedrückt,sondern in der Zwischenzeit habe ich das Teil im meiner vorherigen Antwort mit drangehangen.
Ich habe das Programm laufen lassen und die importierten Datensätze werden auch korrekt angezeigt.Die Speicherauslatung zeigt beim Import keine erhöhten Werte an.
Sir Rufo, an einem Häkelkurs habe ich noch gar nicht gedacht?!
Und ein Application.ProcessMessages in der Schleife (wie schon zuvor genannt) hast du natürlich auch schon probiert.

Tja, da kann man dann wohl nichts machen
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von blondervolker
blondervolker

Registriert seit: 14. Sep 2010
Ort: Bei: Leeeiipzzhhh
381 Beiträge
 
Delphi XE2 Architect
 
#4

AW: DbImport hängt sich auf

  Alt 13. Aug 2013, 12:02
Ehrlich gesagt bin ich leider noch nicht mit allen "Wassern"gewaschen.
Darum wollte ich auch gerne wissen,was oder warum das Programm beim Import
bzw. beim bewegen der Form schlagartig einfriert.
Application.ProcessMessages?
www.bewerbungsmaker.de
  Mit Zitat antworten Zitat
Benutzerbild von blondervolker
blondervolker

Registriert seit: 14. Sep 2010
Ort: Bei: Leeeiipzzhhh
381 Beiträge
 
Delphi XE2 Architect
 
#5

AW: DbImport hängt sich auf

  Alt 13. Aug 2013, 12:27
Application.ProcessMessages;
Ja das war es.Danke Sir Rufo
Ich lade dich ein zum Häkelkurs.
www.bewerbungsmaker.de
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#6

AW: DbImport hängt sich auf

  Alt 13. Aug 2013, 14:03
Application.ProcessMessages;
Ja das war es.Danke Sir Rufo
Ich lade dich ein zum Häkelkurs.
Bei Import-Geschichten gehe ich, nachdem ich in der Vergangenheit selber des Öfteren vor ähnlichen Situationen stand, immer folgendermaßen vor:

1. Ich sortiere die Quell-Tabelle erstmal nach PK (Primary Key), um einen guten Überblick bei eventuellen Suchaktionen zu gewährleisten.

2. Ich füge Ausgaben in den Importprozeß ein, entweder auf einer Statusbar oder in Labels. So sehe ich immer genau den Fortschritt der Importaktion:

Delphi-Quellcode:
     DatMod.Dset_Level.IndexFieldNames := 'IDX_LEVEL';
     DatMod.Dset_Level.Last;
     StatusBar.Panels[0].Text := IntToStr(DatMod.Dset_Level.RecordCount);
     DatMod.Dset_Level.First;

     WHILE NOT DatMod.Dset_Level.Eof DO
     BEGIN
        StatusBar.Panels[1].Text := IntToStr(DatMod.Dset_Level.RecNo);
        StatusBar.Panels[2].Text := DatMod.Dset_Level.FieldByName('IDX_LEVEL').AsString);
        Application.ProcessMessages;
        DatMod.NeuSet_Level.Append;
        DatMod.NeuSet_Level.FieldByName('USER_LEVEL').AsString := DatMod.Dset_Level.FieldByName('USER_LEVEL').AsString;
        DatMod.NeuSet_Level.Post;
        DatMod.Dset_Level.Next;
     END;
So sehe ich immer genau, wo der Einleseprozeß gerade steht. Kommt es zu irgendwelchen Fehlern, sehe ich das daran, daß sich die Zahlen in Panel 1 und 2 nicht mehr verändern. Ich notiere mir diese Zahlen und starte nun mit dem notierten Record die Methode noch einmal. Angenommen, ich notiere den Record 500:

Delphi-Quellcode:
// DatMod.Dset_Level.First;
     DatMod.Dset_Level.RecNo := 500;
     WHILE NOT DatMod.Dset_Level.Eof DO
     ...
Da der Fehler bei Record# 500 auftrat, steppe ich diesen durch und bemerke dann meist sofort oder auch erst beim zweiten oder dritten Versuch, woran es hakt. Bei mir waren es verschiedene Ursachen, z.B. war ein Feld in der Zieldatenbank als Not Null definiert, in der Quelldatenbank war aber in Record 500 kein Eintrag, also Null. Da kommt normalerweise eine Fehlermeldung der Zieldatenbank. Auf jeden Fall kannst du so dem Fehler leicht auf die Schliche kommen.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.054 Beiträge
 
Delphi 12 Athens
 
#7

AW: DbImport hängt sich auf

  Alt 13. Aug 2013, 15:07
Und um das ganze nicht zu sehr durch die Statusausgaben und ProcessMessages zu bremsen, sollte man diese nur alle z.B. 100 Datensätze machen.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:03 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz