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 :

probleme d`execution d`un bloc anonyme appelant une fonction stocker


Sujet :

PL/SQL Oracle

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 64
    Points : 40
    Points
    40
    Par défaut probleme d`execution d`un bloc anonyme appelant une fonction stocker
    salut a tous, je viens de creer une fonction stocker qui s`appelle CALCUL_COUT qui est censer de retourner le cout d`un appel telephonique apres reduction, la fonction est creer avec succes, mais lorsque j`avais creer le bloc anonyme dans lequel je fais appel a CALCUL_COUT en lui passant les parametres necessaires, une erreur s`est produite:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SP2-0552:variable de lien "00" non declaree
    voici le bloc anonyme qui pose probleme et merci d`avance de vos suggestions:
    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 serveroutput on;
    accept v_hdr prompt 'donner heure debut de la reduction :'
    accept v_hfr prompt 'donner heure fin de la reduction :'
    accept v_tauxred prompt 'donner le taux de la reduction :'
    accept v_numcomm prompt 'donner le numero de la communication :'
    declare
    v_heuredebut reduction.heuredebut%type:=&v_hdr;
    v_heurefin reduction.heurefin%type:=&v_hfr;
    v_tauxreduction reduction.tauxreduction%type:=&v_tauxred;
    v_numcommunication communication.numcommunication%type:=&v_numcomm;
    v_coutappel ligne.montantdisponible%type;
    begin
    v_coutappel:=CALCUL_COUT(v_heuredebut,v_heurefin,v_tauxreduction,v_numcommunication);
    dbms_output.put_line('le montant total apres reduction est de :'||v_coutappel);
    dbms_output.put_line('bravo');
    Exception
    when VALUE_ERROR then
    dbms_output.put_line('Donnees entrees invalides!! respectez le type des donnees');
    when others then
    dbms_output.put_line('Erreur inattendu, verifiez vos entrees');
    End;
    /
    la fonction CALCUL_COUT.sql(compiler avec succes):
    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
    create or replace FUNCTION CALCUL_COUT(v_heuredebred reduction.heuredebut%type,v_heurefinred reduction.heurefin%type,v_tauxred reduction.tauxreduction%type,v_numcomm communication.numcommunication%type) return number is
    v_coutapresreduction ligne.montantdisponible%type;
    v_heurecomm communication.heurecomm%type;
    v_duree communication.duree%type;
    begin
    select duree,heurecomm into v_duree,v_heurecomm from communication where numcommunication=v_numcomm;
    if(v_heurecomm>=v_heuredebred and v_heurecomm<=v_heurefinred) then
    v_coutapresreduction:=(v_duree*170)-(v_duree*170*v_tauxred);
    return v_coutapresreduction;
    else
    return -1;
    end if;
    exception
    when NO_DATA_FOUND then
    return -2;
    when others then
    return -3;
    End CALCUL_COUT;
    /

  2. #2
    Expert éminent
    Avatar de pachot
    Homme Profil pro
    Developer Advocate YugabyteDB
    Inscrit en
    Novembre 2007
    Messages
    1 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Developer Advocate YugabyteDB
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 822
    Points : 6 446
    Points
    6 446
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    Il faudrait montrer tout le message d'erreur, et même avant les lignes ou les variables sont remplacées.

    Je suppose qu'un ':00' s'est glissé dans ton bloc anonyme, surement par une des variables de substitution.

    Cordialement,
    Franck.

  3. #3
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 461
    Points : 8 079
    Points
    8 079
    Par défaut
    Citation Envoyé par lucaazori1988 Voir le message
    ...une erreur s`est produite:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SP2-0552:variable de lien "00" non declaree
    Ca serait sympa de prendre en compte les réponses données, et de ne pas poser plusieurs fois les mêmes questions !
    http://www.developpez.net/forums/d91...2-bloc-pl-sql/

Discussions similaires

  1. Réponses: 4
    Dernier message: 28/02/2011, 13h12
  2. Réponses: 3
    Dernier message: 01/04/2009, 07h12
  3. Réponses: 10
    Dernier message: 12/11/2008, 17h57
  4. Réponses: 5
    Dernier message: 10/12/2007, 03h02
  5. Probleme lors de l'appel à une fonction
    Par jonnyboy dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 08/08/2007, 09h15

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