ALV Beispiel

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

Beitrag von ewx (Top Expert / 4846 / 311 / 642 ) »
okay...

Code: Alles auswählen.

REPORT z.

DATA ls_vbak TYPE vbak.
DATA lt_vbap TYPE STANDARD TABLE OF vbap.

TYPES ty_vbap TYPE STANDARD TABLE OF vbap.

PARAMETERS p_vbeln TYPE vbeln DEFAULT '0000001111'.

*----------------------------------------------------------------------*
*       CLASS my_class DEFINITION
*----------------------------------------------------------------------*
CLASS my_class DEFINITION.

  PUBLIC SECTION.
    CLASS-METHODS:
       get_data IMPORTING iv_vbeln TYPE vbeln
                EXPORTING es_vbak  TYPE vbak
                          et_vbap  TYPE ty_vbap,

       display_data IMPORTING is_vbak TYPE vbak
                              it_vbap TYPE ty_vbap.

ENDCLASS.                    "my_class DEFINITION


*----------------------------------------------------------------------*
*       CLASS my_class IMPLEMENTATION
*----------------------------------------------------------------------*
CLASS my_class IMPLEMENTATION.

  METHOD get_data.

    SELECT SINGLE * FROM vbak INTO es_vbak WHERE vbeln = iv_vbeln.

    SELECT * FROM vbap INTO TABLE et_vbap WHERE vbeln = iv_vbeln.

  ENDMETHOD.                    "get_data

  METHOD display_data.

    FIELD-SYMBOLS <vbap> TYPE vbap.

    WRITE: / 'Auftrag', is_vbak-vbeln, 'wurde angelegt am', is_vbak-erdat.
    LOOP AT it_vbap ASSIGNING <vbap>.
      WRITE: /3 <vbap>-posnr,
                <vbap>-matnr.
    ENDLOOP.

  ENDMETHOD.                    "display_data
ENDCLASS.                    "my_class IMPLEMENTATION


START-OF-SELECTION.


  CALL METHOD my_class=>get_data
    EXPORTING
      iv_vbeln = p_vbeln
    IMPORTING
      es_vbak  = ls_vbak
      et_vbap  = lt_vbap.

  CALL METHOD my_class=>display_data
    EXPORTING
      is_vbak = ls_vbak
      it_vbap = lt_vbap.
Ich hoffe, das beschäftigt dich erstmal... :lol:
Zuletzt geändert von ewx am 10.04.2008 17:07, insgesamt 1-mal geändert.

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


Beitrag von kirmuh (ForumUser / 64 / 0 / 0 ) »
das wird mich wirklich ne weile beschäftigen, danke dir sehr für die hilfe.

ich versuch das mal zu verstehen und probier an meinem voding weiter. darf ich dich erneut wieder stören wenn ich nicht weiter komme?

Beitrag von ewx (Top Expert / 4846 / 311 / 642 ) »
kirmuh hat geschrieben:das wird mich wirklich ne weile beschäftigen, danke dir sehr für die hilfe.
Gern geschehen!
kirmuh hat geschrieben:ich versuch das mal zu verstehen und probier an meinem voding weiter.
Viel Spaß!
kirmuh hat geschrieben:darf ich dich erneut wieder stören wenn ich nicht weiter komme?
Werden wir ja sehen... :wink:
Vielleicht schaust du dir auch noch mal die Transaktion ABAPDOCU an. Da gibt es viele Interessante Punkte mit einfachen Beispielen.
Wenn du dich von "Hello World" zu "Anlegen eines persistenten Objekts" durchgearbeitet hast, dann kannst du mich im Vorruhestand wieder stören. Das habe ich nämlich auch nicht verstanden... :lol:

Beitrag von kirmuh (ForumUser / 64 / 0 / 0 ) »
so jetzt hab ich dann doch noch wieder eine frage:

muss man nicht die variable iv_vbeln definieren? ich sehe nirgends wo eine definition dafür. ist es eigentlich anderst wenn ich in der where klausel

WHERE vbak~audat IN so_audat anwenden möchte?

wie müsste ich dann in der get_data methode die where bedingung anpassen?

Beitrag von ralf.wenzel (Top Expert / 3924 / 200 / 280 ) »
kirmuh hat geschrieben:muss man nicht die variable iv_vbeln definieren? ich sehe nirgends wo eine definition dafür.
Das ist schon passiert - in

Code: Alles auswählen.

IMPORTING iv_vbeln TYPE vbeln
kirmuh hat geschrieben:ist es eigentlich anderst wenn ich in der where klausel
WHERE vbak~audat IN so_audat anwenden möchte?
wie müsste ich dann in der get_data methode die where bedingung anpassen?
Entweder verstehe ich die Frage nicht oder du hast sie dir selbst beantwortet.


Ralf
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Beitrag von kirmuh (ForumUser / 64 / 0 / 0 ) »
die frage war wenn ich selec-options benutze

WHERE vbak~audat IN so_audat

dann erkennt er so_audat nicht in der methode weil er mir sagt dass es keine werteliste ist, auch wenn ich die methode im rahmenprogramm einfüge

Beitrag von ewx (Top Expert / 4846 / 311 / 642 ) »
Die Select-Options musst du dann auch explizit in der Schnittstelle der Methode implementieren. Deswegen macht man sowas ja auch nicht mit Methoden, sondern macht den Select einfach im Ergeignis START-OF-SELECTION.

Beitrag von kirmuh (ForumUser / 64 / 0 / 0 ) »
ich dachte nur wenn ich objektorierntiert programmieren möchte muss ich die select anweisung auch in einer methode machen, so dass ich dann im rahmenprogramm nur

get_data für die select anweisung
show_data für das anzeigen vom alv

stehen habe oder habe ich das nun komplett falsch verstanden?

Beitrag von ewx (Top Expert / 4846 / 311 / 642 ) »
Da liegst du schon ganz richtig. Aber wenn du objektorientiert programmierst, denn gehört da eben auch zu, dass Objekte Schnittstellen haben. Und alles, was an Daten in den Objekten verwendet wird, muss eben auch übergeben werden.
Eine andere Möglichkeit wäre, dass du das Selektionsbild ebenfalls als Methode aufrufst. Aber dann musst du Dynpros verwenden und kannst (schlecht) auf die Annehmlichkeiten der Select-Options zurückgreifen. Natürlich geht das alles, aber nicht einfach. Das ist dann alles _etwa_ komplizierter...

Beitrag von kirmuh (ForumUser / 64 / 0 / 0 ) »
danke zuerst einmal für die hilfe, ich benutze eigentlich indirekt ein dynpro, hab sie select options als subscreen bereich in einem dynpro eingefügt, so rufe ich eigentlich ein dynpro auf :)

kannst du mir das mit den schnittstellen etwas genauer erklären, bin wirklich nur ein anfänger

Beitrag von ewx (Top Expert / 4846 / 311 / 642 ) »
Vielleicht solltest du dir mal das ABAP-Objects Buch besorgen. In Transaktion ABAPDOCU steht auch wirklich viel über Objects. Es hilft dir hier wahrscheinlich jeder gerne weiter, wenn du ein Problem hast, aber beibringen kann dir das hier niemand.

Beitrag von brinki (ForumUser / 22 / 0 / 0 ) »
Für Beispiele schau dir mal die Transaktion SE83 an oder die Programme in der Entwicklungsklasse SLIS.

Gruss Markus

Vergleichbare Themen

2
Antw.
4054
Views
BAPI_ACC_DOCUMENT_POST FB60 Beispiel
von HH_ABAP » 26.09.2018 11:11 • Verfasst in ABAP® für Anfänger
2
Antw.
1553
Views
SapScript Beispiel zu QM_QCERT_01
von SKAMS » 19.07.2005 15:14 • Verfasst in ABAP® Core
5
Antw.
3568
Views
Idoc - einfaches Beispiel
von Gast » 14.03.2005 20:20 • Verfasst in Basis
2
Antw.
1413
Views
Frage zur Modellierung in OO (am Beispiel SAP-CO)
von Ingo » 30.06.2020 11:52 • Verfasst in ABAP Objects®
0
Antw.
1623
Views
Suche Beispiel/Anleitung für Dynpros
von freeze » 03.05.2007 18:18 • Verfasst in Dialogprogrammierung

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Daten an Tabelle binden
vor einer Stunde von Lukas Sanders 2 / 787
Dialog-Container mit Toolbar/Status
vor 14 Stunden von black_adept gelöst 21 / 2616

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

Daten an Tabelle binden
vor einer Stunde von Lukas Sanders 2 / 787
Dialog-Container mit Toolbar/Status
vor 14 Stunden von black_adept gelöst 21 / 2616

Unbeantwortete Forenbeiträge

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