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 :

Erreur d'execution d'une fonction


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Inscrit en
    Septembre 2008
    Messages
    172
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 172
    Par défaut Erreur d'execution d'une fonction
    J'ai crée une fonction qui me retourne l'heure en donnant en paramètre la date du jour et le matricule , elle marche bien sauf que s'il n y a pas d'enregistrement dans cette date il me retourne une erreur .


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Msg 537, Niveau 16, État 5, Ligne 1
    Paramètre de longueur non valide passé à la fonction LEFT ou SUBSTRING.

    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
     
    CREATE FUNCTION [dbo].[getAffiche]
    	(
    		@dateCalendrier varchar(15),
    		@matr varchar(15)
    					)
    RETURNS varchar(50)
    AS
    BEGIN
     
    DECLARE @ProductNames VARCHAR(max)
    DECLARE @Date varchar(50)
    DECLARE @Type as varchar(2) 
     
     SET @ProductNames = '' 
    SET @Date = ''
    SET @Type =''
     
     
    SELECT @ProductNames = ISNULL(@ProductNames,'')+ CAST(HEURE_POINTAGE AS VARCHAR(5)) + '-' 
    ,@Date=DATE_CALENDRIER
    ,@Type=(CASE WHEN TYPE_='1' THEN 'E :' ELSE 'S :' END)
      FROM WS_Clocking 
      WHERE DATE_CALENDRIER=@dateCalendrier
      AND MATR=@matr
    SET @ProductNames = SUBSTRING(@ProductNames, 1, LEN(@ProductNames)-1) 
     
     	RETURN @ProductNames
    END

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT dbo.getAffiche('2012-09-16','26')

  2. #2
    Membre Expert Avatar de iberserk
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Novembre 2004
    Messages
    1 795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 795
    Par défaut
    LEN(@ProductNames)-1
    cette partie (partie longueur du substring) ne doit pas être inférieur à 0

  3. #3
    Membre très actif
    Inscrit en
    Septembre 2008
    Messages
    172
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 172
    Par défaut
    et la solution sachant qu'on peux avoir aucun enregisterment ?

    Citation Envoyé par iberserk Voir le message
    cette partie (partie longueur du substring) ne doit pas être inférieur à 0

  4. #4
    Membre très actif
    Inscrit en
    Septembre 2008
    Messages
    172
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 172
    Par défaut
    J'ai ajouté

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    IF(LEN(@ProductNames)=0) begin
          set @ProductNames='-';
      END;
    ça marche bien

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

Discussions similaires

  1. erreur d'execution d'une fonction
    Par amharrar.mostafa dans le forum C
    Réponses: 3
    Dernier message: 10/01/2014, 11h27
  2. Erreur lors de l'execution d'une fonction
    Par SpeedOverflow dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 24/09/2011, 16h56
  3. [VS]Erreur lors de l'execution d'une fonction
    Par nephhh dans le forum Windows Forms
    Réponses: 3
    Dernier message: 08/06/2007, 14h12
  4. Erreur PLSQL lors de l'execution d'une fonction
    Par chicken92000 dans le forum PL/SQL
    Réponses: 3
    Dernier message: 17/03/2006, 17h12
  5. [Pl/pgSQL] Erreur sur l'execution d'une fonction.
    Par Floréal dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 25/09/2005, 00h48

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