Dropdown-Liste & Workprozess durchgestartet

Benutzeroberflächen in SAP®-Systemen.
6 Beiträge • Seite 1 von 1
6 Beiträge Seite 1 von 1

Dropdown-Liste & Workprozess durchgestartet

Beitrag von ChrisB85 (ForumUser / 6 / 0 / 0 ) »
Hi Leute,

ich suche recht häufig nach Lösungen und Vorgehensweisen in eurem Forum und werd auch so gut wie immer fündig, doch nun hab ich ein Problem, bei dem ich einfach nicht weiterkomm. :oops:
Ich hoffe das mir jemand von euch helfen kann.

Aber nun zu meinem Problem.
Ich habe ein Dynpro mit dem Layout-Manager erstellt und daruaf ein I/O-Feld als Dropdownliste festgelegt (drpdl_process).
Nun will ich das dort nur vorgegebene Werte ausgewählt werden können.
Dafür hab ich ähnlich wie im Buch 'ABAP Objects' den FUBA 'F4IF_INT_TABLE_VALUE_REQUEST' benutzt, um die Dropdownliste bei 'Process ON VALUE-Request' zu füllen.
Nun bekomm ich aber beim ausführen des Programms immer die Fehlermeldung 'Workprozeß durchgestartet (Modus abgebrochen)
was während oder nach dem ausführen dieses FuBas auftritt.
Lasse ich das module welches für die Dropdownliste ist weg, so funktioniert der Rest einwandfrei. :evil:

Code:
DYNPRO:
-------------------------------------------------
PROCESS BEFORE OUTPUT.
MODULE set_status.

PROCESS AFTER INPUT.
MODULE user_command_0100.
MODULE cancel AT EXIT-COMMAND.

PROCESS ON VALUE-REQUEST.
FIELD drpdl_process-key MODULE create_dropdown_box. <---!!!

PAI-Module:
--------------------------------------------------
MODULE create_dropdown_box INPUT.
lc_dynpro_utilities=>value_help_process( ).
ENDMODULE. " create_dropdown_box INPUT

TOP-INCLUDE:
--------------------------------------------------
FUNCTION-POOL zp00_dyn_test. "MESSAGE-ID ..
DATA:
save_ok TYPE sy-ucomm,
ok_code TYPE sy-ucomm.

TYPES:
BEGIN OF dropdownlist,
key TYPE char40,
name TYPE char80,
END OF dropdownlist.

DATA:
process_table TYPE STANDARD TABLE OF dropdownlist,
document_table TYPE STANDARD TABLE OF dropdownlist.
*&---------------------------------------------------------------------*
*& Class LC_DYNPRO_UTILITIES
*&---------------------------------------------------------------------*
* Text
*----------------------------------------------------------------------*
CLASS lc_dynpro_utilities DEFINITION.
PUBLIC SECTION.
CLASS-METHODS:
set_process_table,
value_help_process.
ENDCLASS. "LC_DYNPRO_UTILITIES

CLASS lc_dynpro_utilities IMPLEMENTATION.
METHOD set_process_table.
DATA:
wa_process_table LIKE LINE OF process_table.

CLEAR process_table.
wa_process_table-key = 0.
SELECT DISTINCT prcss
FROM <Tabelle>
INTO wa_process_table-name.

wa_process_table-key = wa_process_table-key + 1.
APPEND wa_process_table TO process_table.
ENDSELECT.
ENDMETHOD.

METHOD value_help_process.
DATA:
syrepid TYPE sy-repid.

syrepid = sy-repid.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'KEY'
value_org = 'S'
dynpprog = syrepid
dynpnr = '0100'
dynprofield = 'DRPDL_PROCESS'
TABLES
value_tab = process_table.

ENDMETHOD.
ENDCLASS. "LC_DYNPRO_UTILITIES


Iin der itab, die an den FuBa übergeben wird, sind rund 60 Einträge drin.
Über das Modul set_status wird auch noch die Methode ' set_process_table' der Klasse lc_dynpro_utilities aufgerufen, um die itab zu füllen.

Vielen Dank im vorraus
Gruss Christian

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


Beitrag von ChrisB85 (ForumUser / 6 / 0 / 0 ) »
kleine änderung:
nachdem ich es nun ein paar mal debugged habe muss es wohl nicht an dem FuBa liegen, sondern eher an:

PROCESS ON VALUE-REQUEST.
FIELD drpdl_process MODULE create_dropdown_box.

selbst wenn alles in dem Modul 'create_dropdwon_box' auskommentiert ist und er eigentlich nichts macht, tritt der Ffehler auf.

Wenn ich aber nun komplett
* PROCESS ON VALUE-REQUEST.
* FIELD drpdl_process-key MODULE create_dropdown_box.
auskommentiere klappt es...

Beitrag von black_adept (Top Expert / 4103 / 128 / 945 ) »
Hallo ChrisB,

wozu brauchst du denn eine F4-Hilfe, wenn du schon eine Dropdownbox definiert hat. Eine solche sollte doch automatisch schon alle möglichen/erlaubten Werte im Bauch haben.

Die erlaubten Werte füllst du normalerweise bevor der Dynpro aufgeblendet wird. Dazu nimmt man den FuBa VRM_SET_VALUES (evtl. Doku zu dem Baustein durchlesen - da ist ein Beispiel drin wie es geht. Allerdings ex. die Doku m.W. nur in deutsch )
Oder die Listbox weiß automatisch was erlaubt ist, wenn die Domäne über Festwerte verfügt.


Die F4-Hilfe mittels F4IF_INT_TABLE_VALUE_REQUEST wird hingegen bei "normalen" Feldern gemacht und üblicherweise im POV aufgerufen.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Beitrag von edwin (Specialist / 306 / 10 / 68 ) »
Hallo ChrisB,

ich schliesse mich black_adept an mit einer kleiner Anmerkung:
wenn Du eine Listbox mit eigenen Werten füllen willst, solltes Du das nicht
im POV tun, sondern im PBO.

Gruss Edwin

Beitrag von ChrisB85 (ForumUser / 6 / 0 / 0 ) »
Mit set_value_for_output im pbo hat es super geklappt, vielen dank.
Ist auch genau das was ich wollte :)

Kann mir aber trotzdem jemand erklären wie es zu dem Fehler "Workprozess durchgestartet (Modus abgebrochen)" kommt?

Beitrag von black_adept (Top Expert / 4103 / 128 / 945 ) »
Wahrscheinlich ein Fehler im GUI der sich statt mit einem Kurzdump lieber gleich vollständig verabschiedet.

Evtl. neuesten GUI-Patch einspielen - manchmal ist der Fehler ja in neueren Releaseständen behoben.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Seite 1 von 1

Vergleichbare Themen

4
Antw.
3559
Views
Fehler bei der Dropdown-Liste
von LadyRosely » 24.10.2016 14:21 • Verfasst in Dialogprogrammierung
10
Antw.
5071
Views
Dropdown Liste Debuggen
von erubadhron » 29.03.2017 09:50 • Verfasst in ABAP® Core
2
Antw.
1345
Views
CL_GUI_ALV_GRID - Dropdown Liste mit Hotspot
von Aba » 29.07.2020 10:16 • Verfasst in ABAP® für Anfänger
3
Antw.
5951
Views
editierbares ALV DropDown Liste Alias => Anzeigeproblem
von ABAPStud » 24.10.2012 20:39 • Verfasst in ABAP® für Anfänger
1
Antw.
2759
Views
Dialogsteuerung Liste->Dynpro->Liste sy-ucomm
von cut1 » 08.12.2006 14:28 • Verfasst in Dialogprogrammierung

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

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.