Newsgroup: it.comp.lang.visual-basic
Titolo: Store Procedure ADODC

Salve a tutti,
in una form ho inserito 1 adodc che mi serve per caricare dati in una
datagrid. e fin qui, tutto nella norma.
Il problema è che con questo Adodc devo lanciare una storeprocedure
(Su SQL Server2000) passandogli almeno 2 parametri (anno e mese).
Sapete mica suggerirmi come fare?
P.S.. ho provato a passare solo il parametro anno, e funge. ma se
aggiungo il valore Mese, Ciccia.
Grazie per l'aiuto

cma...@gmail.com
 scriveva il 17/12/2008 :

Magari, indicando il codice che usi per invocare la sp, si poteva 
verificare l'eventuale errore...
Anche perchè, detto così, non si sa neppure se 'anno' e 'mese' siano 
numerici o char, se i parametri li inserisci concatenando la stringa 
Sql, o con la collection parameters, ecc...
I modi sono diversi, dicci come fai e vediamo cosa si può fare...
Alberto
-- 
Chi semina raccoglie,
ma chi raccoglie si china.
E a quel punto è un attimo...


Grazie Albi,
ecco il codicillo...
With Ado1(1)
.RecordSource = "FatturatoMeseAnno @anno=" & Val(Combo1(0))
' & " and @Mese=" & Val(Combo1(1).ListIndex + 1)
.Refresh
End With
Fatto al volo...
Nelle proprietà invece dell'ADODC ho messo:
Su recordsource:
- tipo command
  adcmdunknown
- testo command (SQL)
  Nomeprocedura @anno=2008
Infatti, se apro il form, senza passare nessun parametro, gia nella
griglia si vedono i valori dell'anno 2008. Ma con tutti i mesi...
Chiaramente....
Mi sa che forse dovrei postarti anche la SP...
Grazie ancora.

Sembra che 
cma...@gmail.com
 abbia detto :

Mai usato questo modo.
Comunque non mi sembra che la sintassi t-sql preveda di invocare una sp 
separando i parametri con 'and'.
Prova con una virgola.
Alberto
-- 
Dentro la mia testa
ci son più bestie che nella foresta
[Jovanotti]


Se io non faccio nulla da codice, già L'ADO mi riempie la griglia...
se gli passo da codice l'@anno diverso lo fa...
Ho provato sempre dalla proprietà di ADODC di mettere nella riga
l'AND, virgolette, ho provato a mettere 2 righe dove nella seconda
mette l'altro parametro ma in questi casi mi restituisce errore di
sintassi... appena premop su OK nella maschera proprietà...
Certo è che se ci fosse un altro modo per collegare la griglia ad una
SP anche senza usare l'Adodc, si potrebbe provare...
Tu di solito cosa usi per lanciare un SP e metterla in griglia?
Grazie


io proverei a separare i parametri con la sola virgola, quindi
.RecordSource = "FatturatoMeseAnno @anno=" & Val(Combo1(0))
 & ", @Mese=" & Val(Combo1(1).ListIndex + 1)
saluti
-- 
Andrea Montanari (Microsoft MVP - SQL Server)
http://www.asql.biz
 
http://www.hotelsole.com
DbaMgr2k ver 0.21.1 - DbaMgr ver 0.65.1 and further SQL Tools
--------- remove DMO to reply 

 --------- remove DMO to reply
Buona idea Albe, ottima idea, proverò e ti aggiorno...
Grazie

 --------- remove DMO to reply
oops... Volevo dire, GRAZIE ANDREA... ;o)

 Tu di solito cosa usi per lanciare un SP e metterla in griglia?
Un normale recordset.
Alberto
-- 
Georges Pompidou: Un uomo di stato è un politico che dona se stesso al 
servizio della nazione. Un politico è un uomo di stato che pone la 
nazione al suo servizio.


Ciao Albe,
si, ho provato con la virgola ma mi da errore di "... sono stati
specificati troppo argomenti..." e quindi, ciccia....
Per il discorso Recordset, Intendi gestire ADO da codice... ma la
storeprocedure e i 2 valori in quel caso come la gestisci?

 storeprocedure e i 2 valori in quel caso come la gestisci?
Proprio non ti seguo.
Eseguire una SP è un normale comando Sql, tu componi una stringa e la 
passi all'Open di un recordset, al Execute di un Command o di una 
Connection, e ottieni l'esecuzione della SP.
Il risultato finisce in un recordset che setti come datasource della 
griglia...
Alberto
-- 
Karl Marx: Uno scrittore è produttivo non nella misura in cui produce 
idee, ma nella misura in cui arricchisce l'editore che pubblica le sue 
opere.


CAapito.... Scusa, ma credevo si dovessero gestire in altro modo...
Ora provo... Ancora Grazie.