• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 385
  • Last Modified:

Microsoft VBScript compilation error '800a0401' Expected end of statement

Hi All getting this bizare error... cannot figure it out
Set Header=oConn.Execute("SELECT * FROM codes WHERE code_live=TRUE ORDER BY RND(-10000000*TimeValue(Now())*code_ID)")

Open in new window

Microsoft VBScript compilation error '800a0401'

Expected end of statement

/home2.asp, line 133

HeaderPic=SubDomain("brand_ID")&"-header-"&Header("code_short")&".jpg"
------------------------------------------^

Open in new window


ideas?
0
Graeme
Asked:
Graeme
  • 7
  • 5
  • 3
1 Solution
 
Big MontySenior Web Developer / CEO of ExchangeTree.org Commented:
Are SubDomain and Header recordset objects?

if you run the query directly in your database, do you get results back?

Can you provide a bit more code, maybe 10 lines worth before and after line 133?
0
 
hieloCommented:
Are you sure the query is successful? Try:
On Error Resume Next
Set Header=oConn.Execute("SELECT * FROM codes WHERE code_live=TRUE ORDER BY RND(-10000000*TimeValue(Now())*code_ID)")
If Err.number<>0  Then
   Response.Write("SELECT query failed")
   Response.Write( Err.Description )
End If

Open in new window

0
 
Graemewebber4technologiesAuthor Commented:
I have just run it in the database, it is showing up the objects that I expect (which is 3)

when I response.write(header("code_short")) is shows correct as well, its when I put it into a shortcut (HeaderPic=etc) is where the issue comes up

it was a direct cut and paste from one of my the older version of the same site, there is no difference code, database, tables, columns or data

will try your test code, brb
0
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

 
Graemewebber4technologiesAuthor Commented:
exactly the same:
Microsoft VBScript compilation error '800a0401'

Expected end of statement

/home2.asp, line 138 (because of extra lines)

HeaderPic=SubDomain("brand_ID")&"-header-"&Header("code_short")&".jpg"
------------------------------------------^

Open in new window

0
 
Big MontySenior Web Developer / CEO of ExchangeTree.org Commented:
can you provide additional code so I have some sort of context in the way you're using it?
0
 
Graemewebber4technologiesAuthor Commented:
<%
	Set oConn=Server.CreateObject("ADODB.Connection")
	oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("core/allcore.mdb")
	If SubDomain("brand_ID")="GPT" Then
		Set Header=oConn.Execute("SELECT * FROM codes WHERE code_live=TRUE ORDER BY RND(-10000000*TimeValue(Now())*code_ID)")
		Response.Write(Header("code_short"))
		HeaderPic=SubDomain("brand_ID")&"-header-"&Header("code_short")&".jpg"
'	ElseIf SubDomain("brand_header")="rotate" Then
'		Set Header=oConn.Execute("SELECT * FROM site_menu WHERE brand_ID="&SubDomain("brand_ID")&" AND menu_live=TRUE ORDER BY RND(-10000000*TimeValue(Now())*menu)")
'		Response.Write(Header("menu"))
'		HeaderPic=SubDomain("brand_ID")&"-header-"&Header("menu")&".jpg"
'	ElseIf SubDomain("brand_header")="still" Then
'		HeaderPic=SubDomain("brand_ID")&"_header.jpg"
	End If
%>
<td width=1330 height=300 align=center valign=bottom colspan=2 background="http://members.amnet.net.au/~webber4/<%=HeaderPic%>" style="background-size:cover;background-position:center,center" rowspan=2>

Open in new window

0
 
Big MontySenior Web Developer / CEO of ExchangeTree.org Commented:
are you sure Header("code_short") contains a value?
0
 
Graemewebber4technologiesAuthor Commented:
yes Header("code_short") contains either WEC or F1 or MGP

the response.write above it shows that each time i use it and comment out HeaderPic
0
 
hieloCommented:
try using the fully qualified path to the field value -- Header.Fields("code_short").Value :

<%
Dim HeaderPic
HeaderPic=""
	Set oConn=Server.CreateObject("ADODB.Connection")
	oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("core/allcore.mdb")
	If SubDomain("brand_ID")="GPT" Then
        On Error Resume Next
        Set Header=oConn.Execute("SELECT * FROM codes WHERE code_live=TRUE ORDER BY RND(-10000000*TimeValue(Now())*code_ID)")
        If Err.number<>0  Then
           Response.Write("SELECT query failed")
           Response.Write( Err.Description )
			Response.End
        End If
		
		'Response.Write(Header("code_short"))
		HeaderPic=SubDomain("brand_ID") & "-header-" & Header.Fields("code_short").Value & ".jpg"
'	ElseIf SubDomain("brand_header")="rotate" Then
'		Set Header=oConn.Execute("SELECT * FROM site_menu WHERE brand_ID="&SubDomain("brand_ID")&" AND menu_live=TRUE ORDER BY RND(-10000000*TimeValue(Now())*menu)")
'		Response.Write(Header("menu"))
'		HeaderPic=SubDomain("brand_ID")&"-header-"&Header("menu")&".jpg"
'	ElseIf SubDomain("brand_header")="still" Then
'		HeaderPic=SubDomain("brand_ID")&"_header.jpg"
	End If
%>
<td width=1330 height=300 align=center valign=bottom colspan=2 background="http://members.amnet.net.au/~webber4/<%=HeaderPic%>" style="background-size:cover;background-position:center,center" rowspan=2>

Open in new window

0
 
Graemewebber4technologiesAuthor Commented:
same error...
Microsoft VBScript compilation error '800a0401'

Expected end of statement

/home2.asp, line 145

HeaderPic=SubDomain("brand_ID")&"-header-"&Header.Fields("code_short").Value&".jpg"
------------------------------------------^

Open in new window

0
 
Big MontySenior Web Developer / CEO of ExchangeTree.org Commented:
the code looks fine to me. as long as you're getting values back from the recordset, I can't see where an error would occur.

is the block of code below in any sort of loop?

try the code below, I formatted it for readability, as well as tried a different approach.
<%
Dim HeaderPic
HeaderPic=""
dim brandID, codeShort

	Set oConn=Server.CreateObject("ADODB.Connection")
	oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("core/allcore.mdb")
	If SubDomain("brand_ID")="GPT" Then
        On Error Resume Next
        Set Header=oConn.Execute("SELECT * FROM codes WHERE code_live=TRUE ORDER BY RND(-10000000*TimeValue(Now())*code_ID)")
      		
		'Response.WriteHeader("code_short") 
                codeShort = Header("code_short")
		HeaderPic = SubDomain("brand_ID") _
                  & "-header-" _
                  & codeShort _
                  &".jpg"
                  if err.number <> 0 then response.write err.description
'	ElseIf SubDomain("brand_header")="rotate" Then
'		Set Header=oConn.Execute("SELECT * FROM site_menu WHERE brand_ID="&SubDomain("brand_ID")&" AND menu_live=TRUE ORDER BY RND(-10000000*TimeValue(Now())*menu)")
'		Response.Write(Header("menu"))
'		HeaderPic=SubDomain("brand_ID")&"-header-"&Header("menu")&".jpg"
'	ElseIf SubDomain("brand_header")="still" Then
'		HeaderPic=SubDomain("brand_ID")&"_header.jpg"
	End If
%>

Open in new window

0
 
hieloCommented:
The only other suggestions I can think of are:
a. Try declaring HeaderPic at the top (like in my post)
b. Try adding spaces around the ampersands (like in my post)
c. Verify that you are actually using double quotes (ascii code34) and not some "fancy double quote" (similar to what MS Word likes to use).  Try opening notepad, type your statement there, then do a cut and paste from notepad onto your code file.

Also, what is SubDomain() doing? If it is querying a db, make sure it returns an actual value (as in Header.Fields("code_short").Value ) and not an "object" (as in Header("code_short") )
0
 
Graemewebber4technologiesAuthor Commented:
hielo

I copied and pasted your code directly, same error

Yes Subdomain is a query that definatley returns a value

as mentioned before this exact code that I posted was a clean cut and paste from the previous version of the site, no changes to data, table, columns nor code.

just no idea why it is erroring there, whilst the line before I can Reseponse.Write(Header("code_short")) and it gives a value no issues at all
0
 
Graemewebber4technologiesAuthor Commented:
BigMonty - it works! no idea why it does, but it does!

how strange!
0
 
Big MontySenior Web Developer / CEO of ExchangeTree.org Commented:
excellent, glad I could help :)
1

Featured Post

[Webinar] Database Backup and Recovery

Does your company store data on premises, off site, in the cloud, or a combination of these? If you answered “yes”, you need a data backup recovery plan that fits each and every platform. Watch now as as Percona teaches us how to build agile data backup recovery plan.

  • 7
  • 5
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now