Project

General

Profile

buffer_value_dynamic_plus.p

Greg Shah, 03/01/2013 03:29 PM

Download (1.06 KB)

 
1
def var dvar as dec init 3.14.
2
def var h as handle.
3

    
4
def var dold as dec init 2.56.
5
def var iold as int init 14.
6
def var told as char init "something".
7
def var dat-old as date init 12/31/2000.
8

    
9
def temp-table tt field dnum as dec
10
                  field inum as int
11
                  field txt as char
12
                  field dat as date.
13

    
14
create tt.
15
tt.dnum = dold.
16
tt.inum = iold.
17
tt.txt  = told.
18
tt.dat  = dat-old.
19

    
20
h = buffer tt:handle.
21

    
22
h:BUFFER-FIELD("dnum"):BUFFER-VALUE = h:BUFFER-FIELD("dnum"):BUFFER-VALUE + dvar.
23
h:BUFFER-FIELD("inum"):BUFFER-VALUE = h:BUFFER-FIELD("inum"):BUFFER-VALUE + dvar.
24

    
25
/* this generates a runtime error, but it compiles */
26
if false then
27
   h:BUFFER-FIELD("txt"):BUFFER-VALUE = h:BUFFER-FIELD("txt"):BUFFER-VALUE + dvar.
28

    
29
h:BUFFER-FIELD("dat"):BUFFER-VALUE = h:BUFFER-FIELD("dat"):BUFFER-VALUE + dvar.
30

    
31
message "decimal + decimal old = " + string(dold) + "; new = " + string(tt.dnum).
32
message "integer + decimal old = " + string(iold) + "; new = " + string(tt.inum).
33
message "date + decimal old = " + string(dat-old) + "; new = " + string(tt.dat).