PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WEBDEV 2024 → Barrer une ligne d'un champ table
Barrer une ligne d'un champ table
Débuté par Mr O., 01 juin 2016 15:27 - 28 réponses
Posté le 01 juin 2016 - 15:27
Bonjour a tous,

Je voudrais savoir si quelqu'un sais comment "barrer" une ligne d'un champ table de manière conditionnelle.
(en fonction d'un montant ou d'un statut par exemple.)

Je sais changer la couleur mais la c'est plus la police qu'il faudrait manipuler.


Merci de votre aide.
Membre enregistré
946 messages
Popularité : +102 (110 votes)
Posté le 01 juin 2016 - 16:39
Bonjour
exemple de code
polPolice est une Police
polPolice = PoliceCrée("Arial", 8, iBarre)

TableAjoute(Table1, "1"+TAB+"2")

TableAjoute(Table1, "2"+TAB+"3")
Table1[2]..Police = polPolice // toutes les colonnes de la ligne 2

TableAjoute(Table1, "3"+TAB+"4")
Table1[3][2]..Police = polPolice // juste la colonne 2 de la ligne 3
Posté le 01 juin 2016 - 17:09
Merci Philippe pour cet exemple

J'ai essayé ta solution mais j'ai des messages d'erreur
j'ai crée donc un champ table en programmation

TABLE[2]..Police = polPolice // toutes les colonnes de la ligne 2
--> la propriété Police n'existe pas sur ce type de champs
est dans la liste de valeur proposé sur ce type table je n'ai effectivement pas la propriété Police

TABLE[3][2]..Police = polPolice // juste la colonne 2 de la ligne 3
--> La propriété Police est en lecture seule
Membre enregistré
946 messages
Popularité : +102 (110 votes)
Posté le 01 juin 2016 - 17:34
Bonjour en Windev V20 cela fonctionne
Posté le 02 juin 2016 - 10:00
C' est en WB que je voudrait le faire et a priori ce n'est pas aussi simple.

j'ai regardé dans le forum des réponses similaire sur le "gras" plutôt que la police barré mais personne n'as de solution a priori.
c'est pourtant si simple de gérer une balise strike ou un style d'habitude mais la en Webdev dans une table je galère...
Membre enregistré
68 messages
Popularité : +4 (4 votes)
Posté le 02 juin 2016 - 11:15
Hello,

Je viens d'essayer de le faire en web et apparemment, ça ne fonctionne pas ...
Même si tu reprends l'exemple unitaire "Propriété police", la gestion de
SI MoiMême[4]=1 ALORS
Nom..Police..Barré = Vrai
SINON
Nom..Police..Barré = Faux
FIN

ne fonctionne absolument pas ...

Pour tester la solution de Philippe, j'ai aussi tenté de créer une police à la main (le tout dans le code serveur d'un clic sur un bouton en mode AJAX) mais rien non plus ...
TableAjoute(TABLE_SansNom1,"")
toto est une Police = PoliceCrée("Arial",8,iBarre)
TABLE_SansNom1..Police=toto
TABLE_SansNom1.COL_Colonne1[TABLE_SansNom1..Occurrence]="Coucou"


Si tu tentes d'utiliser la propriété ..Police dans une table navigateur, WebDev t'informe que c'est du code serveur ...

Bref, j'ai plus d'idées =/

Cordialement
Posté le 12 juillet 2016 - 11:32
Bonjour,

Je rencontre le même problème ... avez-vous trouvez une solutions ?
Posté le 13 juillet 2016 - 10:50
Bonjour ,
Non pas de solution. j'ai contacté le support PCSOFT. En l'état ce n'est pas possible. Cela pourrait faire l'objet d'une évolution chez eux mais il faudrait être plusieurs a le demander...
Donc n'hésitez pas à leur signaler.
Posté le 23 novembre 2016 - 08:49
Bonjour je relance le sujet quelqu'un sait si la nouvelle version 22 le permet ?
Posté le 10 octobre 2017 - 12:07
bonjour, je relance le sujet quelqu'un sait si la nouvelle version 23 le permettra ?
Posté le 19 octobre 2018 - 12:54
Bonjour,

Toujours pas de solution trouvée pour cette problématique ? ;(
Posté le 03 février 2020 - 13:02
bonjour

Avec la v24, en plaçant le code suivant dans le code de la table au niveau de l'affichage d'une ligne.
COL_x : colonne sur laquelle on teste si la ligne doit passée en gras
SI (COL_x = <valeur> ) ALORS
TABLE_Y[TABLE_Y]..Police..Gras= Vrai
SINON
TABLE_Y[TABLE_Y]..Police..Gras= Faux
FIN
Membre enregistré
27 messages
Posté le 06 février 2020 - 20:45
Bonjour,

Je voudrais bêtement l'affichage du montant en rouge s'il est négatif ! Table mémoire classique, WEBDEV 25, site PHP.
Je cherche toujours et n'ai jamais réussi qu'à mettre, ou tout en noir, ou tout en rouge ?
Mr O en 2016, savait changer la couleur; un petit tuyau ne serait pas de refus.

Cordialement
Membre enregistré
27 messages
Posté le 06 février 2020 - 21:00
Merci à tous.
J'ai ce que je voulais ...
Mon code n'était pas ou il fallait, merci Fred_I.

Cordialement.
Membre enregistré
27 messages
Posté le 11 février 2020 - 20:02
Bonjour,

Après passage en 64f
TABLE_Tabul[TABLE_Tabul][7]..Couleur = Noir

génère une erreur : opérateur [] interdit sur ce champ ???

Dommage ... C'est quoi la syntaxe, maintenant ?

Merci de votre aide.
Posté le 12 février 2020 - 09:49
Guillaume VIGOUROUX a présenté l'énoncé suivant :
Bonjour,

Après passage en 64f
TABLE_Tabul[TABLE_Tabul][7]..Couleur = Noir

génère une erreur : opérateur [] interdit sur ce champ ???

Dommage ... C'est quoi la syntaxe, maintenant ?

Merci de votre aide.

bonjour,

comprends pas c'est quoi le [7]
ta ligne ?
mais l'indice de ta ligne c'est table_tabul dans ton exemple.

Perso je n'aime pas utiliser le nom de la table pour gérer l'indice,
c'est confusant. Je préfère avoir un entier pI que j'initie après un
tableajoute par exemple.
et si c'est dans un POUR TOUT pas besoin d'indice
Membre enregistré
27 messages
Posté le 12 février 2020 - 11:36
Bonjour,

Je suis dans "Affichage d'une ligne de table".
Après bien des tâtonnements,(post du 6 février !), j'ai réussi à obtenir ce que je voulais avec cette syntaxe ...
D'accord avec toi pour le "confusant", mon premier réflexe est toujours de gérer moi même l'indice.
Le [7] est le numéro de colonne de la table (avec le nom de la colonne ça ne devait pas marcher, peut être? Une fois que c'est bon tu ne touches plus à rien !).

La question reste entière : comment je peux changer la couleur d'un champ sur une ligne en fonction de la valeur d'un champ sur cette même ligne?


AFFICHAGE D'UNE LIGNE DE TABLE
SI TABLE_Tabul[TABLE_Tabul].COL_Bud = "13" ALORS
TABLE_Tabul[TABLE_Tabul][5]..Couleur = RougeFoncé
TABLE_Tabul[TABLE_Tabul][6].Couleur = RougeFoncé
TABLE_Tabul[TABLE_Tabul][7].Couleur = RougeFoncé
SINON
TABLE_Tabul[TABLE_Tabul][5]..Couleur = Noir
TABLE_Tabul[TABLE_Tabul][6]..Couleur = Noir
TABLE_Tabul[TABLE_Tabul][7]..Couleur = Noir
FIN

Je remplace ce code par quoi ?

Cordialement.
Membre enregistré
27 messages
Posté le 12 février 2020 - 12:04
TABLE_Tabul[TABLE_Tabul].COL_xx..Couleur = RougeFoncé
Webdev aime mieux !
Et oui, avec le nom de colonne pas d'erreur de compilation, mais pas de changement de couleur non plus ???
AVEC [7] c'était bon ...

Une piste ?

Merci
Posté le 12 février 2020 - 12:47
Guillaume VIGOUROUX a formulé ce mercredi :
Bonjour,

Je suis dans "Affichage d'une ligne de table".
Après bien des tâtonnements,(post du 6 février !), j'ai réussi à obtenir ce
que je voulais avec cette syntaxe ...
D'accord avec toi pour le "confusant", mon premier réflexe est toujours de
gérer moi même l'indice.
Le [7] est le numéro de colonne de la table (avec le nom de la colonne ça ne
devait pas marcher, peut être? Une fois que c'est bon tu ne touches plus à
rien !).

La question reste entière : comment je peux changer la couleur d'un champ sur
une ligne en fonction de la valeur d'un champ sur cette même ligne?


AFFICHAGE D'UNE LIGNE DE TABLE
SI TABLE_Tabul[TABLE_Tabul].COL_Bud = "13" ALORS
TABLE_Tabul[TABLE_Tabul][5]..Couleur = RougeFoncé
TABLE_Tabul[TABLE_Tabul][6].Couleur = RougeFoncé
TABLE_Tabul[TABLE_Tabul][7].Couleur = RougeFoncé
SINON
TABLE_Tabul[TABLE_Tabul][5]..Couleur = Noir
TABLE_Tabul[TABLE_Tabul][6]..Couleur = Noir
TABLE_Tabul[TABLE_Tabul][7]..Couleur = Noir
FIN

Je remplace ce code par quoi ?

Cordialement.

Je me doutais que [7] était ta colonne
Mais si tu connais le nom du champs, cela ne doit pas poser de probleme
table1[pi].Macolonne..couleur=Noir

Bon je ne sais pas si j'ai des exemples à retrouver car j'avoue que dès
que l'on a des choses à présenter au delà du mini simplissime (une
table de qq colonnes et dq lignes) nous partons sur des ZR.
Posté le 12 février 2020 - 15:19
Guillaume VIGOUROUX a pensé très fort :
TABLE_Tabul[TABLE_Tabul].COL_xx..Couleur = RougeFoncé
Webdev aime mieux !
Et oui, avec le nom de colonne pas d'erreur de compilation, mais pas de
changement de couleur non plus ???
AVEC [7] c'était bon ...

Une piste ?

Merci


remplacer ton baril de Table par un baril de ZR lol

franchement ? les tables dans Webdev, c'est pas souvent une bonne
solution.
juste pour des outils d'admins
Mais dans nos sites Front Office, on ne les utilise jamais.
Membre enregistré
27 messages
Posté le 17 février 2020 - 17:04
Merci Eric.

J'ai remplacé mon "Baril de table par un baril de ZR", mais pour tourner en rond sur un autre problème ! Je n'arrive pas à récupérer l'indice d'une ligne ZR pour passer la valeur d'un champ à la page suivante; en gros, faire ce que je faisais dans le traitement SELECTION D'UNE LIGNE DE TABLE (serveur) AJAX activé; cet événement n'existe pas pour les ZR et je sèche lamentablement ...

Cordialement.
Posté le 21 février 2020 - 10:19
Guillaume VIGOUROUX a couché sur son écran :
Merci Eric.

J'ai remplacé mon "Baril de table par un baril de ZR", mais pour tourner en
rond sur un autre problème ! Je n'arrive pas à récupérer l'indice d'une ligne
ZR pour passer la valeur d'un champ à la page suivante; en gros, faire ce que
je faisais dans le traitement SELECTION D'UNE LIGNE DE TABLE (serveur) AJAX
activé; cet événement n'existe pas pour les ZR et je sèche lamentablement ...

Cordialement.


Bonjour,

pI est un entier
pI=MAZR
(je préfère toujours manipuler l'indice dans une zone à part, même si
on pourrait utiliser MAZR; mias c'est confusant je trouve)

après sur une ZR ton action est souvent dans un bouton
par exemple, tu as un bouton Editer Fiche, un bouton Détail, un bouton
....

et dans le code de ce bouton, tu as les valeurs des champs dans les
attributs
Membre enregistré
27 messages
Posté le 21 février 2020 - 15:45
Bonjour,

Eric, je n'ai pas re précisé,( pour ne pas chagriner Poncherello :) ) c'est une page PHP qui pointe sur une requête Mysql.
Contrairement à une table, où dans le traitement SELECTION D'UNE LIGNE DE TABLE (serveur) AJAX activé je récupérais sans problème mes champs au bon indice,
(mais ne changeais plus la couleur des champs vu l'erreur de compilation avec la dernière MàJ)
, en ZR et mode PHP, je trouve pas ! Au mieux je réussis à trouver l'indice de la première ligne visible en haut de la ZR mais pas celui de la ligne du clic de mon bouton ?

Cordialement.
Posté le 21 février 2020 - 16:37
Guillaume VIGOUROUX a exposé le 21/02/2020 :
Bonjour,

Eric, je n'ai pas re précisé,( pour ne pas chagriner Poncherello :) ) c'est
une page PHP qui pointe sur une requête Mysql. Contrairement à une table, où
dans le traitement SELECTION D'UNE LIGNE DE TABLE (serveur) AJAX activé je
récupérais sans problème mes champs au bon indice,
(mais ne changeais plus la couleur des champs vu l'erreur de compilation avec
la dernière MàJ)
, en ZR et mode PHP, je trouve pas ! Au mieux je réussis à trouver l'indice
de la première ligne visible en haut de la ZR mais pas celui de la ligne du
clic de mon bouton ?

Cordialement.


ok sur le mode php, je ne sais pas ... mais en mode "normal"
une action sur la zr, ça le fait

Tiens je viens même d'aller faire des test pour toi, une vraie mère :-)
2 façons de faire dans ce code de bouton
A toi de voir ce qui convient en php

Clic de BT_EDIT
RazInfo()
// rajout test
pi,pi2 est un entier
pi=ZR_LISTE_KPI
pi2=IndiceEnCours()
Info(pi+" - "+pi2)
// fin rajout test

SI ZR_LISTE_KPI.aKPI_ID=0 ALORS RETOUR
popCHAL_ID=CHAL_ID
popKPI_ID=ZR_LISTE_KPI.aKPI_ID
popKPI_NOM=ZR_LISTE_KPI.aKPI_NOM
popKPI_UNITE=ZR_LISTE_KPI.aKPI_UNITE
etc ...



Bon courage
Membre enregistré
27 messages
Posté le 23 février 2020 - 11:33
Bonjour,

En mode PHP, niet !
"Erreur :La fonction 'IndiceEnCours' n'est pas disponible pour la cible 'PHP'.
Vous pouvez gérer le cas grâce à une condition de compilation (<COMPILE SI ...>) ou une cible d'exécution (<SI CibleExécution = ...>)."

J'essaye toujours de gérer le cas !

Cordialement.
Posté le 25 février 2020 - 09:34
Guillaume VIGOUROUX avait prétendu :
Bonjour,

En mode PHP, niet !
"Erreur :La fonction 'IndiceEnCours' n'est pas disponible pour la cible
'PHP'.
Vous pouvez gérer le cas grâce à une condition de compilation
(<COMPILE SI ...>) ou une cible d'exécution (<SI CibleExécution = ...>)."

J'essaye toujours de gérer le cas !

Cordialement.


ah ... mode php pas glop, mais là n'est pas le débat

et même le
pI est un entier
pi=ZR_LISTE_KPI


?
sinon, indiceencours j'avoue l'avoir découvert tout récemment et je
trouvais ça particulièrement plus propre.
Membre enregistré
27 messages
Posté le 25 février 2020 - 14:11
Bonjour,

IndiceEnCours Linux mais pas PHP !

Cordialement.
Posté le 25 juin 2020 - 09:39
Fred_I a écrit :
bonjour

Avec la v24, en plaçant le code suivant dans le code de la table au niveau de l'affichage d'une ligne.
COL_x : colonne sur laquelle on teste si la ligne doit passée en gras
SI (COL_x = <valeur> ) ALORS
TABLE_Y[TABLE_Y]..Police..Gras= Vrai
SINON
TABLE_Y[TABLE_Y]..Police..Gras= Faux
FIN


Bonjour Fred_I.
Merci pour ce conseil.
J'ai essayé de le suivre, mais j'obtiens toujours ce même type d'erreur:






Je travaille en Webdev25 et j'aimerais n'afficher qu'une seule ligne de ma table en gras.

Quelqu'un peut il me donner la syntaxe correcte ?
Posté le 05 mars 2021 - 12:51
Passe ta colonne en conteneur et ajoute un champ.
La syntaxe reste la même avec ce champ dans l'affichage d'une ligne.