Réccupérer le résultat d'une proc stockée [Résolu]

Messages postés
26
Date d'inscription
lundi 13 septembre 2004
Dernière intervention
7 mars 2008
- - Dernière réponse : lolokun
Messages postés
1241
Date d'inscription
mardi 10 octobre 2006
Dernière intervention
27 août 2013
- 17 oct. 2007 à 13:36
Bonjour,

De mon application en VB je fais un appel à une procedure stcockée, voici le code :<!-- BEGIN TEMPLATE: bbcode_code -->

Code :
Set cmd = CreateObject("ADODB.Command")'créer l'objet
Set cmd.ActiveConnection = oConnection
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "HA_MAJ_REXEL"
 
With cmd
.Parameters.Append .CreateParameter("CSV_PATH", adVarChar, adParamInput, 200, Path)
.Parameters.Append .CreateParameter("RESULT", adInteger, adParamOutput)
EndWith
cmd.Execute
cmd.Parameters.Refresh
 
resultat = cmd.Parameters(1).Value
'j'ai testé aussi resultat = cmd.Parameters(("RESULT").Value  et ça ne marche pas
'ou même un msgbox resultat
Debug.Print resultat

<!-- END TEMPLATE: bbcode_code -->le problem est que je retouve tjr zero dans ma variable résultat que j'ai déclarer :
Dim resultat As Integer dans la partie clic_ du bouton mise a jour

voici le code de ma proc
<!-- BEGIN TEMPLATE: bbcode_code -->

ALTER         PROCEDURE [dbo].[HA_MAJ_REXEL]
@CSV_PATH   VARCHAR(200),
@RESULT int OUTPUT
 
AS
:
:
:
-- METTRE A JOUR LA TABLE REMGAMM
UPDATE  REMGAMM  SET  REMGAMM.REMISE = TmpStList.Remise_REXEL FROM TmpStList WHERE TmpStList.CF= REMGAMM.CODEFABRAND TmpStList.SG= CODEGAMME AND TmpStList.FOURNISS_REX= CODEFOURN
 
set @RESULT = @@ROWCOUNT

j'ai lancer l'execution ça marche nikel, mais je ne réccupere pas la valeur du update

Merci de votre aide


<!-- / message -->
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
26
Date d'inscription
lundi 13 septembre 2004
Dernière intervention
7 mars 2008
3
Merci
Bonjour,

Oui ma requete elle s'execute correctement, j'ai vérifié.

et j'ai profité pour trouvé la solution par simple intuition : c'est la ligne cmd.Parameters.Refresh
que j'ai placé apres mon :  resultat = cmd.Parameters(1).Value

j'ai voulu executer mon appli (avec un exe) sur un autre ordi il me met VB6fr.dll not found !!!
une simple copie suffit ?
merci

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 119 internautes nous ont dit merci ce mois-ci

Commenter la réponse de soulkeum
Messages postés
17308
Date d'inscription
mercredi 2 janvier 2002
Dernière intervention
22 août 2018
60
0
Merci
0 n'est pas un résultat correct ?

ta requete s'execute-t'elle comme il faut ?

altere-t'elle effectivement des lignes ?
Commenter la réponse de Renfield
Messages postés
26
Date d'inscription
lundi 13 septembre 2004
Dernière intervention
7 mars 2008
0
Merci
la j'ai un gros problem
parce que je cherche le chemin unc grace à une fonction que j'ai obtenu  grace au forums
malheureusement sous une publication CITRIX cette fonction ne marche pas !!!
faut il copier les api ?
elle me retourne un chemin unc vide !!!
Commenter la réponse de soulkeum
Messages postés
1241
Date d'inscription
mardi 10 octobre 2006
Dernière intervention
27 août 2013
6
0
Merci
Bonjour,

Pour pouvoir faire tourner ton application sur un autre PC, il faut créer un package d'installation afin d'inclure les dépendances de ton projet..
Tu trouveras comment faire en recherchant INNOSETUP+ISTOOLS sur le site.
Commenter la réponse de lolokun

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.