[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jun 2004
    Beiträge
    69

    Question kaufmänisches Runden im free-format

    Hallo Forum,

    wie kann ich bei einem Rechenvorgang im free-form RPG angeben, dass einen Rundung durchgeführt werden soll?

    Muss ich dann vor die Zeile eval(h) schreiben, oder gibt es da einen eleganteren Weg?
    So sieht das irgendwie blöd aus, finde ich:

    eval(h) AWPRMPS70 = M_UM70 * 100 / M_PM70;

    Gruß
    Alexander

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Der Weg mit eval(h) ist so korrekt und nicht anders möglich.
    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
    Jun 2004
    Beiträge
    69
    Schade eigentlich.
    Ich dachte, ich könnte im free-format komplett auf eval verzichten.
    Na ja, vielleicht ändert sich da was bei V5R3.
    Danke für die Antwort.

  4. #4
    Registriert seit
    May 2002
    Beiträge
    1.121
    naja, müsste denn nicht auch folgendes gehen ?!?
    PHP-Code:
    /free
      awprmps70 
    = %DecH( (M_um70 100 M_PM70) : ) ;
    /
    end-free 
    wobei die 7:2 = 7Stellen mit 2 Nachkommastellen ist

    Tschau Ronald

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Auch hier wird nicht gerundet, sondern das Ergebnis abgeschnitten.
    %decH heisst nicht runden sondern auf gerade Anzahl Stellen bringen (Halfadjust).
    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
    May 2002
    Beiträge
    1.121
    Hallo Baldur,

    da würde ich jetzt aber doch mal wieder sprechen wollen
    PHP-Code:
    d Wert1           s              9  4 Inz3,8170 )
    d Wert            s              7  2              
    d Wertx           s              7  2              
     
    /free                                             
       Wert   
    = %DecHWert1 );                  
       
    Wertx  = %DecWert1 );                  
       *
    InLr  = *On;                                   
     /
    End-Free 
    bei mir kommt da folgendes raus

    Wert = 3,82
    Wertx = 3,81

    Gruß Ronald

  7. #7
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Ups !
    Man müsste den englischen Begriff "halfadjust" mal korrekt erklären. Frei übersetzt könnte es auch Runden (eigentlich "Round") heissen.
    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

  8. #8
    Registriert seit
    Jul 2004
    Beiträge
    35
    So wie wir es früher zu Fuss gemacht haben : die Hälfte auf die letzte gewünschte Stelle addieren und abschneiden.

    0,12 + 0,05 = 0,17 -> 0,1

    0,16 + 0,05 = 0,21 -> 0,2

Similar Threads

  1. Frei Porn Site!
    By Fucasdreh in forum NEWSboard Server Job
    Antworten: 0
    Letzter Beitrag: 10-01-07, 13:12
  2. Kaufmänisch Runden
    By steven_r in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 28-09-06, 07:53
  3. Parameter empfangen in Free
    By kr1s in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 08-09-06, 11:59
  4. timestamp im free format
    By redsky in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 04-05-05, 12:26

Berechtigungen

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