PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV (précédentes versions) → tcd sélection ligne récupérer valeur entête ligne
tcd sélection ligne récupérer valeur entête ligne
Débuté par Khali, 28 juil. 2021 17:39 - 14 réponses
Membre enregistré
14 messages
Posté le 28 juillet 2021 - 17:39
Bonjour Je suis sur la version 18 et je rencontre un souci.
J'ai construit un tableau croisé et j'ai besoin de récupérer la valeur de l'entete de la ligne sélectionné.
Malheureusement pour moi cette version ( la 18) ne me permets d'accèder aux dernières fonctions pour connaitre la valeur de cette colonne
Je peux récupérer la valeur du contenu d'une cellule par Nomdemontableau[lig,col)..valeur
J'ai testé d'accèder à mon champ ligne avec les crochets...impossible
Pouvez vous m'aider? Merci
Membre enregistré
3 883 messages
Popularité : +227 (347 votes)
Posté le 28 juillet 2021 - 19:03
Bonjour,
Il faut passer par une variable tcdPosition

--
Il y a peut être plus simple, mais, ça tourne
Membre enregistré
14 messages
Posté le 28 juillet 2021 - 20:09
Bonjour merci de ton retour
J'ai testé cette méthode mais elle me renvoit les calculs et non les infos de la colonnes entête.
Pour être plus claire j'ai un tableau croisé avec en ligne les sites, en colonne les familles et ensuite dans le croisement j'ai le calcul d'une note
Ce que je souhaite, c'est lors du clic sur une ligne du tableau récupérer la valeur du site (le champ ligne)
de ce que je vois le tcd position renvoie le résultat d'un croisement de données que je dois lui donner
Apres j'avais un debut de piste avec le nomdutableau seul qui me donner la ligne sélectionnée. Mais après je ne sais pas comment récupérer la valeur du champ site pour l'indice de la ligne selectionnée
Désolée un peu longue :)
Membre enregistré
3 883 messages
Popularité : +227 (347 votes)
Posté le 28 juillet 2021 - 22:48
As tu tenté un truc du style (dans le code de sélection):
tcdMaSelction est tcdPosition

tcdMaSelection=TCDSelect'TCD_MonTCD)
ValeurSite=tcdMaPosition.Site
.....


--
Il y a peut être plus simple, mais, ça tourne
Membre enregistré
14 messages
Posté le 28 juillet 2021 - 23:07
je teste demain matin et te redis
merci
Membre enregistré
14 messages
Posté le 29 juillet 2021 - 04:41
Je viens de tester
Le TCDSelect est à partir de la version 19. Dommage pour moi :)
Je vais de voir créer un tableau avec la même requête les axes à côté et interroger l'indice dans ce tableau.
En tout cas merci de ton aide et de ta rapidité
Membre enregistré
3 883 messages
Popularité : +227 (347 votes)
Posté le 29 juillet 2021 - 05:47
Le TCDSelect est à partir de la version 19. Dommage pour moi

erf ;(
Je viens de consulter la liste des fonctions TCDXXX tu peux tenter le coup avec TCDInfoXY

--
Il y a peut être plus simple, mais, ça tourne
Membre enregistré
14 messages
Posté le 29 juillet 2021 - 09:21
pas bête
je teste
tcdinfoxy(tableauc,souriposx(tableauC),sourisposy(tableauC))

du coup le tcdinfoxy attend la position de la sourisPosX et y
maintenant je m'amuse avec cette fonction en tentant de la faire fonctionner sur mon tableau
pas beaucoup de doc sur cette fonction
On avance mais que de contournement
Membre enregistré
3 883 messages
Popularité : +227 (347 votes)
Posté le 29 juillet 2021 - 09:38
En plaçant le code dans la partie "Sélection d'une cellule" ça passe non ?

--
Il y a peut être plus simple, mais, ça tourne
Membre enregistré
14 messages
Posté le 29 juillet 2021 - 09:45
Oui t'inquiète, je mets mon resultat dans

tcdMaSelection est tcdPosition de montableau
tcdMaSelection=TCDInfoXY(montableau,SourisPosX(),SourisPosY())
ValeurSite=montableau.Site

Mais en fait je ne sais pas utilisé le sourisposx
Si je laisse sourisposx seul sans indiquer le tableau, il se base sur la fenetre et me ramene toujours la meme ligne
Si je lui indique le tableau seul, il me donne l'indice en cours
si je lui mets montableau..Xinitial, je dépasse mon tableau

Je pensais avoir trouvé une soluce et à force de tester je sais plus :(
Membre enregistré
14 messages
Posté le 29 juillet 2021 - 10:01
je viens de comprendre ta remarque , je vais mettre mon code sur l'evenement selection
Membre enregistré
14 messages
Posté le 29 juillet 2021 - 10:19
voici ma syntaxe complete sur mon evenement selection d'une cellule de montcd
pos est un tcdpoisiton de montableau
pos=TCDInfoXy(moimeme, sourisposX(),sourisposY())
si pos..endehors=vrai alors
trace("-")
sinon
trace(pos.sitenom)
fin

ceci me ramene toujours la premiere ligne
Si ca te parle dis moi sinon je vais abandonner la recherche directe et bidouiller
merci encore
Membre enregistré
3 883 messages
Popularité : +227 (347 votes)
Posté le 29 juillet 2021 - 11:05
tcdMaSelection est une tcdPosition de TCD_MonTCD

tcdMaSelection=TCDInfoXY(TCD_MonTCD,SourisPosX(),SourisPosY())
Trace(tcdMaSelection.NomSite)

Fonctionne parfaitement; Cela doit venir du MoiMême qui référence certainement la cellule et non le tableau.

--
Il y a peut être plus simple, mais, ça tourne
Membre enregistré
14 messages
Posté le 29 juillet 2021 - 12:51
je teste merci encore
Membre enregistré
14 messages
Posté le 29 juillet 2021 - 13:10
testé
chez moi ca ne fonctionne pas
j'ai mis une trace pour suivre les coordonnées x , y. Quel que soit l'endroit ou je clique. les coordonnées sont toujours les mêmes et donc ma cellule recupéré aussi
C'est gentil de vouloir m'aider, mais ne te prends pas la tête je vais devoir trouver une autre solution. J'y ai perdu trop de temps
On aura essayer