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

Modélisation Discussion :

Mise en place d'un Suivi de Production


Sujet :

Modélisation

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 22
    Points : 11
    Points
    11
    Par défaut Mise en place d'un Suivi de Production
    Bonjour à tous,
    je suis en train de concevoir une base me permettant de completer une GPAO incomplete et veillissante : à savoir, analyser les temps de production, les pertes, les non-conformités ....
    J'ai commencé a créer ma base, mais je coince un peu sur l'analyse des enregistrements, et du coup, je me demande si ma base est bien conçu.

    Je vais tenter de vous expliquer le problème :
    j'ai une table 'Article' qui contient entre autre le n° de l'article et le nom des machines utilisées pour la fabrication de cet article (max 6 machines)

    J'ai une table 'Fabrication', qui contient les temps de production pour chaque machine.
    Dans le formulaire alimentant cette table, j'utilise un sous formulaire de la table 'Article' me listant les machines utilisées et, en face, les champs correspondant au temps de production de la machine1, machine2 .....machine6.
    Maintenant, je ne sais pas comment analyser les temps de production de la machine 'tartampion', la valeur pouvant se trouver dans le champs temps de prod machine1 à temps de prod machine6 selon le process de fabrication utilisé.

    Du coup je me demande si il ne faut pas que je revoye la conception de la table 'Fabrication' en mettant autant de champs que j'ai de type de machine (ex bidule qui coupe, bidulle qui pli, etc...) et que les temps de production ne viennent s'inscrire que dans le champs adéquate. bien entendu sur mon formulaire de saisi, ne doivent apparaitre que les machines nécessaires (selon les indications de la table 'Article') et non pas toutes les machines disponibles afin de simplifier la saisie.

    Auriez-vous une idée pour résoudre ce problème?

  2. #2
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 617
    Points : 56 722
    Points
    56 722
    Billets dans le blog
    40
    Par défaut
    Bonjour,

    J'ai une table 'Fabrication', qui contient les temps de production pour chaque machine.
    Dans le formulaire alimentant cette table, j'utilise un sous formulaire de la table 'Article' me listant les machines utilisées et, en face, les champs correspondant au temps de production de la machine1, machine2 .....machine6.
    Maintenant, je ne sais pas comment analyser les temps de production de la machine 'tartampion', la valeur pouvant se trouver dans le champs temps de prod machine1 à temps de prod machine6 selon le process de fabrication utilisé.
    A priori, il faudrait déjà une table Machine (N°Machine, NomMachine,….), puis relier Article et Machine à Fabrication.

    Ça me paraît léger « Fabrication », dans le métier il me semble qu’on parle plus de « nomenclature des phases de fabrication», de « contrat de phase » ou « gamme », de « phase », d’ « opération » etc…, non ?

  3. #3
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    Bien entendu j'ai essayé d'alléger au max la description de la base.
    Les machines sont bien dans une table à part lié à la table 'Article'.
    L'ensemble des machines nécessaires à la réalisation de l'article constitue en effet une gamme de fabrication, mais cela n'était pas l'objet de la question.

  4. #4
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 617
    Points : 56 722
    Points
    56 722
    Billets dans le blog
    40
    Par défaut
    re,

    quand tu écris :
    j'ai une table 'Article' qui contient entre autre le n° de l'article et le nom des machines utilisées pour la fabrication de cet article (max 6 machines)…
    je crois deviner sans trop me tromper que tu as les règles de gestion suivantes:
    - une machine peut servir à la fabrication de plusieurs articles
    - un article est fabriqué à l’aide d’une ou plusieurs machines

    auquel cas, il te faudrait normalement une table associative (pourquoi pas Fabrication) avec Fabrication(N°, #N°Article, #N°Machine,….) en relation avec Article et Machine.

    Dans ce cas, je ne vois pas ce que peut bien faire le nom des machines dans la table Article.

    A moins que ta table Article comporte 6 clés étrangères N°Machine1, N°Machine2,etc… référençant chacune la table Machine (ce qui je pense n’est pas une bonne idée).

    …la valeur pouvant se trouver dans le champs temps de prod machine1 à temps de prod machine6…
    Ah ? La table Fabrication comprend 6 champs TpsProd1, TpsProd2,… ? Ou pas ?

    Bref, à ta lecture j’ai l’impression que ton schéma est le suivant :
    Machine(N°Machine, NomMachine,…)
    Article(N°Article, #N°Fabrication, #N°Machine1, #N°Machine2, …..,#N°Machine6)
    Fabrication(N°Fabrication, TpsProduct1, TpsProduct2,…..,TpsProduct6)

    Corrige-moi si j’ai mal interprété tes explications et/ou règles de gestion mais si c’est bien ce que je pense, il va falloir en effet revoir tes tables…

    A suivre…

  5. #5
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    Bien résumé f-leb.

    Dans la table 'Article', pour un enregistrement, j'ai bien une liste de 6 machines maximum appartenant à la table 'Machine' qui en comporte 17.

    La table 'Fabrication' comporte effectivement 6 champs de tps de prod.

    Le tpsProd1 correspond à [article]machine1 (qui peut désigner n'importe laquelle des 17 machines répertoriées dans la table 'machine')

    Seulement si je veux calculer, par exemple, le temps de fonctionnement de la machine qui coupe, cette valeur peut se retrouver dans tpsprod1, tpsprod2, ..., tpsprod6. D'où mon bloquage.

    J'ai donc revu depuis la conception de la base en incluant dans la table 'fabrication' les champs tpsRéglage, tpsFabrication et nbreOpérateur pour chacune des 17 machines disponibles. Ce qui, du coup me donne une table à rallonge ....
    Est-ce une bonne solution ?

    Sur le formulaire de saisie, on retrouve ces 3 paramètres pour les 17 machines possible. Et comme seulement 6 machines maxi peuvent servir, il est vraiment désagréable de remplir ce formulaire. Ce que je souhaite, c'est que seul les machines nécessaires apparaissent dans ce formulaire
    Est-ce faisable sans passer par du VBA? sinon merci de déplacer ce post dans la section VBA Access.

  6. #6
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 617
    Points : 56 722
    Points
    56 722
    Billets dans le blog
    40
    Par défaut
    Bonjour,
    Dans la table 'Article', pour un enregistrement, j'ai bien une liste de 6 machines maximum appartenant à la table 'Machine' qui en comporte 17.
    …La table 'Fabrication' comporte effectivement 6 champs de tps de prod.
    C’est bien ce que je craignais !

    J'ai donc revu depuis la conception de la base en incluant dans la table 'fabrication' les champs tpsRéglage, tpsFabrication et nbreOpérateur pour chacune des 17 machines disponibles. Ce qui, du coup me donne une table à rallonge ....
    Est-ce une bonne solution ?
    C’est encore pire !!!

    Seulement si je veux calculer, par exemple, le temps de fonctionnement de la machine qui coupe, cette valeur peut se retrouver dans tpsprod1, tpsprod2, ..., tpsprod6. D'où mon bloquage.
    Oui je vois le problème maintenant, c’est en effet un peu compliqué.
    Je te propose une ébauche de schéma un peu plus conforme aux canons relationnels qui t’éviteras ces déboires.

    Article (N°Article, NomArticle)
    Machine(N°Machine, NomMachine)
    OrdreDeFabrication(N°OrdreFabrication, #N°Article, DateDébut, Datefin, qtté,….) reliée à Article
    Fabrication(#N°OrdreFabrication, #N°Machine, DateFabrication, tpsFabrication,…) reliée à OrdreDeFabrication et Machine.

    Exemple de requête permettant de calculer le temps de fonctionnement total par machine pour l’année en cours :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT Machine.NomMachine, SUM(tpsFabrication)  FROM Machine INNER JOIN Fabrication ON Fabrication.N°Machine=Machine.N°Machine WHERE YEAR(DateFabrication)=YEAR(DATE()) GROUP BY Machine.NomMachine

    … Et comme seulement 6 machines maxi peuvent servir
    Cette contrainte est-elle vraiment une règle de gestion écrite dans le cahier des charges de ton application GPAO ? Ou est-ce une limite supérieure que tu t’es fixée (parce que tu ne pouvais pas non plus rajouter indéfiniment des champs à tour de bras Machine7, Machine8…tpsProduc7, tpsProduc8…)

    Sinon pour contraindre la table Fabrication à refuser de stocker plus de 6 machines pour un même ordre de fabrication il faudra bien mettre (un peu) les mains dans le cambouis SQL+VBA. C’est une autre histoire….

    Courage…

  7. #7
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    Bon, ben... y'a plus qu'à se mettre au boulot !

  8. #8
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    Encore un petit peu d'aide :

    Article (N°Article, NomArticle)
    Machine(N°Machine, NomMachine)
    OrdreDeFabrication(N°OrdreFabrication, #N°Article, DateDébut, Datefin, qtté,….) reliée à Article
    Fabrication(#N°OrdreFabrication, #N°Machine, DateFabrication, tpsFabrication,…) reliée à OrdreDeFabrication et Machine

    Sur cet exemple, dans la table Fabrication, il n'y a qu'un seul champs pour le N°Machine, or je peux en utiliser plusieurs (jusqu'à 6) et il me faut enregistrer indépendemment les temps de production de chacune de ces machines et non le temps total de production. (le but final est de calculer la productivité de chaque machine).

    Donc je récapitule :
    J'ai un parc de 20 machines
    Pour la fabrication d'un article, j'utilise 6 de ces machines
    je veux calculer le temps de production de chacune des machines.

    J'ai les tables suivantes :
    Machine(N°Machine,NomMachine)
    Article(N°Article,NomArticle,MachineNécessaire1 ....MachineNécessaire6)
    Fabrication(#N°Article,TempsProd1....TempsProd6)

    Je vous joint un exemple sur une feuille excel qui sera, je l'espère, plus parlant.exempletable.xls

    Merci d'avance

  9. #9
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Ton modèle ne semble pas correct:

    Reviens au modèle que t'a donné f-leb (tout y est )
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  10. #10
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    Encore une fois, je comprend le modèle de f-leb mais il ne correspond pas au process utilisé dans mon atelier avec la GPAO déjà en place. Même si je n'ai pas encore la solution, il doit être plus facile d'adapter ma base au fonctionnement de mon atelier que l'inverse.
    A 1 ordre de fabrication correspond une suite de plusieurs machines et non pas 1OF=1 machine.

  11. #11
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Salut Vincent,

    Précisémment dans le modèle que ta donné f_leb tu as:

    Fabrication(#N°OrdreFabrication, #N°Machine, DateFabrication, tpsFabrication,…) reliée à OrdreDeFabrication et Machine


    la clé est ici (#N°OrdreFabrication, #N°Machine)
    donc tu peux avoir:

    N°Ordre | N°Machine

    1 ------|-----1
    1 ------|-----2
    1 ------|-----3
    etc..

    A+
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  12. #12
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    Ok, j'essaye

  13. #13
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 617
    Points : 56 722
    Points
    56 722
    Billets dans le blog
    40
    Par défaut
    bjour à tous,

    je donne une nouvelle ébauche de schéma vite fait avec tout plein de traits -1--------- partout (ça énerve tout le monde).

    Dans ce nouveau schéma, j’ai associé d’abord Article avec Machine grâce à la table Opération (règle de gestion :Un article est réalisé avec plusieurs machines, une machine peut réaliser plusieurs articles.)

    Je fournis également un jeu d’essais avec le même jeu de valeurs que ton fichier xls (sur l'article 3).

    Voilà, il y a sans doute encore des points à débattre (sur les règles de gestion, le schéma, …). Je vais rester dans le coin quelque temps.

Discussions similaires

  1. Mise en place de l affichage de surveillance des machines dans la zone de production
    Par youssef19901990 dans le forum Langages de programmation
    Réponses: 4
    Dernier message: 21/03/2014, 10h48
  2. [AD]Mise en place de Active Directory
    Par guiguisi dans le forum Windows Serveur
    Réponses: 9
    Dernier message: 29/07/2004, 08h50
  3. [C#] Mise en place d'un site multilingue
    Par regbegpower dans le forum ASP.NET
    Réponses: 6
    Dernier message: 19/03/2004, 19h15
  4. mise en place serveur web intranet
    Par gui4593 dans le forum Installation
    Réponses: 7
    Dernier message: 01/01/2004, 18h18
  5. Mise en place d'index....??
    Par liv dans le forum Requêtes
    Réponses: 6
    Dernier message: 18/12/2003, 11h04

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