Help with error

Started by jrichards on 9-Dec-2010/6:54:29-8:00
This is the error I'm getting: ** Script Error: Cannot use path on none! value ** Where: btn-save ** Near: db/:counter/5: FN/text Here is the code: do %/opt/rebol/sqlite.r if not exists? %customer.db [ connect/create %customer.db ] connect/direct %customer.db db: SQL "select * from customer" disconnect counter: 1 window: layout [ h2 "Account Information" -text "Please enter your account details here." -across -label "First Name: " FN: field db/:counter/5 -label "Last Name: " LN: field db/:counter/7 -return -label "Spouse: " SN: field db/:counter/8 -return -Label "Address: " ADDR: field db/:counter/1 -return -label "City: " CITY: field db/:counter/2 -label "State: " STATE: field 40 db/:counter/10 -label "Zip: " ZIP: field 100 db/:counter/11 -return -return -label "Home Phone: " HPHONE: field 100 db/:counter/6 -label "Cell Phone: " CPHONE: field 100 db/:counter/3 -return -label "Spouse Phone: " SPHONE: field 100 db/:counter/9 -return- label "Email" tab Em: field db/:counter/4 return button "Add" [btn-add] button "Save" [btn-save] button "Next" [btn-next] return button "Delete" [btn-delete] button "Close" [btn-close] button "Previous" [btn-previous] ] btn-save: func[][ -db/:counter/5: FN/text -db/:counter/7: LN/text -db/:counter/8: SN/text -db/:counter/1: ADDR/text -db/:counter/2: CITY/text -db/:counter/10: STATE/text -db/:counter/11: ZIP/text -db/:counter/6: HPHONE/text -db/:counter/3: CPHONE/text -db/:counter/9: SPHONE/text -db/:counter/4: Em/text -SQL reduce ["insert into customer values (?,?,?,?,?,?,?,?,?,?,?)" FN/text LN/text SN/text ---ADDR/text CITY/text STATE/text ZIP/text HPHONE/text CPHONE/text SPHONE/text Em/text] -] btn-next: func[][ if (counter < (length? db)) [ -counter: counter + 1 -FN/text: db/:counter/5 -LN/text: db/:counter/7 -SN/text: db/:counter/8 -ADDR/text: db/:counter/1 -CITY/text: db/:counter/2 -STATE/text: db/:counter/10 -ZIP/text: db/:counter/11 -HPHONE/text: db/:counter/6 -CPHONE/text: db/:counter/3 -SPHONE/text: db/:counter/9 -Em/text: db/:counter/4 -show window -] -] btn-previous: func[][ if (counter > 1) [ -counter: counter - 1 -FN/text: db/:counter/5 -LN/text: db/:counter/7 -SN/text: db/:counter/8 -ADDR/text: db/:counter/1 -CITY/text: db/:counter/2 -STATE/text: db/:counter/10 -ZIP/text: db/:counter/11 -HPHONE/text: db/:counter/6 -CPHONE/text: db/:counter/3 -SPHONE/text: db/:counter/9 -Em/text: db/:counter/4 -show window -] ] btn-add: func[][ -FN/text: "" -LN/text: "" -SN/text: "" -ADDR/text: "" -CITY/text: "" -STATE/text: "" -ZIP/text: "" -HPHONE/text: "" -CPHONE/text: "" -SPHONE/text: "" -Em/text: "" -show window -counter: (length? db) + 1 -;append db to-block remold [FN/text LN/text Em/text] -] btn-delete: func[][ remove db counter Switch counter [ 1 [ -counter: counter - 1 -FN/text: "" -LN/text: "" --SN/text: "" --ADDR/text: "" --CITY/text: "" --STATE/text: "" --ZIP/text: "" --HPHONE/text: "" --CPHONE/text: "" --SPHONE/text: "" -Em/text: "" ] ] /default [ counter: counter - 1 -FN/text: db/:counter/5 -LN/text: db/:counter/7 -SN/text: db/:counter/8 -ADDR/text: db/:counter/1 -CITY/text: db/:counter/2 -STATE/text: db/:counter/10 -ZIP/text: db/:counter/11 -HPHONE/text: db/:counter/6 -CPHONE/text: db/:counter/3 -SPHONE/text: db/:counter/9 -Em/text: db/:counter/4 ] show window ] btn-close: func[][ -Unview ]
Somehow your db/:counter has a value none. This can happen if your counter value changed (by prev/next or delete buttons may be) and if there is no record with that counter value. try to probe its value. and also I suggest you to copy all the empty strings "" in your functions. f: func [] [FN/text: copy ""] or use clear function instead. f: func [] [clear FN/text] otherwise you will have problems.

Reply