FuBa Input und Export Parameter


Getting started ... Alles für einen gelungenen Start.

Moderatoren: Jan, Steff

FuBa Input und Export Parameter

Beitragvon HH_ABAP » 09.01.2019, 16:30

Hallo,

bei einem FuBa habe ich Input und Export Parameter:
is_inputparam sind a, b, c (die sind die Schlüssel der Tabelle TAB)
et_outputparam sind d, e, f, g (die weitere Felder von der Tabelle TAB)

1. Wenn alle Daten gewünscht sind werden die Input Parameter beim Aufruf einfach leer gelassen.
2. Man hat aber trotzdem die Möglichkeit einzelne Datensätze abzufragen.

Meine Frage: Wie kann ich die beide u.g. fällen programmieren?

Vielen Dank & Grüße
hh_abap
HH_ABAP
ForumUser
 
Beiträge: 98
Registriert: 06.04.2018, 17:08
Dank erhalten: 1 mal
Ich bin: Entwickler/in

Sponsor

Alte ABAP-Entwicklerweisheit: Weißt du weder aus noch ein, baust du einen BADI ein

Re: FuBa Input und Export Parameter

Beitragvon ewx » 09.01.2019, 17:04

Du kannst die Eingabeparameter in RANGES überführen und dann mit LOOP oder SELECT WHERE a in range_a and b in range_b usw. die gültigen Daten ausgeben.
Wenn ein Eingabefeld leer ist, lässt du den Range auch leer.
ewx
Top Expert
 
Beiträge: 3839
Registriert: 04.08.2003, 19:55
Wohnort: Schleswig-Holstein
Dank erhalten: 322 mal

Re: FuBa Input und Export Parameter

Beitragvon HH_ABAP » 09.01.2019, 17:22

vielen Dank und kannst du bitte mir hier auch Tipps geben?

Als Export bitte auch eine Struktur mit einem Status einbauen z.B.:
ES_RETURN mit den Feldern:
MSGNR Type MSGNR
NATXT Type NATXT

Hier kann bei Erfolg einfach 000 OK steht und im Fehlerfall die Fehlernummer und ein Text dazu.


Vielen Dank & Grüße
hh_abap
HH_ABAP
ForumUser
 
Beiträge: 98
Registriert: 06.04.2018, 17:08
Dank erhalten: 1 mal
Ich bin: Entwickler/in

Re: FuBa Input und Export Parameter

Beitragvon ewx » 09.01.2019, 17:35

Code: Alles auswählen
data lt_range_a type range of matnr.
data ls_range_a like line of lt_range_a.
if iv_a is not initial.
ls_range_a-sign = 'I'.
ls_range_a-option = 'EQ'.
ls_range_a-low = iv_a.
append ls_range_a to lt_range_a.

SELECT * from dbtab  INTO TABLE et_data WHERE a in lt_range_a ... .
 


Was ist denn ein Status?
Was ist ein Fehler?
Wenn keine Datensätze selektiert werden, sieht der Aufrufer es ja. Außerdem kann es ja durchaus richtig sein, dass es zu den Eingabedaten keine Datensätze gibt.
Ich würde die Struktur BAPIRET2 empfehlen, die kennt jeder Programmierer und du hast alle notwendigen Felder drin... ;)

Für diese Nachricht hat ewx einen Dank bekommen :
HH_ABAP
ewx
Top Expert
 
Beiträge: 3839
Registriert: 04.08.2003, 19:55
Wohnort: Schleswig-Holstein
Dank erhalten: 322 mal

Re: FuBa Input und Export Parameter

Beitragvon HH_ABAP » 09.01.2019, 18:01

ich weiss nicht, was damit gemeint ist. :-( wie kann ich bei einem Fehler, die Fehlernummer rausfinden?

Vielen Dank & Grüße
hh_abap
HH_ABAP
ForumUser
 
Beiträge: 98
Registriert: 06.04.2018, 17:08
Dank erhalten: 1 mal
Ich bin: Entwickler/in

Re: FuBa Input und Export Parameter

Beitragvon ewx » 09.01.2019, 18:07

was womit gemeint ist?
Was meinst du mit "Fehlernummer rausfinden"?
ewx
Top Expert
 
Beiträge: 3839
Registriert: 04.08.2003, 19:55
Wohnort: Schleswig-Holstein
Dank erhalten: 322 mal

Re: FuBa Input und Export Parameter

Beitragvon HH_ABAP » 09.01.2019, 18:16

ja, das ist der Text, was mir zugewiesen ist: "Hier kann bei Erfolg einfach 000 OK steht und im Fehlerfall die Fehlernummer und ein Text dazu."

Ich weiss nicht welche Fehlernummer und welcher Text im Fehlerfall, ausgeben soll.
HH_ABAP
ForumUser
 
Beiträge: 98
Registriert: 06.04.2018, 17:08
Dank erhalten: 1 mal
Ich bin: Entwickler/in

Re: FuBa Input und Export Parameter

Beitragvon DeathAndPain » 09.01.2019, 18:17

Offenbar soll er bei einem Fehler eine passende Fehlernachricht ausgeben. BAPIRET2 ist dafür schon eine gute Wahl, nur muss er die Nachrichten natürlich anlegen.

@HH_ABAP: Die Fehlernummern fallen nicht vom Himmel, sondern die vergibst Du selber, abhängig davon, was bei Deiner Routine halt für Fehler auftreten können. Für jeden möglichen Fehler definierst Du eine Nachricht:

https://help.sap.com/doc/saphelp_nw70/7 ... ontent.htm

In diese Nachricht schreibst Du einen Text, der den Fehler beschreibt, und vergibst eine Nachrichtennummer zu einer von Dir angelegten Nachrichtenklasse. Das kannst Du dann in der BAPIRET2 zurückliefern. Der Aufrufer Deines Funktionsbausteins kann sich das dann mit Hilfe des Fuba FORMAT_MESSAGE in eine ausgabefähige Form wandeln.

Speziell in Deinem Fall sehe ich eigentlich nur den einen möglichen Fehlerfall, dass Dein SELECT nichts liefert (SY-SUBRC = 4).

Für diese Nachricht hat DeathAndPain einen Dank bekommen :
HH_ABAP
DeathAndPain
Expert
 
Beiträge: 849
Registriert: 05.05.2006, 10:14
Dank erhalten: 197 mal
Ich bin: Entwickler/in

Re: FuBa Input und Export Parameter

Beitragvon HH_ABAP » 09.01.2019, 18:20

OK, vielen Dank.
Ich werde mich bisschen darüber schlau machen. :-)
HH_ABAP
ForumUser
 
Beiträge: 98
Registriert: 06.04.2018, 17:08
Dank erhalten: 1 mal
Ich bin: Entwickler/in


Zurück zu ABAP® für Anfänger

  Aktuelle Beiträge   
Umrechnung Stück in KG
vor 2 Stunden von Nordlicht 0 Antw.
gelöst Sel.Screen in Subscreen - VA06
vor 16 Stunden von bapimueller 2 Antw.
gelöst Prüfen Konfiguration Kundenauftrag gene Type
vor 22 Stunden von mfromg 0 Antw.
Auswertung Orders erhalt per Mail oder FAX oder beides
vor 16 Stunden von ewx 2 Antw.
SAP und Gamification
Gestern von ewx 1 Antw.

  Ähnliche Beiträge beta
Export Parameter als Tabelle SE11
14.01.2019, 10:58 von HH_ABAP 2 Antw.
Lebensdauer Parameter bei FuBA
12.01.2007, 16:35 von cut1 2 Antw.
Struktur als Using-Parameter aus Fuba an Unterprogramm
16.02.2016, 08:24 von kbit100 2 Antw.
BAtch-Input geht - Fuba geht nicht?
28.04.2014, 09:44 von RIG 2 Antw.
Export
27.11.2003, 22:13 von Frank Dittrich 5 Antw.

 

Wer ist online?

Mitglieder in diesem Forum: Google Adsense [Bot]