pgm dcl &AID *char 1 dcl &Row *dec ( 3 0 ) dcl &CusNum_c *char 6 dcl &ZipCod_c *char 5 dcl &Lines *dec ( 3 0 ) dcl &Top *dec ( 3 0 ) dcl &Bottom *dec ( 3 0 ) dcl &ctrLines *dec ( 3 0 ) value( 0 ) dcl &ctlRoll *lgl value( '0' ) dclf QIWS/QCUSTCDT clrscn mode( *WIDE ) wrtdta data( ' Customer Details' ) + lendta( 32 ) + row( 2 ) + column( 25 ) + strcolatr( *ULHI ) wrtdta data( 'Cust #' ) + lendta( 6 ) + row( 4 ) + column( 3 ) + strcolatr( *UL ) wrtdta data( 'Last Name' ) + lendta( 9 ) + row( 4 ) + column( 10 ) + strcolatr( *UL ) wrtdta data( 'First' ) + lendta( 5 ) + row( 4 ) + column( 20 ) + strcolatr( *UL ) wrtdta data( 'Street Address' ) + lendta( 14 ) + row( 4 ) + column( 27 ) + strcolatr( *UL ) wrtdta data( 'City' ) + lendta( 6 ) + row( 4 ) + column( 43 ) + strcolatr( *UL ) wrtdta data( 'St' ) + lendta( 2 ) + row( 4 ) + column( 50 ) + strcolatr( *UL ) wrtdta data( 'Zip' ) + lendta( 5 ) + row( 4 ) + column( 53 ) + strcolatr( *UL ) chgvar &Lines ( 1 ) chgvar &Top ( 6 ) chgvar &Bottom ( 20 ) chgvar &Row ( 5 ) Nxt_Cust: rcvf monmsg CPF0864 exec( do ) chgvar &Bottom ( &Bottom + 1 ) goto End_Cust enddo if ( &ctlRoll ) + rollup lines( &LINES ) + top( &TOP ) bottom( &BOTTOM ) else + chgvar &Row ( &Row + 1 ) chgvar &CusNum_c &CUSNUM wrtdta data( &CusNum_c ) + lendta( 6 ) + row( &Row ) + column( 3 ) + strcolatr( *UL ) wrtdta data( &LSTNAM ) + lendta( 8 ) + row( &Row ) + column( 10 ) + strcolatr( *UL ) wrtdta data( &INIT ) + lendta( 3 ) + row( &Row ) + column( 20 ) + strcolatr( *UL ) wrtdta data( &STREET ) + lendta( 13 ) + row( &Row ) + column( 27 ) + strcolatr( *UL ) wrtdta data( &CITY ) + lendta( 6 ) + row( &Row ) + column( 43 ) + strcolatr( *UL ) wrtdta data( &STATE ) + lendta( 2 ) + row( &Row ) + column( 50 ) + strcolatr( *UL ) chgvar &ZipCod_c &ZIPCOD wrtdta data( &ZipCod_c ) + lendta( 5 ) + row( &Row ) + column( 53 ) + strcolatr( *UL ) chgvar &ctrLines ( &ctrLines + 1 ) if ( &ctrLines *gt 14 ) do wrtdta data( 'Press to continue...' ) + lendta( 28 ) + row( 22 ) + column( 2 ) + strcolatr( *UL ) getaid aid( &AID ) wrtdta data( ' ' ) + lendta( 28 ) + row( 22 ) + column( 2 ) + strcolatr( *UL ) chgvar &ctrLines ( 0 ) chgvar &ctlRoll '1' enddo goto Nxt_Cust End_Cust: if ( &ctrLines *lt 14 *and &ctlRoll ) do rollup lines( &LINES ) + top( &TOP ) bottom( &BOTTOM ) chgvar &ctrLines ( &ctrLines + 1 ) goto End_Cust enddo wrtdta data( 'End of file. to exit...' ) + lendta( 28 ) + row( 22 ) + column( 2 ) + strcolatr( *UL ) beep getaid aid( &AID ) rclactgrp actgrp( DSM ) return endpgm