Einkaufsinfosatz

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

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

Einkaufsinfosatz

Beitrag von Gottschall (ForumUser / 63 / 10 / 4 ) »
Hallo Leute,

ich brauche dringend eure Mithilfe.
Zu meinem Problem.
Also wir haben drei Lieferanten. Zu jedem Lieferanten gibt es mehrere Werke die unterschiedliche Konditionssätze haben.
Nun ist es meine Aufgabe die Datensätze so darzustellen.
Zur Veranschaulichung wie es im ALV dargestellt werden soll.

Lieferant Staffelmenge Werk1 Werk2 Werk3
1 ----------------- 5 -------- 12€ --- 12€ --- 0€
1 ----------------- 10 ------- 10€ --- 10€ --- 0€
1 ----------------- 20 -------- 5€ --- 5€ ---- 0€

2 ------------------- 5 -------- 12€ --- 12€ ---- 0€
2 ------------------- 10 ------- 10€ --- 10€ ---- 0€
2 ------------------- 20 -------- 5€ --- 5€ ---- 0€

Kann mir jemand helfen wie ich die Datensätze in einem ALV so darstellen kann?
Ich hocke da ziemlich auf den Schlauch und komme mit meinen Programmierkenntnissen nicht weiter.

Gruß
Stephan

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


Re: Einkaufsinfosatz

Beitrag von Alexander D. (Expert / 682 / 30 / 84 ) »
guten Morgen Stephan,

was hast du bisher alles probiert und was genau ist denn das Problem? Aus welchen Tabellen entnimmst du die Daten? Und wäre es nicht sinnvoll in dem ALV noch das Material mit auszugeben? Ein Lieferant kann doch mehr als nur einen Artikel liefern
schöne Grüße
Alexander

ECC 6.0 EHP 7

Re: Einkaufsinfosatz

Beitrag von a-dead-trousers (Top Expert / 4399 / 223 / 1182 ) »
Hi!

Ich nehme mal an, dass die Werke auch mal mehr als drei sein können oder?
Das heißt deine Ausgabe muss sich dynamisch anpassen.
Schau dir mal Tutorials zu RTTI/RTTC an, entweder hier im Forum oder im Internet. Damit kann man zur Laufzeit Strukturen/Tabellen und so weiter erzeugen.

Ich hab auch hier im Forum einen kleine Codeschnippsel dazu verfasst.
Als Beispiel wie RTTI aufgebaut ist sollte es gute Hilfe leisten. Es wird zur Laufzeit der Typ einer Variablen bestimmt. Du müsstest dann eigentlich bei LT_COMPONENTS im zweiten Post von mir ansetzen.

Ein direkter Zugriff auf die einzelnen Componenten der so erzeugten Struktur/Tabelle ist damit aber nicht mehr möglich.
Du musst ungefähr so dann vorgehen:

Code: Alles auswählen.

data:
  lr_table type ref to data,
  lt_component type abap_component_tab,
  lr_structdescr type ref to cl_abap_structdescr,
  lr_tabledescr type ref to cl_abap_tabledescr.

field-symbols:
  <ls_component> type abap_componentdescr,
  <lt_table> type standard table,
  <la_line> type any,
  <la_field> type any.

* lt_component aufbauen je nachdem welche Felder benötigt werden.
append initial line to lt_component assigning <ls_component>.
<ls_component>-name = 'NAME_DER_SPALTE'.
<ls_component>-type = cl_abap_typedescr=>describe_by_name( p_name = 'NAME_DES_DDIC_DATENTYPS' ).

* Anlegen der Ausgabe-Tabelle im Speicher
lr_structdescr = cl_abap_structdescr=>create( p_components = lt_component ).
lr_tabledescr = cl_abap_tabledescr=>create( p_line_type = lr_structdescr ).
create data lr_table type handle lr_tabledescr.
assign lr_table->* to <lt_table>.

* Tabelle befüllen
append initial line to <lt_table> assigning <la_line>.
assign component 'NAME_DER_SPALTE' of structure <la_line> to <la_field>. 
<la_field> = 'WERT_DER_SPALTE'.

* Tabelle auslesen
loop at <lt_table> assigning <la_line>.
  loop at lt_component assigning <ls_component>.
    assign component <ls_component>-name of structure <la_line> to <la_field>.
* Verarbeitung
  endloop.
endloop.
lg ADT

EDIT: Ach ja: Für die Ausgabe würde ich bei diesem Beispiel zum CL_SALV_TABLE raten, da man sonst auch gezwungen ist den Feldkatalog für das ALV-Grid selbst aufzubauen. LVC_FIELDCATALOG_MERGE und ähnliches funktionieren nicht mit dynamisch erstellten Strukturen. Beispiele wie man CL_SALV_TABLE verwendet finden sich auch zuhauf entweder hier im Forum oder im Internet.

Folgende Benutzer bedankten sich beim Autor a-dead-trousers für den Beitrag:
Gottschall

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: Einkaufsinfosatz

Beitrag von Gottschall (ForumUser / 63 / 10 / 4 ) »
Vielen Dank für eure Hilfe. Ich kannte das so noch nicht. Naja man lernt ja nie aus. :?

Gruß
Stephan

Seite 1 von 1

Vergleichbare Themen

0
Antw.
1057
Views
4
Antw.
3713
Views
Einkaufsinfosatz pflegen
von Sian » 14.03.2005 09:57 • Verfasst in ABAP® Core
1
Antw.
1617
Views
Einkaufsinfosatz koperen
von PeterPaletti » 30.10.2014 14:06 • Verfasst in ABAP® Core
12
Antw.
7218
Views
Preis aus Einkaufsinfosatz
von cuncon » 19.12.2017 15:52 • Verfasst in ABAP® für Anfänger
1
Antw.
1298
Views
BAPI_PO_CREATE1 und Einkaufsinfosatz
von SweetRuedi » 15.06.2019 19:38 • 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

Aktuelle Forenbeiträge

Regex in where
vor 7 Stunden von edwin 7 / 163
Daten an Tabelle binden
vor 20 Stunden von Bright4.5 3 / 1487

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

Regex in where
vor 7 Stunden von edwin 7 / 163
Daten an Tabelle binden
vor 20 Stunden von Bright4.5 3 / 1487

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 5 Wochen von ralf.wenzel 1 / 3261
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9822