Text zwischen 2 Markern Formatieren

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

Benutzeravatar
Nightskull
**
Beiträge: 25
Registriert: Mo, 22.01.2024 07:07

Re: Text zwischen 2 Markern Formatieren

Beitrag von Nightskull »

mikeleb hat geschrieben: Mo, 29.01.2024 18:32 Hallo,
der fehler wir dauftreten, wenn es im Text zwischen #TXT# und #txt# keine Klammern gibt. In der Klammer müsste die Katalognummer stehen und sollte eigentlich immer vorhanden sein.
Die Klammer für die Katalognummer ist soweit ich es nachschauen konnte, immer zwischen den Markern #TXT# und #txt#.
Gruß
Michael
mikeleb
*******
Beiträge: 1316
Registriert: Fr, 09.12.2011 16:50

Re: Text zwischen 2 Markern Formatieren

Beitrag von mikeleb »

Hallo,
in der Form ist die txt-Datei für dein Vorhaben unbrauchbar, da die Zeilenumbrüche innerhalb der Marker das Verfahren zunichte machen. Da du die Daten aber direkt aus einer Datenbank holen kannst, ist der Umweg über eine txt-Datei unnötig. Magst du uns Zugriff auf die sql-Dateien geben?
Gruß,
mikeleb
Benutzeravatar
Nightskull
**
Beiträge: 25
Registriert: Mo, 22.01.2024 07:07

Re: Text zwischen 2 Markern Formatieren

Beitrag von Nightskull »

mikeleb hat geschrieben: Mo, 29.01.2024 20:35 Hallo,
in der Form ist die txt-Datei für dein Vorhaben unbrauchbar, da die Zeilenumbrüche innerhalb der Marker das Verfahren zunichte machen. Da du die Daten aber direkt aus einer Datenbank holen kannst, ist der Umweg über eine txt-Datei unnötig. Magst du uns Zugriff auf die sql-Dateien geben?
Ja gerne, ich lade nur die Datei noch hoch und verlinke den Zugang. Dauert noch ein wenig.

anbei der Link:

https://gofile.me/3SGiT/rFVTTfvba
Gruß
Michael
Benutzeravatar
Nightskull
**
Beiträge: 25
Registriert: Mo, 22.01.2024 07:07

Re: Text zwischen 2 Markern Formatieren

Beitrag von Nightskull »

Hallo mikeleb,

brauchst du auch die DBDUMP.sql ? Die habe ich wieder gelöscht.
Gruß
Michael
mikeleb
*******
Beiträge: 1316
Registriert: Fr, 09.12.2011 16:50

Re: Text zwischen 2 Markern Formatieren

Beitrag von mikeleb »

Hallo,
wie Hiker schon ganz am Anfang vorschlug, wäre es am sinnvollsten, über Base eine Verbindung direkt zur Datenbank herzustellen und dann einen Report mit den gewünschten Formatierungen herzustellen. Vor allem wenn das Ganze häufiger gemacht werden soll wird es praktisch.
Alternativ exportierst du die Abfrage in eine csv-Datei. So werden die Kategorie, Titel, Beschreibung, Auktionsnummer, Preis schön sauber getrennt in eine Zeile abgelegt. In der Form können sie dann erheblich einfacher in Writer eingearbeitet werden (z. B. auch einfach per Serienbrieffunktionalität, ganz ohne Makros).
Gruß,
mikeleb
Benutzeravatar
Nightskull
**
Beiträge: 25
Registriert: Mo, 22.01.2024 07:07

Re: Text zwischen 2 Markern Formatieren

Beitrag von Nightskull »

Wie kann ich das realisieren. Base ist ja die Datenbank aus OpenOffice.
Ist das möglich, das die Base zur Datenbank mysql in xampp Verbindung aufnehmen kann?
Werde es mal versuchen.
Gruß
Michael
Benutzeravatar
Nightskull
**
Beiträge: 25
Registriert: Mo, 22.01.2024 07:07

Re: Text zwischen 2 Markern Formatieren

Beitrag von Nightskull »

Hiker hat geschrieben: Fr, 26.01.2024 14:22
Nightskull hat geschrieben: Fr, 26.01.2024 07:14 ... Apache Xampp Datenbank ...
D.h. da gibt es eine MySQL-Datenbank?

Dann würde ich eher versuchen diese mit Base zu verbinden ( s. Handbuch LibreOffice Base ) und die Daten direkt per SQL-Abfrage zu erzeugen. Das Ergebnis in eine Calc-Tabelle zu übernehmen ist dann trivial...

Wenn Du "nur" versuchst den exportierten Text "aufzuhübschen", könnte man einen entsprechenden Report für die Datenbank erzeugen.
Hallo @Hiker,

mikeleb hat mir den Tipp gegeben, das ich wie du schon beschrieben hast. eine Verbindung zur mySql Datenbank mit Base zu erzeugen.
Du schreibst wie Handbuch LibreOffice, ich habe hier OpenOffice. Gibt es da Unterschiede.
Das andere mit der Text Datei ist zu komplex.
Hast du dazu ein paar Tipps?
Gruß
Michael
Benutzeravatar
Nightskull
**
Beiträge: 25
Registriert: Mo, 22.01.2024 07:07

Re: Text zwischen 2 Markern Formatieren

Beitrag von Nightskull »

mikeleb hat geschrieben: Mo, 29.01.2024 21:05 Alternativ exportierst du die Abfrage in eine csv-Datei. So werden die Kategorie, Titel, Beschreibung, Auktionsnummer, Preis schön sauber getrennt in eine Zeile abgelegt. In der Form können sie dann erheblich einfacher in Writer eingearbeitet werden (z. B. auch einfach per Serienbrieffunktionalität, ganz ohne Makros).
Das könnte auch funktionieren. Konnte eine csv-Daten exportieren. Werde nun das ganze nochmal morgen in aller Ruhe als Serienbrieffunktion in writer einbringen.

Werde berichten.

Allen nochmals Danke für den Support!!
Gruß
Michael
Hiker
******
Beiträge: 591
Registriert: Mo, 08.09.2014 21:34
Wohnort: Berlin

Re: Text zwischen 2 Markern Formatieren

Beitrag von Hiker »

Nightskull hat geschrieben: Mo, 29.01.2024 21:59....
Du schreibst wie Handbuch LibreOffice, ich habe hier OpenOffice. Gibt es da Unterschiede.
Das andere mit der Text Datei ist zu komplex.
Hast du dazu ein paar Tipps?
Die Grundlagen sind bei Open- und LibreOffice immer noch gleich, auch wenn LibreOffice einiges weiterentwickelt hat. Base ist wohl der Teil in dem sich am wenigsten geändert hat. Es gibt zwar inzwischen noch einen weiteren "eingebetteten" Datenbanktyp und auch einen "nativen" Konnector für MariaDB, aber bei Thema Base mit externen Datenbanken zu verbinden ist eigentlich alles beim alten geblieben.

Du solltest erstmal genau feststellen, welche Datenbank bei Euch läuft: klassisch MySQL oder schon MariaDB. Dann must Du entscheiden, ob Du per ODBC oder via JDBC zur Datenbank verbindest und herausfinden ob XAMP dir die Treiber schon installiert hat, oder noch etwas fehlt.

Im LibreOffice Handbuch zu Base findest Du das ausführlich beschrieben. Damit solltest Du erstmal die Verbindung zur Datenbank hinbekommen. Wenn Du soweit bist, kann man mit einer recht einfachen SQL-Abfrage die Tabelle für das Makro von mikeleb erzeugen und an Calc koppeln. (Man ruft dann nur die leere Vorlage auf ind per Daten->aktualisieren landen die Daten in Calc zum umformatieren.)

https://de.libreoffice.org/get-help/documentation/

Oder direkt beim Autor der deutschen Version:
https://www.familiegrosskopf.de/robert/ ... e_handbuch
Libre Office 6.3.1 (Win 10 Pro) / Libre Office 6.0.7 (Win8.1 Pro, Win 7 Pro) / AOO (Win 7)
Benutzeravatar
Nightskull
**
Beiträge: 25
Registriert: Mo, 22.01.2024 07:07

Re: Text zwischen 2 Markern Formatieren

Beitrag von Nightskull »

Hallo Hiker,

Zunächst mal danke für deine Tipps und Links.
Ich werde sie mir morgen mal anschauen.
Soweit ich erkennen kann ist es eine alte MySQL Datenbank. Ich glaube aus 2007.
Wenn das mit der Anbindung mit Base funktioniert, wäre es schon ok.
Im Moment bin ich mit dem Tipp von mikeleb , den Export in eine csv Datei zu realisieren. Habe schon Erfolg damit.
Diese csv Datei kann ich dann in Calc importieren und weiterverarbeiten.
Einen schönen Abend noch und vielen Dank für euer
Support.
Gruß
Michael
Benutzeravatar
Nightskull
**
Beiträge: 25
Registriert: Mo, 22.01.2024 07:07

Re: Text zwischen 2 Markern Formatieren

Beitrag von Nightskull »

Guten Tag,

nach langem Testen der Anbindung der Datenbank, bin ich darüber gescheitert.
Was ich aus der Datenbank, mittels Exportfunktion, die schon in der Verwaltung hinterlegt war, geschafft habe ist die Erzeugung zweier Dateien.
1x category.csv
1x katalog.csv
Diese werde ich verlinken als Download.

Hieraus konnte ich zwei Dateien per Textimport (Beispiel katalog.csv) mit Libreoffice am iMac bzw. auf einem Windows 10 PC erstellen. Siehe Screenshot.
Textimport.png
Textimport.png (97.94 KiB) 1118 mal betrachtet
Es entsteht eine Datei mit für mich brauchbaren Tabellendaten. Diese konnte ich als Seriendruckfelder für Word (speichern als xlsx) oder Writer (speichern als ods) nutzen.
Wobei Word für mich die bessere Funktionen hat. In Word funktioniert das Einbringen der DatenFelder und Formatierung einfacher, da ich diese Sachen öfters nutze für Etikettendruckerei.

Textimport.png
Textimport.png (97.94 KiB) 1118 mal betrachtet
Die erste Spalte ID kann man vernachlässigen. Wichtig sind Los, Kat, Titel, Descr, ENR, Cond, Cond2 und Preis. Auch die letzte Spalte Bild sind für den Katalog unwichtig.

Meine Frage: Wäre es möglich die Datei katalog_für_Seriendruckfelder.ods in der Spalte B (Kat) 1-177 immer nur die erste Ziffer in der Katalog als Seriendruckfeld aufnimmt und die nachfolgenden gleichen Nummern weglässt? Eventuell per Macro ?
Kategorie.png
Kategorie.png (80.16 KiB) 1118 mal betrachtet
Lösung wäre 1x die Kategorie aufzuführen und dann nur noch die Reihen mit (Los und Titel usw.)
FertigerText.png
FertigerText.png (167.36 KiB) 1118 mal betrachtet
Hier der Link:
https://gofile.me/3SGiT/L59TWB540

Seriendruckfelder in Word bzw. Writer:
SerienDruckFelderWord.png
SerienDruckFelderWord.png (227.04 KiB) 1118 mal betrachtet
Vielen Dank schon mal.
Dateianhänge
SeriendruckFelderWriter.png
SeriendruckFelderWriter.png (158.63 KiB) 1118 mal betrachtet
TextabschnittImport.png
TextabschnittImport.png (67.57 KiB) 1118 mal betrachtet
Gruß
Michael
Antworten