Seite 1 von 1

Zeilenumbrüche aus Datenbankfeld nicht im Seriendruckfeld

Verfasst: Mi 13. Mai 2015, 15:05
von bacota
Hallo Liebe Base-Experten,

im Writer-Bereich konnte mir leider niemand helfen.
Ist hier ein Base Experte, der mir bei meinem Problem helfen kann?

In einem Datenbank-Feld steht Text, der Zeilenumbrüche beinhaltet.

Im Seriendruckfeld werden diese Zeilenumbrüche allerdings leider verschluckt.

Wie kann ich die Zeilenumbrüche im Seriendruckfeld darstellen lassen?
Falls es keine Möglichkeit dafür gibt, existiert eine Andere gute Lösung für das Problem?

Gruß
Bernd

Re: Zeilenumbrüche aus Datenbankfeld nicht im Seriendruckfel

Verfasst: Mi 13. Mai 2015, 19:23
von RobertG
Hallo Bernd,

ich habe das eben hier getestet. Ich kann das Problem nicht nachvollziehen.
Folgendes habe ich gemacht:
Datenbank erstellt | Tabelle mit drei Feldern (ID, Text-kurz, Text_lang) | Formular mit einem Textfeld, das auf 'mehrzeilig' gestellt wurde und einen Unix-Zeilenumbruch hat, erstellt | Text mit Umbrüchen erstellt.
Wenn ich das jetzt in einen Serienbrief einlese, so werden mir auch Zeilenumbrüche geliefert - nur Zeilenumbrüche, keine Absätze.

Gruß

Robert

Re: Zeilenumbrüche aus Datenbankfeld nicht im Seriendruckfel

Verfasst: Fr 15. Mai 2015, 13:38
von bacota
Stimmt tatsächlich.

Dann habe ich ein Problem mit den Steuerzeichen.

In einer Fachanwendung (auf deren Implementation ich keinen Einfluss habe) gebe ich zum füllen eines Feldes Textzeichen und Zeilenumbrüche durch Tippen der Enter-Taste ein.

-Wenn ich dann aber das Datenbankfeld als Seriendruckfeld in Writer einfüge erhalte ich an Stelle des erwarteten Zeilenumbruchs (\n) einen tab (\t).
-Wenn ich aus der Datenbanktabellenansicht (F4) den Text des Feldes kopiere und in ein leeres Writer Dokument einfüge (um die in der Datentabelle verwendeten Steuerzeichen herauszufinden) bleiben nur noch Leerzeichen anstelle der Erwarteten Zeilenumbrüche.

Wie kann ich herausfinden welche Steuerzeichen wirklich in der Tabelle verwendet werden? (Die Base(Tabelle) ist mit einer MySql-Datenbank verbunden)

Kann ich die Steuerzeichen vor übergabe an Base/Writer beeinflussen, gibt es eine Möglichkeit die Steuerzeichen(Interpretation) des Seriendruckfeldes zu beeinflussen oder wenigstens im Nachhinein das \t durch \n zu ersetzen (Suchen und Ersetzen funktioniert im Seriendruckfeld nicht)?

Re: Zeilenumbrüche aus Datenbankfeld nicht im Seriendruckfel

Verfasst: Fr 15. Mai 2015, 15:52
von RobertG
Hallo Bernd,

schreibe einmal genauer, worauf Du keinen Einfluss hast.
Du füllst den Inhalt doch in einem Formular aus. Das ist dann doch ein Base-Formular - oder nutzt Du dazu eine andere Verbindung? Kannst Du die Eigenschaften des Feldes beeinflussen? Dort gibt es einen Windows- und einen Unix-Zeilenumbruch.
Nach http://de.wikipedia.org/wiki/Steuerzeichen sind unter Windows zwei Zeichen hintereinander erforderlich (CHAR(13) zusammen mit CHAR(10)), bei Unix reicht CHAR(10).

Ich werde nachher einmal mit Base und einer Verbindung zu MySQL testen, ob das irgendeinen Einfluss hat.

Gruß

Robert

Re: Zeilenumbrüche aus Datenbankfeld nicht im Seriendruckfel

Verfasst: Fr 15. Mai 2015, 20:21
von RobertG
Hallo Bernd,

ich habe das jetzt auch mit OpenSUSE 13.2/MariaDB und der direkten Verbindung zur MariaDB (also nicht ODBC oder JDBC) getestet. Dort ist das Verhalten gleich. Egal ob es sich um ein Textfeld oder um ein Memofeld handelt. Die Zeilenumbrüche sind auch im Druck vorhanden.

Gruß

Robert

Re: Zeilenumbrüche aus Datenbankfeld nicht im Seriendruckfel

Verfasst: Mo 18. Mai 2015, 10:10
von bacota
Die Datenbank wird durch eine externe Fachanwendung mit Daten gefüllt. Ich habe keinerlei Einfluss/Zugriff auf die interna dieses Programms (Kein Base).

Ich möchte die Daten aber in Base/Writer verwenden, habe aber das Problem dass die externe Fachanwendung anscheinend anstelle von Zeilenumbrüchen Tabs in das Feld schreibt.

Wenn ich dann das Feld über ein Seriendruckfeld einbinde werden natürlich tabs anstelle der von mir gewünschten Zeilenumbrüche dargestellt.

Ich schaffe es aber nicht das Seriendruckfeld zu bearbeiten.

Gruß
Bernd

Re: Zeilenumbrüche aus Datenbankfeld nicht im Seriendruckfel

Verfasst: Di 19. Mai 2015, 21:48
von RobertG
Hallo Bernd,

mit dem Seriendruck habe ich mich bisher nicht so intensiv beschäftigt. Vielleicht wäre es angebracht, einen Zwischenschritt einzubauen: Über den Druck eine Datei erstellen lassen, dann als regulaären Ausdruck '\t' durch '\n' ersetzen lassen. Ansonsten wäre für mich erst einmal nur eine Lösung denkbar, die vor dem Schicken des Textes an Writer greift: Druck statt über einen Serienbrief über Textfelder, die über eine Abfrage beschickt werden. Dort könnte dann vielleicht der Tabulator durch einen Zeilenumbruch ersetzt werden.
Wie ein Brief über Textfelder geht ist ansatzweise in der zukünftige Fassung des Handbuches zu lesen.

Gruß

Robert