Bonjour,

Je souhaite exécuter une fonction stockée en VBScript et pouvoir récupérer le résultat.

Voici ma fonction Stockée :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
CREATE DEFINER=`root`@`%` FUNCTION `psFindTypeFlux`(`p_PartenaireCFT` VARCHAR(50) CHARSET utf8,
`p_IdentifiantCFT` VARCHAR(50) CHARSET utf8) RETURNS int(11)
    COMMENT 'Recherche du type de flux'
BEGIN
	DECLARE idTypeFlux INTEGER DEFAULT NULL;
    DECLARE codeRetour TINYINT DEFAULT 0;
    DECLARE cft VARCHAR(100);
    DECLARE chaine VARCHAR(100);
 
	' Recherche du type de flux par rapport au partenaire CFT
    SELECT CONCAT("%",p_PartenaireCFT,"%") INTO chaine;
 
    SELECT typeflux_id INTO idTypeFlux FROM tbl_sto_Typeflux WHERE typeflux_prefix LIKE chaine LIMIT 1;
 
    IF idTypeFlux IS NULL THEN
		-- Recherche du type de flux par rapport à l'identifiant CFT
    	SELECT typeflux_id INTO idTypeFlux FROM tbl_sto_Typeflux WHERE typeflux_prefix LIKE '%TRIM(p_IdentifiantCFT)%' LIMIT 1;
	END IF;
 
 
    IF idTypeFlux IS NULL THEN
        SET cft=TRIM(p_PartenaireCFT) & TRIM("_") & TRIM(p_IdentifiantCFT);
		-- Recherche du type de flux par rapport au 2 paramètres
    	SELECT typeflux_id INTO idTypeFlux FROM tbl_sto_Typeflux WHERE typeflux_prefix LIKE '%cft%' LIMIT 1;
	END IF;
 
    return idTypeFlux;
END
Je l'ai testé avec Debugger for MySQL, le résultat est bon.

Voilà ce que j'ai tenté en VBScript :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Set cnxBaseDD = CreateObject("ADODB.Connection")
Set Rs        = CreateObject("ADODB.RecordSet")
 
ConnectionString = "DRIVER={MySQL ODBC 3.51 Driver};SERVER=smbapro08;DATABASE=bdd_dev_production;USER=root;PASSWORD=burtech;OPTION=3"
 
cnxBaseDD.Open ConnectionString
 
if err.number <> 0 then 
	 wscript.echo "Erreur connexion SQL : " & err.Description
	 WScript.Quit(8)
Else
 
	 Req = "BEGIN " & vbCrLf & "set @Res=psFindTypeFlux('ISANT','TOTO');SELECT @Res;" & vbCrLf & "END"
	 WScript.echo "Procedure stockee : " & Req 
	 Rs.Open Req,cnxBaseDD
 
	 If Rs.eof=False Then
	 	WScript.echo Rs(0)
	 Else
	 	Wscript.echo "KO"
	 End If
End if
J'ai un message d'erreur qui me dit que j'ai une erreur de syntaxe ligne 2 au niveau de la commande Rs.Open Req,cnxBaseDD

Quelqu'un a t-il déjà utilisé les fonctions stockées en VBScript ?

Merci d'avance.