i = 0
While Not (AdoRs.EOF) ' Code fonctionne : on a tous les
enregistrements...
i = i + 1
AdoRs.MoveNext
Wend
Maintenant, ma procédure stockée est relativement complexe : appel à
d'autres proc stockées, utilisation de curseurs... puis un select final.
Si j'exécute la proc complexe depuis l'analyseur de requète, j'ai bien mon
jeu d'enregistrements.
Si je l'exécute depuis ADO, il n'y a pas de Record Set....
VB :
' Quelque soit la manière de l'appeler depuis ADO, elle n'a pas de
RS.
' Pourtant si on fait un simple select * from dbo._planning_rs_test_
dans la procédure, ça fonctionne depuis ADO
i = 0
While Not (AdoRs.EOF) /***** Plantage : Erreur 3704 : objet fermé
i = i + 1
AdoRs.MoveNext
Wend
Transac SQL Tronqué :
/*
Enveloppe de la procédure _planning_ pour l'appel depuis l'application VB.
Voir commentaire de _planning_
*/
ALTER procedure _planning_select ( @DateDansSemaine Datetime,
@NombreSemaines int , @CleEleve int = -1, @CleIntervenant int=-1 ,
@CleGroupe int=-1 , @CleSalle int = -1 )
AS
begin
Create TABLE #_planning_rs_
Entete varchar(255) NULL ,
Date_Lundi datetime NOT NULL,
Destinataire int NOT NULL, -- 1 : Eleve ; 2 : Intervenant ; 3 : Groupe
; 4 : Salle
NoQuartJournee tinyint NOT NULL, -- 0 -> 51 ; 52 pour sauter de page
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Philippe ILLINGER
"gex" wrote in message news:%23Tii%
Bonjour,
Bonjour,
Je souhaite récupérer un RecordSet depuis une procédure stockée. Sur un exemple simple, cela fonctionne :
Dans la pluspart des cas, le fait d'ajouter SET NOCOUNT ON en debut de procedure et SET NOCOUNT OFF en fin de procedure, juste AVANT le select final regle le probleme
Best Regards
"gex" <gr@miips.com> wrote in message
news:%23Tii%23c6RDHA.2768@tk2msftngp13.phx.gbl...
Bonjour,
Bonjour,
Je souhaite récupérer un RecordSet depuis une procédure stockée. Sur un
exemple simple, cela fonctionne :
Dans la pluspart des cas, le fait d'ajouter
SET NOCOUNT ON
en debut de procedure
et
SET NOCOUNT OFF
en fin de procedure, juste AVANT le select final
regle le probleme
Je souhaite récupérer un RecordSet depuis une procédure stockée. Sur un exemple simple, cela fonctionne :
Dans la pluspart des cas, le fait d'ajouter SET NOCOUNT ON en debut de procedure et SET NOCOUNT OFF en fin de procedure, juste AVANT le select final regle le probleme
Best Regards
gex
Suite à ta remarque, j'ai essayé
SET NOCOUNT ON corps sql SET NOCOUNT OFF select
mais le problème reste posé !
"Philippe ILLINGER" a écrit dans le message news: OPc$
"gex" wrote in message news:%23Tii% > Bonjour, >
Bonjour,
> Je souhaite récupérer un RecordSet depuis une procédure stockée. Sur un > exemple simple, cela fonctionne : > >
Dans la pluspart des cas, le fait d'ajouter SET NOCOUNT ON en debut de procedure et SET NOCOUNT OFF en fin de procedure, juste AVANT le select final regle le probleme
Best Regards
Suite à ta remarque, j'ai essayé
SET NOCOUNT ON
corps sql
SET NOCOUNT OFF
select
mais le problème reste posé !
"Philippe ILLINGER" <philippe.illinger_nospam@wanadoo.fr> a écrit dans le
message news: OPc$vi6RDHA.2148@TK2MSFTNGP11.phx.gbl...
"gex" <gr@miips.com> wrote in message
news:%23Tii%23c6RDHA.2768@tk2msftngp13.phx.gbl...
> Bonjour,
>
Bonjour,
> Je souhaite récupérer un RecordSet depuis une procédure stockée. Sur un
> exemple simple, cela fonctionne :
>
>
Dans la pluspart des cas, le fait d'ajouter
SET NOCOUNT ON
en debut de procedure
et
SET NOCOUNT OFF
en fin de procedure, juste AVANT le select final
regle le probleme
"Philippe ILLINGER" a écrit dans le message news: OPc$
"gex" wrote in message news:%23Tii% > Bonjour, >
Bonjour,
> Je souhaite récupérer un RecordSet depuis une procédure stockée. Sur un > exemple simple, cela fonctionne : > >
Dans la pluspart des cas, le fait d'ajouter SET NOCOUNT ON en debut de procedure et SET NOCOUNT OFF en fin de procedure, juste AVANT le select final regle le probleme
Best Regards
Zoury
Salut! :O)
Essai d'utilise l'objet Command pour exécuter une procédure stockée.
Exemple : '*** ' Module1 Option Explicit
Private Sub Main()
Dim cn As ADODB.Connection Dim cmd As ADODB.Command Dim rs As ADODB.Recordset
Set cn = New ADODB.Connection cn.Open "Provider=SQLOLEDB.1;Persist Security Infoúlse;User ID=MonUser;Initial Catalog=MaBD;Data Source=YANICK"
Set cmd = New ADODB.Command cmd.CommandType = adCmdStoredProc cmd.CommandText = "MaStoredProc"
-- Cordialement Yanick Lefebvre - MVP pour Visual Basic http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/ http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/ "gex" wrote in message news:% : : Suite à ta remarque, j'ai essayé : : SET NOCOUNT ON : corps sql : SET NOCOUNT OFF : select : : mais le problème reste posé ! : : : "Philippe ILLINGER" a écrit dans le : message news: OPc$ : > : > "gex" wrote in message : > news:%23Tii% : > > Bonjour, : > > : > : > Bonjour, : > : > > Je souhaite récupérer un RecordSet depuis une procédure stockée. Sur un : > > exemple simple, cela fonctionne : : > > : > > : > : > Dans la pluspart des cas, le fait d'ajouter : > SET NOCOUNT ON : > en debut de procedure : > et : > SET NOCOUNT OFF : > en fin de procedure, juste AVANT le select final : > regle le probleme : > : > Best Regards : > : > : :
Salut! :O)
Essai d'utilise l'objet Command pour exécuter une procédure stockée.
Exemple :
'***
' Module1
Option Explicit
Private Sub Main()
Dim cn As ADODB.Connection
Dim cmd As ADODB.Command
Dim rs As ADODB.Recordset
Set cn = New ADODB.Connection
cn.Open "Provider=SQLOLEDB.1;Persist Security Infoúlse;User
ID=MonUser;Initial Catalog=MaBD;Data Source=YANICK"
Set cmd = New ADODB.Command
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "MaStoredProc"
--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/
http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/
"gex" <gr@miips.com> wrote in message
news:%23R1G2n6RDHA.2852@tk2msftngp13.phx.gbl...
:
: Suite à ta remarque, j'ai essayé
:
: SET NOCOUNT ON
: corps sql
: SET NOCOUNT OFF
: select
:
: mais le problème reste posé !
:
:
: "Philippe ILLINGER" <philippe.illinger_nospam@wanadoo.fr> a écrit dans le
: message news: OPc$vi6RDHA.2148@TK2MSFTNGP11.phx.gbl...
: >
: > "gex" <gr@miips.com> wrote in message
: > news:%23Tii%23c6RDHA.2768@tk2msftngp13.phx.gbl...
: > > Bonjour,
: > >
: >
: > Bonjour,
: >
: > > Je souhaite récupérer un RecordSet depuis une procédure stockée. Sur un
: > > exemple simple, cela fonctionne :
: > >
: > >
: >
: > Dans la pluspart des cas, le fait d'ajouter
: > SET NOCOUNT ON
: > en debut de procedure
: > et
: > SET NOCOUNT OFF
: > en fin de procedure, juste AVANT le select final
: > regle le probleme
: >
: > Best Regards
: >
: >
:
:
-- Cordialement Yanick Lefebvre - MVP pour Visual Basic http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/ http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/ "gex" wrote in message news:% : : Suite à ta remarque, j'ai essayé : : SET NOCOUNT ON : corps sql : SET NOCOUNT OFF : select : : mais le problème reste posé ! : : : "Philippe ILLINGER" a écrit dans le : message news: OPc$ : > : > "gex" wrote in message : > news:%23Tii% : > > Bonjour, : > > : > : > Bonjour, : > : > > Je souhaite récupérer un RecordSet depuis une procédure stockée. Sur un : > > exemple simple, cela fonctionne : : > > : > > : > : > Dans la pluspart des cas, le fait d'ajouter : > SET NOCOUNT ON : > en debut de procedure : > et : > SET NOCOUNT OFF : > en fin de procedure, juste AVANT le select final : > regle le probleme : > : > Best Regards : > : > : :