Avatar billede oleodder Nybegynder
11. marts 2004 - 12:06 Der er 19 kommentarer

Fejlmeddelse ved generering af Rapport

Hej Alle
Jeg har downloadet Ikonbanner fra www.dotnetindex.com.

Alt virker fint, undtagen når jeg skal generere en rapport inde i reports.asp

Der får jeg følgende fejlmeddelse:

Microsoft OLE DB Provider for ODBC Drivers error '80040e10'

[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.

/banner/ikonbanner/reports.asp, line 136

Hvad er der galt ??

reports.asp ser således ud:


<!--#include file="config.asp"-->
<!--#include file="checklogin.asp"-->
<html>

<head>
<title>I K O N&nbsp; B A N N E R&nbsp; M A N A G E R</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>

<body>
<center>
<table border="0" width="760" cellspacing="0" cellpadding="0">
  <tr>
    <td width="50%"><img border="0" src="images/logo.gif"></td>
    <td width="50%"></td>
  </tr>
</table>

<table border="0" width="760" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100%" bgcolor="#B22929"><img border="0" src="images/spacer.gif" width="2" height="2"></td>
  </tr>
</table>
<table border="0" width="760" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100%" bgcolor="#FFFFE8" height="20">&nbsp;
    <a href="default.asp">Admin Home</a> |
    <a href="addBanner.asp">Add Banner</a> |
    <a href="reports.asp">Reports</a> |
    <a href="settings.asp">Settings</a> |
    <a href="logout.asp">Log Out</a></td>
  </tr>
</table>

<table border="0" width="760" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100%" bgcolor="#B22929"><img border="0" src="images/spacer.gif" width="2" height="2"></td>
  </tr>
</table>

</center>

<center>
<table border="0" width="760" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100%">&nbsp;

              <form method="POST" action="reports.asp">
      <div align="center">
        <center>
        <table border="0" width="400" cellpadding="0">
          <tr>
            <td width="100%" bgcolor="#B22929"><b><font color="#FFFFFF">&nbsp;Generate
              Report :</font></b></td>
          </tr>
        </table>
        </center>
      </div>
      <div align="center">
        <center>
        <table border="0" width="400" cellspacing="1" cellpadding="0">
          <tr>
            <td width="143">Report Date :</td>
            <td width="247"><select size="1" name="reportDate">
                <option selected value="Today">Today</option>
                <option value="Yesterday">Yesterday</option>
                <option value="Last 7 Days">Last 7 Days</option>
                <option value="Current Month">Current Month</option>
                <option value="Last Month">Last Month</option>
              </select></td>
          </tr>
          <tr>
            <td width="143">Banner :</td>
            <td width="247"> <select size="1" name="banner">
                <option value="All Banners">All Banners</option>
            <%
                set cn = server.createobject("adodb.connection")
                cn.open strCon
                set rs = cn.execute("select bannerID, bannerName from banners order by bannerID desc")
                do while not rs.eof
                response.write "<option value="""& rs("bannerID") &""">"& rs("bannerName") &"</option>"
                rs.movenext
                loop
                rs.close
                set rs = nothing
                cn.close
                set cn = nothing       
            %>
              </select></td>
          </tr>
        </table>
        </center>
      </div>
      <p align="center"><input type="submit" value="Generate" name="func"></p>
              </form>

        <center>
        <table border="0" width="400" cellspacing="1" cellpadding="0">
          <tr>
            <td width="100%">
<%
        if request.form("func") = "Generate" then
        reportDate = request.form("reportDate")
        banner = request.form("banner")
       
        sql = "select logs.bannerID, logs.logDate, banners.bannerName, banners.imp, banners.clicks from logs "
        sql = sql & " INNER JOIN banners on banners.bannerID = logs.bannerID "
       
       
        sql = sql & " where "

        select case reportDate
        case "Today"
        sql = sql & "datediff(""d"", logDate, Date()) = 0 "

        case "Yesterday"
        sql = sql & "datediff(""d"", logDate, Date()) = 1 "
       
        case "Last 7 Days"
        sql = sql & "datediff(""d"", logDate, Date()) <= 7 "

        case "Current Month"
        sql = sql & "Month(logDate) = month(Date()) "

        case "Last Month"
        sql = sql & "datediff(""m"", logDate, Date()) = 1 "
        end select

        if NOT banner = "All Banners" then
        sql = sql & " AND logs.bannerID = " & banner
        end if
       
        sql = sql & " order by logDate desc"
                set cn = server.createobject("adodb.connection")
                cn.open strCon
                set rs = cn.execute(sql)
               
                do while not rs.eof
                response.write "<b><a href=""edit.asp?bannerID=" & rs("bannerID") & """>" &  rs("bannerName") & "</a></b><br>"
                response.write "Date : " & formatDateTime(rs("logDate"), 1) & "<br>"
                response.write "Imp : " & rs("imp") & "<br>"
                response.write "Clicks : " & rs("clicks") & "<br><br>"
                rs.movenext
                loop

    end if
%></td></tr></table></center></div>
      <p>&nbsp;</td>
  </tr>
</table>
</center>
<center>
<table border="0" width="760" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100%" bgcolor="#B22929"><img border="0" src="images/spacer.gif" width="2" height="2"></td>
  </tr>
</table>
<table border="0" width="760" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100%" bgcolor="#FFFFE8" height="20">&nbsp;<a href="http://www.dotnetindex.com"><b>Powered
      By Ikon Banner</b></a></td>
  </tr>
</table>

<table border="0" width="760" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100%" bgcolor="#B22929"><img border="0" src="images/spacer.gif" width="2" height="2"></td>
  </tr>
</table>
</center></body>
</html>
Avatar billede websam Nybegynder
11. marts 2004 - 12:09 #1
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.

betyder at du ikke får de fornødne oplysninger med i en af dine Sql forspørgelse prøv at tjekke op på om der mangler noget :o)

/Websam
Avatar billede ellebaek Nybegynder
11. marts 2004 - 12:10 #2
ret denne linie:
  if NOT banner = "All Banners" then
        sql = sql & " AND logs.bannerID = " & banner
        end if
til:

  if NOT banner = "All Banners" then
        sql = sql & " AND logs.bannerID = '" & banner & "'"
        end if
Avatar billede ellebaek Nybegynder
11. marts 2004 - 12:10 #3
Vel og mærke kun hvis dit felt bannerID er af typen tekst.
Avatar billede ellebaek Nybegynder
11. marts 2004 - 12:12 #4
prøv efter denne linie:
        sql = sql & " order by logDate desc"

at skrive dette:
response.write sql
response.end

og så sig hvad siden skriver ud.
Avatar billede oleodder Nybegynder
11. marts 2004 - 12:23 #5
Jeg prøver - Tak
Avatar billede oleodder Nybegynder
11. marts 2004 - 12:50 #6
Prøvede lige at skrive:
sql = sql & " AND logs.bannerID = '" & banner & "'"

Virkede ikke !!! Fejlmeddelse:

Microsoft OLE DB Provider for ODBC Drivers error '80040e10'

[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.

/udvidelser/banner/ikonbanner/reports.asp, line 136

Prøver lige det andet du skrev.
Avatar billede oleodder Nybegynder
11. marts 2004 - 12:52 #7
ellebaek

Hvis jeg skriver de to linier kommer den ud med følgende, når jeg trykker på "Generate"

select logs.bannerID, logs.logDate, banners.bannerName, banners.imp, banners.clicks from logs INNER JOIN banners on banners.bannerID = logs.bannerID where datediff("d", logDate, Date()) = 0 order by logDate desc

Kan du bruge det til noget ???

Mange Tak
Avatar billede ellebaek Nybegynder
11. marts 2004 - 13:13 #8
måske ligger problemet i dette:

        sql = sql & " where "

        select case reportDate
        case "Today"
        sql = sql & datediff(""d"", logDate, Date()) & " = 0 "

        case "Yesterday"
        sql = sql & datediff(""d"", logDate, Date()) & " = 1 "
       
        case "Last 7 Days"
        sql = sql & datediff(""d"", logDate, Date()) & "<= 7 "

        case "Current Month"
        sql = sql & Month(logDate) & " = month(Date()) "

        case "Last Month"
        sql = sql & datediff(""m"", logDate, Date()) & " = 1 "
        end select

Prøv at rette denne del til ovenstående.
Avatar billede oleodder Nybegynder
11. marts 2004 - 13:32 #9
MØJ....Nu virker hele siden slet ikke !!!

Sådan ser den nuværende ud, har du et godt forslag ??

<!--#include file="config.asp"-->
<!--#include file="checklogin.asp"-->
<html>

<head>
<title>I K O N&nbsp; B A N N E R&nbsp; M A N A G E R</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>

<body>
<center>
<table border="0" width="760" cellspacing="0" cellpadding="0">
  <tr>
    <td width="50%"><img border="0" src="images/logo.gif"></td>
    <td width="50%"></td>
  </tr>
</table>

<table border="0" width="760" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100%" bgcolor="#B22929"><img border="0" src="images/spacer.gif" width="2" height="2"></td>
  </tr>
</table>
<table border="0" width="760" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100%" bgcolor="#FFFFE8" height="20">&nbsp;
    <a href="default.asp">Admin Home</a> |
    <a href="addBanner.asp">Add Banner</a> |
    <a href="reports.asp">Reports</a> |
    <a href="settings.asp">Settings</a> |
    <a href="logout.asp">Log Out</a></td>
  </tr>
</table>

<table border="0" width="760" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100%" bgcolor="#B22929"><img border="0" src="images/spacer.gif" width="2" height="2"></td>
  </tr>
</table>

</center>

<center>
<table border="0" width="760" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100%">&nbsp;

              <form method="POST" action="reports.asp">
      <div align="center">
        <center>
        <table border="0" width="400" cellpadding="0">
          <tr>
            <td width="100%" bgcolor="#B22929"><b><font color="#FFFFFF">&nbsp;Generate
              Report :</font></b></td>
          </tr>
        </table>
        </center>
      </div>
      <div align="center">
        <center>
        <table border="0" width="400" cellspacing="1" cellpadding="0">
          <tr>
            <td width="143">Report Date :</td>
            <td width="247"><select size="1" name="reportDate">
                <option selected value="Today">Today</option>
                <option value="Yesterday">Yesterday</option>
                <option value="Last 7 Days">Last 7 Days</option>
                <option value="Current Month">Current Month</option>
                <option value="Last Month">Last Month</option>
              </select></td>
          </tr>
          <tr>
            <td width="143">Banner :</td>
            <td width="247"> <select size="1" name="banner">
                <option value="All Banners">All Banners</option>
            <%
                set cn = server.createobject("adodb.connection")
                cn.open strCon
                set rs = cn.execute("select bannerID, bannerName from banners order by bannerID desc")
                do while not rs.eof
                response.write "<option value="""& rs("bannerID") &""">"& rs("bannerName") &"</option>"
                rs.movenext
                loop
                rs.close
                set rs = nothing
                cn.close
                set cn = nothing       
            %>
              </select></td>
          </tr>
        </table>
        </center>
      </div>
      <p align="center"><input type="submit" value="Generate" name="func"></p>
              </form>

        <center>
        <table border="0" width="400" cellspacing="1" cellpadding="0">
          <tr>
            <td width="100%">
<%
        if request.form("func") = "Generate" then
        reportDate = request.form("reportDate")
        banner = request.form("banner")
       
        sql = "select logs.bannerID, logs.logDate, banners.bannerName, banners.imp, banners.clicks from logs "
        sql = sql & " INNER JOIN banners on banners.bannerID = logs.bannerID "
       
       
        sql = sql & " where "

        select case reportDate
        case "Today"
        sql = sql & datediff(""d"", logDate, Date()) & " = 0 "

        case "Yesterday"
        sql = sql & datediff(""d"", logDate, Date()) & " = 1 "
       
        case "Last 7 Days"
        sql = sql & datediff(""d"", logDate, Date()) & "<= 7 "

        case "Current Month"
        sql = sql & Month(logDate) & " = month(Date()) "

        case "Last Month"
        sql = sql & datediff(""m"", logDate, Date()) & " = 1 "
        end select


        if NOT banner = "All Banners" then
        sql = sql & " AND logs.bannerID = '" & banner & "'"
        end if
       
        sql = sql & " order by logDate desc"



    set cn = server.createobject("adodb.connection")
    cn.open strCon
    set rs = cn.execute(sql)
               
    do while not rs.eof
    response.write "<b><a href=""edit.asp?bannerID=" & rs("bannerID") & """>" &  rs("bannerName") & "</a></b><br>"
    response.write "Date : " & formatDateTime(rs("logDate"), 1) & "<br>"
    response.write "Imp : " & rs("imp") & "<br>"
    response.write "Clicks : " & rs("clicks") & "<br><br>"
    rs.movenext
    loop

    end if
%></td></tr></table></center></div>
      <p>&nbsp;</td>
  </tr>
</table>
</center>
<center>
<table border="0" width="760" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100%" bgcolor="#B22929"><img border="0" src="images/spacer.gif" width="2" height="2"></td>
  </tr>
</table>
<table border="0" width="760" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100%" bgcolor="#FFFFE8" height="20">&nbsp;<a href="http://www.dotnetindex.com"><b>Powered
      By Ikon Banner</b></a></td>
  </tr>
</table>

<table border="0" width="760" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100%" bgcolor="#B22929"><img border="0" src="images/spacer.gif" width="2" height="2"></td>
  </tr>
</table>

</center>
</body>
</html>
Avatar billede ellebaek Nybegynder
11. marts 2004 - 14:09 #10
Måske...

drop det jeg sagde før, og så ret denne linie:
sql = "select logs.bannerID, logs.logDate, banners.bannerName, banners.imp, banners.clicks from logs "

til:
sql = "select logs.bannerID, logs.logDate, banners.bannerName, banners.imp, banners.clicks from logs, banners "
Avatar billede oleodder Nybegynder
11. marts 2004 - 14:16 #11
Mange Tak - Jeg prøver lige  ;-)
Avatar billede oleodder Nybegynder
11. marts 2004 - 14:21 #12
Nu siger den noget helt nyt:

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC Microsoft Access Driver] Syntax error in JOIN operation.

/udvidelser/banner/ikonbanner/reports.asp, line 137
Avatar billede ellebaek Nybegynder
11. marts 2004 - 14:32 #13
hmm...

Jeg tror ikke jeg har flere ideer så desværre...
Avatar billede oleodder Nybegynder
11. marts 2004 - 14:39 #14
ØV - Men mange tak for hjælpen, so far.....
Avatar billede ellebaek Nybegynder
11. marts 2004 - 14:53 #15
prøv lige at rette i dine linier her:

        select case reportDate
        case "Today"
        sql = sql & "datediff(""d"", logDate, Date()) = 0 "

        case "Yesterday"
        sql = sql & "datediff(""d"", logDate, Date()) = 1 "
       
        case "Last 7 Days"
        sql = sql & "datediff(""d"", logDate, Date()) <= 7 "

        case "Current Month"
        sql = sql & "Month(logDate) = month(Date()) "

        case "Last Month"
        sql = sql & "datediff(""m"", logDate, Date()) = 1 "
        end select

Mon ikke der skal stå...
logs.logDate i stedet for bare logDate
Avatar billede oleodder Nybegynder
11. marts 2004 - 15:21 #16
Jeg erstatter logDate med logs.logDate
Prøver lige
Avatar billede oleodder Nybegynder
11. marts 2004 - 15:25 #17
ØV ... Så skriver den bare:

Microsoft OLE DB Provider for ODBC Drivers error '80040e10'
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.
/udvidelser/banner/ikonbanner/reports.asp, line 136
Avatar billede oleodder Nybegynder
11. marts 2004 - 15:26 #18
Men hvad med de tidligere rettelser, nogen har jeg stadig stående og nogle ikke !!

Jeg har taget en kopi af den originale og kun ændret log.date

Skulle jeg også ændre nogle af de andre ting du har nævnt ??
Avatar billede ellebaek Nybegynder
11. marts 2004 - 15:28 #19
Nej, jeg tror ikke du skal rette andet.. Jeg er rimelig sikker på fejlen ´ligger i delen med datoen, men det er mere hvad jeg ville forestille mig kunne være problemet.

Men er du sikker på felterne hedder som du har skrevet i din sql, for ellers kan det også være problemet.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester