• 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
    Rocket Software

    Unlock the full potential of your data with Rocket Software. Our scalable solutions deliver AI-driven insights, seamless integration, and advanced compliance tools to transform your business. Discover how you can simplify data management, boost efficiency, and drive informed decisions.

    Learn more today.

    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

  • Meet The Next Gen Of IBMers Helping To Build IBM i
  • Looks Like IBM Is Building A Linux-Like PASE For IBM i After All
  • Will Independent IBM i Clouds Survive PowerVS?
  • Now, IBM Is Jacking Up Hardware Maintenance Prices
  • IBM i PTF Guide, Volume 27, Number 24
  • Big Blue Raises IBM i License Transfer Fees, Other Prices
  • Keep The IBM i Youth Movement Going With More Training, Better Tools
  • Remain Begins Migrating DevOps Tools To VS Code
  • IBM Readies LTO-10 Tape Drives And Libraries
  • IBM i PTF Guide, Volume 27, Number 23

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