[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Feb 2007
    Beiträge
    71
    Hi Fuerchau.

    Ich muss leider nochmals nachhaken...

    Also - bis zur 3. Zeile kein Problem.

    Aber nun diese Zeile

    eval wert = %dec(%xlate(%substr(:mystring: start: len): '.' : ','): 5: 2)

    Also - erst mal denke ich muss es ja %subst heißen - und der erste : (vor mystring muss auch weg) - aber selbst wenn ich das alles mache steht "quasi" in Wert nur ein Komma ganz links...(und es kommt zu einem Fehler:Eine Zeichendarstellung eines numerischen Werts ist fehlerhaft (C G D F). ) Das bekomme ich zumindest heraus wenn ich die Funktion etwas zerpflücke.... Darf ich Dich nochmals bemühen mir zu helfen? Oder mache ich einen Fehler?

    Danke, Danke Dirk

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Prüfe die H-Einstellung für DECEDIT, ob Komma oder Punkt erwartet wird.
    %XLATE ersetzt eben '.' mit ',' und %dec erwartet dann eben eine Zahl mit oder ohne Komma.
    Eigentlich müsste es funktionieren.
    Der 1. Doppelpunkt muss tatsächlich weg (kommt wohl aus der SQL-Syntax).

    Zu beachen ist natürlich die Dezimalausprägung 5,2 heißt ja auch nur 3 Vorkomma. Da musst du schon die korrekte Gesamtanzahl angeben, eg. 9:2 für 7 VK.

    PS:
    Tippfehler dürften doch mal erlaubt sein
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    Feb 2007
    Beiträge
    71
    Hi Fuerchau!

    Selbstverständlich war dies keine Kritik! Entschuldige wenn das so rüberkam. Ich möchte ja nur, dass andere Suchende nicht die gleichen Probleme haben wie ich... Das mit DECEDIT war natürlich entscheidend. Aber ich habe immer noch ein Verständnis Problem...

    Folgendes:
    Wenn ich diese Geschichten zerlege - so in etwa...
    eval string2 = %subst( mystring:
    start: len)
    eval string3 = %xlate(string2: '.' : ',')

    und mir danach mit Debug STRING3 anzeigen lasse steht da nur

    STRING3 = ', '

    drinne - und das ist so noch ein bisschen mein Verständnisproblem...

    Ich kann ja auch theoretisch das XLATE weglassen wenn ich mit DECEDIT gleich auf '.' gehe, nichtwahr???

    Was mache ich falsch????

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Das ist halt so, wenn man Befehle aus dem Kopf tippt:

    %xlate(from:to:myvar)

    also
    %xlate('.':',':Mystring)

    Bitte wieder mal um Entschuldigung.

    Was das Komma angeht, hast du natürlich Recht, DECEDIT bestimmt die Erwartung, %xlate stellt diese dann nur sicher, falls doch mal ein Punkt statt Komma (aus USA, GB oder sonstwo her) kommt.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  5. #5
    Registriert seit
    Feb 2007
    Beiträge
    71
    Hallo Fuerchau!

    Bitte entschuldige Dich nicht - das macht mich verlegen

    VIELEN DANK! DANKE!

    Gute Zeit noch ...

    Dirk

Similar Threads

  1. Antworten: 4
    Letzter Beitrag: 06-06-06, 09:34
  2. OPNQRYF im MAPFLD umsetzung numerisch zu Alpha (Digits)
    By labm in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 23-03-06, 11:17
  3. EDIFACT auf iSeries
    By holly in forum NEWSboard Server Software
    Antworten: 7
    Letzter Beitrag: 18-01-06, 18:56
  4. Umsetzung von Umlauten
    By DEVJO in forum IBM i Hauptforum
    Antworten: 12
    Letzter Beitrag: 24-03-05, 11:29
  5. Umsetzung 5250 Anwendungen mit Websphere
    By sufukli in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 09-07-02, 14:16

Berechtigungen

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