CSV Datei aus msecure editieren um richtige Spalten Bezeichnungen zu gewährleisten

Loox

Lieutenant
Registriert
März 2005
Beiträge
521
Hallo,

ich bin von einem Windows Programm (msecure) auf ein anderes Programm (safeincloud) umgestiegen. Dazu musste man aus msecure die Datensätze als csv exportieren und konnte diese dann mit einer Funktion die sich auf msecure Importe bezog, nach safeincloud importieren.

Das hat soweit geklappt.

Nun sind nun die Einträge in safeincloud zwar vorhanden, doch die Bezeichnung der Felder ist nicht mehr vorhanden.

In msecure lautete das Feld z.B. Mail Adresse, nach dem Import lautet sie nun Field 1 und alle weiteren dann Field 2, Field 3 .....

Ich müsste nun jeden Datensatz entsprechen in safeincloud editieren, das dauert bei 150 Datensätze :(

Gibt es eine Möglichkeit, das ich das einfacher und unkomplizierter hinbekomme?
Kenne mich mit den Möglichkeiten leider nicht aus.

Vielen Dank.
 
Kenne die Programme nicht, aber arbeite mit CSV Dateien. Gibt es in den exportierten Dateien denn eine Headerzeile in denen die Bezeichnungen stehen? Sollte die fehlen dann mal schauen, ob du beim Exportieren etwas anticken kannst, dass dieser Header mitgeschrieben wird. Sollte sie vorhanden sein, dann beim Importieren schauen, ob du dort irgendwas anticken kannst, dass die erste Zeile als Header genommen wird.
 
Hast du mit einem Texteditor wie Notepad++ oder Tabellenkalkulation wie LibreOffice Calc vorher geprüft, ob die Bezeichnung der Spaltenköpfe überhaupt mit in die .csv exportiert wurde?

Hast du dich an msecures Anleitung zum Export in eine .csv gehalten?

Hier hat übrigens jemand fast das gleiche Problem mit msecure.
 
Falls die Spaltennamen nicht mit exportiert werden, kannst du sie ganz einfach mit einem Texteditor im Nachhinein hinzufügen. Ist natprlich nur praktikabel wenn du keine 156456 Spalten hast, wovon ich aber nicht ausgehe.
 
Wenn ich es richtig sehe, müsste ich innerhalb von msecure alle Datensätze mit den dort vorhandenen Vorlagen versehene, was eine ebenso große Arbeit wäre, als wenn ich alle Datensätze im safeincloud einzeln editiere und die Feldbezeichnungen einzeln umbenenne.

Tja, da kommt Arbeit auf mich zu.
Ergänzung ()

Targa schrieb:
Falls die Spaltennamen nicht mit exportiert werden, kannst du sie ganz einfach mit einem Texteditor im Nachhinein hinzufügen.

Ops, ganz einfach? Wie genaue und vor allem, mit welchem Texteditor mache ich das genau?
Ich habe die CVS nach Excel importiert, doch da sehe ich nichts, was oder wie ich hinzufügen kann. Ist aber auch kein Texteditor.
 
Wie sieht denn die exportierte csv Datei aus? Poste mal en Sample (mit Fantasiedaten), öffne die Datei mit einem Texteditor damit die Trennzeichen etc. "sichtbar" werden.

//Wie oben bereits erwähnt z.B Notepad++
 
Hier ein Beispiel, so sieht die gesamte Datei aus. Keine Bezeichnungen, nur die reinen Daten.

Code:
Computer;E-Mail-Konten;XYZ - Test@xyz.de;Text;Name@xyz.de;dfghhshsfgh;;
Computer;E-Mail-Konten;XYZ - Test2@xyz.de;Text;Name@xyz.de ;gfhsfghshsfghsfgh;;
Computer;E-Mail-Konten;XYZ - Test3@xyz.net;Text;Name@xyz.net;afdgadfgadfgsdfgsdfg;;
Computer;E-Mail-Konten;XYZ - Test4@xyz.de;Text;Name@xyz.de;fasdfgagadfgsafdgsafdgsdfg;;
 
Durch die Formatierung sieht die Geschichte etwas komisch aus. Wenn ich es aber richtig sehe hast du 7 Spalten. Jedes Semikolon ( ; ) grenzt eine Spalte von der nächsten ab.

So würde es dann aussehen:

Code:
Spalte1;Spalte2;Spalte3;Spalte4;Spalte5;Spalte6;Spalte7;
Computer;E-Mail-Konten;XYZ - Test@xyz.de;Text;Name@xyz.de;dfghhshsfgh;;
Computer;E-Mail-Konten;XYZ - Test2@xyz.de;Text;Name@xyz.de ;gfhsfghshsfghsfgh;;
Computer;E-Mail-Konten;XYZ - Test3@xyz.net;Text;Name@xyz.net;afdgadfgadfgsdfgsdfg;;
Computer;E-Mail-Konten;XYZ - Test4@xyz.de;Text;Name@xyz.de;fasdfgagadfgsafdgsafdgsdfg;;

Spalte1 bis Spalte7 wären in dem Fall dann dementsprechend die Spaltennamen.

Falls es so nicht funktioniert, wäre es evtl. vorteilhaft wenn du Beispiel Datei (als csv) hochladen könntest, als Dateianhang.
 
Zuletzt bearbeitet: (Verbesserungen)
Ok, Danke. Ich mache das heute Nachmittag nochmals.
 
Targa schrieb:
Die doppelten Semikolon am Ende hab ich bis dato so noch nicht gesehen

Mehrere Semikola hintereinander sind ein Zeichen dafür, daß dort Spalten existieren, die aber mit nichts befüllt wurden. Einträge also NUL bzw. der Inhalt von "" ohne Zollzeichen. Auch wenn das für einen Menschen komisch klingt, aber diese Sachen sind etwas anderes als „nichts“ – auch wenn sie genauso aussehen.

-----

Bei sieben Spalten hält sich der Aufwand, die Spaltennamen händisch zu ergänzen, ja doch sehr im Rahmen. Die Bezeichnung für die siebte Spalte ist wichtig mit anzugeben, auch wenn ihre Reihen nicht befüllt sind, sonst kommt der Import häufig durcheinander.
 
Zuletzt bearbeitet:
DeusoftheWired schrieb:
Mehrere Semikola hintereinander sind ein Zeichen dafür, daß dort Spalten existieren, die aber mit nichts befüllt wurden. Einträge also NUL bzw. der Inhalt von "" ohne Zollzeichen. Auch wenn das für einen Menschen komisch klingt, aber diese Sachen sind etwas anderes als „nichts“ – auch wenn sie genauso aussehen.

Daran hatte ich gar nicht gedacht :D
Hast natürlich Recht.

Habs oben mal editiert.
 

Händisch wäre wohl auch das nicht im Rahmen des gerade mal eben Erledigten. Mit einem kleinen Bash oder Batch Skript ist allerdings auch das fix erledigt(Header in Datei schreiben, Daten an die Datei hinter Header ankleben. Für alle Dateien wiederholen), aber ich gehe mal nicht davon aus, dass der TE davon eine Ahnung hat, sonst wär's schon erledigt.
 
DaysShadow schrieb:
.....aber ich gehe mal nicht davon aus, dass der TE davon eine Ahnung hat, sonst wär's schon erledigt.

Nur rudimentär.
Die Datensätze sind aber in verschiedene Kategorien unterteilt und besitzen innerhalb dieser Kategorien natürlich auch alle unterschiedlich viele Felder und unterschiedliche Feldbezeichnungen.
Daher sehe ich momentan die einzige Möglichkeit, innerhalb von safeincloud am PC jeden einzelnen Datensatz anzufassen und die darin enthaltene Feldbezeichnung entsprechend anzupassen.
Wird dann über Dropbox gesynct und landet dann auf all meinen Smartphones und Tablets.

Eine andere Lösung sehe ich, mangels tiefgreifender Erfahrung :), leider nicht.
 
Naja, wenn sich der Header natürlich dauernd unterscheidet, kann man auch nicht viel machen. Wieviele unterschiedliche Header hast du denn insgesamt?
 
Ich habe etwa 12 Vorlagen, die ich mit den entsprechenden Daten fülle.
Jede dieser Vorlagen hat eine unterschiedliche Anzahl von Felder und entsprechender Bezeichnungen.

Ich muss scheinbar jeden Damensatz von Hand bearbeiten, also jedes Feld eines jeden Datensatze umbenennen.
 
Nein, bei 12 Headern und 150 Datensätzen lohnt es sich die Datensätze den Headern nach gruppiert in Ordner zu legen und für jeden Ordner ein Batch- oder Shellskript zu schreiben bzw. jeweils den entsprechenden Header in die Batch einzufügen oder interaktiv abzufragen.

Welches OS nutzt du denn? Windows, Linux, macOS?
 
Da bin ich leider kein Experte....:(
Ich nutze das Programm derzeit am PC unter Windows 8.1 und Windows 10.

Auf Smartphone und Tablet, die unter Android 7 und iOS 10.3 laufen, wird per DropBox synchronisiert.
 
Code:
@echo off
setlocal EnableDelayedExpansion
for /D %%s in (.\*) do (
	set /p header= "Enter header for folder %%s: "
	cd %%s
	for %%f in (.\*) do (
		@echo !header!> %%~nf_with_header.csv
		type %%f>> %%~nf_with_header.csv
	)
	cd ..
)

Das ist das Skript. Es geht durch jeden Ordner im momentanen Ordner durch, fragt dich nach dem Header den du eingibst, kannst ihn auch kopieren und einfügen, und erzeugt dann für jede Datei eine neue Datei mit dem Header in der ersten Zeile und dem Zusatz "_with_header" im Dateinamen. Den Zusatz kannst du entsprechend im Skript selbst ändern wie es dir passt.

Du musst also deine Dateien nach den 12 Headern sortiert in Ordner legen und das Skript in den gleichen Ordner wie die 12 Ordner. In der Zip sind Beispieldateien in der richtigen Ordnung. header1 hat 4, header2 hat 5, header3 hat 6. Denen gibt man dann entsprechend die Header "hd1;hd2;hd3;hd4", "hd1;hd2;hd3;hd4;hd5" usw.

Zum Ausführen einfach die add_header.bat doppelklicken.

Zip: Anhang anzeigen csv.zip
 
Super, vielen Dank für Deine Mühe.:daumen:
Ich werde mir das morgen in Ruhe anschauen und dann umsetzen.
Falls Fragen aufkommen, melde ich mich hier nochmals.
 
Hallo,

wollte es gerade ausführen, doch da ich bislang damit kaum gearbeitet habe, kommen weitere Fragen auf:

Ich muss also aus der bestehenden CVS Datei die Daten, die zusammengehören, in einzelne CVS Ordner kopieren.
also z.B. alle Mail Konten, alle PC Programm Login Daten, alle Foren Login Daten...etc.?

Dann die Batch Datei in dem Ordner, in dem die anderen Ordner liegen ausführen und dann die Header, also die Spaltenüberschriften eingeben, die dann später dort erscheinen sollen?

Irgendwie klappt das nicht. Ich bekomme dann neue Dateien, die dann in der ersten Zeile die neue Bezeichnung habe, doch das war es auch schon. Wie kann ich also in die bestehende CVS Datei die entsprechenden Bezeichnung einfügen?

Vermutlich habe ich da aber auch einen Denkfehler, mangels Erfahrung:confused_alt:
 
Zurück
Oben