Questione : Aiutare con la chiamata della procedura immagazzinata di SQL da accesso

Ciao tutto, questo è il mio primo tentativo a denominare una procedura immagazzinata di SQL da accesso probabilmente a fare qualcosa realmente stupida.  È stato che prova a leggere in su su come denominare le procedure immagazzinate e che ottiene le informazioni contrastanti in modo da questa il meglio che potrei fornire: il

oscura il db come sqlExpr fioco di Database
come rs fiochi di String
mentre
di Recordset
stabilito db = sqlExpr del
di CurrentDb () = “getWastePrice di PROCEDURA “„ & forme! [frmOutgoing]! [ShipDate]. Value & “„, “& rs del
di HazWasteID
MsgBox (sqlExpr) = messaggio di errore stabiliti del

The di db.OpenRecordset (sqlExpr, dbOpenSnapshot, dbSQLPassThrough) sto ottenendo è “errore di sintassi

Now in clausola di PARAMETRO " ho inserito il MsgBox dentro là in modo da posso vedere che che cosa il valore dello sqlExpr è e ritorna getWastePrice del as

PROCEDURE “02/02/2010 di„, 118

Which è che cosa prevederei.  Così che cosa è errato con la mia sintassi?

Open ad altro, migliori sensi di chiamata delle procedure immagazzinate con i parametri che values.

Thanks.
class= del

Risposta : Aiutare con la chiamata della procedura immagazzinata di SQL da accesso

Bene, se voi incollano il codice qui sotto in un nuovo modulo ed allora voi essere libero di denominarlo alla volontà.
Per esempio usando:

   Qdf fioco come DAO.QueryDef
   Rst fioco come DAO.Recordset
   strSQL fioco come stringa

   strSQL = “getWastePrice di EXEC “„ & forme! [frmOutgoing]! [ShipDate]. Valore & “„, “& HazWasteID
   Regolare il qdf = il fCreatePassThrough ("", strSQL, “YourDBName„, “YourServerName„, allineare)
   Regolare il rst = qdf.OpenRecordset
   
   Il rst di Debug.Print (0) 'fa di qualunque avete bisogno qui

   rst. Fine
   Regolare il rst = niente
   Regolare il qdf = niente

Vedere se quello ha significato voi.

Acclamazioni.

1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
fCreatePassThrough di funzione (strName come stringa, strSQL come stringa, strDBname come stringa, _
                        strServer come stringa, blnIntegratedSecurity facoltativo come booleano, _
                        strUserName facoltativo come stringa, strPassword facoltativo come stringa, _
                        blnReturnsRecords facoltativi come booleani = strDriver allineare e facoltativo come stringa = “{assistente di SQL} ") come DAO.QueryDef
    
    Db fioco come base di dati
    Qdf fioco come QueryDef
    strConnect fioco come stringa
    
    strConnect = “ODBC; Driver=„ & strDriver &„; Server= " & strServer & “; Database=„ & strDBname
    Se blnIntegratedSecurity allora
        strConnect = strConnect & “; Trusted_Connection=Yes„
    Altrimenti
        Se Len (strUserName) > 0 e Len (strPassword) > 0 allora
            strConnect = strConnect & “; UID=„ & strUserName &„; PWD= " & strPassword
        Concluder se
    Concluder se
    
    Regolar db = CurrentDb
    Regolare il qdf = db.CreateQueryDef (strName)

    Con qdf
        .ReturnsRecords = blnReturnsRecords
        . Collegar = strConnect
        .sql = strSQL
        .ODBCTimeout = 60
    Estremità con
    Regolare il fCreatePassThrough = il qdf
    
    Regolare il qdf = niente
    Regolar db = niente
    
Concludere la funzione
Altre soluzioni  
 
programming4us programming4us