CL_SALV_TABLE führende Leerzeichen verschwinden

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Die Objektorientierung mit ABAP®: Vererbung, Dynamische Programmierung, GUI Controls (u.a. ALV im OO).
12 Beiträge • Seite 1 von 1
12 Beiträge Seite 1 von 1

CL_SALV_TABLE führende Leerzeichen verschwinden

Beitrag von ST22 (Specialist / 274 / 40 / 40 ) »
Hallo Zusammen,

ich gebe in einem ALV (CL_SALV_TABLE) generiertes ABAP Coding aus, incl. führender Leerzeichen (wegen Einrückungen).
Typ der ALV Zellen ist TEXT255.
Sämtliche führenden Leerstellen werden bei der ALV Ausgabe unterdrückt, wechsle ich in die Druckansicht, sind diese sichtbar.
Ich gehe mal davon aus, dass ich ein Spaltenattribut setzen kann, um die führenden Leerzeichen dennoch auszugeben?

Kann mir jemand weiter helfen?

Grüße
Frank

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: CL_SALV_TABLE führende Leerzeichen verschwinden

Beitrag von Thanatos82 (Expert / 699 / 32 / 123 ) »
Hi,

es gibt in der Klasse CL_SALV_COLUMN_TABLE (Klasse für Spalteneinstellungen) die Methode "SET_OPTIMIZED". Eventuell hast du die ausgeführt? Damit verschwinden in der Spalte nämlich "überflüssige" Leerzeichen.
Gruß,
der Matze

Re: CL_SALV_TABLE führende Leerzeichen verschwinden

Beitrag von ST22 (Specialist / 274 / 40 / 40 ) »
Hallo Matze,

das bringt keine Veränderung:
weder das

Code: Alles auswählen.

 
lr_column->set_optimized( abap_false ).
noch das explizite Setzen der Ausgabelänge

Code: Alles auswählen.

 
lr_column->set_output_length( 255 ).
Bin auf der Suche...;-)

Re: CL_SALV_TABLE führende Leerzeichen verschwinden

Beitrag von ewx (Top Expert / 4782 / 294 / 628 ) »
Probier mal die Schrift auf eine Äquidistanzschrift einzustellen.
UPPS. Scheint im SALV gar nicht zu gehen, nur im ALV-Grid... ;(

SET_OPTIMIZED wird nicht der Grund sein, denn da wird nur die optimale Spaltenbreite anhand des Spalteninhalts gesetzt. Der Inhalt selbst wird jedoch nicht verändert.

Re: CL_SALV_TABLE führende Leerzeichen verschwinden

Beitrag von a-dead-trousers (Top Expert / 4267 / 213 / 1140 ) »
ewx hat geschrieben:Probier mal die Schrift auf eine Äquidistanzschrift einzustellen.
UPPS. Scheint im SALV gar nicht zu gehen, nur im ALV-Grid... ;(
Hä, Wo?

Aber ich glaub auch, dass hier die proportionale Schrift im (S)ALV schuld ist. Leerzeichen sind nun mal nicht sonderlich "breit" :P
ST22 hat geschrieben:ich gebe in einem ALV (CL_SALV_TABLE) generiertes ABAP Coding aus, incl. führender Leerzeichen (wegen Einrückungen).
Wieso willst du hierfür ein (S)ALV verwenden?
Wäre es nicht mit einem einfachen Editor (CL_GUI_TEXTEDIT) besser, den kann man nämlich auf Äquidistanz umschalten.
Alternativ, wenn es unbedingt eine Tabelle sein muss, könntest du ja ein Table-Control verwenden. Auch hier gibt es Äquidistanzschrift.

lg ADT

EDIT:
Hey, mit diesem Post hab ich die Jahreszahl (2015) erreicht, ich bin also endlich in der Gegenwart angekommen 8)
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: CL_SALV_TABLE führende Leerzeichen verschwinden

Beitrag von ewx (Top Expert / 4782 / 294 / 628 ) »
a-dead-trousers hat geschrieben:
ewx hat geschrieben:Probier mal die Schrift auf eine Äquidistanzschrift einzustellen.
UPPS. Scheint im SALV gar nicht zu gehen, nur im ALV-Grid... ;(
Hä, Wo?
Hab's verwechselt mit dem TreeControl (CL_ITEM_TREE_CONTROL=>ITEM_FONT_FIXED / ITEM_FONT_PROP) :cry:
a-dead-trousers hat geschrieben: Hey, mit diesem Post hab ich die Jahreszahl (2015) erreicht, ich bin also endlich in der Gegenwart angekommen 8)
Glückwunsch! Und dann gleich noch einen für die Zukunftssicherung... ;)

Re: CL_SALV_TABLE führende Leerzeichen verschwinden

Beitrag von black_adept (Top Expert / 3942 / 105 / 885 ) »
Hallo Frank,

Code: Alles auswählen.

      LOOP AT go_salv->get_columns( )->get( ) ASSIGNING FIELD-SYMBOL(<ls_column>).
        <ls_column>-r_column->set_leading_spaces( abap_true ).
      ENDLOOP.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: CL_SALV_TABLE führende Leerzeichen verschwinden

Beitrag von a-dead-trousers (Top Expert / 4267 / 213 / 1140 ) »
Wenn man sich die Methode CL_SALV_CONTROLLER_METADATA=>GET_LVC_FIELDCATALOG anschaut wird das Kennzeichen von LEADING_SPACES in PARAMETER0 des LVC_S_FCAT (ALV-Grid) übergeführt. :shock:
Schaut für mich nach einem "undokumentierten" Feature aus, das es irgendwie in ein "normales" Feature geschafft hat. :evil:
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: CL_SALV_TABLE führende Leerzeichen verschwinden

Beitrag von ST22 (Specialist / 274 / 40 / 40 ) »
Moin,

habe gestern noch diverse Beiträge im SDN gefunden, die dieselbe Problematik beklagen (wobei es jetzt auch kein Weltuntergang ist, ich hatte nur nicht mit dem Problem gerechnet).
Es ist auf jeden Fall kein Problem der Schriftart bzw. der Darstellung.
Ich werde eine eigene Funktion einbauen, die mir die Daten in die Zwischenablage stellt, dann klappt das schon so, wie ich es vorhatte.
Wenn man sich die Methode CL_SALV_CONTROLLER_METADATA=>GET_LVC_FIELDCATALOG anschaut wird das Kennzeichen von LEADING_SPACES in PARAMETER0 des LVC_S_FCAT (ALV-Grid) übergeführt.
@a-dead-trousers Da kann ich dir nicht ganz folgen, finde in CL_SALV_CONTROLLER_METADATA=>GET_LVC_FIELDCATALOG keinen Parameter / Variable o.Ä. der LEADING_SPACES heißt. PARAMETER0 wird auch nirgendwo angesprochen bzw. finde ich die Stelle nicht? (Rel. 7.31)

Viele Grüße
Frank

Re: CL_SALV_TABLE führende Leerzeichen verschwinden

Beitrag von a-dead-trousers (Top Expert / 4267 / 213 / 1140 ) »
Ganz genau steht das drinnen:

Code: Alles auswählen.

    ls_lvc_fcat-PARAMETER0 = ls_column-r_column->leading_spaces.   "YI3K085383
Hat bei dir die Klasse CL_SALV_COLUMN die Methoden SET_LEADING_SPACES und HAS_LEADING_SPACES?

Scheint aber erst mit einem späteren Release hinzugekommen zu sein.
Wobei 7.02 jünger ist als 7.31 :?
Soweit ich weiß ist 7.02 ein 7.00 mit einigen Funktionen aus dem 7.40er und 7.30er Zweig die sich relativ einfach zurückportieren ließen.

lg ADT
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: CL_SALV_TABLE führende Leerzeichen verschwinden

Beitrag von ST22 (Specialist / 274 / 40 / 40 ) »
Hat bei dir die Klasse CL_SALV_COLUMN die Methoden SET_LEADING_SPACES und HAS_LEADING_SPACES?
Nein, definitiv nicht vorhanden.
Scheint also wieder raus geflogen zu sein?

Re: CL_SALV_TABLE führende Leerzeichen verschwinden

Beitrag von black_adept (Top Expert / 3942 / 105 / 885 ) »
ST22 hat geschrieben:
Hat bei dir die Klasse CL_SALV_COLUMN die Methoden SET_LEADING_SPACES und HAS_LEADING_SPACES?
Nein, definitiv nicht vorhanden.
Scheint also wieder raus geflogen zu sein?
Oder kommt erst noch - mein Coding kommt von einem 7.40 EHP6
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Seite 1 von 1

Vergleichbare Themen

2
Antw.
231
Views
Leerzeichen verschwinden vom FormattedTextEdit im PDF
von erzoo24 » 19.01.2022 20:23 • Verfasst in ABAP® für Anfänger
5
Antw.
5980
Views
führende leerzeichen in einem string löschen
von francula » 21.07.2004 09:22 • Verfasst in ABAP® Core
2
Antw.
3792
Views
Salv Table - Layouts speichern
von JohnLocklay » 14.06.2019 11:33 • Verfasst in ABAP Objects®
3
Antw.
3371
Views
LOOP über führende interne Tabelle + READ TABLE und MODIFY
von HawkDT » 23.03.2017 13:02 • Verfasst in ABAP® für Anfänger
3
Antw.
1903
Views
GUI Status verhindert on click Event des SALV Table
von Pinguincommander » 05.02.2019 09:51 • Verfasst in ABAP® Core

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.