Also, ich baue (wieder einmal) einen ALV mit einigen editierbaren Feldern.
Jetzt möchte ich das die Eingaben geprüft werden. Bei einigen funktioniert die Prüfung da eine Prüftabelle hinterlegt ist, aber ein Feld kann ich nur über einen Funktionsbaustein prüfen. und jetzt weiss ich nicht mehr weiter.... ich möchte das dieses feld geprüft (standard-funktion) wird und das feld markiert wird wenn die eingabe falsch ist.
hier (eigene Felprüfungen in einem editierbaren ALV)
sehe ich beim ALV (Rel. 46C) eine Lücke.
Wenn die Hinterlegung einer Prüftabelle nicht möglich
ist, muß du dies im PAI selbst programmieren:
1) Prüfung einbauen nach Ereignis DATA_CHANGED
2) Im Fehlerfall Celle focusieren (SET_CURRENT_CELL_VIA_ID)
und markieren (SET_SELECTED_CELLS_ID)
3) Meldung ausgeben an Benutzer
also so funzt es, aber leider markiert es mir nur das letzte feld --> auch wenn ich die zellen-infos mitgebe --> und wenn der wert korrigiert wird, ist das nächste fehlerhafte feld markiert.
es wäre schön wenn alle Felder markiert werden, aber wenigstens funktioniert jetzt die prüfung.
naja komplett selbst programmieren muss man es nicht.
der editable alv bietet verschiedene data_changed ereignisse an.
registriere doch das ereignis on_cell_change und definiere dazu ne methode nur für die entsprechende spalte und wirf dann dann aufkommende fehler ins protokoll.