pgm dcl &AID *char 1 dcl &hLoLvlEnv *char 4 dcl &ErrCod *char 8 dcl &RtnVal *char 2 dcl &Mode *char 1 dcl &hCmdBuf *char 4 dcl &Data *char 128 dcl &DataL *char 4 dcl &FldId *char 4 dcl &Row *char 4 dcl &Row2 *char 4 dcl &Column *char 4 dcl &StrMAtr *char 1 dcl &EndMAtr *char 1 dcl &StrColAtr *char 1 dcl &EndColAtr *char 1 dcl &Lines *char 4 dcl &Top *char 4 dcl &Bottom *char 4 dcl &ctrLines *dec ( 3 0 ) value( 0 ) dcl &ctlRoll *lgl value( '0' ) dclf QIWS/QCUSTCDT chgvar &Mode '4' chgvar &hCmdBuf x'00000000' chgvar &hLoLvlEnv x'00000000' chgvar &ErrCod x'00000000' callprc 'QsnClrScr' ( + &Mode + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar &Data ' Customer Details' chgvar %bin( &DataL ) ( 32 ) chgvar %bin( &FldId ) ( 0 ) chgvar %bin( &Row ) ( 2 ) chgvar %bin( &Column ) ( 25 ) chgvar &StrMAtr x'20' chgvar &EndMAtr x'20' chgvar &StrColAtr x'26' chgvar &EndColAtr x'20' callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar &Data 'Cust #' chgvar %bin( &DataL ) ( 6 ) chgvar %bin( &Row ) ( 4 ) chgvar %bin( &Column ) ( 3 ) chgvar &StrColAtr x'24' callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar &Data 'Last Name' chgvar %bin( &DataL ) ( 9 ) chgvar %bin( &Row ) ( 4 ) chgvar %bin( &Column ) ( 10 ) chgvar &StrColAtr x'24' callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar &Data 'First' chgvar %bin( &DataL ) ( 5 ) chgvar %bin( &Row ) ( 4 ) chgvar %bin( &Column ) ( 20 ) chgvar &StrColAtr x'24' callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar &Data 'Street Address' chgvar %bin( &DataL ) ( 14 ) chgvar %bin( &Row ) ( 4 ) chgvar %bin( &Column ) ( 27 ) chgvar &StrColAtr x'24' callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar &Data 'City' chgvar %bin( &DataL ) ( 6 ) chgvar %bin( &Row ) ( 4 ) chgvar %bin( &Column ) ( 43 ) chgvar &StrColAtr x'24' callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar &Data 'St' chgvar %bin( &DataL ) ( 2 ) chgvar %bin( &Row ) ( 4 ) chgvar %bin( &Column ) ( 50 ) chgvar &StrColAtr x'24' callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar &Data 'Zip' chgvar %bin( &DataL ) ( 5 ) chgvar %bin( &Row ) ( 4 ) chgvar %bin( &Column ) ( 53 ) chgvar &StrColAtr x'24' callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar %bin( &Lines ) ( 1 ) chgvar %bin( &Top ) ( 6 ) chgvar %bin( &Bottom ) ( 20 ) chgvar %bin( &Row ) ( 5 ) chgvar &StrColAtr x'20' Nxt_Cust: rcvf monmsg CPF0864 exec( do ) chgvar %bin( &Bottom ) ( %bin( &Bottom ) + 1 ) goto End_Cust enddo if ( &ctlRoll ) + callprc 'QsnRollUp' ( + &Lines + &Top + &Bottom + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) else + chgvar %bin( &Row ) ( %bin( &Row ) + 1 ) chgvar &Data &CUSNUM chgvar %bin( &DataL ) ( 6 ) chgvar %bin( &Column ) ( 3 ) callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar &Data &LSTNAM chgvar %bin( &DataL ) ( 8 ) chgvar %bin( &Column ) ( 10 ) callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar &Data &INIT chgvar %bin( &DataL ) ( 3 ) chgvar %bin( &Column ) ( 20 ) callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar &Data &STREET chgvar %bin( &DataL ) ( 13 ) chgvar %bin( &Column ) ( 27 ) callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar &Data &CITY chgvar %bin( &DataL ) ( 6 ) chgvar %bin( &Column ) ( 43 ) callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar &Data &STATE chgvar %bin( &DataL ) ( 2 ) chgvar %bin( &Column ) ( 50 ) callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar &Data &ZIPCOD chgvar %bin( &DataL ) ( 5 ) chgvar %bin( &Column ) ( 53 ) callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar &ctrLines ( &ctrLines + 1 ) if ( &ctrLines *gt 14 ) do chgvar &Data 'Press to continue...' chgvar %bin( &DataL ) ( 28 ) chgvar %bin( &Row2 ) ( 22 ) chgvar %bin( &Column ) ( 2 ) callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row2 + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) callprc 'QsnGetAID' ( + &AID + &hLoLvlEnv + &ErrCod + ) + rtnval( + &RtnVal + ) chgvar &Data ' ' chgvar %bin( &DataL ) ( 28 ) chgvar %bin( &Row2 ) ( 22 ) chgvar %bin( &Column ) ( 2 ) callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row2 + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar &ctrLines ( 0 ) chgvar &ctlRoll '1' enddo goto Nxt_Cust End_Cust: if ( &ctrLines *lt 14 *and &ctlRoll ) do callprc 'QsnRollUp' ( + &Lines + &Top + &Bottom + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) chgvar &ctrLines ( &ctrLines + 1 ) goto End_Cust enddo chgvar &Data 'End of file. to exit...' chgvar %bin( &DataL ) ( 28 ) chgvar %bin( &Row2 ) ( 22 ) chgvar %bin( &Column ) ( 2 ) callprc 'QsnWrtDta' ( + &Data + &DataL + &FldId + &Row2 + &Column + &StrMAtr + &EndMAtr + &StrColAtr + &EndColAtr + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) callprc 'QsnBeep' ( + &hCmdBuf + &hLoLvlEnv + &ErrCod + ) + rtnval( + %bin( &RtnVal ) + ) callprc 'QsnGetAID' ( + &AID + &hLoLvlEnv + &ErrCod + ) + rtnval( + &RtnVal + ) return endpgm