IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PL/SQL Oracle Discussion :

Lancer PL/SQL depuis page ASP


Sujet :

PL/SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 46
    Par défaut Lancer PL/SQL depuis page ASP
    Bonjour,
    j'aimerai pouvoir envoyer une procédure PL/SQL via une page ASP.
    Comment faire ?

    Code du fichier .SQL de la procédure PL/SQL

    -- Définition de la taille du fichier de sortie
    set serveroutput on size 1000000
    set echo on
    spool c:\ListeAvisDePassage.xls;

    -- DEBUT PROGRAMME --
    Declare

    -- Définition du curseur
    CURSOR le_Curseur is select rel.rel_date, pde.pde_refe, rel.rel_cons, adr.adr_nrue, adr.adr_rue1,adr.adr_cpos,adr.adr_vill
    from eautpde pde, eauthpc hpc1, eautcom com, eautrel rel, gentadr adr, eautabn abn1
    where pde.pde_refe not like '%001'
    and pde.pde_cptr = hpc1.hpc_peau
    and pde.pde_adre = adr.adr_cptr
    AND abn1.abn_ddeb = (SELECT MAX(abn2.abn_ddeb) FROM eautabn abn2 WHERE abn2.abn_peau = abn1.abn_peau)
    AND hpc1.hpc_ddeb = (SELECT MAX(hpc2.hpc_ddeb) FROM eauthpc hpc2 WHERE hpc2.hpc_peau = hpc1.hpc_peau AND (hpc2.hpc_ddeb <= abn1.abn_dfin or abn1.abn_dfin is null))
    and hpc1.hpc_dfin is null
    and hpc1.hpc_comp = com.com_cptr
    and com.com_cptr = rel.rel_comp
    and abn1.abn_peau = pde.pde_cptr
    and abn1.abn_dfin is null
    and abn1.abn_abon <> 0
    and rel.rel_coc1 = 192
    -- test restriction
    and com.com_cptr = 28
    order by pde.pde_refe, rel.rel_date desc;
    -- Définition du type d'enregistrement
    rel le_Curseur%ROWTYPE;
    -- Définition du type de variable
    ruptureCodeCompteur rel.pde_refe%TYPE ;
    -- compteur des deux derniers relevés
    compteur NUMBER (5) := 0;
    -- compteur des deux derniers relevés = 0
    compteurConsoNull NUMBER (5) := 0;

    premiereFois boolean := true;


    /***** DEBUT DU PROGRAMME ******/
    Begin
    -- ouverture du curseur
    OPEN le_Curseur;
    LOOP
    -- affectation des données du curseur
    FETCH le_Curseur into rel ;
    -- sortie de la boucle lorsque l'on a lu tous les enreg
    EXIT WHEN le_Curseur%NOTFOUND ;
    -- initialisation référence compteur
    if premiereFois = true then
    ruptureCodeCompteur := rel.pde_refe ;
    premiereFois := false;
    end if ;

    if ruptureCodeCompteur != rel.pde_refe then
    ruptureCodeCompteur := rel.pde_refe ;
    compteur := 0;
    compteurConsoNull := 0;
    end if;

    -- lecture des deux premiers enregistrement
    if compteur < 4 then
    compteur := compteur + 1;
    -- si Conso =0 sur les deux derniers enreg lus
    -- alors écriture dans fichier de sortie
    if rel.rel_cons = 0 then
    compteurConsoNull := compteurConsoNull + 1;
    if compteurConsoNull = 4 then
    DBMS_OUTPUT.PUT_LINE(rel.pde_refe||' '||rel.adr_nrue||' '|| rel.adr_rue1||' '||rel.adr_cpos||' '||rel.adr_vill);
    end if ;
    end if;
    end if;
    END LOOP;
    -- fermeture du curseur
    CLOSE le_Curseur ;

    END;
    /

    spool off

  2. #2
    Membre expérimenté
    Avatar de (Benoit)
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Novembre 2008
    Messages : 184
    Par défaut
    Citation Envoyé par sgcb01 Voir le message
    Bonjour,
    j'aimerai pouvoir envoyer une procédure PL/SQL via une page ASP.
    Tu veux dire : appeller une procédure PL/SQL via une page ASP ?

    Il faut que tu créé une procédure stockée sur ta bdd.
    Ton code fait des DBMS_OUTPUT : remplaces ça par le remplissable d'une variable CLOB qui sera retournée par ta procédure stockée.

    Côté ASP, tu effectue l'appel à cette procédure comme avec un sélect

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT ma_procedure( mes params ) FROM DUAL
    Et tu récupères le contenu du CLOB...

Discussions similaires

  1. lancer un autre thread depuis une page ASP.net
    Par Arthis dans le forum ASP.NET
    Réponses: 9
    Dernier message: 11/12/2009, 14h24
  2. lancer exécutable C# depuis une page asp
    Par grinder59 dans le forum ASP
    Réponses: 1
    Dernier message: 05/10/2009, 13h51
  3. comment executer une macro excel depuis page asp ?
    Par auboulot909 dans le forum ASP
    Réponses: 12
    Dernier message: 10/01/2008, 19h26
  4. lancer requête SQL depuis formulaire access
    Par Zavonen dans le forum VBA Access
    Réponses: 8
    Dernier message: 16/10/2007, 19h43
  5. Problème requête SQL dans page ASP
    Par rocs dans le forum ASP
    Réponses: 14
    Dernier message: 26/07/2005, 15h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo