PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Besoin d'aide pour un état
Besoin d'aide pour un état
Débuté par André_Québec, 09 oct. 2024 23:19 - 8 réponses
Membre enregistré
5 messages
Posté le 09 octobre 2024 - 23:19
Bonjour,
Je suis en train de rédiger un bottin téléphonique pour une OBNL (organisme à but non lucratif) et je n'arrive pas à trouver la solution de l'état qui donne les jours de naissance, trié par mois. Dans la fiche personnelle il y a une rubrique qui donne le mois de la naissance, une autre rubrique le jour de naissance. Il faut imprimer en entête le mois (ex. Janvier) et ensuite la liste des noms de ce mois, parcours horizontal sur 3 colonnes. Ensuite, sur la même page, on passe à l'autre mois et on répète la procédure. Les noms doivent se succéder horizontalement avec le jour de naissance, parcours de 3 noms par ligne et on passe à l'autre ligne. S'il y a 15 noms, donc 5 lignes de noms pour compléter le mois, la ligne suivante de cette page sera le mois suivant avec les noms et ainsi de suite. Merci pour votre aide.
Membre enregistré
698 messages
Posté le 09 octobre 2024 - 23:41
Bonjour
Pour apporter une réponse qui corresponde, vous ne tenez pas compte de l'année de Naissance ?
Les jours sont des numériques ou texte (Lundi, Mardi, ...) ou un numéro de jour (1 - Lundi · 2 - Mardi · 3 - Mercredi) ?
Même chose pour le mois (Janvier, Février, ...) ou 01 à 12.

A première vue, je créerai un état 3 colonnes avec rupture sur le mois et tri sur les jours de naissance avec affichage après concaténation du nom et du jour.
Cdlt
Message modifié, 10 octobre 2024 - 00:01
Membre enregistré
5 messages
Posté le 11 octobre 2024 - 19:58
Bonjour Cédric,
Merci pour la réponse rapide. Les mois et jours sont enregistrés en numérique et également en alphanumérique (ex: dans la fiche du candidat il y a "jourdenaissance = lundi" et jourdenaissance_no = 1" et même chose pour les mois (pour janvier j'ai 1 et JANVIER, pour décembre j'ai 12 et DÉCEMBRE).
J'ai créé un état en 3 colonnes mais quand je j'imprime la liste, la première colonne sort avec le mois et le jour correctement afffiché mais tout s'affiche sur la première colonne et il y a une deuxième colonne seulement si la première colonne est complète. Ce n'est pas ce que je veux.
J'aimerais que la première personne soit affichée sur la colonne 1, ligne 1, la deuxième personne sur la colonne 2, ligne 1, la troisième personne sur la colonne 3 ligne 1 et on passe à la deuxième ligne, et ainsi de suite. Quand janvier est terminé, on saute la ligne suivante, avec en titre FÉVRIER et on affiche les noms dans le même profil que JANVIER. En résumé le parcours des candidats, par jour du mois se fait horizontalement 1,2,3 sur ligne 1, 4,5,6 sur ligne 2, etc.

Merci encore pour votre aide, c'est apprécié.
Membre enregistré
4 111 messages
Posté le 11 octobre 2024 - 20:19
Bonjour,
Pourquoi tant de redondances dans les données? Ces redondances transgressent la première règle de Codd (règle d'unicité) :
Toute l'information dans la base de données est représentée d'une et une seule manière, à savoir par des valeurs dans des colonnes de tables.

La date de naissance suffit. On peut obtenir le mois en toute lettre avec un CASE et le n° de jour de la semaine avec un DayOfWeek,
En ce qui concerne l'impression, Tu peux utiliser un sous état en mode étiquette

--
Il y a peut être plus simple, mais, ça tourne
Quand tout a échoué, utilise l'option RTFM
Message modifié, 11 octobre 2024 - 20:40
Membre enregistré
5 messages
Posté le 12 octobre 2024 - 23:00
La redondance est nécessaire dans cette application. Cette base de données sert à faire des tests pour des programmes accessoires écrits en d'autres langages et il est nécessaire à ce niveau d'avoir les informations mois et jour en numérique et en alphanumérique dans le même fichier de données. L'année ne peut être fournie à cause d'une loi sur la confidentialité des informations et de ceux qui ont accès à cette base. Une fois la période de développement et les stade alpha et beta terminés, la base sera épurée et normalisée. Pour ce qui est de la solution RTFM, c'est un peu déplacé comme conseil, j'ai acheté WINDEV 2024, consulté le manuel qui aurait pu m'aider, écouté quelques vidéos sur YouTube et n'ai pas trouvé de solution. C'est ma première intervention sur ce forum, Cédric a gentiment répondu à ma question sans chercher à me reprocher quoi que soit. Merci Cédric pour votre délicatesse et votre tentative de m'aider au meilleur de votre connaissance. Si vous avez d'autres suggestions, vous êtes le bienvenue de me faire savoir.
Posté le 13 octobre 2024 - 13:37
André_Québec a écrit :
> La redondance est nécessaire dans cette application.
Pour ce qui est de la solution RTFM, c'est un peu déplacé

Je vous trouve bien sévère et qui plus est injuste avec Voroltinquo.
Il vous demande Pourquoi tant de redondances dans les données?
On s'est tous posé la question.
Nul ne peut imaginer la raison que vous donnez.
Nous en prenons acte.

Pour ce qui est de la solution RTFM, c'est un peu déplacé de votre part.
C'est une signature générique commune à tous ses posts.
Donc nullement destinée spécifiquement à vous.

J'espère que vous n'aurez jamais besoin de son talent.

Bien à vous.
Membre enregistré
25 messages
Posté le 14 octobre 2024 - 03:37
Il s'agit d'une suggestion basée sur un travail similaire que j'ai effectué.

Le rapport peut ressembler à ceci :

Janvier
Personne(5) Personne(8 ) Personne(15)
Personne(18) Personne(23)

Février
Personne(2) Personne(19)

Et ainsi de suite.

La source de l'état doit être un tableau de structures
L'état a un groupe (mois)
Le corps de l'état est un tableau de 3 colonnes (Nom1, Nom2, Nom3)

Utilisez l'éditeur d'états:
Créez un tableau de structures avec 4 champs
(Mois, Nom1, Nom2, Nom3)
Créez une source de données de mois uniques (peut nécessiter un champ pour trier)
Parcourez cette source de données.
Pour chaque mois unique, filtrez votre source pour les noms correspondants
Ajoutez chaque nom et jour (comme un seul champ ?) à la deuxième, troisième ou quatrième colonne du tableau
Après chaque 3 enregistrements, démarrez une nouvelle ligne

Veuillez excuser mon mauvais français.
Message modifié, 14 octobre 2024 - 05:20
Membre enregistré
5 messages
Posté le 18 octobre 2024 - 02:53
Merci Christine pour cette petite mise au point. Je suis nouveau dans ce forum et je n'avais pas remarqué que Voroltinquo met régulièrement RTFM dans sa signature. Vous avez raison, ma réplique était déplacée compte tenu l'utilisation générale de RTFM dans sa signature. Ce terme dans les milieux anglophones est assez offensant mais je comprends que Voroltinquo l'utilise d'une façon un peu amusante.

En bref, Voroltinquo je vous doit des mes excuses pour avoir été sévère avec une personne qui voulait seulement m'aider.
Membre enregistré
5 messages
Posté le 18 octobre 2024 - 03:08
" Posté le 14 octobre 2024 - 03:37
Il s'agit d'une suggestion basée sur un travail similaire que j'ai effectué." (Mike James)

Merci Mike pour votre suggestion. Je n'avais effectivement pas envisagé l'emploi de tableau de structures.
Votre solution est une avenue intéressante à explorer.