|
Alimenter une table depuis une requete stockée |
Iniciado por andrianne, 15,abr. 2008 18:41 - 5 respuestas |
| |
| | | |
|
| |
Publicado el 15,abril 2008 - 18:41 |
Comment faire pour RECUPERER LE CONTENU de la requète stockée (HF C/S) une fois executée depuis une procédure stockée ??
Je seche sec, très sec.
Si vous pouviez me donner le principe, ce serait un méga GRAND MERCI.
Bon dev à tous. |
| |
| |
| | | |
|
| | |
| |
Publicado el 16,abril 2008 - 00:14 |
Bonjour adriane,
pour ma part, j'utilisait la serialisation.
exemple : dans ma fonction client function toto
bufBufbinaire est un Buffer
QUAND EXCEPTION DANS
bufBufbinaire=HExécuteProcédure(sConnexion,"ProcedureStocker",<variables>)
FAIRE
Info(ExceptionInfo(errComplet))
FIN
Désérialise(<ici en exemple une strucutre qui recoit le buffer>,bufBufbinaire,psdBinaire)
---------------------
Dans la procedure stocker
bufBufbinaire est un Buffer
Sérialise(<ici en exemple une strucutre qui envo le buffer>,bufBufbinaire,psdBinaire)
RENVOYER bufBufbinaire
J'espere que ce petit bout de code te permettra d'avance.
Cordialement,
"andrianne" <j.andrianne@sam-bp.com> a écrit dans le message de news: 4804bd28$1@news.pcsoft.fr...
Comment faire pour RECUPERER LE CONTENU de la requète stockée (HF C/S) une fois executée depuis une procédure stockée ??
Je seche sec, très sec.
Si vous pouviez me donner le principe, ce serait un méga GRAND MERCI.
Bon dev à tous.
|
| |
| |
| | | |
|
| | |
| |
Publicado el 16,abril 2008 - 10:33 |
Merci Eric pour ta réponse.
Je ne comprends pas un point précis.
Dans la procedure stockée :
bufBufbinaire est un Buffer Marequete.Param1=Param HexecuteRequete(Marequete,HrequeteDefaut)
************************************************************* ==> C'est ici que je voudrais recuperer le contenu de Marequete Complet ==> Et reprendre le cours du code ==> C'est la que je ne sais pas faire et que je ne comprends pas Exemple recuperer Marequete.Rub1+ Marequete.Rub1 pour tous les enrs contenus dans Marequete (sans devoir parcourir ma requete !!) Je reve eveillé ???? ************************************************************* Sérialise(<structureenvoiebuffer>,bufBufbinaire,psdBinaire)
RENVOYER bufBufbinaire
Si vous pouviez me donner le code manquant, ce serait un méga GRAND MERCI. Bon dev à tous. |
| |
| |
| | | |
|
| | |
| |
Publicado el 16,abril 2008 - 16:42 |
Bonjour Adrianne,
En général, les procedures stocké serve à executer un traitement sur le serveur pour soulager le poste client.
En ce qui concerne ta demande Il faut parcourir la requete pour la stocker dans un tableau ou une strucutre que tu rfenvoi en resultat
EX. #### Dans la procedure stocke bufBufbinaire est un Buffer Resultat est une structure sRubrique1 est un tableau dynamique nRubrique2 est un tableau dynamique Fin
//A la suite ResultatMaRequete est un Resultat sRubrique1=allouer un tableau dynamique de 0 chaine nRubrique2=allouer un tableau dynamique de 0 entier
//ensuite la requete Marequete.Param1=Param si HexecuteRequete(Marequete,HrequeteDefaut)=vrai ALORS HLITPREMIER(Marequete) TANTQUE Htrouve(Marequete)=vrai et Hendehors(Marequete)=faux tableauajouteligne(ResultatMaRequete:sRubrique1)=Marequete.rubrique1 tableauajouteligne(ResultatMaRequete:nRubrique2)=Marequete.rubrique2 HlitSuivant(Marequete) FIN FIN
SérialiseResultatMaRequete,bufBufbinaire,psdBinaire)
RENVOYER bufBufbinaire
### Dans la fonction sur le client //Je prefere mettre les meme declartations bufBufbinaire est un Buffer Resultat est une structure sRubrique1 est un tableau dynamique nRubrique2 est un tableau dynamique Fin
//A la suite ResultatMaRequete est un Resultat sRubrique1=allouer un tableau dynamique de 0 chaine nRubrique2=allouer un tableau dynamique de 0 entier
QUAND EXCEPTION DANS
bufBufbinaire=HExécuteProcédure(sConnexion,"ProcedureStocker",<variables>)
FAIRE
Info(ExceptionInfo(errComplet))
FIN
Désérialise(ResultatMaRequete,bufBufbinaire,psdBinaire)
//Tu na plus qu'a lire tes tableaux
####
Les procedures stocké sont en général utiliser pour des traitements qui sont lourds sur le poste client. J'espere que ca peut te permettre d'avance.
Sinon précise ce que tu veux faire car ca reste assez flou.
@+
Cordialement
"andrianne" <j.andrianne@sam-bp.com> a écrit dans le message de news: 480599ec$1@news.pcsoft.fr...
Merci Eric pour ta réponse.
Je ne comprends pas un point précis.
Dans la procedure stockée :
bufBufbinaire est un Buffer
Marequete.Param1=Param HexecuteRequete(Marequete,HrequeteDefaut)
************************************************************* ==> C'est ici que je voudrais recuperer le contenu de Marequete Complet ==> Et reprendre le cours du code ==> C'est la que je ne sais pas faire et que je ne comprends pas Exemple recuperer Marequete.Rub1+ Marequete.Rub1 pour tous les enrs contenus dans Marequete (sans devoir parcourir ma requete !!) Je reve eveillé ???? ************************************************************* Sérialise(<structureenvoiebuffer>,bufBufbinaire,psdBinaire)
RENVOYER bufBufbinaire
Si vous pouviez me donner le code manquant, ce serait un méga GRAND MERCI. Bon dev à tous.
|
| |
| |
| | | |
|
| | |
| |
Publicado el 17,abril 2008 - 10:28 |
Merci Eric, tu as répondu à mes intérrogations à 1000 %.
Je te fais un Giga merci parce que j'ai abordé le sujet des procédures stockée hier. Je décode les facon de faire, les cas d'utilisation avantageux, ... bref je découvre.
Et la ne me manquant qu'un élément : comment retourner un résultat de requete.
Merci encore à toi pour ton aide PRECIEUSE.
Bon dev |
| |
| |
| | | |
|
| | |
| |
Publicado el 30,noviembre 2020 - 23:48 |
bonjour je voudrai que vous m'expliquer cette partie jai le meme probleme mais je suis bloqué a ce niveau sRubrique1 =??
//A la suite ResultatMaRequete est un Resultat sRubrique1=allouer un tableau dynamique de 0 chaine nRubrique2=allouer un tableau dynamique de 0 entier |
| |
| |
| | | |
|
| | | | |
| | |
|