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

Firebird Discussion :

Problème d'affichage des accents dans une procedure stockée


Sujet :

Firebird

  1. #1
    Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 144
    Points : 50
    Points
    50
    Par défaut Problème d'affichage des accents dans une procedure stockée
    Tout d'abord, je souhaite à tout les modérateurs,les membres, les invités, et à tous les utilisateurs de devloppez.com une jouyeuse année pleine de prospérité et de bonheur.

    Ma question :



    A l'affichage dans fastreport, j'obtient le résultat suivant :

    Réglé s'affiche comme suit : R,gl,
    CHQ N° s'affiche comme suit : CHQ NØ,
    éspèces s'affiche comme suit : ,spŠces

    Dans le forum de Fastreport, on me dit que c'est pas un problème de fastreport, voir la base de données.

    En plus lorsque je travaille directement avec la table Table1 sans passer par une procedure stockée, le résultat dans fastreport est normal.

    Je crois que le problème vient de la PS. (Portant, le champs "libelle" est à CHARACTER SET ISO8859_1)

    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
    SET TERM ^ ;
    CREATE PROCEDURE test (xcode    char(12))
    returns (DTMVT    DATE,
             LIBELLE VARCHAR(60) CHARACTER SET ISO8859_1,
             SOLDE    NUMERIC(11,2)
             )
    AS
     
    begin
            for select dtmvt,  case typep
                                          when 33 then 'Bon de réception N°' || cdmvt
                                          when 1  then 'Comptant N°' || cdmvt
                                          when 3  then 'Bon de livraison N°' || cdmvt
                                          when 7  then 'Avoir N°' || cdmvt
                                          when 8  then 'Avoir N°' || cdmvt
                                          when 80 then 'Retrait des éspèces '
                                          end,solde
            from table1
            where code=:xCode
                 INTO  :dtmvt, :libelle,:solde
            do
            begin
                 SUSPEND;
            end
    end
    ^
    SET TERM ; ^
    commit;
    C'est qlcn pourais m'aider.


    Merci d'avance.

  2. #2
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 911
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 911
    Points : 6 032
    Points
    6 032
    Par défaut
    1/ Quel SGBD ?
    2/ Quelle version ?
    3/ Avec quel charset est déclarée la base ?
    4/ Quel intéret à spécifier CHARACTER SET ISO8859_1 ?

  3. #3
    Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 144
    Points : 50
    Points
    50
    Par défaut
    Merci pour votre répense :
    1- Firebird 2
    2- Version 2
    3- Charset = ISO8859_1

    4- Le ISO8859_1 est pour afficher les caractères latine (Français : Accents, etc...)

  4. #4
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 911
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 911
    Points : 6 032
    Points
    6 032
    Par défaut
    Si la base est en Charset ISO8859_1, pourquoi le spécifier à nouveau dans la PS ?
    Ce charset est-il altéré quelque part ailleurs ?

  5. #5
    Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 144
    Points : 50
    Points
    50
    Par défaut
    La base n'est pas en Charset ISO8859_1, il est à default.

    Est-ce qu'il y a une possibilité d'appliquer ISO8859_1 après la création de la base ?

    Et ce que je ne comprend pas, pourquoi, seules les procedures stockées affichent les caractères anormaux (par contre les tables affichent normalement les accents (é,è,à,°,...) ???

    En plus lorsque je travaille directement avec la table Table1 sans passer par une procedure stockée, le résultat dans fastreport est normal.

  6. #6
    Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 144
    Points : 50
    Points
    50
    Par défaut
    La base n'est pas en Charset ISO8859_1, il est à default.

    Est-ce qu'il y a une possibilité d'appliquer ISO8859_1 après la création de la base ?

    Et ce que je ne comprend pas, pourquoi, seules les procedures stockées affichent les caractères anormaux (par contre les tables affichent normalement les accents (é,è,à,°,...) ???

    En plus lorsque je travaille directement avec la table Table1 sans passer par une procedure stockée, le résultat dans fastreport est normal.

Discussions similaires

  1. Probleme d'affichage des accents dans une page HTML
    Par Oussama Khazri dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 05/02/2012, 01h50
  2. [MySQL] Problème d'insertion des accents dans une base de donnée MYSQL
    Par maroon1970 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 22/08/2011, 18h35
  3. [PHP 5.2] Problème d'affichage des accents sur une page
    Par seanbean dans le forum Langage
    Réponses: 6
    Dernier message: 13/04/2011, 13h13
  4. Réponses: 0
    Dernier message: 13/12/2010, 09h34
  5. Réponses: 2
    Dernier message: 30/10/2008, 16h29

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