IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WinDev Discussion :

Liaisons dans une analyse - Comment faire ce petit exercice ?


Sujet :

WinDev

  1. #1
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2018
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2018
    Messages : 151
    Points : 107
    Points
    107
    Par défaut Liaisons dans une analyse - Comment faire ce petit exercice ?
    Bonjour à tous,
    j'essaie depuis 15 jours à trouver la solution au problème suivant :
    Nom : analyse.JPG
Affichages : 204
Taille : 25,1 Ko
    Je souhaite ajouter au fichier "Coffret" soit des "Boulebleu", soit des "Boulerouge", en sachant que :
    1. que les différentes valeurs des "boules" ne doivent être saisies que lorsqu'elles appartiennent au "coffret" et seulement dans ce cas
    2. qu'il peut y avoir plusieurs "Boulebleu" ou "Boulerouge" dans le "Coffret" avec des valeurs différentes
    3. que les valeurs affectées aux boules sont différentes également dans leurs types

    Voilà sur quoi je sèche. je ne suis pas certain que la création des fichiers "Boulebleu" et "Boulerouge" soit la bonne approche, peut-être des fenêtres modèles ?
    Vos conseils et remarques sont les bienvenus pour m'aider à résoudre ce challenge.
    Bonne journée à tous
    Berni

  2. #2
    Nouveau membre du Club Avatar de Mumus18
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2019
    Messages : 7
    Points : 36
    Points
    36
    Par défaut
    Bonjour Berni,
    Il s'agit là d'un problème relativement basique d'organisation de base de données.
    Un fichier d'analyse correspond à un objet qui intervient une ou plusieurs fois dans le projet, des fichiers comme "choixfait" n'ont pas lieu d'être selon moi.

    Ma vision de débutant me laisserais penser que l'on a besoin ici que de trois fichiers :
    - Le Coffret
    - La Boule
    reliés en One To Many (Un Coffre a une ou plusieurs boule(s) et une Boule appartient a un seul Coffre)
    - La Valeur
    reliée à la Boule.
    Si il n'y a que des boules bleues et rouges, un booléen "Couleur" dans ce fichier Boule suffira.

    Concernant les droits de saisies, ça se traite plutôt au WLangage...

    Je ne suis nullement expert mais je suis certain à 100% que mes remarques ne sont pas forcément entièrement fiables et qu'elles ne correspondent pas à la seule manière de faire.
    Cela me semble néanmoins être déjà une base plus saine pour continuer.

    Bonne chance Berni !

  3. #3
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 392
    Points
    9 392
    Par défaut
    Il ne faut pas un fichier BouleBleu et un fichier BouleRouge, il faut un seul fichier Boule.

    Quand tu traites un fichierr avec des individus, tu n'as pas un 1er fichier Individu-Martin, un 2ème fichier Individu_Dupont ... etc, tu as un seul fichier, et le nom de famille est une des caractéristiques de ce fichier.

    Donc un seul fichier Boule. Dans ce fichier, il faut un identifiant unique IdBoule. Un fichier a forcément une colonne (ou parfois une combinaisons de 2 ou 3 colonnes) qui permet d'identifier de façon univoque chaque ligne. Chaque boule aura donc un n° unique. (probablement un n° attribéué automatiquement par Windev).

    Description du fichier Boule :
    IdBoule
    Valeur1
    valeur2
    Valeur3
    CouleurBoule
    IdCoffret

    Dans ce fichier Boule, on a aussi une colonne IdCoffret. Cette colonne permet de dire dans quel coffret la boule se trouve. C'est une clé-étrangère (Foreign-Key éventuellement pour faire des recherches Google).

    On a donc besoin d'uniquement 2 fichiers (Coffret et Boule)

    Si une boule peut être dans plusieurs coffrets, ou si on doit gérer des informations du type telle boule est dans tel coffret jusqu'au 15 mai, et dans tel autre coffret à partir du 16 mai, alors il faut un 3ème fichier, pour gérer ces relations 'quelle boule dans quel cofret à quelle date'.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  4. #4
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2018
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2018
    Messages : 151
    Points : 107
    Points
    107
    Par défaut
    Citation Envoyé par Mumus18 Voir le message
    Merci à toi, je vais continuer à creuser !

    Citation Envoyé par tbc92 Voir le message
    Merci pour ta réponse,
    j'amène quelques précisions complémentaires que j'aurais dû apportées dès mon premier message :
    • les fichiers de données "Boule" n'ont pas la même structure, ni en nombre de valeurs, ni en nombre de type
    • exemple : le fichier "Boulebleu"comporte 160 rubriques et le fichier" Boulerouge" 62
    • A priori, il devrait y avoir une quinzaine de fichiers"Boule" de structure différente

    Le fichier "Coffret et les différents fichiers "Boule" sont reliés par une liaison "0,n -->0,1". Je pourrai construire une fenêtre en "Table avec Table reliée" dans laquelle apparaissent la table "Coffret" et x tables"Boule". Cette solution est lourde et je cherche comment l'alléger. Comment faire pour ne faire apparaître que la table reliée nécessaire ?
    Et si on rajoute un fichier "Boule" supplémentaire, comment le faire ? "liaison" ? C'est pour cela que j'avais pensé à un fichier "choixfait", bien que je n'ai pas saisi comment l'insérer.
    Bonne journée
    Berni

  5. #5
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 392
    Points
    9 392
    Par défaut
    Le fichier BouleBleu contient 160 rubriques, et le fichier BouleRouge contient 62 rubriques.

    Je travaille sur une base de données, où on a des structures similaires (une centaines de caractéristiques pour chaque Item), et selon les Items, on peut avoir des caractéristiques actives, ou pas. ( 100 caract pour les bouleBleus, 80 Pour les boulesRouges, 130 pour les BoulesVertes ), avec par exemple 30 caractéristiques communes entre les boulesBleues et les boulesRouges.
    Donc c'est un peu voisin.
    Et bien entendu, tous les 6 mois, mes utilisateurs vont inventer les BoulesGrises, ou vont vouloir une 101ème caractéristique pour les boulesBleues ... etc etc.

    Dans ma base de données, il n'est pas question d'ajouter des colonnes à chaque nouvelle caractéristique, il n'est pas question non plus d'avoir des programmes très très longs, du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    BouleBleu.Valeur1 = ...
    BouleBleu.Valeur1 = ...
    BouleBleu.Valeur2 = ...
    BouleBleu.Valeur90 = ...
    J'ai des fichier de ce type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    IdCaractéristique        // Le catalogue de toutes les caractéristiques possibles et imaginables ( environ 200 lignes dans ton cas)
    DescCaracteristique 
     
    Idcouleur                   // Le catalogue des caractéristiques à renseigner pour les boules rouges d'une part, et les boules bleues d'autre part (160+62 lignes dans ton exemple)
    IdCaractéristique
     
    IdBoule                     // Pour chaque Boule, est-elle Bleue, ou rouge , une ligne par boule  (disons 1000 lignes si on a 1000 boules , 600 boules Bleues + 400 boules Rouges)
    IdCouleur
     
    IdBoule                    // une ligne par boule et par caractéristique (160*600 +62*400 lignes avec les valeurs ci-dessus).
    IdCaractéristique
    Valeur
    Ainsi, si il y a une 161ème caractéristique pour les boules bleues, rien à modifier dans les programmes. S'il y a une 3ème couleur qui apparaît, rien à modifier dans les programmes.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  6. #6
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2018
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2018
    Messages : 151
    Points : 107
    Points
    107
    Par défaut Waouh !
    Je ne sais pas si j'ai tout compris, mais je vais essayer de suivre ton conseil. Merci à toi, je te tiendrai au courant.
    Berni

  7. #7
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2018
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2018
    Messages : 151
    Points : 107
    Points
    107
    Par défaut Avancement
    Bonjour,
    un point sur mes pérégrinations ! J'avance doucement, enfin ce que j'en ai pu comprendre. Je travaille toujours sur un projet test. Tout d'abord, j'ai renommé les fichiers "boule" en fichiers "Bouleau", "Boulange", "Boulier" et "Boulevard" (pas très original) pour perdre la notion de couleur. Ensuite, j'ai créé les fichiers: "descaractéristiques" qui permet de lister toutes les caractéristiques possibles, "boulesdistribues" qui permet d'affecter les différentes boules aux coffrets, enfin "affectationcaracteristiques" qui permet de fixer les différentes caractéristiques attribuées à "boulesdistribues". Pour info, j'obtiens l'analyse suivante :

    Nom : analyse2.JPG
Affichages : 172
Taille : 45,1 Ko

    Par une fenêtre de tables liées, j'arrive à ce résultat qui permet effectivement de rajouter sans problème des items:

    Nom : Tables.JPG
Affichages : 232
Taille : 68,8 Ko

    À ce stade, je sèche car mon souhait est d'ouvrir une fenêtre permettant de saisir les différentes valeurs qui sont toutes accompagnées de libellés plus ou moins importants et je ne pige pas trop comment faire
    Bonne fin de week-end
    Bernisch

  8. #8
    Expert confirmé
    Avatar de Voroltinquo
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2017
    Messages
    2 807
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 807
    Points : 5 263
    Points
    5 263
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    Dans un premier temps, il faut s'abstraire des valeur.
    Dans ta description de ce qui se passe on a des boules et des coffrets et c'est tout.
    Chacune de ces entités va apparaître dans l'analyse.
    On sait que l'on a des couleurs de boule (CoumleurBoule), des valeurs de boules (ValeurBoule) et un nom de coffret.
    Cela nous suffit pour continuer à remplir notre analyse :
    Nom : screenshot_02_18-05-2019.png
Affichages : 172
Taille : 4,4 Ko
    Fig 1

    PK_Boule et PK_Coffret sont uniques cf ce qu'a écrit tbc92 plus haut.

    Que sait-on d'autre ?
    Une boule est dans 0 ou 1 coffret (0 elle est encore sur la table, dans un sac ...., 1 elle est affectée cf "les différentes valeurs des "boules" ne doivent être saisies que lorsqu'elles appartiennent au "coffret" et seulement dans ce cas")
    Un coffret peut contenir 0 ou n boules.
    Le lien suivant https://ineumann.developpez.com/tuto...iation-merise/ te sera aussi utile. Windev possède une Module MERISE (nouveau/données/MCD) assez incomplet car il est limité à la partie "donnée" et qu'il ne comporte pas la notion d'héritage, mais qui peut convenir à un petit projet simple.

    Cela nous permet de compléter notre analyse.
    Nom : screenshot_03_18-05-2019.png
Affichages : 186
Taille : 5,1 Ko
    Fig 2

    Et voilà, c'est fini pour l'analyse.

    Windev est gentil, suite à ce qu'on lui a dit il nous ajoute le coffret dans lequel se trouve la boule (FK_Coffret.) Si la boule n'a pas encore été affectée FK_Coffret vaut 0.

    Valeur1....Valeurn, ainsi que les couleurs (tu as changé les couleur en nom, pourquoi pas) seront renseignés grâce à l'IHM. Il en va de même pour le nom des coffrets
    e.g.
    Nom : screenshot_04_18-05-2019.png
Affichages : 161
Taille : 2,5 Ko
    Fig 3

    Avant d'aller plus loin, je te conseille la lecture de cet ouvrage, http://georges.gardarin.free.fr/Livr...XX-TotalBD.pdf (ce n'est pas la dernière version, mais c'est gratuit,) plus particulièrement la PARTIE 2 ainsi que le chapitre XVII et en particulier la partie concernant les formes normales.

    Placement d'une boule dans un coffret.

    On choisit une boule et on récupère sa PK (PK_boule), on choisit un coffret et on récupère sa PK.
    Il suffit maintenant d'affecter PK_Coffret à FK_Coffret et de modifier "Boule"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Boule.FK_Coffret=Coffret.PK_Coffret
    HModifie(Boule)
    La liste des affectations pourra être obtenue via une requête.
    Il y a peut-être plus simple, mais ça tourne.
    Quand tout a échoué utilisez l'option RTFM

  9. #9
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2018
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2018
    Messages : 151
    Points : 107
    Points
    107
    Par défaut Merci pour tes conseils
    Bonjour Voroltinquo,
    merci pour tes conseils et ta recommandation de lecture. Je pense avoir respecter les différentes liaisons dont tu fais état. La seule chose, dans ton raisonnement, qui m'arrête encore est la suivante :
    - un coffret à des boules différentes comportant chacune des rubriques différentes ayant des valeurs nulles ou différentes.
    - un coffret peut avoir des boules identiques mais avec des valeurs de rubrique différentes
    Il faut donc bien que toutes ces données soient enregistrées dans un fichier, non ?
    Bonne journée
    Bernisch

  10. #10
    Expert confirmé
    Avatar de Voroltinquo
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2017
    Messages
    2 807
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 807
    Points : 5 263
    Points
    5 263
    Billets dans le blog
    1
    Par défaut
    Si les valeurs sont différentes, les boules sont différentes. C'est ce qui se passe dans le réalité. Si tu as une boule bleue avec la valeur 1 et une boule bleue avec la valeur 2, tu as 2 boules.
    Sinon, tout se passe grâce à FK_Coffret.

    Le petit code suivant va te faire comprendre comment ça fonctionne.

    On va simuler des tirages aléatoires.
    Un boule va être tirée aléatoirement et sera déposée dans un coffret choisi aléatoirement. La liste des tirages sera affichée.
    J'ai 5 boules 3 bleues(valeurs1, valeur2, valeurs 4) et 2 rouges(Valeur1 et valeur3). Dans ton 2° exemple, tu as 12 boules.
    Nom : screenshot_02_20-05-2019.png
Affichages : 186
Taille : 8,1 Ko
    Et 3 coffrets Alpha, Bravo et Charlie.
    J'ai utilisé l'analyse crée plus haut.

    Prenons cette fenêtre :
    Nom : screenshot_01_20-05-2019.png
Affichages : 160
Taille : 22,6 Ko
    Le tableau sert à afficher les tirages, il est rempli par programmation et comporte 4 colonnes dont 1 cachée.

    Code de la fenêtre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    PROCÉDURE FEN_Tirage()
    gtabBoulesDisponibles est tableau <agrandissement=1> d'entier SUR 8 octets	//Tableau dans lequel sera mémorisé les PK des boules disponibles
    gtabCoffretsDisponibles est tableau <agrandissement=1> d'entier SUR 8 octets//Tableau dans lequel sera mémorisé les PK des boules disponibles
    //Ces 2 tableaux seront utilisés lors des tirages aléatoires
     
    InitialiserTirages()
    InitialiserTirage est une procédure locale à la fenêtre.
    Code de InitialiserTirage():
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    PROCÉDURE InitialiserTirages()
     
    //On remplit le tableau des boules
    HLitPremier(Boule)
    POUR nIndiceBoule=1 _À_ HNbEnr(Boule)
    	TableauAjouteLigne(gtabBoulesDisponibles,Boule.PK_Boule)
    	Boule.FK_Coffret=0	//On enlève l'affectation du coffret à la boule
    	HModifie(Boule)
    	HLitSuivant(Boule)
    FIN
     
    //On remplit le tableau des coffrets
    HLitPremier(Coffret)
    POUR nIndiceCoffret=1 _À_ HNbEnr(Coffret)
    	TableauAjouteLigne(gtabCoffretsDisponibles,Coffret.PK_Coffret)
    	HLitSuivant(Coffret)
    FIN
     
    //On initialise le générateur de nombres aléatoires
    InitHasard()
    Le bouton Initialiser sert a effectuer de nouveaux tirages quand toutes les boules ont été affectées
    Code du bouton Initialiser:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    TableauSupprimeTout(gtabBoulesDisponibles)
    TableSupprimeTout(TABLE_BouleTirées)
    InitialiserTirages()
    Code du bouton Tirage:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
     
    nNbBoules est un entier
    nNbCoffrets est un entier
    nBouleTirée est un entier
    nCoffretSélectionné est entier
    nPKBouleTirée est entier sur 8 octet
    nPKCoffret est entier sur 8 octets
     
    nNbCoffrets=gtabCoffretsDisponibles..Occurrence
    nNbBoules=gtabBoulesDisponibles..Occurrence
     
    SI nNbBoules<=0 ALORS
    	ToastAffiche("Il n'y a plus de boules")
    	RETOUR
    SINON
    	//On tire une boule
    	nBouleTirée=Hasard(nNbBoules)
    	nPKBouleTirée=gtabBoulesDisponibles[nBouleTirée] //On récupère la PK de la boule tirée
    	TableauSupprime(gtabBoulesDisponibles,nBouleTirée)	//La boule n'est plus disponible
     
    	//On sélectionne un coffret
    	nCoffretSélectionné=Hasard(nNbCoffrets)
    	nPKCoffret=gtabCoffretsDisponibles[nCoffretSélectionné]	//On récupère la PK du coffret
     
    	HLitRecherche(Boule,PK_Boule,nPKBouleTirée)	//On se positionne sur la boule tirée
    	HLitRecherche(Coffret,PK_Coffret,nPKCoffret) //On se positionne sur le coffret
    	Boule.FK_Coffret=nPKCoffret	//On "met la boule dans le coffret"
    	HModifie(Boule)
    	//On va afficher le nouveau tirage dans le champ table
    	TableAjouteLigne(TABLE_BouleTirées,Boule.PK_Boule,Boule.ValeurBoule,Boule.CouleurBoule,Coffret.NomCoffret)
    FIN
    Exemples de tirages :
    Nom : screenshot_05_20-05-2019.png
Affichages : 159
Taille : 24,5 Ko Nom : screenshot_03_20-05-2019.png
Affichages : 169
Taille : 24,9 Ko Nom : screenshot_04_20-05-2019.png
Affichages : 184
Taille : 25,7 Ko
    Il y a peut-être plus simple, mais ça tourne.
    Quand tout a échoué utilisez l'option RTFM

  11. #11
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2018
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2018
    Messages : 151
    Points : 107
    Points
    107
    Par défaut Un grand merci
    Re bonjour Voroltinquo ,

    merci beaucoup pour l'intérêt que tu portes à mon problème. Je vais étudier tout ça. En attendant, voilà vers quoi j'étais parti, lourd et sans élégance, ce n'est pas la panacée: Tout d'abord, je pars d'une fenêtre table-table reliée

    Nom : coffretboules.JPG
Affichages : 183
Taille : 44,8 Ko

    en cliquant sur le bouton "vers boule" j'affiche la table du fichier boule

    Nom : tableboule.JPG
Affichages : 176
Taille : 29,6 Ko

    qui permet de traiter chaque fichier boule concerné

    Nom : ficheboule.JPG
Affichages : 163
Taille : 21,3 Ko

    Qu'en penses-tu ?

    Bernisch

  12. #12
    Expert confirmé
    Avatar de Voroltinquo
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2017
    Messages
    2 807
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 807
    Points : 5 263
    Points
    5 263
    Billets dans le blog
    1
    Par défaut
    J'en pense, dans un premier temps, qu'à priori nous n'avons pas la même définition "informatique" du mot valeur.
    Pour moi, une valeur est une donnée qui est affectée à une variable ou à la colonne d'une table. J'ai l'impression que chez toi, ce n'est pas le cas.

    En regardant plus précisément tes exemple on voit qu'on peut affecter un doublet, un triplet ou un quadruplet aux boules.
    Est-ce bien le cas ?
    Il y a peut-être plus simple, mais ça tourne.
    Quand tout a échoué utilisez l'option RTFM

  13. #13
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 392
    Points
    9 392
    Par défaut
    De ce que je comprend, pour chaque boule, Bernish a différentes caractéristiques (ex: largeur, hauteur, poids, volume, matériau, fabriquant, date_de_fabrication, usine_de_fabrication ... ...) . Ici, j'ai listé 8 caractéristiques, mais pour certaines boules, on a jusqu'à 160 caractéristiques
    Et pour chaque caractéristique, il peut y avoir différentes valeurs (ex: le matériau peut être bois, plomb, fer, terre , alliage ...) ; Le nombre de valeurs possibles pour une caractéristique est soit une liste fermée (matériau), soit une liste ouverte (usine_de_fabrication), soit un nombre (date, taille ...)
    Pour une boule, et une caractéristique, on a une seule valeur : une boule ne peut pas être en bois et en fer. Si elle est en bois avec une enveloppe en fer, on aura 2 caractéristiques (matériau de l'intérieur, matériau de la surface), ou bien une seule caractéristique Matériau et une valeur nouvelle (bois+enveloppe fer)
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  14. #14
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2018
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2018
    Messages : 151
    Points : 107
    Points
    107
    Par défaut Merci à vous deux
    Merci à vous deux, tbc92 et Voroltinquo, d'avoir pris sur votre temps pour essayer de m'aider (pas facile avec un autodidacte comme moi). Il est vrai que je ne pige pas tout, tout de suite, mais bon, j'essaie de m'accrocher... Pour rester simple dans ce forum, j'ai fait au plus court (?) dans l'énoncé du problème, certainement au détriment de la précision (ainsi cette notion de couleurs qui n'a jamais été une caractéristique). Relativement à vos deux derniers messages, c'est tcb92 qui cerne au plus près mes desiderata. Je vais continuer à gratter, merci encore pour vos conseils et suggestions.
    Bonne journée à vous deux
    Bernisch

Discussions similaires

  1. Réponses: 10
    Dernier message: 13/09/2012, 12h04
  2. [PPT-2007] ligne 1 en gras, ligne 2 en italic dans une shape. comment faire en VBA?
    Par ola-oz dans le forum VBA PowerPoint
    Réponses: 6
    Dernier message: 01/07/2010, 14h59
  3. Réponses: 13
    Dernier message: 29/07/2009, 20h25
  4. Réponses: 4
    Dernier message: 21/09/2008, 01h24
  5. Réponses: 5
    Dernier message: 03/09/2007, 20h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo