ABAP RFC Tabellen Parameter

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

ABAP RFC Tabellen Parameter

Beitrag von Shaguar (ForumUser / 20 / 0 / 0 ) »
Servus zusammen,

ich habe eig ein ganz einfaches Problem, aber ich bekomme es nicht umgesetzt.
Ich möchte einen ganz einfachen SELECT auf einer Tabelle machen und das Ergebnis als Tabelle zurückliefern.
Ich möchte aber nicht alle Spalten der ausgelesenen Tabelle zurückgeben, sondern nur eine.
Wie ich die komplette Ergebnistabelle zurückgeben kann ist mir klar, nur da ich den ganzen Overhead vermeiden will, soll eben nur eine einzige Spalte zurückgegeben werden.

Also im Prinzip so:
SELECT spalte1 FROM tabellenName WHERE ........
Ich möchte als Rückgabewert nun eine Liste oder einspaltige Tabelle mit all den Werten aus "spalte1"

Danke
Mfg

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


Re: ABAP RFC Tabellen Parameter

Beitrag von c oco (Specialist / 326 / 12 / 16 ) »
Hi,

ich bin mir nicht sicher ob ich dich verstanden habe aber ich versuchs trotzdem:
du kannst dir eine interne Tabelle mit nur einem Feld "spalte1" anlegen diese dann mit
select auf die DB füllen und ausgeben.

Gruß coco

Re: ABAP RFC Tabellen Parameter

Beitrag von bliss (ForumUser / 66 / 2 / 6 ) »
1) Das kommt darauf an, wie du die Tabelle ausgibst. Bei ALV kannst du dir bei CL_SALV_COLUMN die Methode SET_VISIBLE ansehen.

2) Oder kopiere die Spalte aus der interne Tabelle in eine zweite interne Tabelle, die nur aus der gewünschten Spalte besteht und gebe diese Tabelle dann aus.

Ja, wie coco schreibt, ist es wohl besser, wenn du deine interne Tabelle von Anfang an richtig definierst. Sie sollte dann nur 1 Feld haben.
Gruß
bliss
.|.. .. ...| . .|.. ||| |. ||. .| |. |.. .||. .|. ||| ... .||. . .|.

Ich bin Anfänger und meine Tipps sind mit Vorsicht zu genießen.

Re: ABAP RFC Tabellen Parameter

Beitrag von Shaguar (ForumUser / 20 / 0 / 0 ) »
Die interne Tabelle habe ich mir schon angelegt, aber wie kann ich diese dann an das RFC aufrufende Programm (hier Java Funktion) zurückgeben?
Bei der Definition der RFC Tabellen muss der Typ ja schon bekannt sein, ist er aber nicht wenn ich die Tabelle erst im Funktionsbaustein definiere.
Das ist grad mein Problem.

Bsp:
Die Tabelle die ich auslesen möchte ist VEHICLE und die Spalte ist VNR:
....
*" Tabellen Parameter
*" TABLES
*" VEHICLE_TAB_OUT STRUCTURE VEHICLE
.....

TYPES:
BEGIN OF tZeile,
VNR LIKE VEHICLE-VNR,
END OF tZeile.
DATA itSpalte1 TYPE TABLE OF tZeile.

SELECT VNR FROM VEHICLE INTO TABLE itSpalte1.

*Aber wie bekomme ich jetzt itSpalte wieder an das Java Programm zurückgegeben?

Re: ABAP RFC Tabellen Parameter

Beitrag von Alexander D. (Expert / 682 / 30 / 84 ) »
hi,
Shaguar hat geschrieben:Die interne Tabelle habe ich mir schon angelegt, aber wie kann ich diese dann an das RFC aufrufende Programm (hier Java Funktion) zurückgeben?
Bei der Definition der RFC Tabellen muss der Typ ja schon bekannt sein, ist er aber nicht wenn ich die Tabelle erst im Funktionsbaustein definiere.
Das ist grad mein Problem.
es ist schon länger her, dass ich mit RFC´s was gemacht habe, aber könntest Du nicht eine neue Struktur anlegen die aus einer einzigen Spalte besteht? Die interne Tabelle würde auf die Struktur referenzieren, das gleich würde auch für die Parameter im RFC gelten

zweite Möglichkeit: du erstellst die interne Tabelle vom type VEHICLE, füllst aber nur die Spalte die du benötigst.

Gruss
Alexander
schöne Grüße
Alexander

ECC 6.0 EHP 7

Re: ABAP RFC Tabellen Parameter

Beitrag von a-dead-trousers (Top Expert / 4286 / 214 / 1142 ) »
hi!

Ich weiß jetzt nicht, ob die RFC-Schnittstell hin zu JAVA das handeln kann, aber ich würde bei einer "unbekannten" Struktur die Daten in eine Tabelle von Strings schreiben und sofern benötigt z.b. einen Fieldcat (LVC_F_CAT) oder eine ähnlich Beschreibung mitschicken. In Java musst man sich dann anhand dieser Informationen die Struktur wieder zusammenbauen.

Alternativ könnte man die Daten auch in ein XML-Dokument umwandeln.

Code: Alles auswählen.

CALL TRANSFORMATION ID SOURCE data = it_tab result xml ld_string.
Wobei hier das asXML-Format verwendet wird, das in der SAP-Hilfe genauer beschrieben ist.

Das XML könnte man sich dann in JAVA mittels Transformation nach den eigenen Wünschen wieder umbauen.

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: ABAP RFC Tabellen Parameter

Beitrag von Shaguar (ForumUser / 20 / 0 / 0 ) »
@ Alexander D
Ich versuch mal Möglichkeit 1, deinen zweiten alternativen Vorschlag wollte ich ja vermeiden, da die Tabelle mehr als 200 Spalten hat und wenn ich da nur eine befülle dann habe ich erstens relativ viel Overhead und zweitens ist ein SELECT mit "into corresponding fields of" bei mehreren Tausend Results ziemlich langsam.

Seite 1 von 1

Vergleichbare Themen

8
Antw.
8384
Views
PARAMETER Auswahl-Werte aus internen Tabellen
von SteveOh » 06.07.2010 15:25 • Verfasst in ABAP® für Anfänger
1
Antw.
1412
Views
ABAP Objects optionale Parameter
von SaskuAc » 07.04.2017 09:46 • Verfasst in ABAP Objects®
4
Antw.
2738
Views
ABAP Objects und Tabellen
von schmitzandreas » 31.07.2007 16:08 • Verfasst in ABAP Objects®
2
Antw.
1770
Views
interne Tabellen bei Abap Objects
von gast » 14.09.2005 15:25 • Verfasst in ABAP Objects®
2
Antw.
1278
Views
ABAP Tabellen in SQL-Befehle exportieren
von cmalthaner » 15.08.2014 22:16 • Verfasst in ABAP® für Anfänger

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.