PDA

View Full Version : Kovertierung numerisch nach alpha in RPG IV



Michael Rude
10-06-03, 11:07
Hallo zusammen,

gibt es im RPG-free-Format eine komfortable Möglichkeit ein numerisches Feld in ein Alpha-Feld zu konvertieren, so dass alle! führenden Nullen umgesetzt werden?

Mit %editw wird mindestens eine Null gelöscht. Mit %char werden sämtliche Nullen herausgenommen.

Ziel ist es ein 5-stelliges numerisches so umzusetzen dass ein 5-stelliges Alphafeld mit Inhalt z.B. '00005' dabei herauskommt.

Vorab vielen Dank für zahlreiche Hilfen.

Gruß Michael

rmittag
10-06-03, 11:38
probier mal :


di s 5s 0 inz(12)
dc s 5a

c eval c = %editC( i : 'X' )

c return


Gruß Rolf

Michael Rude
10-06-03, 11:40
Hat funktioniert!

Vielen Dank!

Gruß Michael

Fuerchau
10-06-03, 15:59
Übrigens: mit %editw geht es auch (genauso auch in DDS mit EDTWRD).
Das Editierzeichen '0' (Null) muss nur zusätzlich vor dem 1. Leerzeichen angegeben werden, will heißen, bei Verwendung von '0' kann die Maske genau 1 Stelle länger sein als das Dezimalfeld Stellen hat.

Michael Rude
11-06-03, 11:34
<BLOCKQUOTE><font size="1" face="Verdana, Arial">Zitat:</font><HR>Original erstellt von Fuerchau:
Übrigens: mit %editw geht es auch (genauso auch in DDS mit EDTWRD).
Das Editierzeichen '0' (Null) muss nur zusätzlich vor dem 1. Leerzeichen angegeben werden, will heißen, bei Verwendung von '0' kann die Maske genau 1 Stelle länger sein als das Dezimalfeld Stellen hat.[/quote]

Ist auch eine Möglichkeit.
Dann muss das Ergebnisfeld aber auch eine Stelle länger sein, sonst wir die rechte letzte Stelle abgeschnitten.

malzusrex
11-06-03, 11:44
hallo michael,

es muss nicht immer unbedingt eine stelle mehr sein


d wert_num s 3 0 inz(123)
d wert_alpha s 3a
c
c Eval wert_alpha = %triml(%editw(wert_num:'0 '))
c
c Eval *inlr = *on


im feld wert_alpha steht dann 123 und nicht ' 12' wenn du das %triml weg lässt
gruß ronald

[Dieser Beitrag wurde von malzusrex am 11. Juni 2003 editiert.]

Michael Rude
11-06-03, 11:46
Ach wie herrlich ist doch free-rpg, wenn ich nur mehr Zeit hätte alles auszuprobieren! Danke für Tipps.

Gruß Michael