Guardian Programmer's Guide

Table Of Contents
Communicating With Printers
Guardian Programmer’s Guide 421922-014
11 - 41
Sample Program for Using a Printer
! Read a record. Return to PARTS if end of file:
CALL READX(PARTFILE^NUM,PART^RECORD,$LEN(PART^RECORD));
IF <> THEN
BEGIN
CALL FILE_GETINFO_(PARTFILE^NUM,ERROR);
IF ERROR = 1 THEN
BEGIN
CALL FORMFEED^AND^CLOSE(PRINTERNUM);
RETURN;
END;
CALL FILE^ERRORS(PARTFILE^NUM);
END;
! Print the part number:
START^LINE;
S^PTR ':=' [%33,"&dDPart Number Is:",%33,"&d@ "]
-> @S^PTR;
S^PTR ':=' PART^RECORD.PART^NUMBER FOR 6 -> @S^PTR;
CALL PRINT^OUT(PRINTERNUM,SBUFFER,@S^PTR '-' @SBUFFER);
! Print the part description:
START^LINE;
S^PTR ':=' [%33,"&dDPart Description:",%33,"&d@ "]
-> @S^PTR;
S^PTR ':=' PART^RECORD.DESCRIPTION FOR
PART^RECORD.DESC^LEN -> @S^PTR;
CALL PRINT^OUT(PRINTERNUM,SBUFFER,@S^PTR '-' @SBUFFER);
! Print the part supplier name:
START^LINE;
S^PTR ':=' [%33,"&dDSupplier:",%33,"&d@ "]
-> @S^PTR;
S^PTR ':=' PART^RECORD.SUPPLIER FOR PART^RECORD.SUP^LEN
-> @S^PTR;
CALL PRINT^OUT(PRINTERNUM,SBUFFER,@S^PTR '-' @SBUFFER);
! Print the quantity on hand:
START^LINE;
S^PTR ':=' [%33,"&dDQuantity on hand:",%33,"&d@ "]
-> @S^PTR;
PUT^INT(PART^RECORD.ON^HAND);
CALL PRINT^OUT(PRINTERNUM,SBUFFER,@S^PTR '-' @SBUFFER);