Guardian Programmer's Guide

Table Of Contents
Using DEFINEs
Guardian Programmer’s Guide 421922-014
7 - 27
Using DEFINEs: An Example
!------------------------------------------------------------
! Procedure to prompt the user for all attributes for a CLASS
! SEARCH DEFINE.
!------------------------------------------------------------
PROC SET^SEARCH;
BEGIN
STRING .VALUES^LIST[0:BUFSIZE - 1];
STRING .NAME[0:15];
INT I := 0;
NAME ':=' "CLASS ";
VALUES^LIST ':=' "Must be SEARCH" -> @S^PTR;
CALL DEFINE^ATTR(NAME,VALUES^LIST,
@S^PTR '-' @VALUES^LIST);
WHILE I < 21 DO
BEGIN
NAME[0] ':=' " ";
NAME[1] ':=' NAME[0] FOR 15 BYTES;
START^LINE;
PUT^STR("SUBVOL");
PUT^INT(I);
NAME[0] ':=' SBUFFER FOR (@S^PTR '-' @SBUFFER) BYTES;
VALUES^LIST ':='
"One or more subvolumes or CLASS DEFAULTS DEFINES"
-> @S^PTR;
CALL DEFINE^ATTR(NAME,VALUES^LIST,
@S^PTR '-' @VALUES^LIST);
I := I + 1;
END;
I := 0;
WHILE I < 21 DO
BEGIN
NAME[0] ':=' " ";
NAME[1] ':=' NAME[0] FOR 15 BYTES;
START^LINE;
PUT^STR("RELSUBVOL");
PUT^INT(I);
NAME[0] ':=' SBUFFER FOR (@S^PTR '-' @SBUFFER) BYTES;
VALUES^LIST ':='
"One or more subvolumes or CLASS DEFAULTS DEFINES"
-> @S^PTR;
CALL DEFINE^ATTR(NAME,VALUES^LIST,
@S^PTR '-' @VALUES^LIST);
I := I + 1;
END;
END;