Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Habe ein Problem mit meiner CSV Datenbank

Frage Entwicklung Batch & Shell

Mitglied: redlinecomputers

redlinecomputers (Level 1) - Jetzt verbinden

15.04.2008, aktualisiert 20:03 Uhr, 3071 Aufrufe, 3 Kommentare

Hallo zusammen.

Ich Arbeite jetzt schon einige Tage an der Erstellung eines XT Commerce Shops.

Jetzt bin ich leider an einem Punkt angelangt an dem ich nicht weiter weis. Ich beschreibe einfach mal kurz die ganze Situation:


Ich erhalte täglich von meinem Lieferanten eine TXT Datei, die sich zwar einwandfrei ins CSV-Format konvertieren lässt, aber weder mit JTL-WAWI noch mit XT Commerce zusammen passt.


Habe also noch diverse Tabellen erstellt die sich Ihre Daten aus Lieferantenliste und Formeln selbst zusammen rechnen. Diese sind je nach dem für JTL oder XT zurechtgelegt.


Das Problem ist zum Beispiel das meine Stundenlang geschriebenen Artikelbeschreibungen jedesmal überschrieben werden.

Gibt es eine Möglichkeit 2 CSV Datein zu Vergleichen und Änderungen zu übernehmen?

Also sprich nichtmehr vorhandene Datensätze zu entfernen, Preise zu aktualisieren, Neue Datensätze anhängen?





Hatte da einen schönen Ansatz gefunden der aber leider nicht ganz funktionierte, da er bereits vorhandene Datensätze nicht aktualisierte sondern übersprang und nur neue Datensätze anhängte :


@echo off & setlocal
set "Ordner=e:\test"
set "Sammel=e:\test\test.csv"

pushd "%Ordner%"
if exist "%Sammel%" del "%Sammel%"
for %%i in (*.csv) do if not exist "%Sammel%" for /f "usebackq delims=" %%z in ("%%i") do if not exist "%Sammel%" echo %%z>"%Sammel%"
for %%i in (*.csv) do more +1 "%%i">>"%Sammel%"
popd


Ich danke schonmal jetzt allen die sich Zeit nehmen und sich den Kopf zerbrechen.


Chris
Mitglied: Biber
15.04.2008 um 18:52 Uhr
Moin redwinecomputers,

da er bereits vorhandene Datensätze nicht aktualisierte ...
na ja, an was (bzw an welchem/welchen Token in der CSV-Zeile machst Du das denn fest?
  • Ist immer und in jeder CSV-Datei die ArtikelNr (oder welche ID auch immer) an der ersten Stelle?
  • Oder gibt es mehrere Felder, die einen "Datensatz" eindeutig machen?
  • Oder hat jeder "Datensatz" ein Datumsfeld, aus dem ich den letzten und damit wahrsten Stand ersehen kann?
  • was ist mit (logisch) gelöschten Sätzen - in der vorhandenen älteren CSV-Datei da, nicht in der neu gelieferten?

Bitte mal ein, zwei Beispielzeilen Deines CSV-Formats posten.

Grüße
Biber
Bitte warten ..
Mitglied: redlinecomputers
15.04.2008 um 19:15 Uhr
Hallo,



entschuldigung das ich nicht so ausführlich beschrieben habe...aber der Bereich ist für mich absolutes neuland.

Die CSV ist so aufgebaut:

ARTNR;BARCODE;BEZEICHNUNG;KURZBESCH;BESCHREIBUNG;VKBRUTTO;MWST;UVP;EINHEIT;GEWICHT;VKHBRUTTO;EKNETTO;LIEFNR;MINDESTAB;LAGERBEST;ANMERKUNG;
PREISLISTE;TOPART;NEU;AKTIV;ATT1N;ATT1T;ATT1V;ATT1INET;BILD;LAGERAKTIV;KLEINERNULL;TEILBAR;HERSTELLER;ANZAHL-P1;PREIS-P1;ANZAHL-P2;PREIS-P2;ANZAHL-P3;
PREIS-P3;ANZAHL-P4;PREIS-P4;ANZAHL-P5;PREIS-P5;ANZAHL-H1;PREIS-H1;ANZAHL-H2;PREIS-H2;ANZAHL-H3;PREIS-H3;ANZAHL-H4;PREIS-H4;ANZAHL-H5;PREIS-H5;EBAYPREIS;
KATEGORIE


100039;;Notebook Tasche. Lunar. Value No20311;;;10.98;19%;;;;;7.90;;;878;;;;;1;;;;;;;;;Lunar;;;;;;;;;;;;;;;;;;;;;;Notebook Taschen
100117;;"HD Geh. USB 2.0 für 3.5"" HDDs - OEM";;;22.94;19%;;;;;16.50;;;47;;;;;1;;;;;;;;;Sonstiges/OEM;;;;;;;;;;;;;;;;;;;;;;externe Festplattengehäuse


Ich hoffe das hilft weiter


Chris
Bitte warten ..
Mitglied: filippg
15.04.2008 um 20:02 Uhr
Hallo,

wie hat denn der "XT Commerce Shop" seine Daten gespeichert? Doch hoffentlich in einer vernünftigen DB (ich dachte da an MS SQL oder MySQL)? Dann solltest du die Daten des Lieferanten in eine separate Tabelle in der gleichen DB einspielen und dann nur die Felder, die auch überschreiben willst in die entsprechende Shop-Tabelle übertragen.
Nutzt der Shop keine DB oder du kannst nicht ordentlich darauf zugreifen: Dann kannst du immer noch bei dir lokal MSSQL Express oder Access für ebendiese aufgabe verwenden. Sprich: du hälst alle Daten (inkl Beschreibung) bei dir lokal vor, wenn du ein Update vom Lieferant bekommst mischst du das da rein und spielst anschließend alles auf den Server (dabei werden zwar die Daten dort u.U. alle überschrieben, aber du hast ja die aktuellsten Daten bei dir daheim).
Wie das jetzt im einzelnen geht ist abhänigig von technischen Gegenbenheiten und Fertigkeiten.

Gruß

Filipp
Bitte warten ..
Ähnliche Inhalte
VB for Applications
gelöst Feld mit CSV-Daten aus MySQL-Datenbank einlesen (3)

Frage von Andreas.HH1 zum Thema VB for Applications ...

Microsoft Office
gelöst Excel csv-Import Zeichensatz-Problem (2)

Frage von thaefliger zum Thema Microsoft Office ...

Batch & Shell
Powershell Workflow, CSV Stapelverarbeitung Problem (6)

Frage von Rippchen zum Thema Batch & Shell ...

Neue Wissensbeiträge
Batch & Shell

Batch - ein paar Basics die man kennen sollte

Tipp von Pedant zum Thema Batch & Shell ...

Microsoft

Restrictor: Profi-Schutz für jedes Window

(6)

Tipp von AlFalcone zum Thema Microsoft ...

Batch & Shell

Batch zum Zurücksetzen eines lokalen Profils

Tipp von Mr.Error zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Server
gelöst Benutzer lässt sich nur an einem Clientcomputer anmelden (16)

Frage von Ammann zum Thema Windows Server ...

LAN, WAN, Wireless
gelöst Netzwerk in 2 Teile trennen (11)

Frage von pattex zum Thema LAN, WAN, Wireless ...

Batch & Shell
gelöst Gruppenzugehörigkeit von AD Usern ermitteln - die Perfektion fehlt (11)

Frage von Stefan007 zum Thema Batch & Shell ...