ALV-Dropdown-Box - andere Werte als vorgesehen eintragen

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

Die Objektorientierung mit ABAP®: Vererbung, Dynamische Programmierung, GUI Controls (u.a. ALV im OO).
3 Beiträge • Seite 1 von 1
3 Beiträge Seite 1 von 1

ALV-Dropdown-Box - andere Werte als vorgesehen eintragen

Beitrag von pde ( / / 0 / 3 ) »
Hallo zusammen,

ich habe ein editierbares ALV-Grid erstellt.
Da nur bestimmte Werte ("optional", "mandadory", "invisible")
eingetragen werden sollen, habe ich eine entsprechende Dropdown-Box erstellt.
Dummerweise ist es möglich die Editierfunktion via Dropdown-Box zu umgehen und
- den Wert komplett zu löschen
- via Cut & Paste einen ganz anderen Wert als vorgesehen in ein leeres Feld einzutragen.

Frage: Wie kann ich das verhindern.

Hinweise:
a) Ich habe als Muster den SAP-Beispiel-Report: BCALV_EDIT_06 verwendet.
( Dropdown-Listbox auf Spaltenebene )
dort wird eine Dropdown-Box für Gewichtseinheit mit den Optionen "G" und "KG"
verwendet. Auch dort kann man die Werte editieren (bzw. komplett löschen)

b) die Toolbox des ALV-Grid habe ich bereits angepasst so daß
"Cut" und "Paste" - auch im Kontextmenü - nicht mehr vorhanden sind.
trotzdem funktioniert "CTRL+C" / "CTRL+V" weiterhin.

entsprechende Code-Schnippsel:
-------------------------------------------------
* define the functions available in toolbar
perform exclude_tb_functions changing lt_exclude.

* load data into the grid and display them
call method go_grid->set_table_for_first_display
exporting
is_layout = gs_layout_xstate_dm
it_toolbar_excluding = lt_exclude
changing
it_outtab = gt_xstate_dm
it_fieldcatalog = gt_fieldcat_xstate_dm.
...

form exclude_tb_functions changing pt_exclude type ui_functions.
* customize the toolbar

* Lokal: Cut
ls_exclude = cl_gui_alv_grid=>mc_fc_loc_cut.
append ls_exclude to pt_exclude.

* Lokal: Paste
ls_exclude = cl_gui_alv_grid=>mc_fc_loc_paste.
append ls_exclude to pt_exclude.
...
endform. " exclude_tb_functions
-------------------------------------------------

Weis jemand wie man's machen könnte?
pde

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


Beitrag von Kapitän ( / / 0 / 3 ) »
Hi,
kannst es ja mit nem check probieren. und das feld markieren wenn es leer ist. wobei ich bezweifle, daß es leer sein wird.
ich habe mal in dem beispiel in den pai debugged und der wert wurde nicht verändert.

Rechnest du wirklich mit solchen Usereingaben?
cheers K.

Beitrag von Gast ( / / 0 / 3 ) »
Hallo,

das das Feld in dem Beispielreport BCALV_EDIT_06
wird nicht modifiziert weil es in diesem Beispiel
darum geht das Prinzip aufzuzeigen
(Wie erstelle ich eine Dropdown-Listbox).
Es gibt dort keinen Event-Handler etc.

Bei meinem Report wird in der dargestellten Tabelle
tatsächlich der Wert auf "" bzw. einen ungültigen
mit "Paste" eingefügten Wert modifiziert.

Da diese Eingaben möglich sind, muß ich auch damit
rechnen daß sie erfolgen können.
Das ist mein Standpunkt als vorsichtiger Programmierer ;-)
Und am liebsten würde ich natürlich verhindern,
daß diese Eingaben möglich sind anstatt die Folgen
nachträglich irgendwie zu korregieren.

gruss
pde

Seite 1 von 1

Vergleichbare Themen

7
Antw.
4239
Views
FUBA | Transaktion öffnen - Werte eintragen
von MRM » 28.04.2015 11:50 • Verfasst in ABAP® für Anfänger
2
Antw.
5390
Views
Dynpro: Dropdown werte übergabe von Screen 1 auf Screen 2
von erzoo24 » 28.02.2017 15:25 • Verfasst in ABAP® für Anfänger
2
Antw.
1177
Views
Eine Anweisung "" ist nicht vorgesehen
von bouhamidi » 06.10.2021 10:49 • Verfasst in ABAP® für Anfänger
2
Antw.
8516
Views
Hinweistext in Entgeltnachweis eintragen?
von P Anders » 04.07.2007 19:25 • Verfasst in Human Resources
6
Antw.
4859
Views
Datum in Selection Screen eintragen
von dyv » 01.09.2014 14:20 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag

Anonymous
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

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.