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

soulkeum 26 Messages postés lundi 13 septembre 2004Date d'inscription 7 mars 2008 Dernière intervention - 16 oct. 2007 à 12:51 - Dernière réponse : lolokun 1241 Messages postés mardi 10 octobre 2006Date d'inscription 27 août 2013 Dernière intervention
- 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
soulkeum 26 Messages postés lundi 13 septembre 2004Date d'inscription 7 mars 2008 Dernière intervention - 16 oct. 2007 à 14:47
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

Merci soulkeum 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 72 internautes ce mois-ci

Commenter la réponse de soulkeum
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 16 oct. 2007 à 14:18
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
soulkeum 26 Messages postés lundi 13 septembre 2004Date d'inscription 7 mars 2008 Dernière intervention - 16 oct. 2007 à 15:34
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
lolokun 1241 Messages postés mardi 10 octobre 2006Date d'inscription 27 août 2013 Dernière intervention - 17 oct. 2007 à 13:36
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.