[NEWSboard IBMi Forum]

Thema: %char ??

  1. #1
    Registriert seit
    Jul 2002
    Beiträge
    43

    Question %char ??

    Hallo an Alle,

    ich habe ein kleines Problem bei folgenden Anweisungen:
    D firma s 2 0 inz(01)
    D result1 s 2a
    /free
    evalr result1 = %char(firma);
    /end-free
    Das Ergebnis dieser Operation ist: ' 1'. Ich brauche aber unbedingt das Ergebnis '01'.
    Wer kann mir bitte einen Tipp geben, über welche Anweisungen ich ein tatsächliches Character-Abbild eines numerischen Feldes bekomme (im klassischen RPG bekomme ich das über den Befehl "move", den es im free-rpg leider nicht mehr gibt).

    Danke für Eure Hilfe, Marc

    [Dieser Beitrag wurde von Gimli am 04. März 2003 editiert.]

  2. #2
    Registriert seit
    Nov 2002
    Beiträge
    173

    Post

    Hallöchen!

    Das müßte mit der Funktion %editc machbar sein, auf dein Bleistift gemünzt so:

    evalr result1 = %editc(firma:'X')

    Wobei ich mir nicht mehr ganz sicher bin ob der Edit Code "X" der richtige ist, einfach mal ausprobieren.

    Grüße

    Martin

  3. #3
    Registriert seit
    May 2002
    Beiträge
    1.121

    Post

    /Free
    result = %trim(%editc(firma:'1':'0'));
    /end-free

    der 1.parm nach firma, ist der edit-code, wie du ihn zB aus einem DSPF kennst

  4. #4
    Registriert seit
    Jul 2002
    Beiträge
    43

    Post


    Danke, es hat funktioniert !!

  5. #5
    Registriert seit
    Aug 2001
    Beiträge
    2.869

    Post

    Habt Ihr Euch bei der ganzen Geschichte schon mal Gedanken um die Performance gemacht?

    Ich habe gerade einen Test für 1.000.000 Durchläufe ausgeführt:
    1. MOVE = 318000 MS
    2. %EditC(Feld: 'X') = 808000 MS
    3. %Trim(%Editc(Feld: '1': '0')) = 3799000 MS

    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 4. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  6. #6
    Registriert seit
    May 2002
    Beiträge
    1.121

    Post

    oh Birgitta,

    da ist also mein vorschlag knapp 12mal langsamer.
    dann sollte man es villeleicht doch gleich überlappend def.

    gruß ronald

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •