OO - Interne Tabelle ohne Kopfzeile

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

OO - Interne Tabelle ohne Kopfzeile

Beitrag von Ifrit (ForumUser / 28 / 0 / 0 ) »
Hallo zusammen,

ich möchte Daten aus einer Tabelle in einem Reportausgeben lassen.
ganz einfach is klar:

REPORT z_test.

TABLES:
zusrlogon.

WRITE:
/,
/(75) sy-uline,
/'|', (15) 'Benutzername',
'|', (12) 'Logondatum ',
'|', (10) 'LogonZeit ',
'|', (12) 'Logoutdatum ',
'|', (10) 'Logoutzeit ', '|',
/(75) sy-uline.

select * from zusrlogon
where logon_date >= '20060317'
and logout_date <= '20060516'
order by logon_date.

WRITE:
/'|', (15) zusrlogon-uname,
'|', (12) zusrlogon-logon_date,
'|', (10) zusrlogon-logon_time,
'|', (12) zusrlogon-logout_date,
'|', (10) zusrlogon-logout_time, '|',
/(75) sy-uline.
ENDSELECT.

funktioniert auch, aber ich würde das gerne allesobjektorientiert machen und da muss ich ja eine INTO-Klausel in dieAbfrage machen, sonst schreit mich der Kompiler an.

TABLES:
zusrlogon.

CLASS a DEFINITION.
PUBLIC SECTION.
METHODS: constructor.

PRIVATE SECTION.
DATA: l_zusrlogon TYPE TABLE OF zusrlogon.

ENDCLASS.

CLASS a IMPLEMENTATION.
METHOD constructor.

WRITE:
/,
/(75) sy-uline,
/'|', (15) 'Benutzername',
'|', (12) 'Logondatum ',
'|', (10) 'LogonZeit ',
'|', (12) 'Logoutdatum ',
'|', (10) 'Logoutzeit ', '|',
/(75) sy-uline.

select * from zusrlogon
into l_zusrlogon
where logon_date >= '20060317'
and logout_date <= '20060516'
order by logon_date.

* l_zusrlogon ist hier gefüllt, aber ich krieg denZugriff nicht auf die Reihe

WRITE:
/'|', (15) l_zusrlogon-uname,
'|', (12) l_zusrlogon-logon_date,
'|', (10) l_zusrlogon-logon_time,
'|', (12) l_zusrlogon-logout_date,
'|', (10) l_zusrlogon-logout_time, '|',
/(75) sy-uline.

ENDMETHOD.
ENDCLASS.

DATA:
ref_a TYPE REF TO a.

START-OF-SELECTION.
CREATE OBJECT ref_a.

mache ich das und schreibe das ganze in der IMPLEMENTATION ineine interne Tabelle, kann ich die Daten daraus aber nicht so wieoben ausgeben, da eine Kopfzeile verlangt wird. Diese kann ich jaaber im OO nicht liefern, sonst schreit mich der Kompiler bei derDeklaration der internen Tabelle an. Wie muss ich das writeschreiben, damit es funktioniert?

In einem Dynpro krieg ich das hin, aber wie mache ich dasso?

Danke fürs lesen
Ifrit

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


Hilfe-Versuch:

Beitrag von cosmo (Specialist / 175 / 0 / 0 ) »
1. Beim Verwenden einer Itab im Select musst Du beim Select-Befehl

"into table <...>"

schreiben.

Nach diesem Selekt hast du alle Daten in einer internenTabelle, (sagen wir, sie heißt l_zusrlogon). Die Ausgabefunktioniert dann so:

Code: Alles auswählen.

loop at l_zusrlogon into zusrlogon.

  WRITE: /'|', (15) zusrlogon-uname,
   '|', (12) zusrlogon-logon_date,
   '|', (10) zusrlogon-logon_time,
   '|', (12) zusrlogon-logout_date,
          '|', (10) zusrlogon-logout_time, '|',
     /(75) sy-uline.

endloop.
Beachte den "into" im Loop-Befehl. Den brauchst Du beiTabellen ohne Kopfzeile. Anstatt einer Kopfzeile musst Du eineFeldleiste mit der selben Spaltenstruktur wie die interne Tabelleverwenden.

Viel Spaß beim Begreifen. Es dauert normalerweiseetwas, bis man das Itab-Konzept von ABAP verinnerlicht hat. Alsonicht aufgeben!

Cosmo
Jörg Krause, Anwendungsentwickler und SAP-Betreuer MM/PP

Danke dir

Beitrag von Ifrit (ForumUser / 28 / 0 / 0 ) »
Ich hätte die Select-Abfrage vielleicht doch einfach kopierensollen *g* Im Quelltext ist es INTO TABLE l_zusrlogon


genau das INTO bei loop hat mir gefehlt.

und das loop war mir entfallen *blush*

MfG
Ifrit

PS:
Wie krieg ich meinen Code in den grauen Kasten ?
Nen Code-Button oder ähnliches seh ich nicht oder ichbin blind.

Code: Alles auswählen.

 blafoo 
funktioniert ja auch nicht.
Und wieso macht das Forum aus meinem Fragezeichen ein ?*g*

Seite 1 von 1

Vergleichbare Themen

12
Antw.
9897
Views
Interne Tabelle onne Kopfzeile
von Seeburg » 30.05.2005 13:11 • Verfasst in ABAP® für Anfänger
3
Antw.
1862
Views
Interne Tabelle mit kopfzeile umwandeln
von kaufmann123 » 19.04.2018 11:16 • Verfasst in ABAP® für Anfänger
11
Antw.
3233
Views
Interne Tabelle-Existiert Kopfzeile?? (cl_abap_typedescr)
von hfahrian » 26.02.2018 15:31 • Verfasst in ABAP® Core
8
Antw.
4258
Views
Kopfzeile oder Workarea - interne Tabellen
von huckb » 21.02.2013 09:05 • Verfasst in ABAP® Core

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Bedarfszusammenfassung "Einzelbedarfe"
vor 2 Stunden von harri 2 / 1184
Trennen Strasse und Hausnummer
vor 4 Stunden von ralf.wenzel 21 / 11293
Dialog-Container mit Toolbar/Status
Gestern von black_adept gelöst 27 / 4384

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

Bedarfszusammenfassung "Einzelbedarfe"
vor 2 Stunden von harri 2 / 1184
Trennen Strasse und Hausnummer
vor 4 Stunden von ralf.wenzel 21 / 11293
Dialog-Container mit Toolbar/Status
Gestern von black_adept gelöst 27 / 4384

Unbeantwortete Forenbeiträge

IT0024 Qualifikationen CP-ID
Gestern von ArjenR 1 / 258
aRFC im OO-Kontext
vor 5 Wochen von ralf.wenzel 1 / 3186
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9777