Zum Inhalt springen

Access/ FoxPro/ Daten umwandeln


rwerene81

Empfohlene Beiträge

Guten Morgen zusammen,

Zustand:

Ich lasse Datenbanken mit einem Modul überprüfen, ob es in diese Datenbank Tabellen gibt, die mit FoxPro verknüpft sind und in welchem Format diese abgespeichert wurden.

Wird eine Verknüpfung zu FoxPro erkannt und sie hat das "falsche" Format wird der Name der Tabelle in eine weitere Tabelle geschrieben und ausgegeben.

Anschließend werden die Tabellen in FoxPro aufgerufen und in den "anderen" Format gespeichert.

Problem:

Ist die FoxPro Anwendung zu groß, dauert das Einlesen also zu lange, wird der Code zur Umwandlung nicht richtig ausgeführt, bzw. FoxPro nicht richtig beendet. Jetzt habe ich eine Verzögerung eingebaut, die mir etwas Zet verschaffen soll, die Datenbank einzulesen und den Programmcode aus zuführen:

SendKeys "USE +2" & Tabellenzeiger!verzeichnis & "\" & Tabellenzeiger!Name & "+2" & "{enter}", True

SendKeys "COPY to +2" & "v:\temp\koerner\" & Tabellenzeiger!Name & "+2 fox2x" & "{enter}", True

SendKeys "CLOSE DATA" & "{enter}", True

SendKeys "QUIT" & "{enter}", True

Programmverzögerung "Zeitraum", "s", Int(Dateigroesse / 1024 / 1024 / 2.5)

Aber diese Lösung ist nicht optimal, da ich zusätzlich ja von der Geschwindigkeit der Datenübertragunszeiten im Netzwerk abhängig bin, nicht nur von der Dateigröße.

Frage:

Gibt es eine andere Möglichkeit, zu "erkennen" wann die Tabelle geladen ist um sie dann in einem anderen Format abzuspeichern und FoxPro wieder zu schließen?

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 2 Wochen später...

Moin,

also in FoxPro ist das gar kein Problem - wenn die Tabelle "geladen" ist, dann gibt Dir die Funktion

USED("tabellenname")

den Wert TRUE (.T.) zurück. Allerdings wird der weitere Programmcode erst dann ausgeführt, wenn das USE blahblahblah zuende ist.

Allerdings verstehe ich jetzt nicht so ganz, was Du da irgendwie umformatieren willst? Dein Code macht nix anderes als die ganze Tabelle zu kopieren.

Ausserdem - ich nehme an, Du versuchst hier FoxPro fernzusteuern - stellt sich mir sowieso die Frage, wieso Du jeden Befehl einzeln übergibst. Das ginge auch eleganter, je nach Version vom Füchslein auch deutlich eleganter.

Dein Problem an sich ist im übrigen nicht, dass die FoxPro-Anwendung zu groß ist, sondern dass die Tabellen zu groß sind.

Sag doch einfach nochmals genauer an, was du überhaupt wie formatieren willst und wie Du erkennst, ob die Tabelle das falsche Format hat, dann kann ich Dir da vielleicht weiterhelfen.

Gruß,

der Onkel

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...