1.) Ich habe ein Parameterfeld mit type DATS. Es passen 8 Zeichen hinein. Wie bekomme ich es hin, dass 10 Zeichen hineinpassen bzw. nach Drücken der RETURN-Taste aus 23082006 23.08.2006 wird?
2.) Ich habe ein Parameterfeld mit type i. Das Eingabefeld ist aber nun sehr groß. Kann man es kleiner machen, z.B. so, dass nur 3 Stellen hinpassen würden?
Vielen Dank im voraus,
Blueshape
Ich bin für alles offen, solange es anderen nicht ernsthaft schadet.
Hallo Blueshape,
zu 1) typisiere doch mit SYST-DATUM
zu 2) typisiere doch mit NUMC3 und weise - falls Du explizit I benötigst - einer Integervariable zu.
P_BLDAT type SY-DATUM default SY-DATUM obligatory,
machen kann.
Der Punkt 2 hat auch geklappt. Aber warum geht das, dass ich das NUMC3-Feld einem I-Feld zuweise innerhalb des Programms, wenn ich das NUMC-Feld aber an ein FuBa-I-Feld übergebe, bekomme ich einen Laufzeitfehler
Weil es sich hierbei um eine Schnittstellendefinition/-vereinbarung handelt und die Typen exakt übereinstimmen müssen?
Viele Grüße und nochmals besten Dank!
Blueshape
Ich bin für alles offen, solange es anderen nicht ernsthaft schadet.
Die FuBas wollen halt leider immer exakt den Datentyp reinbekommen, der intern definiert wurde. Das Casten sollst du selbst außerhalb des FuBas übernehmen.
wenn man den FB selbst geschrieben hat, kann man beim Typisieren auch auf einen generischen Typ (z.B. NUMERIC: alle Zahlenformate) ausweichen.
Allerdings muss man dann intern sicherstellen, dass der ankommende Typ sich mit den weiteren Befehlen verträgt.
PS:
NUMC ist kein Zahlentyp, sondern eine Zeichenkette mit Ziffern!
PPS:
weitere Informationen zu generischen Typen findet man in der Hilfe: 'Typisierung von Formalparameter'
Gruß
Ereglam
May the Force be with your code || .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .