Aller au contenu
  • 0
Dominique Joly

Regrouper des données dans un tableau

Question

Bonjour

[Le titre n'est pas très explicite. J'en conviens]

Avec filemaker 14

Soit une table (cf. exemple joint) qui liste des objets (définis par la rubrique "nom") dont certains ont des "références" et d'autres n'en ont pas.

Je cherche à afficher, dans un tableau trié par nom, le décompte des objets par nom (pas de problème) et toutes les références qui s'y rapportent.

Dans mon exemple joint, les références 103 et 104 devraient s'afficher, respectivement, dans la ligne "bouteille noire" et "bouteille jaune".

Comment faire cela ?

Merci pour votre aide

Listes.fmp12

Listes.fmp12

Partager ce message


Lien à poster
Partager sur d’autres sites

24 réponses à cette question

Messages recommandés

  • 0

Bonsoir, Un début de réponse dans Essai ? (avec le script dans le menu)...à affiner selon le besoin.

Gérard

Listes GL.fmp12

Listes GL.fmp12

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Merci mais ce n'est pas ce que je cherche.

Cette liste utilise le corps de la fiche alors que je ne veux pas de corps mais un récapitulatif après tri.

Il faut soit recopier les valeurs soit travailler avec des liens mais je ne vois pas comment.

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Bonsoir,

Voici une proposition : 

Dans le tableau, la référence n'est pas celle de l'enregistrement mais celle d'un enregistrement lié qui porte le même nom.

Dans la relation, il y a un tri décroissant sur la référence, de sorte que le premier enregistrement sera toujours celui dans lequel la ref est encodée (et non vide)

C'est bon ?

 


bien à toi,

Tanguy

 

Listes.fmp12

Listes.fmp12

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Merci Tanguy

On avance mais il manque le cas où la bouteille noire a deux références (102 et 103).

Il faudrait que les deux références apparaissent dans la colonne de droite.

Ne faudrait-il pas une nouvelle rubrique dans laquelle seraient copiées ces références ?

Mais comment ?

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Ok, j'avais pas saisi...avec un calcul alors qui liste les références pour toutes les lignes qui ont le même nom.

-> 1 relation même nom

-> 1 calcul 

Substituer (  UniqueValues ( Liste ( Listes_nom::Reference ) ) ; "¶" ; " " )

 

Listes.fmp12

Listes.fmp12

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Oui

Ce doit être cela mais quelle est la fonction UniqueValues avec filemaker 14 ?

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0
1 hour ago, Dominique Joly said:

Oui

Ce doit être cela mais quelle est la fonction UniqueValues avec filemaker 14 ?

Oups...14 !

Cette fonction n'apparait qu'en 16

Avant cela nous pouvions utiliser la fonction perso d'Agnes : UniqueList

http://fmfunctions.com/fid/151

qui elle même requiert sa fonction CustomList

http://fmfunctions.com/fid/118

 

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

D'accord

Je n'ai pas ces fonctions personnalisées dans mon fichier mais je vais les insérer.

Quelle est la partie du code à copier ?

Ce n'est pas très explicite il me semble sur la page en question.

Je suppose que c'est la partie en grisé.

J'ai copié ces fonctions mais je n'arrive pas à modifier le calcul.

J'ai essayé ceci mais ça ne fonctionne pô !

Je veux séparer les valeurs par "espace tiret espace" et non par un retour à la ligne

Substituer (  UniqueList ( Liste ( Listes_trie::Reference ) ; " - " ) ; " " )

Comment gérer l'option CaseSensitive ?

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Merci Tanguy

Question résolue

Bonne fin de semaine

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Bonjour Tanguy

Le problème se complique car je n'avais pas tenu compte d'autres paramètres que j'ai ajouté dans le fichier : les rubriques Production et Pâte.

L'affichage final devrait être comme dans le tableur et non comme dans le fichier filemaker ListesV3.

Comment arriver à ce résultat ?

J'ai essayé plusieurs clés de tri avec les nouvelles rubriques mais cela ne fonctionne pas.

Merci pour ton aide.

TableauFinal.ods

ListesV3.fmp12

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

J'ai réfléchi tout en déjeunant et j'ai changé le lien qui se fait maintenant sur les trois rubriques Production, Pate et Nom avec un tri croissant sur la rubrique référence.

Et ça fonctionne. Il me reste à tester sur mon fichier.

ListesV4.fmp12

Mais ça ne fonctionne pas sur mon fichier

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Compléments.

J'ai ajouté des éléments pour rapprocher encore plus le fichier exemple de mon fichier :

- la table LexiqueTypologique qui contient les clés de tri

- la rubrique NumSite. Dans mes premiers exemples je n'avais pas présenté ce numéro or il est très important, car l'édition recherchée se fait après une sélection (que je n'avais pas montré auparavant car j'essaie de simplifier au maximum les fichiers test)

- la rubrique Pate (pâte) qui est présente dans mon fichier

- les rubriques NumUS et NumInventaire qui sont concaténées seulement si elles sont renseignées toutes les deux et c'est l'affichage de ce numéro concaténé (NumUS_Inv) en liste grâce à la fonction Liste décortiquée plus haut, qui pose problème

Dans le fichier ci-joint (ne pas tenir compte des fichiers V3 et TableauFinal), le bouton "Tableau…" effectue une recherche sur un site et prévisualise le résultat.

Le bouton "Tri pour tableau" effectue le tri pour cette édition. Il est appelé dans le script "Tableau…".

J'ai ajouté une copie d'écran "DifferenceFichierTableur" qui montre en jaune ce qui ne va pas dans l'édition filemaker : il manque la référence 4850.101.

DifferenceFichierTableur.png

ListesV5.fmp12

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Bonjour

Quelqu'un pourrait-il m'aider à achever le réglage de ce calcul ?

Je vous remercie.

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Bonjour Dominique,

Pas facile de poursuivre ce type d'aide sur le forum...cela devient très spécifique à ton projet et s'assimile plus à du développement assisté que de l'aide générique sur une thématique FM.

Bref...j'ai jeté un oeil sur ton fichier et ne comprends pas pourquoi tu attends la ref 4850.101 - il est normal qu'elle ne soit pas présente car associée à un autre NumSite_US et donc la relation ne permet pas de lier cet enregistrement au 4739.102

Cordialement,

Tanguy

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Merci Tanguy

Je comprends ce que tu veux dire car effectivement c'est un peu pointu.

En revanche, la référence 4850.101 existe dans dans fiches différentes NumSite_US et pour le site 219 elle devrait apparaître.

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Oui, mais dès lors, ne faut il pas dans ta relation que ce soit NumSite=NumSite plutôt que NumSite_US = NumSite_US ?

 

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Merci Tanguy

Tu as raison. Cela fonctionne très bien (V6 jointe).

Je vais transposer la modification dans mon fichier complet.

ListesV6.fmp12

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

J'ai transposé dans mon fichier et ça ne fonctionne pas correctement, mais j'ai compris pourquoi : à la différence du fichier exemple, les éditions se font sur une sélection des fiches d'un même site.

Donc il faut que j'ajoute des liens qui tiendront compte de ces sélections et, par conséquent, des modèles d'éditions différents.

Je crois que je vais y arriver.

En revanche, après le premier essai, j'obtiens dans la rubrique qui utilise la fonction UniqueList le résultat ci-dessous :

[Error_CL]  | Return error : [0] Unlisted error | Unknown error, check calculation or check "Start" and "End"  - Calculation ( for [n] = 1 ) : Let( [  TheValue = GetValue( $MyFirstList ; 1 ) ] ;   Case ( PatternCount ( $Rc & $Values & $Rc ; $Rc & TheValue & $Rc ) < 1 ;   Let ( $Values = $Values & $Rc & TheValue ; TheValue )))

Ma formule est la suivante :

Si ( Not EstVide ( Forme ) Or Not EstVide ( Typologie ) Or Not EstVide ( Decor ) ;
Substituer (  UniqueList ( Liste ( INVCER_Autolien_CatProdForTypDec_PDCSSequence::NumUS_NumInv ) ; 0 ) ; "¶" ; " - " ) ; "" )

D'où vient l'erreur ?

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Bonjour Dominique,

A mon avis, c'est la fonction UniqueList qui n'est pas OK. Cette fonction perso nécessite la fonction CustomList comme préalable. si tu n'as pas CustomList ou si tu as ajouté CustomList après, cela ne marche pas. Ajoute d'abord CustomList et puis UniqueList....et ensuite utilise UniqueList dans ton calcul.

 


bien à toi,

Tanguy

 

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Bonjour Tanguy

J'ai bien ajouté les fonctions dans l'ordre que tu indiques : d'abord CustomList puis UniqueList.

Le tri par ordre de création me permet de le vérifier.

Faut-il que je les supprime et que je recommence ?

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Bonjour,

Fais un test avec un calcul simple par exemple dans le data viewer pour vérifier que ta fonction perso UniqueList fonctionne correctement.

Par exemple 

UniqueList ( Liste ("A";"A";"B") ; 0 )

 

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Elle fonctionne bien.

et dans visualiseur le calcul précédent donne le même résultat aberrant.

 

UniqueList.png

UniqueListe2.png

Partager ce message


Lien à poster
Partager sur d’autres sites
  • 0

Tanguy

Il me semble que j'ai trouvé d'où venait l'erreur : le nouveau lien (INVCER_Autolien_CatProdForTypDec_PDCSSequence:) utilisait une rubrique qui ne pouvait être indexée.

J'ai modifié cela et l'affichage est bon.

J'espère que la suite des adaptations va fonctionner correctement.

Merci pour ton aide.

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant

  • En ligne récemment   0 membre est en ligne

    Aucun utilisateur enregistré regarde cette page.

×