|
@@ -0,0 +1,131 @@
|
|
|
+# csv_verschieben.bat
|
|
|
+
|
|
|
+Die CSV-Exporte der Impromptu-Abfragen werden in den jeweiligen Unterordnern unter `System\IQD` abgelegt.
|
|
|
+Für die Weiterverarbeitung werden sie aber im Ordner `System\Export` benötigt.
|
|
|
+
|
|
|
+Für eine erfolgreiche Weiterverarbeitung müssen die Dateien auf Fehler geprüft und bereinigt werden, u.a. Zeilenumbrüche, Anführungszeichen und sonstige Sonderzeichen.
|
|
|
+
|
|
|
+## Funktionen
|
|
|
+
|
|
|
+Das Skript `csv_verschieben.bat` unfasst folgende Funktionen:
|
|
|
+
|
|
|
+* Überprüfung, ob die Quelldatei
|
|
|
+ * nicht älter als 24 Stunden ist
|
|
|
+ * nicht leer ist (nur Kopfzeile und max. 1 Zeile gilt als leer)
|
|
|
+ * nicht älter als die Zieldatei ist
|
|
|
+ * nicht wesentlich kleiner als die Zieldatei ist (min. 10% der Zieldatei)
|
|
|
+* Ersetzen der Zieldatei, ggf. Fehlermeldung bei Zugriffs-/Schreibproblemen
|
|
|
+* Auflistung der Dateien im Ordner `System\Export`, die älter als 24 Stunden sind
|
|
|
+* Überprüfung und Bereinigung aller csv-Dateien im Ordner `System\Export`
|
|
|
+ * Spaltenanzahl wird mit der Kopfzeile verglichen
|
|
|
+ * Zeilenumbrüche, Anführungszeichen und sonstige Sonderzeichen werden entfernt
|
|
|
+ * Korrekturen werden mit "*" gekennzeichnet, Fehler mit "-"
|
|
|
+ * Fehlerhafte, nicht korrigierbare Zeilen werden aus der Datei herausgenommen und in einer gleichnamigen Datei mit der Endung `.err` gespeichert
|
|
|
+ * Ursprüngliches Datum wird beibehalten.
|
|
|
+
|
|
|
+## Installation
|
|
|
+
|
|
|
+Die aktuelle `csv_verschieben.bat` und die im Zusammenhang benötigte `gctools.exe` liegen in `P:\GCTools` und müssen beim Kunden in den Ordner `Tasks\scripts` kopiert werden.
|
|
|
+In der `(System)_imr_csv.bat` müssen alle `move`-Einträge entfernt und durch (einmalig) `call csv_verschieben.bat` ersetzt werden.
|
|
|
+Bitte auch in entsprechend verwandten Batch-Dateien anpassen, z.B. `(System)_imr_csv_Finanzen.bat` oder `Finanzen_aktualisieren.bat`!
|
|
|
+
|
|
|
+## Konfiguration
|
|
|
+
|
|
|
+* Datei `System\IQD\ignoriert.txt`
|
|
|
+ * Liste der Dateien, die nicht in den Export-Ordner verschoben werden sollen
|
|
|
+ * Dateiname ohne Verzeichnisangabe
|
|
|
+ * Relevant für CSV-Dateien, die nur sporadisch erstellt werden (z.B. Planung)
|
|
|
+
|
|
|
+```csv
|
|
|
+Planung_2024.csv
|
|
|
+Planung_Kalender.csv
|
|
|
+Planung_Zeilen.csv
|
|
|
+```
|
|
|
+
|
|
|
+* Datei `System\Export\ignoriert.txt`
|
|
|
+ * Liste der Dateien, deren Alter nicht überprüft werden soll
|
|
|
+ * Dateiname ohne Verzeichnisangabe
|
|
|
+ * Relevant für Hist-Daten, Hilfstabellen oder Sicherungskopien
|
|
|
+
|
|
|
+```csv
|
|
|
+Planung_Tag.csv
|
|
|
+skr_herkunft_kst.csv
|
|
|
+skr_marke.csv
|
|
|
+skr_absatzkanal.csv
|
|
|
+Mitarbeiter_Versand.csv
|
|
|
+Bilanzbelege_O21_Hist.csv
|
|
|
+Planung_2022.csv
|
|
|
+```
|
|
|
+
|
|
|
+## Fehlermeldungen
|
|
|
+
|
|
|
+### Normaler Ablauf
|
|
|
+
|
|
|
+```cmd
|
|
|
+Verschiebe CSV-Dateien von IQD zu Export...
|
|
|
+* C:\GlobalCube\System\OPTIMA\IQD\Belege\Bilanzbelege_O21_Salden_6_7.csv
|
|
|
+* C:\GlobalCube\System\OPTIMA\IQD\Belege\Bilanzbelege_O21_Salden_SKR51_1_9.csv
|
|
|
+* C:\GlobalCube\System\OPTIMA\IQD\Belege\Bilanzbelege_O21_Salden_SKR51_6_7.csv
|
|
|
+* C:\GlobalCube\System\OPTIMA\IQD\Belege\Bilanzsalden_kumuliert_A_P.csv
|
|
|
+
|
|
|
+Pruefe Export-Ordner...
|
|
|
+* Alle Dateien aktuell.
|
|
|
+
|
|
|
+Bilanzbelege_O21_Salden_6_7.csv
|
|
|
+Bilanzbelege_O21_Salden_SKR51_1_9.csv
|
|
|
+Bilanzbelege_O21_Salden_SKR51_6_7.csv
|
|
|
+Bilanzsalden_kumuliert_A_P.csv
|
|
|
+```
|
|
|
+
|
|
|
+### Keine CSV-Datei im IQD-Ordner
|
|
|
+
|
|
|
+```cmd
|
|
|
+Verschiebe CSV-Dateien von IQD zu Export...
|
|
|
+* Keine CSV-Dateien im IQD-Ordner gefunden.
|
|
|
+```
|
|
|
+
|
|
|
+Das muss kein Fehler sein, da das Skript an dieser Stelle nicht nachvollziehen kann, welche CSV-Dateien vorhanden sein müssten.
|
|
|
+Also eventuell ist vorher schon ein Fehler passiert, der den Impromptu-Export verhindert hat.
|
|
|
+
|
|
|
+## Quelldatei älter als 24 Stunden
|
|
|
+
|
|
|
+```cmd
|
|
|
+Verschiebe CSV-Dateien von IQD zu Export...
|
|
|
+* C:\GlobalCube\System\OPTIMA\IQD\Belege\Bilanzbelege_O21_Salden_6_7.csv
|
|
|
+* C:\GlobalCube\System\OPTIMA\IQD\Belege\Bilanzbelege_O21_Salden_SKR51_1_9.csv
|
|
|
+* C:\GlobalCube\System\OPTIMA\IQD\Plan_Aftersales\Mitarbeiter_Soll.csv
|
|
|
+!! Datei Mitarbeiter_Soll.csv ist aelter als 24 Stunden !!
|
|
|
+```
|
|
|
+
|
|
|
+In diesem Fall wurden zwei Dateien verschoben, die dritte Datei nicht, da sie nicht neu ist.
|
|
|
+Anhand des Dateinamens lässt sich erahnen, dass es eine Datei ist, die nicht täglich erzeugt wird und daher kein echter Fehler ist.
|
|
|
+Empfehlung: Eintrag in `System\IQD\ignoriert.txt`
|
|
|
+
|
|
|
+## Datei im Export-Ordner älter als 24 Stunden
|
|
|
+
|
|
|
+```cmd
|
|
|
+Pruefe Export-Ordner...
|
|
|
+!! Datei Auftraege_SPP_Split_csv.csv ist aelter als 24 Stunden !!
|
|
|
+C:\GlobalCube\System\OPTIMA\Export\Auftraege_SPP_Split_csv.csv: 11.10.2023, 10:22:00
|
|
|
+```
|
|
|
+
|
|
|
+Diese Datei ist vom 11.10.2023. Es wäre zu klären, ob die Datei versehentlich aus der Aktualisierung herausgenommen wurde oder ob eine neuere Version mittlerweile anders heißt.
|
|
|
+Es kann aber auch sein, dass es ein Folgefehler ist, falls die Datei nicht erstellt oder verschoben werden konnte.
|
|
|
+
|
|
|
+## Nicht korrigierbare Zeilenfehler in Export-Dateien
|
|
|
+
|
|
|
+```cmd
|
|
|
+Kreditoren_Umsatz.csv
|
|
|
+--
|
|
|
+!! Anzahl Fehler in 'Kreditoren_Umsatz.csv': 2 !!
|
|
|
+nw_be_csv.csv
|
|
|
+**
|
|
|
+nw_be_csv_defi01.csv
|
|
|
+nw_gw_vk_csv.csv
|
|
|
+```
|
|
|
+
|
|
|
+Die Datei `Kreditoren_Umsatz.csv` enthält zwei Zeilen, die nicht die richtige Anzahl Spalten enthält.
|
|
|
+Die fehlerhaften Zeilen werden in der Datei `Kreditoren_Umsatz.err` gespeichert und aus der CSV-Datei entfernt, um Fehler in der weiteren Verarbeitung zu vermeiden.
|
|
|
+Die fehlenden Zeilen verfälschen zwar die Auswertung, sind aber das geringere Übel im Vergleich zu einem Totalausfall.
|
|
|
+
|
|
|
+Die Datei `nw_be_csv.csv` enthält 2 Zeilen, die korrigiert werden konnten. Es gibt hier nichts weiter zu tun.
|