Select-options mit Call Funtion

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

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

Select-options mit Call Funtion

Beitrag von erzoo24 (ForumUser / 49 / 28 / 0 ) »
Hallo und einen guten Morgen wünsch ich,

ich habe folgendes Problem und es wäre sehr nett wenn mir geholfen werden könnte.
Im Nachfolgenden Code gehts darum das ich mittels der select options die Patienten nr auswähle und durch die call funktion die nötigen Daten übergebe ..ich komme zwar bis zur Eingabe und Ausgabe nur wird bei der Ausgabe nichts gefüllt also ist leer ich hatte versucht die export variable als data manuel zu deklarieren und dann so bei der exporting variable mit zu liefern doch hat auch nichts gebracht wie könnte ich das Problem am besten angehen ein paar Lösungsvorschläge villt.?

kleine info im Code Verlauf, welcher jetzt nicht vorliegt hab ich mehrere Concatinate befehle benutzt um später nur mit einem (Write: lv_ausgabe) halt auszugeben..falls dies von bedeutung ist ....

Code: Alles auswählen.


SELECT-OPTIONS so_patnr FOR npat-patnr NO INTERVALS.


CALL FUNCTION 'ISH_READ_NPAT'
      EXPORTING
        ss_patnr              = so_patnr 
      IMPORTING
        ss_npat               = ls_npat

      EXCEPTIONS
        not_found             = 1
        no_authority          = 2
        no_einri              = 3
        no_treatment_contract = 4
        OTHERS                = 5.
_________________________________________________________________________________
Gruß Özgür

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


Re: Select-options mit Call Funtion

Beitrag von Thanatos82 (Expert / 699 / 32 / 123 ) »
Moin Özgür,

ich gehe mal davon aus, das die Struktur lokal in deinem Programm deklariert ist. Hast du den Baustein mal über die SE37 selbst getestet, ob er dir da ein Ergebnis liefert?
Ich kenn mich jetzt in den ISH-Bausteinen überhaupt nicht aus, aber eventuell musst du die Patientennummer noch durch einen Conversion-Exit jagen um führende Nullen hinzuzufügen, damit der Baustein korrekt arbeiten kann. Ach und liefert dein FuBa einen sy-subrc? Wenn ja, welche Nummer?

Folgende Benutzer bedankten sich beim Autor Thanatos82 für den Beitrag:
erzoo24

Gruß,
der Matze

Re: Select-options mit Call Funtion

Beitrag von Dele (Specialist / 307 / 4 / 47 ) »
Der Funktionsbaustein erwartet eine Nummer.
so_patnr ist aber die Kopfzeile einer Select-Option mit der Stuktur:
Sign
Option
Low
High

Ich würde ggf. einen Parameter anstatt einer Select-Option verwenden.
Zuletzt geändert von Dele am 29.06.2015 13:33, insgesamt 1-mal geändert.

Folgende Benutzer bedankten sich beim Autor Dele für den Beitrag:
erzoo24


Re: Select-options mit Call Funtion

Beitrag von ralf.wenzel (Top Expert / 3776 / 176 / 262 ) »
Wenn du so_patnr übergibst, übergibst du die Feldleiste. Übergib so_patnr[].

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

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

Re: Select-options mit Call Funtion

Beitrag von erzoo24 (ForumUser / 49 / 28 / 0 ) »
Hallo Leute, danke für die Antworten es sieht wie folgt jetzt aus, anscheinend kann ich durch eine hilfsvariable loopen

Code: Alles auswählen.

DATA: lv_patnr TYPE npat-patnr.

CALL FUNCTION 'ISH_READ_NPAT'
      EXPORTING
        ss_patnr              = lv_patnr
      IMPORTING
        ss_npat               = ls_npat

      EXCEPTIONS
        not_found             = 1
        no_authority          = 2
        no_einri              = 3
        no_treatment_contract = 4
        OTHERS                = 5.


lv_vname = ls_npat-vname.
lv_nname = ls_npat-nname.
lv_gschl = ls_npat-gschl.
lv_gbdat = ls_npat-gbdat.

SELECT-OPTIONS s_patnr FOR npat-patnr NO INTERVALS.

loop at s_patnr INTO lv_patnr.

ENDLOOP.

zwar kommt der dump nicht mehr doch weiterhin keine Werte ...nach der ganzen sucherei hab ich mich ein wenig Lost gefühlt...
_________________________________________________________________________________
Gruß Özgür

Re: Select-options mit Call Funtion

Beitrag von ralf.wenzel (Top Expert / 3776 / 176 / 262 ) »
Das kann nicht funktionieren. lv_patnr ist nicht kompatibel zu s_patnr.

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

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

Re: Select-options mit Call Funtion

Beitrag von erzoo24 (ForumUser / 49 / 28 / 0 ) »
ich soll auf jedenfall halt select option in Verbindung mit dieser call funktion bringen und das am ende loopen ..für eine Mehrfachauswahl
_________________________________________________________________________________
Gruß Özgür

Re: Select-options mit Call Funtion

Beitrag von erzoo24 (ForumUser / 49 / 28 / 0 ) »
also hier der Code complett warscheinlich bekommt ihr dann eine bessere Vorstellung meines Vorhabens

Code: Alles auswählen.

TABLES: npat.




DATA: lv_vname TYPE npat-vname,
      lv_nname TYPE npat-nname,
      lv_gschl TYPE npat-gschl,
      lv_gbdat TYPE npat-gbdat,
      lv_anr(4)   TYPE c,
      lv_alter(2) TYPE c,
      lv_ausgabe  TYPE string,
      ls_npat TYPE npat,
      lv_patnr type npat-patnr.



*PARAMETERS: p_patnr TYPE  npat-patnr, kurz mal ausgeblendet zumm test wegen select options
*            p_patnr1 TYPE npat-patnr,
*            p_patnr2 TYPE npat-patnr,
*            p_patnr3 TYPE npat-patnr,
*            p_patnr4 TYPE npat-patnr.
SELECT-OPTIONS s_patnr FOR npat-patnr NO INTERVALS.

CALL FUNCTION 'ISH_READ_NPAT'
      EXPORTING
        ss_patnr              = lv_patnr
      IMPORTING
        ss_npat               = ls_npat

      EXCEPTIONS
        not_found             = 1
        no_authority          = 2
        no_einri              = 3
        no_treatment_contract = 4
        OTHERS                = 5.


lv_vname = ls_npat-vname.
lv_nname = ls_npat-nname.
lv_gschl = ls_npat-gschl.
lv_gbdat = ls_npat-gbdat.



PARAMETERS: s1 RADIOBUTTON GROUP stil,
            s2 RADIOBUTTON GROUP stil,
            s3 RADIOBUTTON GROUP stil,
            s4 RADIOBUTTON GROUP stil,
            s5 RADIOBUTTON GROUP stil.





lv_alter = sy-datum+0(4) - lv_gbdat+0(4).

if lv_gschl eq '1'.
  lv_gschl = 'M'.
  ELSEIF lv_gschl eq '2'.
    lv_gschl = 'W'.
    else.
      lv_gschl = 'A'.
endif.

IF lv_gschl eq 'M'.
  lv_anr = 'Herr'.
ELSE.
  lv_anr = 'Frau'.
ENDIF.

IF     s1 EQ 'X'.
CONCATENATE lv_anr lv_vname lv_nname into lv_ausgabe SEPARATED BY space.
ELSEIF s2 EQ 'X'.
CONCATENATE lv_anr ` ` lv_nname `, ` lv_vname into lv_ausgabe.
ELSEIF s3 EQ 'X'.
CONCATENATE lv_nname `, ` lv_vname `, ` into lv_ausgabe.

   if lv_gschl eq 'M'.
     CONCATENATE lv_ausgabe 'Männlich' INTO lv_ausgabe.
    else.
    CONCATENATE lv_ausgabe 'Weiblich' INTO lv_ausgabe.
  endif.

ELSEIF s4 EQ 'X'.
CONCATENATE lv_nname `, ` lv_vname ` ` `(` lv_gschl `, ` lv_alter `)` into lv_ausgabe.

ELSEIF s5 eq 'X'.
CONCATENATE lv_vname `, ` lv_nname ` ` '(' lv_gschl `, ` lv_alter ')' into lv_ausgabe.

ENDIF.

loop ??????????


ENDLOOP.

skip.
write: lv_ausgabe.
...

Grob gesagt gehts um eine Stil auswahl die die Ausgabe der Patienten Daten unterschiedlich ausgibt
_________________________________________________________________________________
Gruß Özgür

Re: Select-options mit Call Funtion

Beitrag von Thanatos82 (Expert / 699 / 32 / 123 ) »
Hi,

wie Dele schon schrieb ist die Struktur einer Select-Option vorgegeben (Sign, Option, Low, High). Wenn du nun eine Select-Option und einen Loop Nutzen sollst, bleibt eigentlich nur ein Schluss übrig:
(Vorab, ich setze voraus, dass du weißt wozu Select-Options genutzt werden, Stichwort Range-Tabelle)
Du musst alle Patientennummern selektieren, die innerhalb des vorgegebenen Ranges liegen. Damit erhältst du eine Tabelle von Patientennummern. Per Loop durchläufst du diese Tabelle und gibst mit jedem Durchlauf die Patientennummer in den Baustein, erhältst deine Ergebnisse und gibst sie aus.

Viel Spaß beim umsetzen. ;)

Folgende Benutzer bedankten sich beim Autor Thanatos82 für den Beitrag:
erzoo24

Gruß,
der Matze

Re: Select-options mit Call Funtion

Beitrag von JHM (Top Expert / 1188 / 1 / 195 ) »
erzoo24 hat geschrieben:das am ende loopen ..für eine Mehrfachauswahl
Schau dir doch mal den Parameter des FuBas in der SE37 an.
Selbst der Kurztext ist erklärend genug, wenn man mit dem Bezugstyp nichts anfangen kann: Patientennummer, Schlüssel von NPAT
Also EINE Patiententennr. und keine Mehrfachauswahl aus der SelOpt.

Am einfachsten ist es mit einem Select auf die NPAT mit der SelOpt alle Stammdaten ein zu lesen und diese dann in einem Loop über das Ergebnis jeweils den FuBa zurufen.


okay neues Post, sehe gerade dein Coding.
Wie lange programmierst du schon? Wer soll es dir bei bringen?
Wer hat dich auf die Idee mit dem CONCATENATE gebracht?
Wieso speicherst du die Daten nicht in einer internen Tabelle und machst die Ausgabe/Aufbereitung wenn du die Datenermittlung abgeschlossen hast (EVA-Prinziphttps://de.wikipedia.org/wiki/EVA-Prinzip bzw. später mal MVC: https://de.wikipedia.org/wiki/Model_View_Controller)?

Dein Coding macht mich ein Jahr älter als ich bin (bin im Dezember geboren).

Folgende Benutzer bedankten sich beim Autor JHM für den Beitrag:
erzoo24

Gruß Hendrik

Re: Select-options mit Call Funtion

Beitrag von erzoo24 (ForumUser / 49 / 28 / 0 ) »
Thanatos82 hat geschrieben:Hi,

wie Dele schon schrieb ist die Struktur einer Select-Option vorgegeben (Sign, Option, Low, High). Wenn du nun eine Select-Option und einen Loop Nutzen sollst, bleibt eigentlich nur ein Schluss übrig:
(Vorab, ich setze voraus, dass du weißt wozu Select-Options genutzt werden, Stichwort Range-Tabelle)
Du musst alle Patientennummern selektieren, die innerhalb des vorgegebenen Ranges liegen. Damit erhältst du eine Tabelle von Patientennummern. Per Loop durchläufst du diese Tabelle und gibst mit jedem Durchlauf die Patientennummer in den Baustein, erhältst deine Ergebnisse und gibst sie aus.

Viel Spaß beim umsetzen. ;)

das hab ich alles verstanden ich danke dir nur krieg ich den loop irgendwie nicht hin, ich bin relativ neu in der abap umgebung kannst du mir evtl. kurz einen loop hinklatschen ?
_________________________________________________________________________________
Gruß Özgür

Re: Select-options mit Call Funtion

Beitrag von erzoo24 (ForumUser / 49 / 28 / 0 ) »
JHM hat geschrieben:
erzoo24 hat geschrieben:das am ende loopen ..für eine Mehrfachauswahl
Schau dir doch mal den Parameter des FuBas in der SE37 an.
Selbst der Kurztext ist erklärend genug, wenn man mit dem Bezugstyp nichts anfangen kann: Patientennummer, Schlüssel von NPAT
Also EINE Patiententennr. und keine Mehrfachauswahl aus der SelOpt.

Am einfachsten ist es mit einem Select auf die NPAT mit der SelOpt alle Stammdaten ein zu lesen und diese dann in einem Loop über das Ergebnis jeweils den FuBa zurufen.


okay neues Post, sehe gerade dein Coding.
Wie lange programmierst du schon? Wer soll es dir bei bringen?
Wer hat dich auf die Idee mit dem CONCATENATE gebracht?
Wieso speicherst du die Daten nicht in einer internen Tabelle und machst die Ausgabe/Aufbereitung wenn du die Datenermittlung abgeschlossen hast (EVA-Prinziphttps://de.wikipedia.org/wiki/EVA-Prinzip bzw. später mal MVC: https://de.wikipedia.org/wiki/Model_View_Controller)?


sry :D ist so ein test programm das ich bewerkstelligen soll als übung relativ neu im abap bereich

Dein Coding macht mich ein Jahr älter als ich bin (bin im Dezember geboren).
_________________________________________________________________________________
Gruß Özgür

Re: Select-options mit Call Funtion

Beitrag von erzoo24 (ForumUser / 49 / 28 / 0 ) »
Vielen Dank an jeden einzelnen nochmal Sehr hilfreich habs jetzt gelöst bekommen
_________________________________________________________________________________
Gruß Özgür

Seite 1 von 1

Vergleichbare Themen

0
Antw.
1759
Views
select-options depend on select-options.
von dragospirnut1 » 19.07.2017 09:54 • Verfasst in ABAP® Core
4
Antw.
17873
Views
Select nach Parameter & Select-Options
von doeme » 10.07.2012 16:37 • Verfasst in ABAP® für Anfänger
10
Antw.
5789
Views
2 Select-Options zu einem für Select zusammenfügen
von manuk » 23.03.2005 11:02 • Verfasst in ABAP® Core
2
Antw.
3427
Views
SELECT - Options & SELECT Abfrage
von Mavrix » 14.05.2007 08:41 • Verfasst in ABAP® für Anfänger
4
Antw.
3308
Views
SELECT-OPTIONS
von Walter_1 » 06.10.2004 09:45 • 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

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 64
Interne Tabelle
vor 5 Tagen von black_adept 2 / 133
MaLo-Checker in ABAP
vor einer Woche von A6272 6 / 255

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

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 64
Interne Tabelle
vor 5 Tagen von black_adept 2 / 133
MaLo-Checker in ABAP
vor einer Woche von A6272 6 / 255

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 64
Group Items auf einer Filterbar
vor einer Woche von Bright4.5 1 / 107
tRFC Transaktionen SM58
vor 4 Wochen von A6272 1 / 140