Office: (Office 2007) CSV Datei jeden morgen automatisch importieren

Helfe beim Thema CSV Datei jeden morgen automatisch importieren in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Wenn ich denen erzähle "Das gegebene CSV funktioniert, dauert halt zirka 4 Stunden" werden die schnell flexibel werden. Was wäre dann das Wunschformat? Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von JBO73, 30. September 2011.

  1. CSV Datei jeden morgen automatisch importieren


    Wenn ich denen erzähle "Das gegebene CSV funktioniert, dauert halt zirka 4 Stunden" werden die schnell flexibel werden.
    Was wäre dann das Wunschformat?
     
  2. Ich schau mal was ich für Dich machen kann, hab jetzt allerdings keine Zeit.
    Melde mich später.

    Gruß

    BP
     
  3. Hallo Blackpit,

    ich weiss das sehr zu schätzen. Danke, aber warte mal noch bevor du deine Zeit reinhaust.
    Bin jetzt mal dem dem Gedankengang von Eberhart nachgegangen und habe:
    - die CSV Datei sowohl "hart" als Tabelle im BE, als auch
    - eine Verknüpfung auf die CSV Datei erstellt
    - eine Anfügeabfrage in Access erstellt die die gesamte Verknüpfte Tabelle (ohne Duplikate) an die "harte" Tabelle dranhängt
    - ein Form erstellt was beim Programmstart geöffnet wird, die Abfrage triggert und die Anwendung danach wieder schließt

    Bastelt man sich nun so einen automatisch auszuführende Task in Windows die einem die Backenddatei öffnet, so werden sämtlichen Inhalte in der CSV Datei drangehängt und das Backend wieder geschlossen.
    Für 1 Datensatz dauert das .x Sekunden.
    Da wir das 1x die Woche ausführen werden und ich vermute das wir in einer Woche nicht mehr als 100 Neukunden gewinnen, wird das also nicht länger als 100*.x Sekunden dauern was im Gegensatz zu den vier Stunden sehr hinnehmbar ist.

    Werde das morgen nochmal in der eigentlichen Entwicklungsumgebung testen. Wenn das läuft stelle ich denen folgende zwei Optionen:
    - CSV via Skript, Laufzeit sehr eklig
    - Backend wird 1x die Woche geöffnet und triggert das (hier gibts sicherlich noch nen schöneren Workaround ohne das eigentliche Backend mit nem Form zu abusen)

    Momentan scheints zu laufen.
    Wenns morgen beim testen scheitert melde ich mich nochmal und würde auf deinen Vorschlag zurückkommen.

    Vielen Dank.

    PS.: Falls du Langeweile hast würde ich mir deinen ausgedachten Lösungsvorschlag natürlich auch gerne anschauen ;-)
     
  4. CSV Datei jeden morgen automatisch importieren

    Hallo Alex,

    weniger der Langeweile wegen *wink.gif*
    Aber schau mal wie die Laufzeit damit ist:
    Code:
    Bei 100 neu einzufügenden DS wäre das Script sicher auch nicht übermäßig beschäftigt. 800000 oder mehr Inserts kosten natürlich Zeit.
    Man könnte allerdings auch über ein Verlinkung nachdenken und in der DB per VBS eine Funktion starten, welches eine Anfügeabfrage o.a auslöst.
    "Viele Wege führen nach Rom" *wink.gif*

    HTH
     
  5. Nanu, was 10 Stunden so bewirken können, vergleiche #41.
    Lachen ist gesund, sagt man.
    Da würde ich die IT doch darum bitten, einfach nur Neukunden in die CSV auszugeben statt die ganze Datenbank auszuleeren. Das geht für alle schneller.
    Ehe man an Codes herumschraubt wie auch immer, ist es doch nicht schlecht, die eigentlice Aufgabe zu verstehen und Abläufe zu optimieren. Optimum bleibt Optimum und wird weder Apfel noch Birne.
     
  6. *top

    ich musste bei dem letzten Beitrag von Blackpit auch schmunzeln...
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  7. Scheinbar nicht.

    Was hat Du eigentlich für ein Problem?
    80% deiner Beiträge sind nichts ausser provokant und anzüglich bzw. zynisch.
    Wer meinst Du eigentlich zu sein? Hast Du die Weisheit mit dem Löffel gefressen?
    Ausser dumme Sprüche sehe ich nicht viel produktives von Dir!
    Mit deinen SQL-Fähigkeiten und Regulären Ausdrücken meinst Du hier den Oberlehrer spielen zu können oder wie?
    Deine provokante Art kommt sicherlich nicht gut an, lass es doch lieber bleiben oder liebst Du es Dir Feinde zu machen?
    Was bezweckst Du damit?
     
  8. CSV Datei jeden morgen automatisch importieren

    Ich sehe keins, weil was ist daran unproduktiv oder provokant :

    wenn der Threadstarter den Tip sogar aufgreift

    und Du schließlich zum selben Vorschlag kommst...:

    just my few Cents...*wink.gif*
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  9. Mit der Brille auf diesem Kopf ist das auch kein Wunder.

    Es geht hier nicht um die Aussagen sondern um die Art wie Eberhard sich hier mitteilt.
    Findest du nicht provokant, bzw. zynisch?
    Geht's noch?

    Wenn dies so die allgemeine Umgangsart ist in diesem Forum, spare ich mir meine Mitarbeit.

    Werdet glücklich, irgendwann findet Eberhard dann vielleicht keinen mehr an dem er seinen Frust ablassen kann.

    Ciao
     
  10. Das wurde mir leider bereits im ersten Gespräch als nicht möglich mitgeteilt. (Politische Gründe. Sitze in einem Tochterunternehmen eines Konzerns, IT outgesourced, nur bedingt Supportmöglichkeiten.)
    Muss sagen das mir die Lösung mit der Anfügeabfrage recht gut gefällt, da sie recht wenig Code und umsomehr Access/Windowseigener Funktionalität nutzt was mich in gewisser Sicherheit wiegt - ob begründet/unbegründet sei mal dahingestellt.

    Ein kleines neues Problem könnte sich jedoch ergeben (wird gerade herausgefunden):
    Es könnte sein das die automatisch erstellten CSV Dateien keinen definierbaren Namen haben und einen Zeitstempel tragen, so dass ich sie schlecht mit dem Backend verknüpfen kann.
    Ob es hierfür eine Lösung gibt versuche ich gerade rauszufinden.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  11. Unverkennbar ist aber die Datenmenge an sich Dein Problem bezüglich der benötigten Zeit und nicht ein "bestimmtes" CSV-Format, wie man laut vorangegangener Diskussion interpretieren könnte, und ob dabei in den Daten dann noch ein Hochkomma oder ein X vorkommt, ist auch erst ein Nebenkriegsschauplatz, so dann auch, ob man eine Zeile per Mid oder Split auflöst. Mit diesen Diskussionen kommt man vielleicht von 4:00 auf 3:38 (oder auf 4:10).

    Wenn also die Variante entfällt, dass nur neue Daten geliefert werden und einfach angefügt werden müssten, würde man prüfen sollen, ob man selber die Datenmenge begrenzen kann. Vielleicht sind die neuen Kunden erkennbar an einer ihrer Nummern (im Sinne von höchste eines Autowertes) oder ist ein Zeitstempel für die Anlage des Kunden auswertbar.

    Wenn Datenmengenbegrenzung nicht machbar ist (und auch schon davor), sollte man dann nach Methoden schauen, die eine schnelle Verarbeitung erwarten lassen. Verwendbare Methoden stehen auch in Zusammenhang mit der Umgebung, wo man arbeiten muss.
    Das diskutierte Script war dafür vorgesehen (ich habe Links gelesen und womöglich verstanden), dass es von einem Server ohne vorhandene Accessinstallation ausgeführt werden kann. Ist das bei Dir Bedingung? Oder gibt es eine Accessinstallation, und würdest Du evtl. sowieso lokal mit Access arbeiten? Wann genau und wie werden die aktualisierten Daten von wem benötigt?
    Mit verwendbarem Access könnte man die an anderer Stelle besprochenen Importspezifikationen nutzen, und ein manueller oder automatisierter Import per Standardmethode (TransferText) wäre möglich. Damit brauchtest Du etwa 7 Sekunden (
     
  12. Moin,

    Kann nur wiedergeben was mir gesagt wurde, nämlich dass es nicht möglich sei.
    Darüberhinauß entfielen damit unter Umständen auch Informationen wie Änderungen oder gar gelöschte Datensätze. Und beides scheint hier sehr häufig vorzukommen.
    Wobei ich mir (/du dir) sicher bist dass sich das auch irgendwie umsetzten ließe.
    However, angeblich nicht verfügbar. Korrekt.

    Ich habe die Bedingung bekommen das autonom und automatisiert hinzukriegen.
    Nun habe ich aber auch im Nachinein erfahren das es hier (durch ausgelagerter IT im Mutterkonzern) nur seeeeehr bedingt Möglichkeiten gibt sich an diese zu wenden. D.h. es wird wohl darauf hinauslaufen den Windows-Task-Scheduler/Manager zu nutzen. Dies sollte auch die Frage hinsichtlich Accessinstallation beantworten.
    Genaueres kann ich zu dem Punkt gerade nicht sagen, da mir explizite Informationen zum Anfangszeitpunkt nicht vorlagen und mein zugeteilter Chef erst nächste Woche aus dem Urlaub kommt.



     
  13. CSV Datei jeden morgen automatisch importieren

    Zuerst einmal Gratulation dazu, dass Du eigenständig zu einer Lösung gekommen bist, die auch innerhalb eines akzeptablen Zeitrahmens funktioniert und die den wesentlichen Teil der Aufgabenstellung abdeckt. Die dabei gewonnenen Erkenntnisse helfen sicher auch, einige der vorangegangenen Hinweise besser zu verstehen.

    Ja, eigentlich wollte ich einen (gesamtheitlichen) Code vorstellen. Wegen mehrerer weiiter vorhandener Unbekannten (Weiterverwendung Tabelle, offene Chefentscheidungen) lasse ich das aber. Produktivität verstehe ich so, dass man eine Lösung erstellt, die man auch gleich verwenden kann. Dazu müssen aber Rahmenbedingungen fixiert sein.
    Codes in den Raum werfen nach dem Motto "Probiere mal", davon halte ich nicht soviel bzw. da wäre mir bei "fließenden" Aufgabenstellungen meine Zeit zu schade.

    Bezüglich der CSV-Namensproblematik hätte ich folgenden Vorschlag:
    Code:
     
  14. Ein zusätzlicher Hinweis: Bisher hast Du Dich nicht darüber geäußert, wie die Tabelle nach Import genutzt wird.
    Wenn die Datenbanktabelle nur eine 1:1-Kopie der CSV ist (keine zusätzlichen intelligenten Felder, keine Indizes u.a. Eigenschaften) und wenn wie wahrscheinlich nur ein lesender Zugriff erfolgt, dann kann man sich den Import sparen und einfach nur die CSV ins Frontend verknüpfen - und die ganze Scriptgeschichte könnte sich auf den gezeigten CSV-Austausch reduzieren.

    I.d.R. ergibt sich kein wirklicher Vorteil dadurch, dass man Daten einfach nur in der Datenbank hat (evtl. wegen der Datenmenge doch, aber da würde man die Frage nach der genauen Verwendung wiederholen). vorteile steigen dann signifikant an, wenn man die Tabelle zur richtigen Datenbanktabelle macht (Bewahrung Normalisierung, Indizierung u.a.).
     
  15. Moin Eberhard,

    habe die Tabelle deswegen fest ins Backend importiert - anstatt lediglich zu verknüpfen - da ich eine beträchtliche Performancesteigerung bei der Auslese des Recordsets feststellte.
    Wofür die Daten (der CSV) eigentlich genutzt werden ist das automatische füllen gewisser Felder in abhängigkeit einer Kontonummer.
    Liegen die Datensätze fest in einer Tabelle, so findet er den Recordset in nicht merkbarer Zeit. Verknüpft man es hingegen, so merkt man eine Suchzeit von 1+sec.
    Zu bemerken wäre, dass die Accessanwendung als auch die CSV an unterschiedlichen Orten im Netzwerk liegen worauf ich erneut keinen Einfluß habe.

    Bzgl. des CSV Imports:
    Habe nun am Freitag - war nicht im Büro - eine Antwort erhalten wie das genau aussehen wird.
    Vom Mutterkonzern wird ein automatischer Download der Daten als CSV beantragt. Diese werden dann:
    *automatisch, eigenständig
    *in regelmäßigen Abständen
    *an einem Ort im Netzwerk den man sich nicht ausschen kann
    *in einen Ordner in dem unzählige andere CSV Dateien liegen
    *unter einem fest definierten Namen (z.B. EXPORT.W_0012_V00007_*)
    *mit einem dynamischen Zeitstempel (z.B. *_09092013_100608.csv) gespeichert

    Long story short:
    Ich muss das so gestlaten, dass der Link auf die CSV "Export....09.09.2013.csv" eine Woche später von alleine auf "Export...16.09.2013.csv" umspringt.
    :|

    /edit:
    Spätestens wenn der neue CSV Download getätigt wird, wird die vorherige CSV gelöscht. D.h. zu einem Zeitpunkt gibt es immer nur eine Version der CSV die ich will. Diese hat (siehe oben) auch immer den selben Anfang im Namen.
     
Thema:

CSV Datei jeden morgen automatisch importieren

Die Seite wird geladen...
  1. CSV Datei jeden morgen automatisch importieren - Similar Threads - CSV Datei automatisch

  2. Farbspeicherung in CSV-Datei

    in Microsoft Excel Hilfe
    Farbspeicherung in CSV-Datei: Hallo, gerade versuche ich meinen Kontoauszug im CSV-Format für den Steuerberater vorzubereiten und unterschiedliche Zeilen verschieden einzufärben. Das gelingt unproblematisch. Aber das Ganze...
  3. CSV Dateien mit unterschiedlichen Format importieren und zusammenführen

    in Microsoft Access Hilfe
    CSV Dateien mit unterschiedlichen Format importieren und zusammenführen: Guten Morgen, ich versuche inzwischen seit einiger Zeit einige CSV aus verschiedenen Quellen zusammenzuführen. Sämtliche Recherchen über Google etc. haben mich leider zu keiner Lösung geführt und...
  4. csv Import Tabelle mit viel Inhalt in einer Zelle

    in Microsoft Excel Hilfe
    csv Import Tabelle mit viel Inhalt in einer Zelle: Hallo, ich habe bei mir auf Arbeit ein sehr altes Informationssystem in dem wir unser Aktenarchiv organisiert haben. In diesem Archivsystem sind Informationen enthalten wie der zeitliche Umfang...
  5. CSV Datei lässt sich nicht importieren

    in Microsoft Access Hilfe
    CSV Datei lässt sich nicht importieren: Guten Tag Zusammen. Vorab ich bin ein totaler Laie beim Thema Access. Ich versuche eine CSV Datei mittels Assistenten zu importieren. Bei den Importspezifikationen stelle ich folgendes ein:...
  6. Exportieren von Kontakten von Outlook.com in eine CSV-Datei

    in Microsoft Outlook Tutorials
    Exportieren von Kontakten von Outlook.com in eine CSV-Datei: Exportieren von Kontakten von Outlook.com in eine CSV-Datei Outlook.com Mehr... Weniger Sie können Ihre Kontakte aus...
  7. alle csv Dateien in eine lokale Tablle im Access importieren

    in Microsoft Access Hilfe
    alle csv Dateien in eine lokale Tablle im Access importieren: Hallo zusammen, ich habe hier schon eingies gelesen, aber leider konnte mir noch nichts weiterhelfen. Folgendes Problem: Ich bekomme jede Woche bis zu 20 csv Dateien per Mail. Diese speichere...
  8. CSV-Dateien werden mit falschen Umlauten eingelesen

    in Microsoft Excel Hilfe
    CSV-Dateien werden mit falschen Umlauten eingelesen: Hallo, ich möchte gerne mehrere CSV-Datein in eine Exceldatei einlesen. Über PowerQuery funktioniert das ja prinzipiell auch.....leider habe ich ein größeres Problem......erstens erkennt er mir...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden