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

SAGE Discussion :

Affichage de couleurs différentes


Sujet :

SAGE

  1. #1
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juillet 2014
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2014
    Messages : 191
    Points : 147
    Points
    147
    Par défaut Affichage de couleurs différentes
    Bonjour,

    J'aimerais pouvoir distinguer par des couleurs différentes les articles composant d'un OF (Mfgmat) en fonction de certaines valeurs que l'on trouve dans la fiche article et dans la fiche article site.
    Je m'explique, les personnes en charge de faire les allocations traitent les composants à allouer en fonction de critères différents
    1 - Les composants dont "DEFLOCTYP" = M10 (c'est le type emplacement de réception par défaut qui se trouve dans la fiche article site) sont traités par certaines personnes et ceux dont "DEFLOCTYP" = M11 sont traités par d'autre
    ==> Je voudrais donc dès l'affichage du tableau des composants de l'OF pouvoir distinguer les différents composants avec 2 couleurs différentes
    2 - De plus nous avons un champs spécifique dans la fiche article pour indiquer si l'article est un consommable ou pas, j'aimerais que si le composant est de type consommable (valeur = 200 dans le champ ZCONSO) alors l'affichage soit d'une couleur différente également.
    En résumé
    si consommable alors
    Rouge
    sinon si M10 alors bleu
    sinon vert
    fin de si

    Si vous avez des idées de comment faire je suis preneur.

    Merci d'avance de vos retours

  2. #2
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juillet 2014
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2014
    Messages : 191
    Points : 147
    Points
    147
    Par défaut
    Personne n'a de piste sur ce sujet ?

  3. #3
    Membre actif
    Homme Profil pro
    Développeur SAGE X3
    Inscrit en
    Octobre 2009
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur SAGE X3

    Informations forums :
    Inscription : Octobre 2009
    Messages : 108
    Points : 227
    Points
    227
    Par défaut
    Bonjour,

    je vous dirai bien d'aller sur les styles conditionnels GESASL puis l'affectation de ces style APRSMSK.
    Création d'un style si la catégorie=CFGFP (sur la dossier DEMO) :
    Nom : C010.PNG
Affichages : 2083
Taille : 7,5 Ko
    Ensuite l'affecter à l’écran désiré, ici ITM0 :
    Nom : C011.PNG
Affichages : 2378
Taille : 23,2 Ko
    Et voici le résultat :
    Nom : C012.PNG
Affichages : 2076
Taille : 5,4 Ko
    Que du paramétrage.
    Dans votre cas, c'est un tableau... faut faire quelques tests.
    Cordialement,
    Hervé

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Développeur décisionnel
    Inscrit en
    Octobre 2014
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Italie

    Informations professionnelles :
    Activité : Développeur décisionnel

    Informations forums :
    Inscription : Octobre 2014
    Messages : 22
    Points : 33
    Points
    33
    Par défaut
    Bonjour,

    tu peux appliquer le style à l'ecran avec la fonction Chgstl.

    Ici un example, que tu peux l'écrire dans le SPE de l'ecran MFG2, sous l'action LIENS.

    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
     
     
    $LIENS
        #TDBBLU et BACKGREEN sont les nom de 2 styles parmetrize dans la fonction 'Styles de présentation'
        #Menu: Paramètrage > Paramètre Généraux > Styles de présentation
     
        Local Char YSTYLE : YSTYLE = "TDBBLU"  
        Local Char YSTYLE2 : YSTYLE2 = "BACKGREEN"  
     
        For XN = 0 To [M:MFG2]NBLIG - 1
            If XN > 1 Then  #Votre condition
     
               #application de style à le champ de l'ecran
     
                #Chgstl [M:MFG2]NBLIG(XNOL) With YSTYLE #pour tous la ligne
     
                Chgstl [M:MFG2]ITMREF(XNOL) With YSTYLE #pour le champ ITMREF seulement
     
            Endif
        Next
     
     
    Return
    Matteo

  5. #5
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juillet 2014
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2014
    Messages : 191
    Points : 147
    Points
    147
    Par défaut
    Bonjour,

    J'essaye sans succès de changer les couleurs de certaines lignes de mon tableau de composants.
    Ce qui ne va pas:
    - si je mets l'action LIENS dans le SPEMFG2 il est jamais exécuté. Pourquoi je ne sais pas ???. Pour mes tests j'ai donc rajouté dans le traitement standard un "GOSUB LIENS FROM SPEMFG2".
    - Le code ci dessous me change uniquement le style de la première ligne, je n'ai pas l'impression que je me déplace dans le tableau. Pourquoi ???
    ----------------------------

    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
    $LIENS
    #Dbgaff 
    Local Char ZLOGI
    Local Char YSTYLE : YSTYLE = "AWARN"
    Local Char YSTYLE2 : YSTYLE2 = "XWOS"
    If !clalev([F:ZITM]) : Local File ITMMASTER[ZITM] : Endif
    For I=0 To nolign-1 
        Read [ITM]ITM0=[M:MFG2]ITMREF(I)
        If fstat = 0 Then 
            ZLOGI=[F:ITM]CREUSR
            If ZLOGI="MJ" Then
                Chgstl [M:MFG2]ITMREF(I) With YSTYLE
            Else
                Chgstl [M:MFG2]ITMREF(I) With YSTYLE2
            Endif
        Else
            Infbox "echec lecture ITMMASTER"        
        Endif
     
    Next I
    Return
    ------------------------------------------
    Merci de vos avis

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Développeur décisionnel
    Inscrit en
    Octobre 2014
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Italie

    Informations professionnelles :
    Activité : Développeur décisionnel

    Informations forums :
    Inscription : Octobre 2014
    Messages : 22
    Points : 33
    Points
    33
    Par défaut
    Bounjour,

    1 - l'action LIENS dans le SPEMFG2 il est jamais exécuté parce que SPEMFG2 il n'est pas le traitement specifique de l'object MFG, il faut ecrire l'action LIENS dans le traitement SPEMFG.

    2 - Pour modifier le style des tous le ligne il faut ecrire 'For I=0 To [M:MFG2]NBLIG - 1' et pas 'For I=0 To nolign-1', la variable nolign contient le numero del la ligne courant


    Matteo

  7. #7
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juillet 2014
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2014
    Messages : 191
    Points : 147
    Points
    147
    Par défaut
    Merci de ta réponse, mais j'avais déjà essayé de mettre NBLIG et cela ne change rien. Le changement de style ne se fait pas sur les lignes du tableau. Dans l'image ci dessous on voit que le style est appliqué sur le texte "Composant" qui est l’entête de la colonne et pas dans le tableau. De plus le style devrait être appliqué sur plusieurs lignes du tableau (par exemple la ligne 3 et la ligne 10) alors que ce n'est pas le cas. On dirait que ma boucle "FOR" ne sélectionne pas les lignes dans le tableau.

    Nom : tableau.jpeg
Affichages : 1934
Taille : 23,4 Ko

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Développeur décisionnel
    Inscrit en
    Octobre 2014
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Italie

    Informations professionnelles :
    Activité : Développeur décisionnel

    Informations forums :
    Inscription : Octobre 2014
    Messages : 22
    Points : 33
    Points
    33
    Par défaut
    Citation Envoyé par matica Voir le message
    Bonjour,

    tu peux appliquer le style à l'ecran avec la fonction Chgstl.

    Ici un example, que tu peux l'écrire dans le SPE de l'ecran MFG2, sous l'action LIENS.

    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
     
     
    $LIENS
        #TDBBLU et BACKGREEN sont les nom de 2 styles parmetrize dans la fonction 'Styles de présentation'
        #Menu: Paramètrage > Paramètre Généraux > Styles de présentation
     
        Local Char YSTYLE : YSTYLE = "TDBBLU"  
        Local Char YSTYLE2 : YSTYLE2 = "BACKGREEN"  
     
        For XN = 0 To [M:MFG2]NBLIG - 1
            If XN > 1 Then  #Votre condition
     
               #application de style à le champ de l'ecran
     
                #Chgstl [M:MFG2]NBLIG(XNOL) With YSTYLE #pour tous la ligne
     
                Chgstl [M:MFG2]ITMREF(XNOL) With YSTYLE #pour le champ ITMREF seulement
     
            Endif
        Next
     
     
    Return
    Matteo
    Il ya un erreur dans le code, remplacer XNOL avec XN

  9. #9
    Nouveau membre du Club
    Homme Profil pro
    Développeur décisionnel
    Inscrit en
    Octobre 2014
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Italie

    Informations professionnelles :
    Activité : Développeur décisionnel

    Informations forums :
    Inscription : Octobre 2014
    Messages : 22
    Points : 33
    Points
    33
    Par défaut
    Bonjour howto,

    tu à raison, il faut appeler le traitements standard (et le vertical si on y'a).

    Est que tu peut ajouter ces lignes de code au début des LIENS ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $LIENS
        Gosub ACTION From SUBMFG
        GPE = 1
        Gosub ACTION From SPVMFG
        GPV = 1
    .....
    Matteo

  10. #10
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juillet 2014
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2014
    Messages : 191
    Points : 147
    Points
    147
    Par défaut
    Je ne vois pas de différence entre ton code et le mien qui peut expliquer que ça ne fonctionne pas.
    j'utilise une variable nommée "I" à la place de ta variable nommée "XN" et donc ce n'est pas ça qui fait le fonctionnement

    Autre chose, pourquoi tu fais un test de "if XN>1 then" puisque ton XN est une variable pour faire avancer le FOR ?

  11. #11
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juillet 2014
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2014
    Messages : 191
    Points : 147
    Points
    147
    Par défaut
    Est ce que quelqu'un aurait une idée ??

  12. #12
    Nouveau membre du Club
    Homme Profil pro
    Développeur décisionnel
    Inscrit en
    Octobre 2014
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Italie

    Informations professionnelles :
    Activité : Développeur décisionnel

    Informations forums :
    Inscription : Octobre 2014
    Messages : 22
    Points : 33
    Points
    33
    Par défaut
    Bounjour howto,

    excusez-moi, est que vous avez essayé mon solution de 11/12/2014 15h27 ?

    Matteo

  13. #13
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juillet 2014
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2014
    Messages : 191
    Points : 147
    Points
    147
    Par défaut
    oui j'ai essayé toutes les solutions proposées et cela ne marche pas.
    j'ai même fait un nouveau champ dans l'écran que j'alimente avec la bonne valeur, mais impossible d'appliquer un style sur la ligne entière ou même sur un seul champ de la ligne du tableau en fonction de la valeur.
    J'ai vraiment du mal à comprendre le fonctionnement du langage Sage X3.

  14. #14
    Membre éclairé
    Homme Profil pro
    Administrateur X3 - Sage 1000
    Inscrit en
    Janvier 2012
    Messages
    573
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur X3 - Sage 1000

    Informations forums :
    Inscription : Janvier 2012
    Messages : 573
    Points : 811
    Points
    811
    Par défaut
    Essaye avec l'action STYLE;
    Le code suivant fonctionne chez moi (dans SPEMFG) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $STYLE
    Local Char ZMONSTYLE : ZMONSTYLE = "AWARN"
     
    Infbox "NB ligne style =" -num$([M:MFG2]NBLIG)
    For XN = 0 To [M:MFG2]NBLIG - 1
        If left$([M:MFG2]ITMREF(XN),1)='A' Then
              Chgstl [M:MFG2]ITMREF(XN) With ZMONSTYLE
       Endif
    Next
     
    Return
    Edit : ça fonctionne également pour une ligne complète comme l'a expliqué matica

  15. #15
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juillet 2014
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2014
    Messages : 191
    Points : 147
    Points
    147
    Par défaut
    Bonjour,

    Merci à tous pour votre aide, ça marche bien en utilisant l'action STYLE.Voici mon code définitif

    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
    $STYLE
    Local Char ZMONSTYLE : ZMONSTYLE = "ZMFGMATM11"  
    Local Char ZMONSTYLE2 : ZMONSTYLE2 = "ZMFGMATM10"
    Local Char ZMONSTYLE3 : ZMONSTYLE3 = "ZMFGMATAUT"
    Local Char ZDEFLOC1
    Local Char ZLOGI
     
    If [M:MFG0]MFGFCY ='SG' Then
        For XN = 0 To [M:MFG2]NBLIG - 1
            Read [ITM]ITM0=[M:MFG2]ITMREF(XN)
            ZLOGI = [F:ITM]ZRGPLOGI
     
            Read [ITF]ITF0=[M:MFG2]ITMREF(XN);[M:MFG0]MFGFCY
            ZDEFLOC1 = [F:ITF]DEFLOCTYP(1)
     
            If left$(ZLOGI,3)<>"200" Then 
                If left$(ZDEFLOC1,3)="M11" Then 
                    Chgstl [M:MFG2]NBLIG(XN) With ZMONSTYLE
                Else
                    If (left$(ZDEFLOC1,2)="M2" or left$(ZDEFLOC1,2)="M5" or left$(ZDEFLOC1,3)="MOS") Then
                        Chgstl [M:MFG2]NBLIG(XN) With ZMONSTYLE2
                    Else
                        Chgstl [M:MFG2]NBLIG(XN) With ZMONSTYLE3
                    Endif
                Endif
            Endif
        Next
    Else
        For XN = 0 To [M:MFG2]NBLIG - 1
            Chgstl [M:MFG2]NBLIG(XN) With ""
        Next
    Endif
    Return

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

Discussions similaires

  1. Couleurs différentes à l'affichage
    Par Hegygy dans le forum Mise en page CSS
    Réponses: 21
    Dernier message: 02/09/2008, 17h00
  2. [Tableaux] ligne de couleurs différentes
    Par tom06440 dans le forum Langage
    Réponses: 4
    Dernier message: 22/08/2005, 15h31
  3. couleur différente d'un navigateur à un autre
    Par AMarco dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 17/06/2005, 00h03
  4. TValueListEditor : Avoir des couleurs différentes par rangée
    Par Griswold dans le forum Composants VCL
    Réponses: 2
    Dernier message: 06/08/2004, 19h41
  5. Éléments de couleurs différentes dans un CheckListBox
    Par shogoune dans le forum Composants VCL
    Réponses: 5
    Dernier message: 12/06/2003, 20h17

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