TRY / ENTRY beim SELECT

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
8 Beiträge • Seite 1 von 1
8 Beiträge Seite 1 von 1

TRY / ENTRY beim SELECT

Beitrag von SAP_ENTWICKLER (Specialist / 445 / 219 / 6 ) »
Hallo,

der Kunde möchte, dass vor einem SELECT über eine Kundentabelle geprüft wird ob diese vorhanden ist um mit einen TRY/ENTRAY CATCH dann der eigentlich logisch richtige Abbruch des Programms verhindert wird.

Ist dieses möglich?

Wenn dieses möglich ist, wo muss ich dann die Abfrage auf den SY-SUBRC einbauen ob der gesuchte Datensatz vorhanden ist?

Danke und viele Grüße

Norbert

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


Re: TRY / ENTRY beim SELECT

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
Schon <F1> auf 'TRY' versucht?

Folgende Benutzer bedankten sich beim Autor Unit605 für den Beitrag:
SAP_ENTWICKLER


Re: TRY / ENTRY beim SELECT

Beitrag von Lucyalison (Specialist / 262 / 51 / 26 ) »
Hallo Norbert,

ich würde Dir gerne weiterhelfen aber ich habe Deine Anforderung noch nicht ganz verstanden. Wenn die Kundentabelle nicht vorhanden ist, soll ein Anwendungsblock übersprungen werden, der den Abbruch des Programms verursachen würde? Oder wie hast Du das mit dem Try/Endtry gemeint? Und wird auf das Existieren der Tabelle abgefragt oder auf einen bestimmten Datensatz wie Du im letzten Satz fragst?

Viele Grüsse
Nicola

Folgende Benutzer bedankten sich beim Autor Lucyalison für den Beitrag:
SAP_ENTWICKLER


Re: TRY / ENTRY beim SELECT

Beitrag von SAP_ENTWICKLER (Specialist / 445 / 219 / 6 ) »
Hi,

ja so habe ich es gemeint.

Bei INCLUDE's und Funktionsbausteinen kann man im TRY/ENDTRY mit CATCH eine Ausnahme abfangen wenn das gerufene Objekt nicht vorhanden ist.

Dieses möchte der Kunde jetzt auch bei einem SELECT bezüglich der genutzten Tabelle haben.

Der Hintergrund ist, dass die Entwicklungen beim Kunden sehr genau Paketen zugeordnet sind. Die Objekte dürfen paketübergreifend, wenn überhaupt, nur gerufen werden wenn der Aufruf über TRY/ENDTRY und CATCH abgefangen wird. Aus Paket A heraus wird eine Tabelle ZAXXXXX gefüllt, die auch diesem Paket zugeordnet ist. Diese soll jetzt in einer Funktion FBYYYYYY des Paketes B gelesen werden. Damit haben wir einen paketübergreifenden Zugriff. Jetzt soll auch hier über TRY/ENDTRY und CATCH verhindert werden, dass der SELECT ausgeführt wird wenn die Tabelle nicht vorhanden ist. Die Intention verstehe ich nicht, weil das Coding a)entweder nicht generiert werden kann wenn die Tabelle beim Transport nicht im Zielsystem vorhanden ist oder b) die Tabelle nicht gelöscht werden kann wenn sie noch verwendet wird.

Man könnte auch die DD02L abfragen ob die Tabelle noch vorhanden ist. Eine andere Möglichkeit sehe ich zur Absicherung des SELECT's nicht.

Viele Grüße

Norbert

Re: TRY / ENTRY beim SELECT

Beitrag von ralf.wenzel (Top Expert / 3935 / 200 / 281 ) »
Ich weiß ja nicht, ob ich die Frage verstanden habe - aber ein Programm mit einem SELECT auf eine nicht bekannte Tabelle ist syntaktisch falsch und lässt sich nicht aktivieren.

Ralf

Folgende Benutzer bedankten sich beim Autor ralf.wenzel für den Beitrag:
SAP_ENTWICKLER

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

Re: TRY / ENTRY beim SELECT

Beitrag von black_adept (Top Expert / 4099 / 128 / 941 ) »
ralf.wenzel hat geschrieben:...ein Programm mit einem SELECT auf eine nicht bekannte Tabelle ist syntaktisch falsch und lässt sich nicht aktivieren.
Wenn die Tabelle dynamisch angesprochen wird schon.

Folgende Benutzer bedankten sich beim Autor black_adept für den Beitrag:
SAP_ENTWICKLER

live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: TRY / ENTRY beim SELECT

Beitrag von ralf.wenzel (Top Expert / 3935 / 200 / 281 ) »
Davon stand da nix. SELECT auf DD03L(?), ehe man den SELECT auf die Tabelle macht. Würde ich als Methode kapseln und aufrufen per IF table_exists( tabname). SELECT (tabname).....ENDIF.

Ralf

Folgende Benutzer bedankten sich beim Autor ralf.wenzel für den Beitrag:
SAP_ENTWICKLER

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

Re: TRY / ENTRY beim SELECT

Beitrag von Lucyalison (Specialist / 262 / 51 / 26 ) »
Hallo Norbert,

in der Tat eine spannende Anforderung ;-) aber der Kunde ist König. Ich würde es genauso machen wie Ralf beschrieben hat - ich glaub die Tabellen stehen in der DD02L, bin aber gerade nicht im System. Aber egal, das findest Du ja raus. Und dann eine Exception werfen damit das Ganze in das Catch Coding von Try/Endtry läuft.

Viele Grüsse
Nicola

Folgende Benutzer bedankten sich beim Autor Lucyalison für den Beitrag:
SAP_ENTWICKLER


Seite 1 von 1

Vergleichbare Themen

0
Antw.
1580
Views
Prefix number: entry missing for system D23 client 020
von Thomas82515 » 17.07.2014 10:24 • Verfasst in Financials
1
Antw.
1862
Views
Entwicklungsklasse SLIS - slis-entry - ALV Grid auslesen
von pohlmann-schwarza » 17.09.2008 12:38 • Verfasst in ABAP Objects®
4
Antw.
18700
Views
Select nach Parameter & Select-Options
von doeme » 10.07.2012 16:37 • Verfasst in ABAP® für Anfänger
4
Antw.
9358
Views
Performance: SELECT UP TO 1 ROWS vs. SELECT SINGLE
von roman1983 » 04.09.2008 14:29 • Verfasst in ABAP® für Anfänger
8
Antw.
3103
Views
SELECT SINGLE oder SELECT UP TO 1 ROWS?
von nickname8 » 12.04.2021 10:38 • Verfasst in ABAP® für Anfänger

Aktuelle Forenbeiträge

Daten an Tabelle binden
vor 4 Stunden von Bright4.5 3 / 1476
Regex in where
vor 5 Stunden von tar 6 / 142
Programm anlegen mit Vorlage
vor 20 Stunden von DeathAndPain 2 / 126
IT0024 Qualifikationen CP-ID
vor 20 Stunden von DeathAndPain 2 / 355

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 4 Stunden von Bright4.5 3 / 1476
Regex in where
vor 5 Stunden von tar 6 / 142
Programm anlegen mit Vorlage
vor 20 Stunden von DeathAndPain 2 / 126
IT0024 Qualifikationen CP-ID
vor 20 Stunden von DeathAndPain 2 / 355

Unbeantwortete Forenbeiträge

BUSOBJEKT zu CMIS PHIO ermitteln
vor 22 Stunden von snooga87 1 / 86
aRFC im OO-Kontext
vor 5 Wochen von ralf.wenzel 1 / 3261
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9821