Zeilenumbrüche übertragen von einem RTF zum nächsten

  • Hallo zusammen,


    vielleicht könnt ihr mir helfen, Auf einem Formular gibt es wie bei einer Chat funktion die möglichkeit in einem RTF etwas einzugeben und mit einem Knopf dann abzuschicken in ein anderes RTF.


    Wenn ich in dem Ursprungs RTF Zeilenumbrüche verwende, wird der Text in dem RTF an das der Text übertragen wird ohne Zeilenumbrüche angezeigt und einfach ohne Leerzeichen aneinandergereiht.


    Mit SHIFT-RETURN entstehen Zeilenumbrüche die heile bleiben. Aber das ist natürlich nicht im Sinne des Users immer SHIFT+ Return zu drücken.


    Ich habe schon folgendes versucht:


    Im Script, das den Text überträgt nach CHR(13) zu suchen und durch CHR(10) zu ersetzen. ---> Dadurch ändert sich nichts.


    Mache ich es genau andersherum, CHR(10) durch CHR(13) ersetzen, so ist es auch nicht besser und die SHIFT-Returns funktionieren auch nicht mehr. Daher gehe ich davon aus, dass die CHR(10) vernünftig übertragen werden.


    Was wird aber in dem String gesetzt, wenn ich einfach nur RETURN drücke? Kann man das vielleicht im Script durch CHR(10) ersetzen?


    Folgenden Code verwende ich um das RTF oben zu füllen:


    Call uidoc.FieldAppendText("Ticket_Sachbearbeiterkommentar", Date$ + " " + Time$ + " - " +session.CommonUserName + Chr(10) + uidoc.FieldGetText("Ticket_Sachbearbeiterkom_Submit") +Chr(10)+Chr(10) )


    Wäre klasse, wenn jemand eine Idee hat! Leider muss das ganze im UI passieren und kann nicht im Backend ablaufen.


    Anbei ein Beispiel. wenn danach der Knopf rechts betätigt wird, entsteht ein neuer Eintrag darüber in dem RTF aber ohne die Zeilenumbrüche mit dem gesamten Text in einer Zeile.


    Vielen Dank vorweg


    Simon

    • Offizieller Beitrag

    warum machst Du dies im Frontend? Im Backend gibt es für RT-Felder AddNewLine.


    Das UiDoc muss im EditMode sein und das Chat-Historie-Feld muss bearbeitbar sein. Die Vorgehensweise macht doch nur Sinn, wenn dieses besagte Feld nicht bearbeitbar ist.


    Gruß
    DIrk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

  • In der Variable wird es ohne Zeilenumbrüche dargestellt. Ich gehe aber auch davon aus, dass der Debugger die Zeilenumbrüche nicht darstellen kann.


    Ich mache das im Frontend, weil das Chat-Historie-Feld nicht bearbeitet werden darf. Es soll der Dokumentation des Verlaufs eines Tickets in einem HelpDesk System dienen. Das Dokument zwischendurch abspeichern, im Backend bearbeiten und wieder in den UI holen geht nicht, da so bestimmte input-validations ablaufen, die ich an der Stelle noch nicht gebrauchen kann!


    Irgendwie muss das doch auch im Frontend machbar sein?


    Viele Grüße


    Simon

  • Dir ist schon klar, daß du dir selber widersprichst.


    Feld nicht bearbeitbar also ist Frontend nicht möglich, da das Frontend nur auf bearbeitbare Felder schreibend zugreifen kann.


    Alles andere muss im Backend laufen

  • Hallo taurec,


    in dem Beispiel oben ist das Feld bearbeitbar, weil ich getestet habe, ob das was ändert. im Original ist das Feld "calculated". So dass niemand etwas daran ändern kann.


    Das funktioniert auch im UI!


    Viele Grüße


    Simon

  • Daß es nicht geht siehst du doch, denn im Backend kannst du mit RichText Inhalten arbeiten, im Frontend aber nur wenn alle beteiligten Felder bearbeitbar sind und du eben nicht mit den reinen Text Funktionen arbeitest

  • Hallo taurec,


    mit SHIFT-Return funktioniert es ja, daher war meine Hoffnung, dass jemand weiss, wie ich aus den normalen Returns im String Shift-Returns mache. Dann hätte ich ja alles was ich will. Die reinen Text-Funktionen scheinen also die SHIFT-Returns vernünftig zu übertragen!



    VG


    Simo

    • Offizieller Beitrag

    Warum schreibst Du die zu protokollierenden Felder nicht im PostSave in das Historie-Feld? Damit gehst Du allen Problemen mit der Synchronisation Front- und Backend und mit dem bearbeitbaren Feld aus dem Weg.


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

  • Ich versuche das ganze jetzt mit dem PostSave Weg. Allerdings kann ich ja in ein "Computed" Rich-Text Feld nicht schreiben! Daher habe ich versucht in ein Hilfsfeld zu schreiben, dass hidden aber nicht computed ist. das funktioniert, aber ich kann über den Standardwert eines computed-Feldes leider nicht den Inhalt des Hilfsfeldes wiedergeben, da es sich um Rich-Text handelt.


    Wie schaffe ich es PostSave in ein "nicht bearbeitbares" Feld zu schreiben?


    Vielen Dank für Hilfe im Voraus


    Simon