ich habe das Problem, dass sich die Beträge in einem ALV-Tree nicht richtig formatieren lassen.
Ich möchte untereinaderstehende Plus und Minus-Beträge rechtsbündig darstellen, aber so, dass die letzten Nachkommastellen für jede Zeile auf der gleichen Position stehen.
Bei mir wird das rechtsbündig, aber ähnlich einem Zeichenfeld formatiert und sieht in etwa so aus:
____100,00
__200,00 -
__1000,00
Tatsächlich soll es aber so aussehen, nämlich die letzten Nullen jeweils untereinander:
___100,00
___200,00 -
__1000,00
Ich habe schon geschaut, ob es irgendwie am Datenelement der Spalte liegen könnte, dem ist aber nicht der Fall. Im Feldkatalog für das ALV gibt es verschiedene Formatierungsmöglichkeiten für die einzelnen Felder,
allerdings scheint es keine für dieses Problem zu geben. Es gebe im Feldkatalog noch die Möglichkeit mit EDIT_MASK eine Konvertierungsroutine für die Spalte auszuführen, allerdings habe ich auch hier keine passende
Konvertierungsroutine gefunden.
Gibt es irgendwie eine Möglichkeit die gewünschte Formatierung hier durchzuführen?
entschudligen Sie für die späte Rückantwort und danke erstmal für Ihre Hilfe.
Ich habe etwas änhliches wie WRITE TO probiert:
<fs_cat>-EDIT_MASK = 'RR______,__V'.
<fs_cat> ist vom Typ LVC_S_FCAT und m.W. normalerweise für die Darstellung von ALV-Controls zuständig.
Im obigen Beispiel verwende ich eine Aufbereitungsschablone analog zum WRITE TO-Befehl.
Leider funktioniert das so nicht, da ich entgegen der Beschreibung in der Schlüsselwortdokumentation bei dem 'V' bei positiven Werten kein Leerzeichen, sondern ein '' bekomme.
Die Plus- und Minus-Beträge werden daher nicht wie gewünscht untereinander geschrieben.
Können Sie mir genauer sagen, wie ich WRITE TO hier anwenden könnte?
bei Write mittels F1-Taste die Hilfe aufrufen. write Feld to ALV-Feld.
Aus der Doku.
Die Anweisung WRITE TO berücksichtigt die Vorgaben im Benutzerstammsatz, die beispielsweise angeben, ob das Dezimalzeichen ein Punkt (.) oder Komma (,) sein soll. Weiterhin können außer UNDER und NO-GAP sämtliche Aufbereitungsoptionen der Anweisung WRITE genutzt werden.