Jump to content
  • 0

Liste des présences avec traitements de diverses données, Partie 2


François2
 Share

Question

Bonjour,

Ma présente demande est une suite à ma question précédente: «Liste des présences avec traitements de diverses données» de mai dernier.  

Au lieu d'une liste de personnes importée d'un fichier CSV, avec diverses données, il s'agit cette fois d'une liste de personnes, sélectionnée depuis une table selon leur date d'engagement qui doit se définir à chaque année d'engagement.

Pour les réunions d'équipes j'aimerais pouvoir collecter les présences pour chaque réunion.  À ce sujet, j'ai deux questions concernant les scripts.

1- Je voudrais faire un modèle «Participation à la réunion» me permettant d'inscrire une horodate d'une réunion afin ouvrir la liste des personnes engagées pour l'année de cette date, avec une rubrique «Présence» à cocher, dans une table externe.  Si cette réunion est déjà enregistrée, la liste des présences pourra être modifiée s'il y a lieu, sinon une nouvelle réunion devra être créée, avec son horodate et son objet, et la liste des personnes engagées pour l'année de la date inscrite pour cette nouvelle réunion.  Il pourrait y avoir deux réunions la même journée, à des heures différentes avec un sujet différent pour des équipes différentes. 
Je tente en vainc de suivre la démarche trouvée dans CQFD-fmp en réalisant chaque étape avec les commandes de FMP, et je n'arrive pas à afficher la liste dans la table externe pour l'année inscrite.

2- Pour la prise de «présence», le script «Valid» qui doit me permettre d'inscrire la présence ne fonctionne pas, comme dans la solution de ma question précédente.

J'ai encore beaucoup à apprendre sur les Scripts FMP, car je crois qu'il y a plus qu'une suite logique de commandes FMP.

À l'aide SVP.  Merci

Réunion.fmp12

Link to comment
Share on other sites

12 answers to this question

Recommended Posts

  • 0

Ah, j'oubliais …. Pour tous, c'est la période des vacances bien méritée, les canicules d'été, les Fêtes nationale…

Mais quand quelqu'un d'entre vous sera disponible, pourra-t'il me répondre?

Merci

Link to comment
Share on other sites

  • 0

hello

j'ai pas tout compris dans ce que vous vouliez faire à vrai dire, mais quelques remarques

- le déclenchement du script "AjouteCohorte" ne peut pas se lancer la et comme il est placé

- dans le meme script, la recherche n'a pas de critère, "=" oui, mais égale a quoi?

- idem pour le filtrage de la TE, elle est filtrée sur "ENG_Engagement::ENG_DateAnnée"....... et quoi????

Pour le reste malheureusement je n'ai vraiment pas suivi désolé 🙂

Link to comment
Share on other sites

  • 0

Merci Patrice pour votre réponse,

|- je n'ai vraiment pas suivi désolé.

Il n'y a pas de quoi.  Je formule ma demande autrement…

J'ai deux tables:  PER_Personnes et PAR_Participe.  La table  PER_Personnes est liée à une autre table (ENG_Engagement) qui collige les dates d'engagements d'une personne. Ces dates sont affichées dans la TE du modèle basée sur la table PER_Personnes.  Pour une année donnée, on aura une cohorte pour cette année-là.  La cohorte change à chaqu'année, certains quittent, d'autres arrivent.

La table ACT_Activité collige les sujets des réunions pour la table intermédiaire PAR_Participe.

Dans un modèle «Participation» basé sur la table <PAR_Participe>, à l'aide d'une rubrique Horodate (Date de la réunion), je voudrais que dès qu'une date et l'heure sont inscrites dans le modèle en style de contrôle <Calendrier> qu'un script démarre à sa validation.  Ce script fait deux choses:

1 ) Avec l'année de l'horodate inscrite, le script va chercher la liste des personnes «engagées» cette année-là (AjouteCohorte) et l'affiche dans la TE de la réunion, modèle basé sur une réunion <PAR_Participe>.  L'objectif étant d'avoir cette liste pour inscrire les présences à la réunion.

2 ) Avec l'horodate (Date & heure) de la réunion, le script cherche aussi dans la table des réunions <PAR_Participe> si cette horodate existe déjà.  Si elle existe, cette réunion avec la liste de la cohorte de cette date s'affiche, avec les présences déjà inscrites. On pourra ainsi la mettre à jour.   Si elle n'existe pas, le script créé une nouvelle réunion avec cette date, ET affiche la liste des personnes «engagées» cette année-là dans la TE de cette nouvelle réunion.  Ce nouvel enregistrement sera prêt à colliger les présences et son sujet.

| -  le déclenchement du script "AjouteCohorte" ne peut pas se lancer la et comme il est placé

Je voudrais qu'il se lance dès que l'horodate est validée.

| -  la recherche n'a pas de critère, "=" oui, mais égale a quoi?

J'ai cherché en vainc comment ajouter ce critère, l'année calculée sur l'horodate, pour la récupérer la cohorte de cette année 🤔

| - elle est filtrée sur "ENG_Engagement::ENG_DateAnnée"....... et quoi?

La recherche est faite sur ENG_DateAnnée.  Elle sélectionne (filtre) les personnes engagée pour cette année inscrite dans l'horodate, pour en afficher la liste (cohorte) dans la TE.  Si on se place dans le modèle Personnes et qu'on fait une recherche en écrivant  «2021» dans la TE Date d'engagement, on trouvera 41 personnes engagées (cohorte de l'année 2021).  Si on y inscrit «2020», on aura une cohorte de 26 personnes.  C'est la liste de ces personnes que je voudrait voir s'afficher dans le modèle «Participation».

Au plaisir, en espérant que ce soit un peu plus clair.  Merci encore pour votre support.

François2

 

Link to comment
Share on other sites

  • 0

Bonjour

Pour la première question , vous avez besoin d’une table supplémentaire( EX : PERpresent) . Pour répertorier un id PER avec une présence ou non . Cette table en TE dans PAR .

Pour remplir avec les PER de la bonne année, Pour ca ,je conseille de créé une rubrique dans la table PER , qui vas répertorier la date max de la table lier ENG ( pour mâcher un peu le trav. 😊). un script pour aller dans la table PER , faire une recherche des ID des PER avec l’année recherché . Exporté le résultat et importé ceux-ci dans la table  EX : PERpresent . Et retour au modèle PAR . Ya plus qu’a cocher les présence …

 

Deuxième

L’utilisation de l’horo est pas judicieux … Un Horo est utiliser pour répertorier un moment précis ( jour, mois, année ,heure , minute et seconde ) CAD même si vous créé la même réunion 1 sec après , l’Horo sera différente et donc impossible de prouver des identique .

Apo

Link to comment
Share on other sites

  • 0

Merci Apo,

Je vais tenter ces suggestions, et parfaire ma BD.

Pour l'horodate, c'est pour différencier deux réunions dans la même journée, ex.  une à 10:00:00 et une autre à 16:30:00.  Comment faire autrement avec le style de contrôle <Calendrier>?

Je vous souhaite à vous tous en Europe de passer sur cette canicule historique avec les meilleures chances, dans les meilleures conditions.

Au plaisir Fr.

Link to comment
Share on other sites

  • 0
Il y a 3 heures, François2 a dit :

c'est pour différencier deux réunions dans la même journée

De toute façon, elle sont déjà différencier avec leur ID ... ;) L'horo alors est la que pour l'ordre chronologique.

Link to comment
Share on other sites

  • 0

Merci Apophis000,

Comme suggéré, j'ai supprimé l'usage de l'horodateur pour utiliser plutôt une liste de valeurs sur les heures, aux 30 minutes, plus appropriée.

La recherche de la cohorte des personnes sur l'année d'engagement par filtre a été inscrite «à la main» car je ne vois pas comment inscrire ce filtrage autrement.

Enfin, j'ai ajouté une table PRE_Present, avec un nom différent que celui suggéré puisque "PER" existe déjà pour le nom de la table PER_Personnes.

J'ai refait le script pour la recherche de la cohorte, après de nombreuse lectures sur FM Sources, et CQFD-fmp, mais je bloque toujours.

Merci de m'aider encore.  Je vous envoie mon dernier devoir 😄

Réunion2.fmp12

Link to comment
Share on other sites

  • 0

Merci Apophis000,

Oui, pour le style.  Mais la liste de la cohorte (peuple) n'est pas valide car contient 19 personnes pour 2020.  La cohorte 2020 est de 26 personnes, celle de 2021 est de 41, et celle de 2022 est de 48 personnes.  À l'étude, les personnes manquantes sont toutes présentes dans l'année suivante.  J'ignore pourquoi la variable ne fonctionne pas pour la recherche pour ces personnes. Cette recherche de la cohorte pour une année devrait-elle être faite plutôt dans la table ENG_Engagement ?  J'ai tenté de le faire en vainc.

Le fichier temporaire <temp.fmp12> contient bien 19 clés primaires.

J'ai fait un schémas des exécutions des scripts, qui, je pense précise mieux la logique désirée. Je l'ai mis en pièce jointe au format PDF.

Les objectifs sont de pouvoir éditer une réunion déjà enregistrée, et de pouvoir en créer de nouvelles.  Dans les deux cas, il me faut «peupler» avec la cohorte de l'année, et ajouter la rubrique de présence, tout ça dans une table externe.

J'ai re-relu le chapitre sur les scripts de CQFD-fmp, mais je ne trouve rien qui puisse m'éclairer.

Merci pour votre patience et votre aide.

Scripts Réunion - Logique.pdf

Link to comment
Share on other sites

  • 0

Pour faire ce que vous dite. Il faut faire une entrée temporaire, pour rechercher si oui ou non une réunion existe. Pour cela ont utiliser des rubrique globale.

Avec ses rubriques, ont recherche une réunion. SI ont en trouve une ont affiche la bonne fiche dans le modèle PAR .

Mais c'est peut-être plus simple et plus visuelle, de partie d'une liste de toutes les réunions. Visuellement, on voit celle qui y est déjà , et si non , on en crée une...

Link to comment
Share on other sites

  • 0

Super Apophis000,  tu n'as rien d'un antagoniste ou d'un mauvais dieu grec, mais tout simplement astucieux 😉

Il y a 19 heures, Apophis000 a dit :

Mais c'est peut-être plus simple et plus visuelle, de partie d'une liste de toutes les réunions. Visuellement, on voit celle qui y est déjà , et si non , on en crée une...

J'achète.  Génial!  À l'ouverture du modèle Participation, on recherche une date à l'aide du style de contrôle calendrier déroulant, et la liste de toutes les réunions de l'année année inscrite s'affiche en liste avec date, heure et sujet, déjà sélectionnée prête à être éditée le cas échéant.  On pourrait y ajouter le nombre de participant pour chacune.  Wow!   Et, si la date est absente, on n'a qu'à créer une nouvelle réunion.  Très brillant.  Merci.

Mais là, quant à la méthode pour afficher cette liste, et faire le choix pour une édition, je n'ai pas d'idée.  Ce sujet a déjà sûrement été discuté dans FM Source, mais je n'en trouve pas de références.  Quelques pistes m'aideraient à poursuivre ma démarche.   Merci encore pour ta patience et ton aide.   J'ai hâte de m'y mettre. 

Au plaisir, Fr.

 

Link to comment
Share on other sites

  • 0

Apophis c'est une divinité egyptienne  ;) ... Ou un astéroïde qui vas frolée la terre en 2029 ... selon 😆

On dois créé une table externe avec les fiches de PAR ... ET... Une TE peu être filtré. On utilise donc une rubrique globale qui va être utiliser pour filtrer les enregistrements dans cette TE. Filtré par date par exemple.

 

313862914_aaatriTE.png.3652f484c07b2b980c82a7a00cac235a.png

 

Ça peut être comme ceci.

 

Réunion C.fmp12

 

Apo

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...