Avatar billede japlex Nybegynder
20. juli 2001 - 15:56 Der er 7 kommentarer og
1 løsning

Fejl i rs.Open strSQL, strCnn, , , adCmdText

Hvad går der galt i min kode?

Jeg får en fejlmeddelelse om at der ikke er angivet nogen værdi for en eller flere parametre i sætningen:

rs.Open strSQL, strCnn, , , adCmdText

Her er hele koden:

******************************************************

Option Explicit
Dim m_DBConnection As ADODB.Connection
Dim strCnn As String

Private Sub Command1_Click()

Dim i As Integer
Dim rs As ADODB.Recordset
Dim strSQL As String

strSQL = \"SELECT KUNDE.Kundenr, KUNDE.Navn, KUNDE.Udvalgt FROM POSTBY INNER JOIN KUNDE ON POSTBY.Postnr = KUNDE.Postnr Where (((POSTBY.P_zone) = \'1\')And ((KUNDE.K_kategori) = \'Grøn\') And ((KUNDE.Udvalgt) = 0) And ((DateDiff(d, [KUNDE]![Sidste_besøg], Now()) > 7 * [KUNDE]![B_Interval]) = -1)) ORDER BY KUNDE.Sidste_besøg\"
Set rs = New ADODB.Recordset
rs.Open strSQL, strCnn, , , adCmdText

\'Do Until rs.EOF
    For i = 0 To 3
\'        lblMaGrønneKundenumre(i) = rs(\"Kundenr\")
        lblMaGrønneKundenumre(i) = rs(\"Navn\")
\'        rs(\"Udvalgt\") = True
\'    Debug.Print rs!Postnr  \' Display the name and address.
\'    Debug.Print rs!Navn
    rs.MoveNext    \' Get the next record.
    Next
\'Loop
rs.Close

\'
End Sub

Private Sub Form_Load()

strCnn = \"Provider=Microsoft.Jet.OLEDB.4.0;\" & _
        \"Data Source= C:\\Documents and Settings\\\" & _
        \"Jacob Alex Petersen\\Dokumenter\\www.japlex.dk\\\" & _
        \"Customer Visit Manager\\CVM.mdb\"
Set m_DBConnection = New ADODB.Connection

m_DBConnection.Open strCnn

End Sub

******************************************************
Avatar billede euroman28 Nybegynder
20. juli 2001 - 16:05 #1
Så fjern det overflødige
rs.Open strSQL, strCnn, , , adCmdText

til
rs.Open strSQL, strCnn

Avatar billede japlex Nybegynder
20. juli 2001 - 16:09 #2
euroman28 >> Stadig samme fejlmeddelelse ;-((
Avatar billede euroman28 Nybegynder
20. juli 2001 - 16:13 #3
Et skud i tågen...
Måske kan du bruge m_DBConnection istedet for strCnn.
altså...
rs.Open strSQL, m_DBConnection
Der var en der fortalte mig det kunne lade sig gøre, men jeg har aldrig prøvet det.
Avatar billede japlex Nybegynder
20. juli 2001 - 16:13 #4
Det ser ud til at ligge ved indholdet af min variabel strSQL. Hvis jeg erstatter den meget lange SQL sætning med en meget simpel som i koden nedenfor, virker programmet

Hvorfor dog ???

*************************************************

Option Explicit
Dim m_DBConnection As ADODB.Connection
Dim strCnn As String

Private Sub Command1_Click()

Dim i As Integer
Dim rs As ADODB.Recordset
Dim strSQL As String

strSQL = \"SELECT * FROM KUNDE\"
Set rs = New ADODB.Recordset
rs.Open strSQL, strCnn


\'Do Until rs.EOF
    For i = 0 To 3
\'        lblMaGrønneKundenumre(i) = rs(\"Kundenr\")
        lblMaGrønneKundenumre(i) = rs(\"Navn\")
\'        rs(\"Udvalgt\") = True
\'    Debug.Print rs!Postnr  \' Display the name and address.
\'    Debug.Print rs!Navn
    rs.MoveNext    \' Get the next record.
    Next
\'Loop
rs.Close

\'
End Sub

Private Sub Form_Load()

strCnn = \"Provider=Microsoft.Jet.OLEDB.4.0;\" & _
        \"Data Source= C:\\Documents and Settings\\\" & _
        \"Jacob Alex Petersen\\Dokumenter\\www.japlex.dk\\\" & _
        \"Customer Visit Manager\\CVM.mdb;Persist Security Info=False\"
Set m_DBConnection = New ADODB.Connection

m_DBConnection.Open strCnn

End Sub

*************************************************
Avatar billede euroman28 Nybegynder
20. juli 2001 - 16:16 #5
ok..det vist også en SQL-statement for viderekomne.
Det eneste jeg kan se galt er mellemrummet
Where (((POSTBY.P_zone) = \'1\')And
mellem ) & And
Avatar billede japlex Nybegynder
20. juli 2001 - 16:50 #6
Kan det ligge ved følgende del af SQL sætningen??

*************************************************

(DateDiff(d, [KUNDE]![Sidste_besøg], Now()) > 7 * [KUNDE]![B_Interval] = -1))

*************************************************


Avatar billede euroman28 Nybegynder
20. juli 2001 - 16:53 #7
Ja den burde se sådan ud...det virker på MS SQL..jeg ved ikke med Access

DATEDIFF(day, GETDATE(), [KUNDE]![Sidste_besøg])> 7
Avatar billede japlex Nybegynder
20. juli 2001 - 17:35 #8
OK - Nu har jeg valgt at bruge en foruddefineret forespørgsel i Access og det virker ;-))

Tak for besværet !!

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