Salve a tutti.
Il mio problema è il seguente.
Ho il seguente codice scritto originariamente per access 2003 che esegue una stored procedure su SQL server 2008 r2.
Dim dbsCurrent As Database
Dim qdfpassthrough As QueryDef
Dim strSql As String
strSql = "exec procedura " & parametri
Set dbsCurrent = CurrentDb
Set qdfpassthrough = dbsCurrent.CreateQueryDef("MyQueryDef")
With qdfpassthrough
.Connect = dbsCurrent.TableDefs("MyTable").Connect
.sql = strSql
.ODBCTimeout = 300
.ReturnsRecords = True
End With
Dim rstTemp As Recordset
Set rstTemp = dbsCurrent.OpenRecordset("SELECT * FROM MyQueryDef")
MsgBox "Per il periodo scelto sono stati inseriti: " & rstTemp(0) & " records.", vbOKOnly, "Procedura"
dbsCurrent.QueryDefs.Delete "MyQueryDef"
dbsCurrent.Close
Quando ho portato la procedura su access 2010 si è verificato l'inconveniente che tutti i dati risultano duplicati.
Il codice gira una volta sola, ma quando è eseguita l'istruzione
Set rstTemp = dbsCurrent.OpenRecordset("SELECT * FROM MyQueryDef")
si aprono due connessioni sul SQL Server e l'intera stored procedure è eseguita due volte.
Ringrazio in anticipo tutti coloro che vorranno aiutarmi a risolvere.
Ciao a tutti