[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Mar 2006
    Beiträge
    5

    Question Daten convertieren

    Hallo,
    es ist jetzt 5 jahre her, daß ich mein letztes RPG-PGM erstellt habe.
    Seither programmiere ich nur in ABAP/SAP. Ich benötige jetzt aber
    für eine Schnittstelle ein kleines RPG-PGM. In diesem PGM muß ich aus
    einer STRM-FILE eine DDS-File erstellen. Das ist mir soweit auch gelungen,
    bis auf eine Kleinigkeit. Ich muß ein Alpha-Feld in ein Num-Feld mit Nachkomma-
    stellen bringen und ich weis nicht mehr wie das geht.
    Kann mir da jemand helfen????
    Vorab meinen herzlichsten Dank

    Magdalena

  2. #2
    Registriert seit
    Jan 2001
    Beiträge
    833
    Hallo

    vielleicht hilft eine Datenstruktur z.B.
    d NUMDS ds
    d NUM 1 10
    d DEC 11 13


    Dann einfach die DS mit Move füllen
    Gruss
    Michael

  3. #3
    Registriert seit
    Dec 2005
    Beiträge
    7
    Hallo,

    ich würde es mal mit folgenden Built-in Functions probieren:

    num10_2 = %dec(%subst(Alpha:1:10) :10:2 )

    Gruss
    Torsten

  4. #4
    Registriert seit
    Mar 2006
    Beiträge
    5

    Smile Daten convertieren

    Hallo,

    nochmal herzlichen Dank für Eure Tips. Nachdem ich nun den
    ILE-RPG Compiler installiert habe dürfte ich das hinbekommen.

    Magdalena

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.243
    Der normale RPG-Compiler macht das auch.
    Mittels MOVE / MOVEL kann man Alpha nach numerisch konvertieren.
    Wenn das Zeichenfeld z.B. mit 11 Stellen definiert ist und nur Ziffern enthält, kann ich das ganz normal in ein Dezimalfeld übertragen. Die Nachkommastellen werden während der Übertragung ignoriert.
    Z.B.:
    MOVE '12345' WKDECF 52
    In WKDECF steht dann 123,45
    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

  6. #6
    Registriert seit
    Mar 2006
    Beiträge
    5

    Unhappy Daten convertieren

    Hallo funboard,

    ich bin hier fast am verzweifeln. Habe folgendes programmiert
    0040.00 C Z-ADD 0 COSTN 17 6
    0041.00 /free
    0042.00 wert = %trim(wert);
    0043.00 costn = %dec(%subst(wert:1:10) :12:6 );
    0044.00 /end-free
    0045.00 C Z-ADD COSTN COST
    0046.00 C Z-ADD 0 FBESN 17 5
    0047.00 /free
    0048.00 fbest = %trim(fbest);
    0049.00 fbesn = %dec(%subst(fbest:1:11) :13:5 );
    0050.00 /end-free
    0051.00 C Z-ADD FBESN ONHAND
    0052.00 C Z-ADD 0 RBESN 13 5
    0053.00 /free
    0054.00 rbest = %trim(rbest);
    0055.00 rbesn = %dec(%subst(rbest:1:7) :9:5 );
    0056.00 /end-free
    Bis Zeile 45 funktioniert alles einwandfrei. In Zeile 55 steigt das PGM
    aus mit der Fehlermeldung
    Das Ziel für eine numerische Operation ist zu klein, um das Ergebnis
    aufzunehmen.
    Was zum Kuckuck stimmt da nicht???

  7. #7
    Registriert seit
    Mar 2006
    Beiträge
    5

    Cool Daten convertieren

    Hallo Torsten,

    sorry, habe in Deinem Hinweis leider nicht bis ganz nach unter
    geschaut und Dich falsch angeredet.

    Gruß
    Magdalena

  8. #8
    Registriert seit
    Feb 2001
    Beiträge
    20.243
    %trim und %subst kannst du dir erst mal schenken, da du damit nur führende Leerstellen entfernst.
    %dec sind Leerzeichen allerdings vollkommen egal.
    Wichtig ist, dass das Ergebnis von %dec in das Zielfeld übertragen werden kann.
    Ich nehme mal an, deine Quelldaten enthalten kein Dezimalzeichen Punkt oder Komma, so dass du immer ganze Zahlen bekommst:

    %dec(' 1234,12 ':11:2) => 000001234,12
    %dec(' 1234 12':11:2) => 000123412,00 !

    Schau genau an, wie deine Zahlen denn aussehen und verwende dann z.B.:

    %dec(' 1234 12':11:0) / 100 => 000001234,12

    aber:
    %dec(' 1234 1 ':11:0) / 100 => 000000123,41 !

    An Stelle der Konstanten denke dir einfach die Variable.
    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

  9. #9
    Registriert seit
    Mar 2006
    Beiträge
    5

    Smile Daten convertieren

    Hallo Torsten,

    nochmals vielen Dank.
    Problem gelöst.

    Gruß
    Magdalena

Similar Threads

  1. Antworten: 6
    Letzter Beitrag: 26-07-06, 12:22
  2. IFS Datei Daten hinzufügen
    By sim in forum NEWSboard Programmierung
    Antworten: 11
    Letzter Beitrag: 18-05-06, 08:00
  3. Antworten: 1
    Letzter Beitrag: 24-04-06, 10:37
  4. dspjrn mit minimierten aufgezeichneten Daten
    By rebe in forum NEWSboard Programmierung
    Antworten: 0
    Letzter Beitrag: 28-04-05, 15:49
  5. Daten Import Tool + Dublettensuche für i5 CRM
    By Heinz Molter in forum Archiv NEWSblibs
    Antworten: 0
    Letzter Beitrag: 31-08-04, 09:48

Berechtigungen

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