|
Iniciado por moreau1806, 02,nov. 2004 11:14 - 5 respuestas |
| |
| | | |
|
| |
Publicado el 02,noviembre 2004 - 11:14 |
Je souhaite récupérer une valeur d'une procédure stockée sur Oracle à partir de Windev8. Dans d'autre message vous utilisez :
SQLEXEC("BEGIN MaProcedure(params1,Param2,..Paramn)) END;","MaReq")
Mais quelle est le code de "MaReq" pour executer la procédure en sql?
Merci |
| |
| |
| | | |
|
| | |
| |
Publicado el 02,noviembre 2004 - 13:10 |
le code sql de mareq est celui que tu donnes en 1er paramétre à sqlexec().
le code sql de la procédure stockée est sur ta base oracle. c'est le principe des procs stokées.
A+ Adrien. |
| |
| |
| | | |
|
| | |
| |
Publicado el 02,noviembre 2004 - 15:44 |
voila un exemple que j'utilise avec Oracle et acces natif
// Déclaration de la source de données associée à la requête MaProc,MaRequete est une Source de Données Résultat est un booléen // Déclaration des variables
MaProc.n =0 MaProc.Res="" //Exécution de la requête avec récupération du résultat Résultat=HExécuteRequêteSQL(MaProc,Oracle_ColiPays,hRequêteSansCorrection,"begin :Res :=INTRANET.function_GET_NCHRONO_INTRANET(:n); end;") // Affichage du résultat SI Résultat ALORS RENVOYER MaProc.Res SINON Ouvre(Problème,HErreurInfo()) RENVOYER Faux FIN
si cela peut t'aider a+ |
| |
| |
| | | |
|
| | |
| |
Publicado el 02,noviembre 2004 - 17:17 |
Merci, je vais essayer.
Dans ma base Oracle ma procédure est : Procedure PG(num NUMBER, tot OUT NUMBER) mon code doit-il être pour récupérer mon "tot" ? car ma requete ne retourne rien ?
MaProc,MaRequete est une Source de Données Résultat est un booléen
Problème est une chaîne // Déclaration des variables MaProc.n = sNoContrat MaProc.Res=""
//Exécution de la requête avec récupération du résultat Résultat=HExécuteRequêteSQL(MaProc,MaConnexion,hRequêteSansCorrection,"begin :Res :=PGENGLRUC(:n); end;")
// Affichage du résultat SI Résultat ALORS RENVOYER MaProc.Res SINON SQLInfoGene("Résultat") Info("Erreur SQL : " + SQL.MesErreur) FIN
merci |
| |
| |
| | | |
|
| | |
| |
Publicado el 02,noviembre 2004 - 22:06 |
du dois parcourir ta requête pour lire le résultat.
HLitPremier(MaProc)
A+ Adrien
"Jérôme" <moreau1806@yahoo.fr> a écrit dans le message de news: 41879b74$1@news.pcsoft.fr...
Merci, je vais essayer.
Dans ma base Oracle ma procédure est : Procedure PG(num NUMBER, tot OUT NUMBER) mon code doit-il être pour récupérer mon "tot" ? car ma requete ne retourne rien ?
MaProc,MaRequete est une Source de Données Résultat est un booléen
Problème est une chaîne // Déclaration des variables MaProc.n = sNoContrat MaProc.Res=""
//Exécution de la requête avec récupération du résultat Résultat=HExécuteRequêteSQL(MaProc,MaConnexion,hRequêteSansCorrection,"begin :Res :=PGENGLRUC(:n); end;")
// Affichage du résultat SI Résultat ALORS RENVOYER MaProc.Res SINON SQLInfoGene("Résultat") Info("Erreur SQL : " + SQL.MesErreur) FIN
merci
|
| |
| |
| | | |
|
| | |
| |
Publicado el 03,noviembre 2004 - 10:19 |
Lorsque j'execute le code suivant, il y a toujours une erreur dans ma requete qui est :
L'exécution de la requête suivante a échoué : begin :Res := PGENGLRUC(:n ); end; PLS-00201: l'identificateur 'PGENGLRUC' doit être déclaré
Auriez vous une idée ?
// Déclaration de la source de données associée à la requête PGENGLRUC est une Source de Données Résultat est un booléen
// Déclaration des variables PGENGLRUC.n = sNoContrat PGENGLRUC.Res=""
//Exécution de la requête avec récupération du résultat Résultat=HExécuteRequêteSQL(PGENGLRUC,MaConnexion,hRequêteSansCorrection,"begin :Res := PGENGLRUC(:n); end;")
// Affichage du résultat SI Résultat ALORS HLitPremier(PGENGLRUC) SINON Erreur(HErreurInfo()) RENVOYER Faux FIN |
| |
| |
| | | |
|
| | | | |
| | |
|