HP Data Entry and Forms Management System (VPLUS) Reference Manual (32209-90024)

Appendix A 475
SAMPLE PROGRAMS
TRANSACT
LET (FOUND-DATA-ERRS) = (FALSE);
IF (FOUND-DATA-ERRS) = (FALSE) THEN
DO
<< Finish form data >>
PROC VFINISHFORM((COMAREA));
IF (CSTATUS) <> (ZERO) THEN
DO
LET (STOP-NOW) = (TRUE);
MOVE (ERROR-LOCATION) = "**** procedure: Read, Edit,"
" and File - Data Finishing";
PERFORM GET-ERROR-MESSAGE;
RETURN;
DOEND;
IF (NUMERRS) > (ZERO) THEN
LET (FOUND-DATA-ERRS) = (TRUE);
DOEND; << Finish form data >>
<< Do we have a transaction that can be filed? >>
IF (FOUND-DATA-ERRS) = (FALSE) THEN
DO
<< get transaction from form and file it >>
MOVE (DATABUF) = " ";
LET (DATABUFLEN) = 200;
PROC VGETBUFFER((COMAREA),%(DATABUF),(DATABUFLEN));
IF (CSTATUS) <> (ZERO) THEN
DO
LET (STOP-NOW) = (TRUE);
MOVE (ERROR-LOCATION) = "**** procedure: Read, Edit, and"
"File - Data Get";
PERFORM GET-ERROR-MESSAGE;
RETURN;
DOEND;
PUT TXNFILE,LIST=(DATABUF);
LET (NBR-TXN-COLLECT) = (NBR-TXN-COLLECT) + 1;
DOEND << Get transaction from form and file it >>
ELSE
<< Prompt the operator to correct errors >>
PERFORM PROMPT-OPERATOR;
RETURN;
COLLECT-TRANSACTIONS:
<<*****************>>
<< setup form and get transaction entry form >>
LET (REPEATAPP) = (ZERO);
LET (FREEZEAPP) = (ZERO);
MOVE (NFNAME) = "DEDUCTION";
PROC VGETNEXTFORM((COMAREA));‘‘
IF (CSTATUS) <> (ZERO) THEN
DO