Import Datenbank: Feldnamen (Spaltennamen)

Ich habe immer wieder Tabellen für Seriendrucke zu verarbeiten, die original in LibreOffice erstellt werden. Bisher brachte ich das mit “dem Messer durch den Rücken in die Brust”:

  1. LibreOffice: Export nach CSV
  2. Einlesen in PlanMaker von SoftMaker Office (warum s. 3.)
  3. Export aus Planmaker als dBase, da PlanMaker - im Gegensatz zu LibreOffice - , abfragt, ob die erste Zeile als Feldnamen definiert werden sollen.
  4. Import der dBase-Datei in Papyrus, das dabei die Feldnamen als Spaltennamen richtig übernimmt.

Einige Schritte, aber immer noch besser, alle Feldnamen händisch in die Spalten zu übertragen, denn ich habe regelmäßig verschiedene ods-Quellen.

**Und nun: **Ich sehe, finde es nicht, evt. gibt es das auch nicht: Besteht in Papyrus die Möglichkeit bei einer Datenbank automatisch und schnell die Inhalte der (z.B.) erste Zeile einer Tabelle zu Spaltennamen zu machen? Oder auch: Das gleich beim Import anzugeben? Ich danke für Hinweise!

Warum liest Du nicht direkt die CSV ein? Da geht all das.

Ja, ja, klar kann Papyrus eine CSV einlesen. Nützt mir aber doch nichts bei den Feldnamen bzw. Datenfelder-Bezeichnern. Nach dem Einlesen einer CSV-Datei sind die (Tabellen)Spalten benannt mit “Spalte X” und eben nicht mit den Begriffen der ersten Datenzeile. Dann habe ich beim Einfügen der Datenfelder in ein Dokument keinen Überblick mehr. Ich will ja z.B. das Feld “Vorname” oder “Geburtsdatum” dabei auswählen und nicht rumüberlegen, ob das jetzt “Spalte XY” ist, sondern bei der Auswahl der Datenfelder eben gleich die richtigen Bezeichnungen sehen… Außerdem ist das - je nach Report-Dokument ja nix, wenn im Text “nur” “Spalte X” … steht, z.B. im einfachsten Falle von Adressen

Spalte_1 Spalte_2
Spalte_3 Spalte_4 Spalte_5
Spalte_6 Spalte_7

statt:

[Vorname] [Nachname]

Und dann steht im Text:
Lieber [Spalte_2],

heute ist Dein [Spalte_10]. Geburtstag und wir gratulieren zu deinem [Spalte_12]. Teilnahme am Wettbewerb …
=>> https://cloud.mvtool.de/s/QS8iPJXoYYX2tWn
=>> https://cloud.mvtool.de/s/ckWbzjQQLocMqg8

1 „Gefällt mir“

Das geht tatsächlich: Wenn man im Import-Dialog für die CSV-Datei als Format “ASCII-Daten” auswählt, kann man in den Einstellungen angeben: “Der erste Datensatz enthält die Feldnamen”.

Der Haken dabei ist, dass das wörtlich gemeint ist: Als Feldnamen werden werden tatsächlich die Feldinhalte des ersten Datensatzes genommen, der dann in der eigentlichen Tabelle fehlt. Du musst also möglicherweise dafür sorgen, dass deine Tabelle mit einer Extrazeile beginnt, deren Spalteninhalt nur aus der Spaltenüberschrift besteht. Aber vielleicht ist ja beim Export aus LO sowieso schon die Überschriftenzeile Bestandteil des Exports? Das habe ich nicht getestet.

1 „Gefällt mir“

Vielen Dank!

Wo bzw., in welchem Szenario taucht ein/der Import-Dialog auf? Mit “Datei => Öffne andere => Öffne Datenbank” wird die CSV-Datei ohne Nachfrage eingelesen …
(Dass genau die Feldnamen aus dem ersten Datensatz genommen werden, ist durchaus sinnvoll aufgrund der Herkunft der Daten.)

Gute Frage. Die kurze Antwort: Dazu muss schon (irgend)eine DB vorhanden sein, in die man importiert, und von dort aus wird der Menüpunkt “Datei” > “Importieren…” aufgerufen.

Hier hat man nun verschiedene Möglichkeiten. Die logischste ist, rechts “Ziel” > “Neue Datenbank” auszuwählen. Beim Import wird dann eine neue Datenbank erzeugt, die den gleichen Namen trägt wie die importierte Datei (inkl. Extension). Daher am besten gleich nochmal “Sichern unter…”, wobei die Extension .pb erzeugt wird.

1 „Gefällt mir“

Hmmm, es muss nicht als sinnvoll erachtet werden, irgendeine Datenbank zu erzeugen oder her zunehmen, um dann über “Importieren” diese beim Import im Prinzip zu verwerfen, anstatt der Import-Vorgang gleich beim Öffnen einer CSV angeboten wird. Aber: Ja, klappt. Und - nicht intuitiv - ah ha, da ist dann auch der Button “Einstellungen” aktiv nachdem das ASCII-Format gewählt wurde. Egal: Ziel erreichbar. Jetzt bleibt es nur noch dabei, Excel/LibreOffice-Tabellen erst nach CSV zu exportieren.
Ich danke! :slight_smile:

1 „Gefällt mir“

Im Gegenteil. Das stellt man sich eben einmal ein und gut ist. Entsprechend funktioniert das dann auch die nächsten Male.

… was einstellen? Dass der Import-Dialog beim Öffnen einer CSV-Datei erscheint? Und wenn ja, wo stelle ich das ein?

Hallo, ich bin jetzt auch stolze Besitzerin von Papyrus und probiere mich fleißig und sehr zufrieden durch das Programm. Ich finde da tatsächlich alles, was ich mir in LO teilweise recht mühsam selbst gebastelt habe und noch viel mehr. Danke dafür!
Meine Frage ist vermutlich eher schlicht, aber ich habe einfach nichts dazu gefunden: Kann man Papyrus überreden, einen Datensatz aus LO (Tabellen), bereits als .csv exportiert ohne ein Komma vor und hinter dem Text in dem Feld (der Datensatz hat momentan nur ein, die Namen) zu importieren? Herzlichen Dank und einen schönen Abend!:slight_smile:

Glückwunsch!

Hast du es denn schon versucht? – Wenn ich dich richtig verstanden habe, hast du eine Tabelle mit 1 Feld aus LO, aber noch keine Datenbank in Papyrus. Unter diesen Umständen kannst du so vorgehen:

  1. Menü Datei /Ablage > Öffne andere > Neue Datenbank.

  2. Den Feldnamen eingeben und “Tabelle fertigstellen”.

  3. Menü Datei /Ablage > Importieren…

  4. Im Importdialog unter “Dateiformat” CSV auswählen (oder es ist schon vorausgewählt).

  5. Deine .csv-Datei auswählen.

  6. Das Feld der Importdatei anklicken und über den zentralen Button “Feld zuweisen”.

  7. Vorschau anklicken, ob die Feldinhalte richtig ankommen.

  8. Importieren.

  9. Datenbank speichern mittels “Speichern unter…”.

Oder möchtest du deine Daten in eine existierende Papyrus-Figurendatenbank importieren? Das geht genauso, indem du bei geöffneter DB mit Punkt 3 beginnst (und Punkt 9 entfällt).
Klappt’s?

3 „Gefällt mir“

Hallo Waldfried, vielen Dank, aber vielleicht war meine Frage undeutlich. Das habe ich alles getan und ich hatte auch schon eine Datenbank, aber das importierte Feld, also die Namen, sind von verschiedenen Zeichen eingerahmt, z. B. so ,Erna, oder so ,“Paul”,. Und meine Frage lautet, ob man diese Zeichen beim Import vermeiden kann. Zur Not kann ich sie auch mit der Hand löschen, aber da meine Personen- und Ortslisten sehr umfangreich sind, wäre es schöner, wenn das anders lösbar wäre. Schönen Mittwoch!

Wenn das so ist, würde ich als nächstes versuchen, in der Import-Datei, die ja vom Format her eine reine Textdatei ist, aufzuräumen und darin vor dem Import per Suchen & Ersetzen alle störenden Zeichen zu tilgen.
Zweite Möglichkeit: Im Import-Dialog für die Quelldatei statt CSV ASCII wählen und mit den Einstellungen experimentieren.

2 „Gefällt mir“

Dritte Möglichkeit: Nach dem Import in den Dialog “Bearbeiten” > “Global ersetzen…” gehen und mit dem “Replace”-Befehl arbeiten: (z.B.) Feld Namen auswählen und in “Setze Wert bzw. Ausdruck” die Formel replace(Namen, ‘x’, ‘’) einsetzen, um z.B. alle x zu entfernen. (Über “Vorschau” lässt sich immer schön sehen, ob das gewünschte Ergebnis herauskommt …)

1 „Gefällt mir“

Ich würde beim Datenexport aus LibreOffice ansetzen. Wenn man aus LibreOffice Calc eine Tabelle als CSV abspeichert, kann man ein Häkchen bei »Edit Filter Settings« machen (sollte auf deutsch »Filtereinstellungen bearbeiten« oder ähnlich heißen). Daraufhin kann man in einem zusätzlichen Fenster den Feldtrenner auf {TAB} einstellen und den Zeichenkettentrenner auf . Die resultierende CSV-Datei lässt sich einfacher in Papyrus Base einlesen.

Alternativ könntest Du auch im DBase-Format speichern und dieses importieren.

2 „Gefällt mir“

Lieber Waldfried, Lieber Glucose,

habt beide ganz herzlichen Dank für Eure Vorschläge, die ich nachher gleich ausprobieren werde. Und dann schreibe ich nochmal auf, was ich gefunden habe. Euch einen schönen Abend und nochmal danke!:slight_smile:

So, also nochmal vielen Dank, ich hab’s geschafft! Die Filtereinstellungen habe ich so gesetzt und ich habe vorher auch nochmal die Tabelle bereinigt. Und jetzt importiere ich noch meine Ortsdatei und dann bin ich schon wieder einen Schritt weiter! Startet gut ins neue Jahr!

2 „Gefällt mir“

Nachtrag: Bei der Ortsdatei hat das so nicht geklappt, dort hatte ich nicht nur Namen, sondern auch schon Beschreibungen, also zwei Spalten. Die wurden mir mit den oben beschriebenen Filtereinstellungen in ein Feld importiert. Also alles wieder zurückgesetzt, also Feldtrenner , und Zeichentrenner ". Dann in Papyrus im Importmenü die Spalten den entsprechenden Feldern zuordnen, importieren und alles wird gut! :slight_smile:

3 „Gefällt mir“