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

Développement SQL Server Discussion :

procédure stockée, opération non exécutée [2008]


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Avatar de alheuredudejeuner
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2005
    Messages : 376
    Billets dans le blog
    4
    Par défaut procédure stockée, opération non exécutée
    Bonjour

    dans une procédure stockée, je code ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        if (@Poids>100 and  @Poids<=2000)
        begin
        	set @vPrix = (SELECT * from  #tPrix);
          	set @arrondi = CEILING(@poids/10)/10;
          	set @details = @details+'PP '+ CONVERT(varchar(14),@arrondi )+' centaine '+ CONVERT(varchar(20),CAST( @vPrix as money),1);   
       	  	set @vPrix = (@vPrix * @arrondi);  
       	end
    la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set @vPrix = (@vPrix * @arrondi);
    ne s'exécute pas .
    Qu'elle est la bonne syntaxe ?

    cordialement

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 998
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 998
    Billets dans le blog
    6
    Par défaut
    Montrez toute la procédure.

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Membre chevronné
    Avatar de alheuredudejeuner
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2005
    Messages : 376
    Billets dans le blog
    4
    Par défaut Toute la procédure
    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    SET ANSI_NULLS ON
    SET QUOTED_IDENTIFIER ON
    GO
     
    CREATE PROCEDURE vulcain.CalculPrixFrance_EX
        @ID_COURANT_Transporteur varchar(20),
        @ID_Sites integer,
        @R_Code_Postal varchar(10),
        @R_CODE_PAYS varchar(3),
        @L_Code_Postal varchar(10),
        @L_Ville varchar(30),
        @L_CODE_PAYS varchar(3),
        @Colis int,
        @Poids decimal,
        @Remboursement numeric(15,4)
     
     
    AS
    BEGIN
      	/* Procedure body */
      	DECLARE @vPrix numeric(15,4);
      	DECLARE @ID_COURANT varchar(20);
        DECLARE @Details varchar(100);
        DECLARE @arrondi int;
     
      	CREATE TABLE #tPrix
      	(
       		prix numeric(15,4)
     	 )
     
         set @Details = ''; 
         set @vPrix=0;
        -- Formatage des codes postaux dans la requete de calage sur le tarif
        -- Chercher si le code postal,ville ou le pays font parties d'une exception
        -- se caler sur le departement et le poids dans le tarif transport
     
       	insert into #tPrix
      	EXEC vulcain.GetTarif @ID_COURANT_Transporteur, @R_Code_Postal, @R_CODE_PAYS, 
        @L_CODE_PAYS, @L_Code_Postal, @L_Ville, @Colis, @Poids    
      	-- calcul forfait
        if (@Poids>0 and  @Poids<=100)
        begin
         	set @vPrix = (SELECT * from  #tPrix);
            set @Details = @Details+'PP '+CONVERT(varchar(14),@Poids )+' kg tarif '+ CONVERT(varchar(20),CAST( @vPrix as money),1) ;
        end
      	-- Calcul Centaines
        --arondi à la centaine superieur
        if (@Poids>100 and  @Poids<=2000)
        begin
        	set @vPrix = (SELECT * from  #tPrix);
          	set @arrondi = CEILING(@poids/10)/10;
          	set @details = @details+'PP '+ CONVERT(varchar(14),@arrondi )+' centaines '+ CONVERT(varchar(20),CAST( @vPrix as money),1);   
       	  	set @vPrix = (@vPrix * @arrondi);  
       	end
     
      	-- calcul commun
     
     
     
     	set @vPrix = (SELECT * from  #tPrix)
     
     
      	create table #V_Prix(Id_Transporteur varchar(20),Prix_HT numeric(15,4) ,Prix_Details varchar(100))
     
      	INSERT INTO #V_Prix VALUES (N'France EX', @vPrix, @Details);
     
      	select * from #V_Prix
    END

  4. #4
    Membre chevronné
    Avatar de alheuredudejeuner
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2005
    Messages : 376
    Billets dans le blog
    4
    Par défaut :) je me réponds
    Je réinitialisais la valeur juste après.

    C'est mon premier code MSQL, les critiques sont les bienvenues
    cordialement

  5. #5
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 998
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 998
    Billets dans le blog
    6
    Par défaut
    Que renvoie cette ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    EXEC vulcain.GetTarif @ID_COURANT_Transporteur, @R_Code_Postal, @R_CODE_PAYS, 
        @L_CODE_PAYS, @L_Code_Postal, @L_Ville, @Colis, @Poids
    Si elle ne renvoie qu'une seule valeur et non une table, utilisez une variable en output

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    DECLARE @vPrix numeric(15,4)
     
    EXEC vulcain.GetTarif @ID_COURANT_Transporteur, @R_Code_Postal, @R_CODE_PAYS, 
        @L_CODE_PAYS, @L_Code_Postal, @L_Ville, @Colis, @Poids, @vPrix OUPUT
    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  6. #6
    Membre chevronné
    Avatar de alheuredudejeuner
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2005
    Messages : 376
    Billets dans le blog
    4
    Par défaut excellent
    ca enlève un paquets de lignes inutiles.
    Merci

    Mais comment je lie ma variable @vPrix à Mon EXEC vulcain.getTarif ?

    cordialement

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Procédure stockée non exécutée
    Par amaga dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 11/04/2010, 19h44
  2. Réponses: 7
    Dernier message: 03/05/2007, 12h44
  3. Accès non autorisé à l'exécution d'une procédure stockée
    Par celine33 dans le forum Bases de données
    Réponses: 6
    Dernier message: 11/01/2006, 10h27
  4. [SQL-Server] Exécution de procédures stockées
    Par sylvkin dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 26/09/2005, 12h00
  5. DBLink et exécution de procédure stockée
    Par DBS dans le forum Oracle
    Réponses: 8
    Dernier message: 01/02/2005, 13h50

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