Newsgroup: it.comp.appl.access
Titolo: Stored Procedure richiamata via ADO non funzionante - con cursore - lungo

Ciao a tutti.
Situazione, SQL Server 2000 (MSDE) 
Stored procedure con un parametro
ALTER PROCEDURE [dbo].[sp_statCommessa] @Commessa int
...
exec  ('insert into #tmpcomm select RilInt, mw117, mw118, MW120, mw489, mw490, mw491 from dbo.Tbl_172_16_5_40 WHERE MW492=2')
SELECT SUM(CAST(MW117 as real)*CAST(MW489 AS REAL)*RilInt/3600/1000/1000)AS ConsumoGeneratore, SUM(CAST(MW118 as real)*CAST(MW490 AS REAL)*RilInt/3600/1000/1000)AS ConsumoEstrattore,  SUM(CAST(MW491 as real)*RilInt/3600/1000)AS ConsumoCombustibile, MW120 as lavoro FROM #tmpcomm
group by mw120
richiamata via ADO 
(in origine per velocizzare lo sviluppo)
dim Rs as adodb.recordset
set rs = cnn.execute ("exec sp_statcommessa 2")
do while not rs.eof
    ....
Funziona perfettamente.
Poi, ho la necessità di eseguire l'insert into n volte partendo da tabelle diverse
per cui, tabella di "configurazione" che contiene le tabelle
e la sp diventa
(nota, ho provato anche a cambiare il tipo di cursore... senza esiti positivi)
declare curtabelle cursor KEYSET for select booth from dbo.tblBooth 
open curtabelle
fetch next from curtabelle into @nometabella
while @@fetch_status=0
 begin
  set @istruzione =  'insert into #tmpcomm select RilInt, mw117, mw118, MW120, mw489, mw490, mw491 from dbo.Tbl_' + @nometabella + ' WHERE MW492='+ convert(varchar,@commessa)
  print @istruzione
  exec (@istruzione)     
  fetch next from curtabelle into @nometabella
 end
il print l'ho messo proprio per vedere che non vi fossero errori.
da sql server, se richiamo la SP con exec sp_statcommessa 2 funziona perfettamente, visualizzo la mia select e i dati
da access no, mi dice che l'operazione non è consentita se l'oggetto è chiuso, si blocca su
do while not rs.eof
ho provato anche ad usare un command
equindi un più "elegante" codice
With objCommand
    .Parameters.Append .CreateParameter("@Commessa", adInteger, adParamInput, , 4)
End With
Dim Rs As New ADODB.Recordset
Set Rs = objCommand.Execute
Do While Not Rs.EOF
    MsgBox Rs.Fields("ConsumoGeneratore")
    Rs.MoveNext
Loop
ma non funziona nulla... sempre lo stesso errore.
Perchè secondo voi?
Grazie mille
Massimo
PS: X-Posterò il messaggio anche su microsoft.public.it.sql

 PS: X-Posterò il messaggio anche su microsoft.public.it.sql
Ciao,
Massim

"Massimo Piubelli" <massim...@accessgroup.it.invalid> ha scritto nel 
messaggio news:eme9ua$rmj$1...@tdi.cu.mi.it...
Massimo Piubelli wrote:



Ciao,
Massim
[Risposta]
Ciao Max,
come va? hai risolto?
Buone feste :-)

"Massimo Piubelli" <massim...@accessgroup.it.invalid> ha scritto nel 
messaggio news:eme9ua$rmj$1...@tdi.cu.mi.it...
Massimo Piubelli wrote:



Ciao,
Massim
[r]
http://www.microsoft.com/italy/msdn/library/default.asp?url=/italy/msdn/library/net/vbnet/vbnet09102002.asp?frame=true
 
;-) 

 ha scritto nel messaggio 
news:jNAih.177$Lp1...@nntpserver.swip.net...

[risposta]
anche questo non è male 
http://www.developer.com/db/article.php/10920_3438221_1
 :-) 

 
http://www.developer.com/db/article.php/10920_3438221_1
 :-)7
grazie mille gaspare,
ho risolto, alla fine bastava togliere il "print" che, in certi casi, forniva dei valori a ado e inchiodava tutto.
Ciao e auguroni.
Max