Good Day, I have implemented the upload process using a dialog component. The file uploads to a folder in my a5webroot when run from an a5w page, However the file name is not updated to my Table in my database. I get the following error message
Errors in: event.AfterValidate code:
Field types don't match
t.File subproperty cannot be assigned to
Below is the code in my aftervalidate event on my dialog component, where FiletoUpload datatype is character and File(field name in my table) is also a character.
I have also included the code in my a5w page
Thanks
Rogers
Errors in: event.AfterValidate code:
Field types don't match
t.File subproperty cannot be assigned to
Below is the code in my aftervalidate event on my dialog component, where FiletoUpload datatype is character and File(field name in my table) is also a character.
Code:
'Save to fileupload table: t = table.open("[PathAlias.ADB_Path]\fileupload.dbf",FILE_RW_SHARED) t.enter_begin() t.File=FiletoUpload t.enter_end(.t.) t.close()
Code:
<%a5 if eval_valid("submitButton") file.from_blob("C:\A5Webroot\Uploaded Files" "\\" + FileToUpload.filename, FileToUpload.data) msg = "<a href=\"/" + FileToUpload.filename + "\" target=\"_blank\">" + FileToUpload.filename + "</a> was uploaded<br /><br />""</a> on"+" "+date()+" "+time() end if %> <html> <head> <%a5 'SYSTEM GENERATED COMMENT - PLEASE DO NOT REMOVE - Start Ajax1---------------------------------- 'Test to see if we are in an Ajax callback............................................................ dim componentAlias as c 'The componentAlias MUST be UNIQUE for each component on the page. 'The componentAlias must not have any spaces in the name. Try to keep the componentAlias as short as possible. componentAlias = "fileupload" dim request.variables.__ajax as c = default "" dim request.variables.__formID as c = default "" 'If it is an ajax callback for another component, then don't run this component. dim flagMustExecuteComponent as l = .t. if request.variables.__ajax = "true" then if word(request.variables.__formID,1,".") <> componentAlias then flagMustExecuteComponent = .f. end if end if 'End test............................................................................................ if flagMustExecuteComponent = .t. then Delete tmpl_fileupload DIM tmpl_fileupload as P tmpl_fileupload = a5w_load_component("fileupload") 'SYSTEM GENERATED COMMENT - PLEASE DO NOT REMOVE (LOAD:fileupload) 'Following code allows you to override settings in the saved component, and specify the component alias (componentName property). 'Each component on a page must have a unique alias (componentName property). with tmpl_fileupload componentName = "fileupload" end with '=======================================compute the HTML for the Component======================================= delete x_fileupload dim x_fileupload as p x_fileupload = a5w_run_Component(tmpl_fileupload) 'SYSTEM GENERATED COMMENT - PLEASE DO NOT REMOVE (RUN:tmpl_fileupload) 'SYSTEM GENERATED COMMENT - PLEASE DO NOT REMOVE - Ajax2---------------------------------- dim x_fileupload.IsAjaxResponse as l = default .f. if x_fileupload.IsAjaxResponse = .t. then 'Discard any pending text in the output buffer. *output_rewind() ?x_fileupload.Ajaxresponse end end if '============================================================================================================= if x_fileupload.RedirectURL <> "" then response.redirect(x_fileupload.redirectURL) end end if end if 'end flagMustExecuteComponent test 'SYSTEM GENERATED COMMENT - PLEASE DO NOT REMOVE - End Ajax1---------------------------------- dim request.variables.__ajax as c = default "" 'Only emit if not in an Ajax callback. if request.variables.__ajax = "" then ?x_fileupload.Output.Head.JavaScript ?x_fileupload.Output.Head.CSS_Link end if %> <%a5 'MY FORM REPLACEMENT CODE x_fileupload.Output.Body.Dialog_HTML = stritran(x_fileupload.Output.Body.Dialog_HTML,"method=\"post\"","method=\"post\" enctype=\"multipart/form-data\"") %> <!--Alpha Five Temporary Code Start - Will be automatically removed when page is published --> <!--CSS for tmpl_fileupload --> <link rel="stylesheet" type="text/css" href="file:///C:/Program Files/a5v9/css/Airport/style.css"> <!--Alpha Five Temporary Code End --> <meta name="generator" content="Alpha Five HTML Editor Version 9 Build 2095-3264"> <title></title> </head> <body> <p><br> <table> <tr> <td><%A5 ?x_fileupload.Output.Body.Dialog_Echo %></td> </tr> <tr> <td><%A5 ?x_fileupload.Output.Body.Xbasic_Code_Errors %></td> </tr> <tr> <td><%A5 ?x_fileupload.Output.Body.Dialog_HTML %></td> </tr> </table></p> </body></html>
Rogers
Comment