ALV-Grid: Datentypen der Spalten

Getting started ... Alles für einen gelungenen Start.
14 Beiträge • Seite 1 von 1
14 Beiträge Seite 1 von 1

ALV-Grid: Datentypen der Spalten

Beitrag von OliTe (ForumUser / 21 / 0 / 0 ) »
Hallo Zusammen,

ich habe folgendes Problem:
Ich habe ein ALV-Grid mit dem Fieldcatalog ...

Code: Alles auswählen.

  ls_fcat-fieldname = 'PERNR'.
  ls_fcat-ref_table = 'P01CKA'.
  ls_fcat-ref_field = 'PERNR'.
  ls_fcat-coltext   = 'Pernr.'.
  ls_fcat-no_out    =  space.
  APPEND ls_fcat TO pt_fieldcat.
  CLEAR ls_fcat.

  ls_fcat-fieldname = 'TARIF'.
  ls_fcat-ref_table = 'ZTAL_TARIFE'.
  ls_fcat-ref_field = 'TARIF'.
  ls_fcat-coltext   = 'Tarif'.
  LS_FCAT-OUTPUTLEN = 5.
  APPEND ls_fcat TO pt_fieldcat.
  CLEAR ls_fcat.

  ls_fcat-fieldname = 'BEGDA'.
  ls_fcat-ref_table = 'P01CKA'.
  ls_fcat-ref_field = 'BEGDA'.
  ls_fcat-coltext   = 'Versich.beginn'.
  LS_FCAT-OUTPUTLEN = 14.
  APPEND ls_fcat TO pt_fieldcat.
  CLEAR ls_fcat.

  ls_fcat-fieldname = 'BEZEICHNUNG'.
  ls_fcat-ref_table = ''.
  LS_FCAT-DD_ROLL   = 'ZLGART_BEZ'.
  ls_fcat-ref_field = 'BEZEICHNUNG'.
  ls_fcat-coltext   = 'Lohnart'.
  LS_FCAT-OUTPUTLEN = 7.
  APPEND ls_fcat TO pt_fieldcat.
  CLEAR ls_fcat.

  ls_fcat-fieldname = 'UEBERSCHUSS'.
  ls_fcat-ref_table = ''.
  ls_fcat-ref_field = 'UEBERSCHUSS'.
  ls_fcat-coltext   = 'Überschuss'.
  LS_FCAT-OUTPUTLEN = 10.
  APPEND ls_fcat TO pt_fieldcat.
  CLEAR ls_fcat.

  ls_fcat-fieldname = 'ZZZFIRM'.
  ls_fcat-ref_table = ''.
  ls_fcat-ref_field = 'ZZZFIRM'.
  ls_fcat-coltext   = 'Firma'.
  LS_FCAT-OUTPUTLEN = 5.
  APPEND ls_fcat TO pt_fieldcat.
  CLEAR ls_fcat.

  ls_fcat-fieldname = 'ANWRT'.
  ls_fcat-ref_table = 'P01CKA'.
  ls_fcat-ref_field = 'ANWRT'.
  ls_fcat-coltext   = 'Anwartschaft'.
  LS_FCAT-OUTPUTLEN = 12.
  APPEND ls_fcat TO pt_fieldcat.
  CLEAR ls_fcat.

  ls_fcat-fieldname = 'DKKAP'.
  ls_fcat-ref_table = 'P01CKA'.
  ls_fcat-ref_field = 'DKKAP'.
  ls_fcat-coltext   = 'Deckungskapital'.
  LS_FCAT-OUTPUTLEN = 14.
  APPEND ls_fcat TO pt_fieldcat.
  CLEAR ls_fcat.

  ls_fcat-fieldname = 'EDDAT'.
  ls_fcat-ref_table = 'P01CKA'.
  ls_fcat-ref_field = 'EDDAT'.
  ls_fcat-coltext   = 'Einzahldat.'.
  LS_FCAT-OUTPUTLEN = 12.
  APPEND ls_fcat TO pt_fieldcat.
  CLEAR ls_fcat.                        
Wenn ich im ALV-Grid beim Lauf des Programmes Daten erfasse und diese Eingabe mit Enter bestätige, erhalte ich folgende Fehlermeldungen:

Lohnart - Ungültiges Datumsformat (Bitte das Datum in der Form DD.MM.YYYY eingeben)
Firma - Ungültiges Datumsformat (Bitte das Datum in der Form DD.MM.YYYY eingeben)

Wieso behauptet das Programm, dass diese beiden Felder vom Typ Datum sein sollen?

Lohnart soll CHAR(2) sein und Firma NUM(4). Wie bekomme ich das hin?

Ich würde mich freuen, wenn mir jemand helfen könnte.

Viele Grüße
Oliver

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


Beitrag von OliTe (ForumUser / 21 / 0 / 0 ) »
Dieser Beitrag wurde schon über 50 mal aufgerufen, doch niemand hat geantwortet. Ist meine Fragestellung unverständlich, fehlen Euch Informationen oder weis es tatsächlich niemand?

Woraus könnte er den die Information ziehen, dass es sich dabei um Felder vom Typ Datum handelt? Dazu müsste es doch eine klare Antwort geben. Wie wird der Datentyp eines ALV-Grid Felds definitert? Vielleicht findet man über diese Frage eine Lösung.

Gruß
Oli

Beitrag von Gast ( / / 0 / 3 ) »
Scherzkeks.

Du nennst uns hier einfach ein paar KUNDENFelder und wir sollen von hier sehen, was ihr da angelegt habt???
Lohnart soll CHAR(2) sein
aber
ls_fcat-fieldname = 'BEZEICHNUNG'.
ls_fcat-ref_table = ''.
LS_FCAT-DD_ROLL = 'ZLGART_BEZ'.
ls_fcat-ref_field = 'BEZEICHNUNG'.
ls_fcat-coltext = 'Lohnart'.
LS_FCAT-OUTPUTLEN = 7.
APPEND ls_fcat TO pt_fieldcat.
CLEAR ls_fcat.
Deine Aussagen sind so schon widersprüchlich genug.

Re: ALV-Grid: Datentypen der Spalten

Beitrag von GERDLA (Specialist / 116 / 0 / 0 ) »
OliTe hat geschrieben:Hallo Zusammen,

ich habe folgendes Problem:
Ich habe ein ALV-Grid mit dem Fieldcatalog ...

Code: Alles auswählen.

  

  ls_fcat-fieldname = 'BEZEICHNUNG'.
  ls_fcat-ref_table = ''.
  LS_FCAT-DD_ROLL   = 'ZLGART_BEZ'.
  ls_fcat-ref_field = 'BEZEICHNUNG'.
  ls_fcat-coltext   = 'Lohnart'.
  LS_FCAT-OUTPUTLEN = 7.
  APPEND ls_fcat TO pt_fieldcat.
  CLEAR ls_fcat.

  
Wenn ich im ALV-Grid beim Lauf des Programmes Daten erfasse und diese Eingabe mit Enter bestätige, erhalte ich folgende Fehlermeldungen:

Lohnart - Ungültiges Datumsformat (Bitte das Datum in der Form DD.MM.YYYY eingeben)
Firma - Ungültiges Datumsformat (Bitte das Datum in der Form DD.MM.YYYY eingeben)

Wieso behauptet das Programm, dass diese beiden Felder vom Typ Datum sein sollen?

Lohnart soll CHAR(2) sein und Firma NUM(4). Wie bekomme ich das hin?

Viele Grüße
Oliver
Hei Oli,

ich bin nicht sicher, ob ich Dich richtig
verstanden habe, aber Du übergibst DD_ROLL
deine 'ZLGART_BEZ'. DD-Roll ist die Domäne.

Wie hast Du denn ZGLART_BEZ überhaupt definiert?

Der zweite Punkt: Du willst die Länge 2,
definierst als Output aber die Länge 7?

gruss

gerdla

Beitrag von OliTe (ForumUser / 21 / 0 / 0 ) »
Scherzkeks.

Du nennst uns hier einfach ein paar KUNDENFelder und wir sollen von hier sehen, was ihr da angelegt habt???
Ich beabsichtigte, keinesfalls zu scherzen. Mit dem Posten des Fieldcatalogs wollte ich zur Fehlerfindung beitragen, da dies scheinbar die Quelle des Fehlers ist.
ich bin nicht sicher, ob ich Dich richtig
verstanden habe, aber Du übergibst DD_ROLL
deine 'ZLGART_BEZ'. DD-Roll ist die Domäne.

Wie hast Du denn ZGLART_BEZ überhaupt definiert?
Ich habe mit DD-Roll experimentiert, um das Problem zu lösen, doch leider ohne Erfolg. Ich nehme diese Definition und LS_FCAT-OUTPUTLEN jetzt raus und schaue ob das Problem behoben ist. Mir geht es darum eine korrekte Definition des Fieldcatalogs zu finden. Scheinbar verwendete er für meine Felder falsche Datentypen. Sorry, ich habe kein Attribut gefunden, welches mir eine Typdefinition für ein Feld des Fieldcatalogs erlaubt.
Der zweite Punkt: Du willst die Länge 2,
definierst als Output aber die Länge 7?
Diese Längendefinition habe ich nur aus ergonomischen Gründen vorgenommen. Einige Felder der Tabelle sind relativ kurz und der Anwender wäre mit Abkürzungen und "..." in den Spaltenköpfen konfrontiert. Ich habe LS_FCAT-OUTPUTLEN verwendet, um die Spaltenköpfe komplett darzustellen, so dass der komplette Patz genutzt und die Tabelle leicht verständlich ist. Gibt es eine andere Möglichkeit, die Spaltenüberschriften komplett anzuzeigen?

Gruß
Oliver

Beitrag von GERDLA (Specialist / 116 / 0 / 0 ) »
OliTe hat geschrieben:
Scherzkeks.

Ich habe mit DD-Roll experimentiert, um das Problem zu lösen, doch leider ohne Erfolg. Ich nehme diese Definition und LS_FCAT-OUTPUTLEN jetzt raus und schaue ob das Problem behoben ist. Mir geht es darum eine korrekte Definition des Fieldcatalogs zu finden. Scheinbar verwendete er für meine Felder falsche Datentypen. Sorry, ich habe kein Attribut gefunden, welches mir eine Typdefinition für ein Feld des Fieldcatalogs erlaubt.


Gruß
Oliver

Hei Oli,

ich kann Dir mal ein Beispiel gebe, welches
ich verwende. Hier sind auch Icons, und
Ausrichtungen im Grid vorhanden.

Allerdings musst Du zu dem Programm noch
ein Dynpro 0100 anlegen mit
ALV Container.

Vieleicht hilft es ja?
gruss

gerhard
Zuletzt geändert von GERDLA am 04.10.2005 11:47, insgesamt 1-mal geändert.

Beitrag von OliTe (ForumUser / 21 / 0 / 0 ) »
Nehme ich gerne, ich kann da sicher einiges drauß lernen. Kannst Du mir den Code per PM schicken?

Vielen Dank.
Oliver

Beitrag von GERDLA (Specialist / 116 / 0 / 0 ) »
OliTe hat geschrieben:Nehme ich gerne, ich kann da sicher einiges drauß lernen. Kannst Du mir den Code per PM schicken?

Vielen Dank.
Oliver
Du kannst Sie Dir einfach runterladen, siehe Beitrag vorher, ZIP Datei.

gruss

gerdla

Beitrag von OliTe (ForumUser / 21 / 0 / 0 ) »
Hmmm, entweder hatte ich die Datei übersehen oder sie war vorher noch nicht da.

Dein Code und mein Debugging hat mir die Erkenntnis gebracht, dass das Problem aus der ls_fcat-ref_table resultiert.

Bsp.: Ich gebe bei drei Feldern im Fieldcatalog die ref_table an und beim vierten Feld nicht. Die Eingegebenen Daten werden offensichtlich gegen den Typ des Feldes in der ref_table geprüft. Da das vierte keine ref_table hat, wird irgendwie der Feldtyp des dritten Feldes beibehalten. In meinem Beispiel ist das dritte Feld mit P01CKA-BEGDA referenziert, einem Feld vom Typ Datum. Da das vierte Feld keine ref_table hat, wird durch was auch immer der Typ einfach vom vorhergehenden Feld beibehalten.

Kann das jemand bestätigen? Kann man Felder im Fieldcatalog überhaupt ohne Referenz definieren?

Gruß
Oliver

Beitrag von RiffRaff (Specialist / 379 / 0 / 1 ) »
HAllo,

einfach mal beim Code:

Code: Alles auswählen.

.
.
.
.
  ls_fcat-fieldname = 'BEGDA'. 
  ls_fcat-ref_table = 'P01CKA'. 
  ls_fcat-ref_field = 'BEGDA'. 
  ls_fcat-coltext   = 'Versich.beginn'. 
  LS_FCAT-OUTPUTLEN = 14. 
  APPEND ls_fcat TO pt_fieldcat. 
  CLEAR ls_fcat. 

  ls_fcat-fieldname = 'BEZEICHNUNG'. 
  ls_fcat-ref_table = ''. 
  LS_FCAT-DD_ROLL   = 'ZLGART_BEZ'. 
  ls_fcat-ref_field = 'BEZEICHNUNG'. 
  ls_fcat-coltext   = 'Lohnart'. 
  LS_FCAT-OUTPUTLEN = 7. 
  APPEND ls_fcat TO pt_fieldcat. 
  CLEAR ls_fcat. 
.
.
.
.
dazwischen immer ein

CLEAR ls_fcat.

reinstellen.

mfg
Richard

Beitrag von OliTe (ForumUser / 21 / 0 / 0 ) »
Siehe oben, das Clear steht immer dazwischen, darauf habe ich geachtet. Der fehlerhafte Verarbeitung der Eingaben zur Typprüfung durch das ALV-Grid findet trotzdem statt.

Beitrag von RiffRaff (Specialist / 379 / 0 / 1 ) »
sorry, mein fehler

lesen, tippen, schreiben :wink:

was passiert, wenn du bei

Code: Alles auswählen.

  ls_fcat-fieldname = 'BEZEICHNUNG'. 
  ls_fcat-ref_table = ''. 
  LS_FCAT-DD_ROLL   = 'ZLGART_BEZ'. 
  ls_fcat-ref_field = 'BEZEICHNUNG'. 
  ls_fcat-coltext   = 'Lohnart'. 
  LS_FCAT-OUTPUTLEN = 7. 
  APPEND ls_fcat TO pt_fieldcat. 
  CLEAR ls_fcat. 
die zeile
ls_fcat-ref_field = 'BEZEICHNUNG'.
rausnimmst?????

mfg
Richard

Beitrag von OliTe (ForumUser / 21 / 0 / 0 ) »
Nichts, unverändert. Er behaart darauf den Datentyp Datum vom vorangegangenen Feld zu verwenden.

Re: ALV-Grid: Datentypen der Spalten

Beitrag von Gast ( / / 0 / 3 ) »
Beim Feldkatalog muss man zwischen Feldern mit DDIC-Bezug und Feldern ohne DDIC-Bezug unterscheiden.

Hat ein Feld einen Bezug zum DDIC (Domäne reicht hier nicht aus, es muss in einer Tabelle bzw. einer Struktur enthalten sein) reicht es aus die Felder: FIELDNAME, REF_TABLE und REF_FIELD zu füllen (REF_FIELD nur wenn es von FIELDNAME abweicht). Alle Infos (Datentyp, Texte, Ausgabelänge, Suchhilfe etc.) werden dann aus dem DDIC gezogen.

Wenn das Feld keinen Bezug zum DDIC hat (also in keiner Tabelle bzw. Struktur enthalten ist) müssen die Felder:
FIELDNAME = Name des Feldes in der outab
INTTYPE = ABAP-Datentype
OUTPUTLEN = Ausgabeläng
COLTEXT = Spaltenüberschrift
SELTEXT = Spaltenbezeichnung im Layouteditor

Mehr Infos zum Feldkatalog gibts hier.

Gruß Hendrik

Seite 1 von 1

Vergleichbare Themen

4
Antw.
2262
Views
Oracle Datentypen in ABAP Datentypen umwandeln
von Steffi221185 » 07.08.2006 09:08 • Verfasst in ABAP® Core
9
Antw.
3600
Views
Doku zu Spalten im ALV-Grid
von KlausB » 31.03.2006 11:41 • Verfasst in ABAP® Core
2
Antw.
1315
Views
ALV Grid - Festsetzung von Spalten
von Chilledkroete » 25.03.2013 10:48 • Verfasst in ABAP® für Anfänger
0
Antw.
1527
Views
ALV-Grid: markierte Zeilen und Spalten
von dmyrb5 » 15.02.2006 15:17 • Verfasst in ABAP Objects®
2
Antw.
2408
Views
ALV GRID Reihenfolge der spalten ändern
von ek53 » 09.11.2016 10:10 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Dialog-Container mit Toolbar/Status
vor 13 Stunden von DeathAndPain gelöst 22 / 3182
Daten an Tabelle binden
vor 18 Stunden von Lukas Sanders 2 / 1043
Zeilenumbrüche ersetzen
vor 2 Tagen von ralf.wenzel 6 / 617

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.

Aktuelle Forenbeiträge

Dialog-Container mit Toolbar/Status
vor 13 Stunden von DeathAndPain gelöst 22 / 3182
Daten an Tabelle binden
vor 18 Stunden von Lukas Sanders 2 / 1043
Zeilenumbrüche ersetzen
vor 2 Tagen von ralf.wenzel 6 / 617

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2612
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9201