• The Four Hundred
  • Subscribe
  • Media Kit
  • Contributors
  • About Us
  • Contact
Menu
  • The Four Hundred
  • Subscribe
  • Media Kit
  • Contributors
  • About Us
  • Contact
  • Using Free-Format Calcs with Cycle Programs

    August 5, 2009 Hey, Ted

    I use free-format calculations for new development and for existing cycle-less RPG programs. However, I have responsibility for some old programs that use the RPG cycle. Is it possible for me to use free-format calcs in those programs?

    –Bill

    Yes, Bill. In the detail calculations (calcs with no level indicator in columns 7 and 8), use the /FREE and /END-FREE directives as you normally would. In the following example, I have added free-format calcs that are to be executed at L1 detail time (before a new control group) and at detail time (for each input record).

    C   L1              MOVE      *ZERO         COUNT1
    C   L1              MOVE      *ZERO         BALDU1
     /free
         if *inL1;
            cdtdu1 = *zero;
         endif;
     /end-free
     **
    C                   ADD       1             COUNT1            3 0
    C                   ADD       BALDUE        BALDU1            8 2
     /free
            cdtdu1 += cdtdue;
     /end-free
    C     INIT          CAT       LSTNAM:1      CUSNAM           20
    

    For total-time calcs (those with a level indicator in columns 7 and 8), you will need at least one fixed-format calc spec preceding the /FREE directive. The free-format calcs must test the proper control-level indicators.

    Here I’ve added a free-format calc at L1 total time (i.e., after a control group has been processed).

    CL1                 ADD       COUNT1        COUNTR            3 0
    CL1                 ADD       BALDU1        BALDUR            8 2
     /free
          if *inL1;
            cdtdur += cdtdu1;
          endif;
     /end-free
    

    If there are no fixed-format total calculations in the program, add a dummy tag, conditioned to the L0 indicator, before the free-format calcs.

    CL0   TotalCalcs    tag
     /free          
         if *inLR;
            status = 'ALLOK';
            except LRLine;
         endif;
     /end-free
    

    –Ted



                         Post this story to del.icio.us
                   Post this story to Digg
        Post this story to Slashdot

    Share this:

    • Reddit
    • Facebook
    • LinkedIn
    • Twitter
    • Email

    Tags:

    Sponsored by
    Midrange Dynamics North America

    Want to deliver DevOps on IBM i?

    DevOps enables your IBM i development teams to shorten the software development lifecycle while delivering features, fixes, and frequent updates that are closely aligned with business objectives. Flexible configuration options within MDChange make it easy to adapt to new workflow strategies and policies as you adopt DevOps practices across your organization.

    Learn More.

    Share this:

    • Reddit
    • Facebook
    • LinkedIn
    • Twitter
    • Email

    Sponsored Links

    looksoftware:  In tough economic times, modernize and REUSE! View the On-Demand Webinar
    ProData Computer Services:  Simplify your iT with DBU, DBU RDB, and RDB Connect
    COMMON:  Celebrate our 50th anniversary at annual conference, May 2 - 6, 2010, in Orlando

    IT Jungle Store Top Book Picks

    Easy Steps to Internet Programming for AS/400, iSeries, and System i: List Price, $49.95
    The iSeries Express Web Implementer's Guide: List Price, $49.95
    The System i RPG & RPG IV Tutorial and Lab Exercises: List Price, $59.95
    The System i Pocket RPG & RPG IV Guide: List Price, $69.95
    The iSeries Pocket Database Guide: List Price, $59.00
    The iSeries Pocket SQL Guide: List Price, $59.00
    The iSeries Pocket Query Guide: List Price, $49.00
    The iSeries Pocket WebFacing Primer: List Price, $39.00
    Migrating to WebSphere Express for iSeries: List Price, $49.00
    Getting Started With WebSphere Development Studio Client for iSeries: List Price, $89.00
    Getting Started with WebSphere Express for iSeries: List Price, $49.00
    Can the AS/400 Survive IBM?: List Price, $49.00
    Chip Wars: List Price, $29.95

    RPG & DB2 Summit Set for October in Minneapolis A Peek Inside IBM’s Smart Analytics System

    Leave a Reply Cancel reply

Volume 9, Number 25 -- August 5, 2009
THIS ISSUE SPONSORED BY:

WorksRight Software
Help/Systems
System i Developer

Table of Contents

  • Designing DB2 for i Stored Procedures for Simulated Array Handling
  • Using Free-Format Calcs with Cycle Programs
  • Admin Alert: Changing User Passwords on the Fly

Content archive

  • The Four Hundred
  • Four Hundred Stuff
  • Four Hundred Guru

Recent Posts

  • The Power11 Transistor Count Discrepancies Explained – Sort Of
  • Is Your IBM i HA/DR Actually Tested – Or Just Installed?
  • Big Blue Delivers IBM i Customer Requests In ACS Update
  • New DbToo SDK Hooks RPG And Db2 For i To External Services
  • IBM i PTF Guide, Volume 27, Number 33
  • Tool Aims To Streamline Git Integration For Old School IBM i Devs
  • IBM To Add Full System Replication And FlashCopy To PowerHA
  • Guru: Decoding Base64 ASCII
  • The Price Tweaking Continues For Power Systems
  • IBM i PTF Guide, Volume 27, Numbers 31 And 32

Subscribe

To get news from IT Jungle sent to your inbox every week, subscribe to our newsletter.

Pages

  • About Us
  • Contact
  • Contributors
  • Four Hundred Monitor
  • IBM i PTF Guide
  • Media Kit
  • Subscribe

Search

Copyright © 2025 IT Jungle