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

MS SQL Server Discussion :

Condition if et changement de police


Sujet :

MS SQL Server

  1. #1
    Membre habitué
    Inscrit en
    Août 2008
    Messages
    1 596
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 1 596
    Points : 175
    Points
    175
    Par défaut Condition if et changement de police
    Bonjour, dans un report j'ai un champs qui est parfois en arabe et parfois en francais, ce champs je le recupere depuis deux champs, par defaut c'est le premier champs(arabe), si ce dernier n'est pas renseigné je recupere celui du francais, donc je veux faire un test sur le champs recuprer, comment puis je faire ?

    Merci pour votre aide !

  2. #2
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 224
    Points : 19 566
    Points
    19 566
    Billets dans le blog
    25
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    coalesce("ChampFrançais","ChampArabe")

  3. #3
    Membre habitué
    Inscrit en
    Août 2008
    Messages
    1 596
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 1 596
    Points : 175
    Points
    175
    Par défaut
    coalesce ca remplace le case, mais peut etre j'ai pas bien expliqué, mon soucis c'est pas la valeur choisie mais plutot le positionnement des caractère.

    donc comment puis je choisir la police des caractères en fonction de la nature des champs.

    Déjà le champs se compose de 3 petit champs qui s'inverse si le champs est en francais.

  4. #4
    Membre habitué
    Inscrit en
    Août 2008
    Messages
    1 596
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 1 596
    Points : 175
    Points
    175
    Par défaut
    Le champs 1 c'est une concatenation de 3 champs, c1+c2+c3, c1 et c3 sont des nombres et c2 c'est une lettre parfois en arabe parfois en francais, si c'est en arabe le champs 1 s'affiche correctement si c'est en francais il s'affiche inversé c2+c1+c3 qui n'est pas correcte, comment puis je faire ?

  5. #5
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    Donnez un véritable exemple, car il est difficile sans de véritables données de comprendre d'où provient votre problème.
    Donnez également le DDL de la table.

    @++

  6. #6
    Membre habitué
    Inscrit en
    Août 2008
    Messages
    1 596
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 1 596
    Points : 175
    Points
    175
    Par défaut
    mon problème c'est un probleme d'affichage seulement, 13 A 2522 c'est pas la meme chsoe que A 13 2522, si le A est une lettre arabe le champs s'affiche comme le premier exemple si c'est en francais il s'affiche comme le 2eme ???

  7. #7
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Certes, mais je suppose que vous avez déjà écrit en arabe sous SSMS et que vous vous êtes aperçus que vous écrivez de droite à gauche, comme vous le feriez à la main.
    C'est pour cela que je vous demande un jeu de données et votre requête, car on ne peut pas vous aider sans cela.
    Je vous rappelle que cela fait partie de la charte de postage de ce site ...

    @++

  8. #8
    Membre habitué
    Inscrit en
    Août 2008
    Messages
    1 596
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 1 596
    Points : 175
    Points
    175
    Par défaut
    je peux poster tout ce que demander mais sincérement j'ai pas compris qu'est ce que je dous vous envoyer ?

  9. #9
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    - L'instruction de création de la table que vous pouvez obtenir par clic droit sur celle-ci,
    - Un jeu de données de test que l'on peut insérer dans la table
    - votre requête

    @++

  10. #10
    Membre éprouvé
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    956
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 956
    Points : 1 199
    Points
    1 199
    Par défaut
    Bonjour,
    Pour elsuket, je ne suis pas sure que le problème viennent de la requête.
    J'ai l'impression qu'il s'agit d'un problème de reporting. Comme faire pour afficher dans une même zone de texte de l'arabe et du français en fonction de la valeur d'une colonne.
    Néanmoins il ne faut pas négliger que le problème soit un problème de collation des données ou de récupération. Dans ce cadre ta demande est justifiée

    Cordialement
    Soazig

  11. #11
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    C'est à priori ce que je suppose, nous verrons si c'est un problème du à SSRS ou bien au jeu de données .
    Je suppose dès lors que les deux colonnes, l'une en français, l'autre en arabe, sont typées unicode (NVARCHAR).

    @++

  12. #12
    Membre habitué
    Inscrit en
    Août 2008
    Messages
    1 596
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 1 596
    Points : 175
    Points
    175
    Par défaut
    voici la table :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CREATE TABLE [dbo].[tb](
     
    	[c1] [varchar](2) COLLATE French_CI_AI NOT NULL,
    	[c2] [nvarchar](3) COLLATE French_CI_AI NOT NULL,
    	[c3] [int] NOT NULL,
    et la requete c'est une requete de select normal, select c1,c2, c3

  13. #13
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Je viens de faire le test suivant :

    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
    CREATE TABLE [dbo].[tb](
     
    	[c1] [varchar](16) COLLATE French_CI_AI NOT NULL,
    	[c2] [nvarchar](16) COLLATE French_CI_AI NOT NULL,
    	[c3] [int] NOT NULL
    )
    GO
     
    INSERT INTO dbo.tb VALUES ('Test', N'العربية', 2)
    GO
     
    DECLARE @c1 nvarchar(16),
    	@c2 nvarchar(16),
    	@c3 int
     
    SELECT @c1 = c1,
    	@c2 = c2,
    	@c3 = c3
    FROM dbo.tb
     
    PRINT @c1 + @c2 + CAST(@c3 AS nvarchar(8))
    Qui me retourne : Testالعربية2

    Le sens de l'écriture arabe prévaut donc sur le sens de l'écriture latine, et je ne vois pas comment résoudre cela ...

    @++

  14. #14
    Membre habitué
    Inscrit en
    Août 2008
    Messages
    1 596
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 1 596
    Points : 175
    Points
    175
    Par défaut
    et que dois je faire alors ?

Discussions similaires

  1. changement couleur polices plage avec liste
    Par michel13 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 17/04/2008, 18h08
  2. Réponses: 7
    Dernier message: 20/02/2008, 11h15
  3. [CR XI] changement de police non voulu dans l'affichage
    Par fab123 dans le forum SAP Crystal Reports
    Réponses: 0
    Dernier message: 12/02/2008, 10h09
  4. Changement de police par select
    Par Tibalpa dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 20/10/2007, 23h55
  5. Changement de police
    Par PrinceMaster77 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 19/07/2007, 18h18

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