| |
Membre enregistré 48 messages |
|
Posté le 22 octobre 2019 - 15:16 |
Bonjour
Sur un volet d'un champs Onglet, un champs table a été chargé avec des données et une mise en forme conditionnelle (affecte seulement couleur de fond) est faite par le code (chargement de données et mise en forme sur appui de bouton). L'utilisateur peut modifier les données de cette table et ensuite "rafraichir" la mise en forme conditionnelle en cliquant sur un autre bouton. Voici le code ci-dessous affecté à cette mise en forme conditionnelle.
Malheureusement rien ne se passe lors de l'appui sur ce bouton avec le code.
Pouvez vous svp m'aider sur ce sujet?
// mise en forme conditionnelle
TABLE_BOM_ERP.COL_1..CouleurFond=iTransparent TABLE_BOM_ERP.COL_2..CouleurFond=iTransparent TABLE_BOM_ERP.COL_3..CouleurFond=iTransparent TABLE_BOM_ERP.COL_4..CouleurFond=iTransparent TABLE_BOM_ERP.COL_5..CouleurFond=iTransparent TABLE_BOM_ERP.COL_6..CouleurFond=iTransparent TABLE_BOM_ERP.COL_7..CouleurFond=iTransparent TABLE_BOM_ERP.COL_8..CouleurFond=iTransparent TABLE_BOM_ERP.COL_9..CouleurFond=iTransparent TABLE_BOM_ERP.COL_10..CouleurFond=iTransparent TABLE_BOM_ERP.COL_11..CouleurFond=iTransparent TABLE_BOM_ERP.COL_12..CouleurFond=iTransparent TABLE_BOM_ERP.COL_13..CouleurFond=iTransparent TABLE_BOM_ERP.COL_14..CouleurFond=iTransparent TABLE_BOM_ERP.COL_15..CouleurFond=iTransparent
POUR itableBOM = 1 À TableOccurrence(TABLE_BOM_ERP) SI Taille(TABLE_BOM_ERP.COL_7[itableBOM])>30 ALORS TABLE_BOM_ERP.COL_7[itableBOM]..CouleurFond=OrangeClair FIN SI Taille(TABLE_BOM_ERP.COL_8[itableBOM])>30 ALORS TABLE_BOM_ERP.COL_8[itableBOM]..CouleurFond=OrangeClair FIN SI Taille(TABLE_BOM_ERP.COL_9[itableBOM])>30 ALORS TABLE_BOM_ERP.COL_9[itableBOM]..CouleurFond=OrangeClair FIN SI SansEspace(TABLE_BOM_ERP.COL_1[itableBOM])="" ALORS TABLE_BOM_ERP.COL_1[itableBOM]..CouleurFond=iRougeClair FIN SI SansEspace(TABLE_BOM_ERP.COL_2[itableBOM])="" ALORS TABLE_BOM_ERP.COL_2[itableBOM]..CouleurFond=iRougeClair FIN SI SansEspace(TABLE_BOM_ERP.COL_3[itableBOM])="" ALORS TABLE_BOM_ERP.COL_3[itableBOM]..CouleurFond=iRougeClair FIN SI SansEspace(TABLE_BOM_ERP.COL_4[itableBOM])="" ALORS TABLE_BOM_ERP.COL_4[itableBOM]..CouleurFond=iRougeClair FIN SI SansEspace(TABLE_BOM_ERP.COL_5[itableBOM])=0 ALORS TABLE_BOM_ERP.COL_5[itableBOM]..CouleurFond=iRougeClair FIN SI SansEspace(TABLE_BOM_ERP.COL_6[itableBOM])="" ALORS TABLE_BOM_ERP.COL_6[itableBOM]..CouleurFond=iRougeClair FIN SI SansEspace(TABLE_BOM_ERP.COL_10[itableBOM])="" ALORS TABLE_BOM_ERP.COL_10[itableBOM]..CouleurFond=iRougeClair FIN SI Droite(TABLE_BOM_ERP.COL_3[itableBOM],1)=SAI_Revision ALORS TABLE_BOM_ERP.COL_3[itableBOM]..CouleurFond=JauneClair FIN FIN |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 160 messages Popularité : +18 (22 votes) |
|
Posté le 22 octobre 2019 - 15:23 |
mets un point d'arrêt sur ton code et dit nous la partie qui fonctionne pas |
| |
| |
| | | |
|
| | |
| |
Posté le 22 octobre 2019 - 16:00 |
| |
| |
| | | |
|
| | |
| |
Posté le 22 octobre 2019 - 17:22 |
Bonjour,
As-tu controlé que tu rentre bien jusqu'au code de modification ???
Le TableSelect n'est pas obligatoire.
TABLE_BOM_ERP.COL_7[itableBOM]..CouleurFond=OrangeClair
TABLE_BOM_ERP[itableBOM].COL_7..CouleurFond=OrangeClair
Dans ton cas tu ne devrait pas gagner grand chose mais sinon via des indirection : {"Tbl_HoraireIdeal["+i+"].Col_"+J+"",indChamp}..CouleurFond = VertClair |
| |
| |
| | | |
|
| | |
| |
Posté le 22 octobre 2019 - 20:09 |
Bonsoir,
J'utilise se type de code dans mets champs tables
bien penser à cocher "charger en mémoire"
POUR TOUTE LIGNE nligne de TABLE_Commande_fourniture_bureau SI TABLE_Commande_fourniture_bureau.COL_LIvrée = Vrai ALORS TABLE_Commande_fourniture_bureau[nligne].COL_Produit..Couleur = VertClair SINON TABLE_Commande_fourniture_bureau[nligne].COL_Produit..Couleur = RougeClair FIN SI TABLE_Commande_fourniture_bureau[nligne].COL_Qté > 1 ALORS TABLE_Commande_fourniture_bureau[nligne].COL_Qté..CouleurFond = OrangeFoncé FIN FIN
Bon dev
Cordialement
Thibault Roux |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 48 messages |
|
Posté le 23 octobre 2019 - 09:28 |
Bonjour Merci pour votre aide et vos réponses. Ma fenêtre ressemble à :
Les données sont rentrées dans le champs table de ce volet par l'action sur un autre bouton par programmation (extrait code ci dessous) qui se situe sur un autre volet (avec mise en forme conditionnelle à la fin de ce code / voir ci dessous) code remplissage table
code pour mise en forme conditionnelle
Ensuite l'utilisateur peut modifier ou corriger, les champs de cette table (autorisation en saisie). Afin de mettre à jour la mise à forme conditionnelle, il y a le bouton "RAFRAICHIR" qui permet de la mettre à jour (le code de mise en forme conditionnelle est identique par rapport à celui après remplissage table (bien sauf la partie remplissage de table)
L'action sur ce bouton "RAFRAICHIR" ne fait rien comme ci les données de la table n’avaient pas été modifiées. J'ai du oublier quelque chose ("enregistrer" les données de la table après modification ou autre ligne de code permettant de prendre en compte) |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 69 messages Popularité : +4 (4 votes) |
|
Posté le 23 octobre 2019 - 10:19 |
Bonjour JVE,
As-tu penser à positionner ton code de mise en forme dans la partie "Affichage d'une ligne de table_bom_erp ?
Ton bouton de refresh actualise les données, et le code d'affichage de la ligne s'occupe des couleurs...
Si ça peut t'aider.
Bon développement |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 121 messages Popularité : +8 (14 votes) |
|
Posté le 23 octobre 2019 - 10:33 |
Bonjour,
Comment sont insérées les données? L'affichage dans un champ table avec modification ne va pas modifier le fichiers csv automatiquement. Est ce que les données sont ensuite enregistrées dans une BDD?
Je viens de faire un test avec une importation dans un champ table, la mise en forme conditionnelle fonctionne bien
Bond Dev
Thibault Roux |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 309 messages Popularité : +31 (37 votes) |
|
Posté le 23 octobre 2019 - 10:45 |
Bonjour, Comme l'explique Marret, dans le cas d'une table Fichier (basée sur un fichier/requête) l'affichage doit être adapté dans le code de l'evenement "Affichage d'une ligne..." de la table
Dans votre cas de figure on aura donc :
Affichage d'une ligne de la table table_bom_erp
TABLE_BOM_ERP.COL_7[table_bom_erp]..CouleurFond=iCouleurDéfaut SI Taille(TABLE_BOM_ERP.COL_7[table_bom_erp])>30 ALORS TABLE_BOM_ERP.COL_7[table_bom_erp]..CouleurFond=OrangeClair FIN
Bon dev.Message modifié, 23 octobre 2019 - 10:47 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 48 messages |
|
Posté le 04 novembre 2019 - 16:12 |
Bonjour Merci pour vos réponses. Malheureusement je n'arrive pas à m'en sortir. Les données sont insérées par rapport à d'autres données dans un autre champs table. Le code concernant la mise en forme conditionnelle fonction si je le mets: - à la suite du code d'insertion des données d'origine ou - sur un bouton à part "Rafraichir Affichage" (si pas fait dans le code après insertion des données) Si je le mets dans la table au niveau affichage d'une ligne, la mise en forme conditionnelle n'est pas correcte.
Ma table est en saisie. Si je modifie les données dans la table, aucune mise en jour de la mise en forme conditionnelle se fait (dans le cas code dans module affichage de la table ou sur le bouton "rafraichir affichage".
|
| |
| |
| | | |
|
| | |
| |
Posté le 05 novembre 2019 - 10:09 |
Bonjour,
Il faut mettre aussi le code a chaque sortie de Colonne pour les colonne en saisie exemple : Sortie de TABLE_BOM_ERP.COL ajouter
TABLE_BOM_ERP.COL_7[table_bom_erp]..CouleurFond=iCouleurDéfaut SI Taille(TABLE_BOM_ERP.COL_7[table_bom_erp])>30 ALORS TABLE_BOM_ERP.COL_7[table_bom_erp]..CouleurFond=OrangeClair FIN
Cordialement,
E. Rossi |
| |
| |
| | | |
|
| | |