Getting Started with TRANSACT (32247-90007)
Chapter 5 93
Automatic Error Handling and Prototyping
Figure 5-13. Production Version of Prototype Program (Continued)
4.92 find customer,list=();
4.93 if status = 0
4.94 then
4.95 do
4.96 set(form) vorderhead,window=(cust-no,"customer does not exist");
4.97 let (valid) = (no);
4.98 doend;
4.99 doend
4.991 until (valid) = (yes);
5 put orderhead,list=(order-no,
6 cust-no,
7 order-status,
7.01 order-date);
7.1 set(form) vorderhead,freeze;
7.2 set(form) vorderline,init,list=();
8 level;
8.1 repeat
8.2 do
8.3 let (valid) = (yes);
9 get(form) vorderline,fkey=lastkey;
9.1 if (lastkey)
(enter)
9.2 then
9.3 do
9.5 end(level);
9.6 end;
9.7 doend;
9.8 set(key) list (part-number);
9.9 find parts,list=(part-number);
9.91 if status = 0
9.92 then
9.93 do
9.94 set(form) vorderline,
9.95 window=(part-number,"invalid part number");
9.96 let (valid) = (no);
9.97 doend;
9.98 if (quantity) <= 0
9.99 then
9.991 do
9.992 set(form) vorderline,
9.993 window=(quantity,"must be > 0");
9.994 let (valid) = (no);
9.995 doend;
9.996 doend
9.997 until (valid) = (yes);
10 put orderline,list=(order-no,
11 line-no,
12 part-number,
13 quantity);
19 set(form) vorderline,append,init,list=();