procedure setdisplaydata integer colnum if DATAVALUESSAVE ne "" ; DISPLAYDATA =DATAARRAY [colnum] // get data from record else DISPLAYDATA = ; trim(field(memberfnum,colnum)) end_procedure export function GETROWDATA ; string arg returns string result = GETHEADER(arg) if result ne "" setdisplaydata colcnt end_function function getthisrow returns string clear member member.recnum = ACTRECNUM find eq member by recnum if found result = "OK" colcnt = 0 end_function function rereadthisrow returns string reread member if found result = "OK" colcnt = 0 end_function function deletethisrow returns string if ACTRECNUM eq "0" ; result = "No record to Delete" else begin result = rereadthisrow() if result ne "" begin delete member unlock member end end colcnt = 0 end_function function savethisrow returns string integer cnum if ACTRECNUM eq "0" result = "OK" // is an add else result = rereadthisrow() if result ne "" begin cnum = 0 while GETROWDATA("") ne "" // get data into record buffer increment cnum field(memberfnum, cnum) = DATAARRAY [cnum] loop err = false trap save member if err result = "" if ACTRECNUM ne "0" ; unlock member end colcnt = 0 end_function export function PROCESSFORM ; string arg returns string if ACTRECNUM ne "0" and ; getthisrow() eq "" begin result = "That record is not in the database" end if result eq "" begin if DATAVALUESSAVE ne ""; begin if savethisrow() eq "" ; result = "Record COULD NOT BE SAVED" else result = "Record saved" end else if DATAVALUESDELETE ne "" begin if deletethisrow() eq "" ; result = "Record COULD NOT BE DELETED" else result ="Record deleted" end end RESULTINFO = result end_function