none
Zeilenumbruch wird nicht angezeigt. RRS feed

  • Frage

  • Hallo!

    Kann mir jemand helfen?

    Habe folgendes Problem. Als Eingabemaske benutze ich LightSwitch(String Feld), um Daten auf SQL Server zu schreiben(NVarchar(MAX)).

    Bei der Eingabe benutze ich Zeilenumbruch(Return), leider nicht sichtbar auf dem Server. Brauche das Feld für Bericht (Reporting Services).

    Danke und Gruß

    Elena

    Donnerstag, 28. November 2013 13:15

Antworten

  • Hallo Elena,

    ich nehme generell UltraEdit, der ist aber kostenpflichtig.

    Visual Studio hat aber auch einen integrierten Hex Editor. Nicht schön, reicht aber hierfür problemlos aus.

    Öffne dafür einfach mal eine leere Textdatei in Visual Studio per rechtze Maustaste -> Öffnen mit ... und dort dann "Binär-Editor" auswählen.

    Dort dann den Inhalt aus dem Feld der Tabelle einfügen.


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    Donnerstag, 28. November 2013 14:49
    Moderator
  • Im Editor steht 0D 0A.

    Hallo Elena,

    0D (Hex für 13) = Carriage Return, 0A (Hex für 10) = Linefeed, oder abgekürzt = Cr+Lf; das ist ein Zeilenumbruch. Die werden aber im Reporting Services normalerweise richtig dargestellt (hier in einer Textbox):


    Olaf Helper

    [ Blog] [ Xing] [ MVP]

    Freitag, 29. November 2013 10:33
  • Mit AcceptsReturn habe ich mich geirrt, das hatte ich von woanders her im Kopf.

    Also, ich habe es mal ausprobiert mit VS 2013 + LightSwitch Desktop (Silverlight) Projekt und einfach normal ein paar Zeilen in einer Standard-Textbox eingegeben:

    und siehe da, der Zeilenumbruch wird nur mit 0D=13 = Carriage Return gespeichert.

    Also must Du entweder in LightSwitch beim Speichern aus dem einfachen einen echten Zeilenumbruch machen oder in SSRS bei der Anzeige der Daten.


    Olaf Helper

    [ Blog] [ Xing] [ MVP]


    Sonntag, 1. Dezember 2013 09:15

Alle Antworten

  • Hallo Elena,

    im Bericht sollte das eigentlich korrekt angezeigt werden. Hast Du das denn schon mal probiert?

    Im SSMS werden die Zeilenumbrüche in der Ergebnisliste nicht angezeigt.


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    Donnerstag, 28. November 2013 13:23
    Moderator
  • Hallo Stefan,

    habe Bericht getestet, leider statt Zeilenumbruch nur Leerzeichen.

    Die Daten, die ich aus Access importiert habe, werden korrekt angezeigt.

    Gruß

    Elena

    Donnerstag, 28. November 2013 13:31
  • Hallo Elena,

    kannst Du mal schauen, ob da ein CrLf oder nur ein Cr bzw. Lf drinsteht? Am besten den Inhalt nehmen, in einen Texteditor mit Hexansicht einfügen und dann schauen, ob da 0D 0A oder nur 0D oder 0A steht.


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    Donnerstag, 28. November 2013 13:42
    Moderator
  • Hallo Stefan,

    habe so einen Editor nicht, muss warten bis IT bei mir installiert, welcher kannst du empfehlen?

    Gruß

    Elena

    Donnerstag, 28. November 2013 14:20
  • Hallo Elena,

    ich nehme generell UltraEdit, der ist aber kostenpflichtig.

    Visual Studio hat aber auch einen integrierten Hex Editor. Nicht schön, reicht aber hierfür problemlos aus.

    Öffne dafür einfach mal eine leere Textdatei in Visual Studio per rechtze Maustaste -> Öffnen mit ... und dort dann "Binär-Editor" auswählen.

    Dort dann den Inhalt aus dem Feld der Tabelle einfügen.


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    Donnerstag, 28. November 2013 14:49
    Moderator
  • Hallo Stefan,

    Im Editor steht 0D 0A.

    Gruß

    Elena

    Freitag, 29. November 2013 07:57
  • Im Editor steht 0D 0A.

    Hallo Elena,

    0D (Hex für 13) = Carriage Return, 0A (Hex für 10) = Linefeed, oder abgekürzt = Cr+Lf; das ist ein Zeilenumbruch. Die werden aber im Reporting Services normalerweise richtig dargestellt (hier in einer Textbox):


    Olaf Helper

    [ Blog] [ Xing] [ MVP]

    Freitag, 29. November 2013 10:33
  • Hallo Olaf,

    so funktioniert es im Reporting Services.

    Habe eine Zeile mit Umbruch aus Excel, zeigt auch richtig.

    Aber Eingaben über LightSwitch nicht.

    Gruß

    Elena

    Freitag, 29. November 2013 10:54
  • Aber Eingaben über LightSwitch nicht.


    Jetzt bin ich verwirrt, wo kommt denn nun das 0D + 0A her, wenn nicht aus LightSwitch?

    Olaf Helper

    [ Blog] [ Xing] [ MVP]

    Freitag, 29. November 2013 11:09
  • 1. Alte Daten sind aus derAccess Datenbank importiert. In der SQL Tabelle steht 0d 0a, im Bericht Zeilenumbruch.

    2.Daten Änderung und Neueingabe ube LightSwitch. Im Editor wieder 0d und 0a, aber im Bericht nur Leerzeile.

    Klingt verrückt, aber wahr.

    Gruß

    Elena


    • Bearbeitet ElenaMol Freitag, 29. November 2013 12:00
    Freitag, 29. November 2013 11:36
  • .

    2.Daten Änderung und Neueingabe ube LightSwitch. Im Editor wieder 0d und 0a, aber im Bericht nur Leerzeile.

    falsch, es macht keine Leerzeile.
    Freitag, 29. November 2013 11:45
  • Habe gerade kein LightSwitch zur Hand, kann ich aber heute Abend austesten. Gibt es da nicht an der Textbox eine AcceptsReturn Eigenschaft?

    Olaf Helper

    [ Blog] [ Xing] [ MVP]

    Freitag, 29. November 2013 12:06
  • Wie kann ich es überprüfen?

    Freitag, 29. November 2013 12:18
  • Mit AcceptsReturn habe ich mich geirrt, das hatte ich von woanders her im Kopf.

    Also, ich habe es mal ausprobiert mit VS 2013 + LightSwitch Desktop (Silverlight) Projekt und einfach normal ein paar Zeilen in einer Standard-Textbox eingegeben:

    und siehe da, der Zeilenumbruch wird nur mit 0D=13 = Carriage Return gespeichert.

    Also must Du entweder in LightSwitch beim Speichern aus dem einfachen einen echten Zeilenumbruch machen oder in SSRS bei der Anzeige der Daten.


    Olaf Helper

    [ Blog] [ Xing] [ MVP]


    Sonntag, 1. Dezember 2013 09:15
  • Hallo Olaf,

    vielen Dank für deine Hilfe!

    Habe in SSRS der Ausrduck eingefügt:

    =Replace(Fields!Messg.Value,Chr(13),Chr(13)+Chr(10))

    Es funktioniert, hoffe habe dich richtig verstanden und Syntax stimmt.

    Gruß

    Elena



    • Bearbeitet ElenaMol Montag, 2. Dezember 2013 08:42
    Montag, 2. Dezember 2013 08:40
  • Es funktioniert, hoffe habe dich richtig verstanden und Syntax stimmt.


    Ja, so war es gemeint und das passt von der Syntax her.

    Olaf Helper

    [ Blog] [ Xing] [ MVP]

    Montag, 2. Dezember 2013 09:03