[NEWSboard IBMi Forum]
Seite 1 von 2 1 2 Letzte
  1. #1
    Registriert seit
    Sep 2005
    Beiträge
    32

    Mehrere Bezugszahlen auf *off in Free RPG

    Hallo,

    im RPG/400 konnte ich mit der Anweisung
    movea *all'0' *in(50)
    alle Bezugszahlen >=50 mit einer Anweisung auf 0 setzen.

    Wie geht so etwas im Freeformat.

    DANKE und Gruß

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Leider gar nicht mehr ohne komplizierte Definitionen.
    Man kann sich nun *IN-Arrays in einer DS definieren, durch Überlagerung (Overlay) entsprechende Bereiche definieren, die ich dann mit *zero füllen kann.
    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
    Jan 2003
    Beiträge
    746
    50 DO 99 I
    EVAL *IN(I) = *OFF
    ENDDO

    geht das so? bin in free format nicht so fit ;-)

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Im Free siehts etwas anders aus, wenn man eine Schelife nimmt:

    for Ind=50 to 99;
    *in(Ind)=*off;
    endfor;

    Allerdings ist das nicht vergleichbar mit dem MOVEA.
    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
    Jan 2003
    Beiträge
    746
    Danke!

    Zitat Zitat von Fuerchau
    Allerdings ist das nicht vergleichbar mit dem MOVEA.
    ... und das ist auch gut so, den hat man schnell mal übersehen ;-)

  6. #6
    Registriert seit
    Sep 2005
    Beiträge
    32
    Außerdem ist zu beachten, dass das Feld "ind" als 3 0 Feld deklariert werden muß, da es am ende der schleife den wert 100 hat. ;

  7. #7
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    DAS setzt man natürlich mal voraus.
    Allerdings sind Variablen mit 5I0 oder 10I0 (also Binär 2/4) schneller in der Verarbeitung.
    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
    Sep 2005
    Beiträge
    32
    früher konnte man ebenfalls mit
    movea *in(61) bez5
    if bez5 = *all'1'
    mehrere in einer reihe liegende bezugszahlen abfragen. heute geht das leider auch nur in der schleife oder mit
    if *in61 and *in62 and *in63......

    finde ich lästig!

  9. #9
    Registriert seit
    Jan 2003
    Beiträge
    746
    Zitat Zitat von mgraskamp
    if *in61 and *in62 and *in63......
    Nun ja, wäre ...
    IF ZUSTAND = *OFF AND LESBAR = *ON AND SPRECHEND = *ON
    ... nicht sowieso besser?

  10. #10
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Und dann ist bez5 plötzlich anders definiert und schon knallt's !
    Da finde ich sprechende Lösungen schon besser, zumal es nicht an der Performance sondern an der Schreibfaulheit liegt.

    Man kann ja auch

    bez5 = *in61 + *in62 + *in63 ...;
    if bez5 = '11111';

    verwenden
    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

  11. #11
    Registriert seit
    Oct 2003
    Beiträge
    192
    Alle Wege führen nach Rom

    Ich persönlich habe mir das Programmieren mit Schaltern nahezu abgewöhnt

    Außer in der BIldschirmsteuerung (JA ich weiss man kann das anders lösen) benutze ich sie nicht mehr, somit hat sich auch mein MOVEA Problem gelöst.

    Ein %FOUND(Datei) ist mir inzwischen lieber als ein *IN90 = *OFF (vor allem bei den spezis die erst 2 Subroutinen später abfragen ob der Chain/Read/Whatever geklappt hat

    FALLS man das Problem aber anders lösen will (muss) dann ist mit sicherheit die For schleife der schönste Ansatz.

    Soweit meine 5 cents
    Rince

  12. #12
    Registriert seit
    Sep 2005
    Beiträge
    32
    Ich brauche die Bezugszahlen auch nur noch als Fehlerbezugszahl für Bildschirmfelder. Was meinst Du mit "kann man anders lösen" ?

Similar Threads

  1. Datum-Konvertierung free rpg
    By loeweadolf in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 14-03-08, 06:21
  2. Frei Porn Site!
    By Fucasdreh in forum NEWSboard Server Job
    Antworten: 0
    Letzter Beitrag: 10-01-07, 13:12
  3. FREE RPG .. TESTN
    By loeweadolf in forum NEWSboard Programmierung
    Antworten: 7
    Letzter Beitrag: 25-01-05, 07:43
  4. RPG III auf V4 oder V5?
    By AJS in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 13-01-05, 18:41
  5. SQL-Select aus RPG auf eine andere AS400
    By TobiasHe in forum NEWSboard Programmierung
    Antworten: 12
    Letzter Beitrag: 14-12-04, 12:35

Berechtigungen

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