Alles scheint richtig zu sein, und trotzdem wird der Wert nicht generiert ?
Meistens liegt das Problem ins Customizing:
Generierungsklasse am Objekttyp überprüfen bzw. pflegen. Ohne eingetragene Generierungsklasse erfolgt keine Generierung.
Technischer Typ (TECHTYP) am Element überprüfen bzw. pflegen (TME, PMK…). Die Signatur der Generierungsmethode muss mit dem technischen Typ übereinstimmen.
Pflegetyp (FILLTYP) am Element bzw. an der Elementzuordnung:
bei A kann der Wert nicht manuell erfasst werden.
bei M wird nichts generiert, (nur Manuelle oder maschinelle Eingabe)
R bietet die größte Flexibilität an : der Wert kann generiert werden, kann auch manuell überschrieben werden.
Format des Elements (TYP) Min/Max/Nenn usw. : nur die entsprechenden Spalten werden angezeigt/befüllt
Prioritätskennzeichnung für die Wertermittlung (PRIOGENREF) : Mithilfe des BADI /SCT/QP_BADI_OBJTYP stehen zwei konkurrierende Verfahren zur Auswahl :
(G) der Wert wird über eine Generierungsmethode berechnet.
(R) der Wert wird aus einer Referenz ermittelt.
Der Default Wert ist R : Die Generierung hat Vorrang über die Referenzierung
Falls die gewünschte Zeile nicht erscheinen soll nachdem die Generierung gelaufen ist, soll überprüft werden, ob die Zeile sichtbar ist. Gegebenenfalls soll das Attribut VISIBLE in der Generierungsmethode auf abap_true gesetzt werden, fall das Element ins Customizing nicht als "Initial anzeigen" gesetzt wurde.
der Wert wurde vorher manuell angepasst : Im Normalfall werden manuell erfasste Daten mit einer Generierung nicht überschrieben, es sei denn "Generieren mit überschreiben" wurde getriggert.