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

IHM Discussion :

calcul dans un formulaire avec des champs venant d'autres formulaires


Sujet :

IHM

  1. #1
    Débutant
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 167
    Points : 39
    Points
    39
    Par défaut calcul dans un formulaire avec des champs venant d'autres formulaires
    Bonjour la compagnie!!

    J'ai un p'tit souci.
    J'ai une base contenant :
    - une table client (avec un champ MontantHT),
    - une table devis (avec un champ Montant),
    - une table Montants (avec un champ Montant Total).

    Chaque table contient un champ NomClient qui me fait les liens entre les tables. Les relations entre tables sont bonnes.

    J'ai un formulaire clients, chacun d'entre eux possède une valeur dans le champ MontantHT s'il a un contrat. S'il n'a pas de contrat le champ MontantHT est vide.
    J'ai un sous formulaire devis, qui, lorsque j'ai choisi l'enregistrement du formulaire client que je souhaite, m'affiche donc uniquement les devis du client sélectionné s'il en a, avec la valeur du devis dans le champ Montant.
    J'ai un autre sous formulaire Montants, qui, lorsque j'ai choisi l'enregistrement du formulaire client que je souhaite, je voudrais qu'il m'affiche dans le champ Montant Total, le résultat de l'addition des champs soulignés.

    J'ai bien essayé des requêtes, des expressions SQL, des macros, mais je n'ai pas le résultat escompté...

    Là où je bloque, c'est que pour un client donné, il peut ne pas avoir de contrat (donc pas de MontantHT) et sans aucun devis au jour J, puis peut avoir 4 devis a J + 20, il peut s'il a un contrat, ne pas avoir de devis; donc le calcul ne sera peut être jamais le même pour un client au cours du temps.

    Je remercie d'avance ceux qui m'aideront

    pascal913

  2. #2
    Membre du Club Avatar de Boubker_023
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2007
    Messages : 61
    Points : 65
    Points
    65
    Par défaut Calculs sur formulaires et ss formulaires
    Salut pascal913. Désolé de te dire que j'ai lu et relu ta présentation sans arriver à bien comprendre ton problème. Etant aussi financier de formation, j'ai du mal à comprendre déjà la structure de ta base de donnée et les objectifs recherchés. à quoi doivent servir tes tables déjà: assurer un suivi clients, devis, contrats, facturations... Si c'est le cas, envoie moi déjà tes tables pour essayer d'y voir clair avant de passer aux calculs au niveau formulaires et répondre à tes besoins
    A +

  3. #3
    Débutant
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 167
    Points : 39
    Points
    39
    Par défaut
    Merci Boubker_023 de m'avoir répondu pour m'aider.

    Ma base a pour but de gérer le SAV.

    la table clients contient des enregistrements des clients qui ont un contrat avec nous et d'autres enregistrements de clients qui n'en n'ont pas. Il y a un champ MontantHT qui représente la valeur du contrat qu'un client a signé avec nous. Ce champ peut être vide si le client n'a pas de contrat.

    la table fiche sav contient les enregistrements des clients qui ont eu besoin d'une intervention. Certains enregistrements concernent des clients qui ont un contrat et d'autres non.

    la table devis contient les enregistrements de clients qui nous ont demandé un service ou une réparation ou une intervention ou autre. Il y a un champ Montant qui définit la valeur du devis.
    Certains enregistrements concernent des clients qui ont un contrat mais si ce qu'il nous demande ne fait pas partit du contrat alors on leur fait un devis. Certains enregistrements concernent des clients qui n'ont pas de contrat, donc tout ce qu'il nous demande, on leur fait des devis.

    la table montant possède deux champs. un champ NomClient et un champ MontantTotal. Je voudrais donc, qu'à chaque enregistrement qui contient forcément un client (tout client confondu : avec contrat ou non), que le champ MontantTotal m'additionne la valeur du contrat du client s'il en a un, la valeur de chaque devis s'il en a.

    voila tous les cas possibles de clients :
    - un client qui possède un contrat , sans devis
    donc MontantTotal = MontantHT
    - un client qui possède un contrat , avec un ou plusieurs devis
    donc MontantTotal = MontantHT+Montant1 ou Montant1+Montant n....
    - un client qui n'a pas de contrat , avec un ou plusieurs devis
    donc MontantTotal = Montant1 ou Montant1+Montant n....

    La finalité de ma question est donc de connaitre pour chaque client, les sommes qu'ils nous ont déboursé sur l'année par exemple pour connaître les bénéfices.

    pascal913

  4. #4
    Débutant
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 167
    Points : 39
    Points
    39
    Par défaut
    Bonjour,

    quelqu'un peut-il me mettre sur la voie ?

    merci beaucoup

    pascal913

  5. #5
    Membre du Club Avatar de Boubker_023
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2007
    Messages : 61
    Points : 65
    Points
    65
    Par défaut Extraction de données à partir de +eurs tables
    Bonjour Pascal913
    Désolé d'avoir tardé à enchaîner mes prédispositions.
    Je pense que ton problème peut être réglé rapidement ss conditions. Je récapitule:
    * je propose que ta table "Clients" ne contienne que des info sur tes clients genre NomClient, Adresse, Phone, Contact etc...
    * Cette table doit avoir une clé primaire qui serait la RéfClient que tu définiras comme NuméroAuto
    * je suggrère aussi que tu rajoutes une table supplémentaire, au même titre que tu as opté pour une table Devis à part, qui contiendrait toutes les infos sur les clients qui ont des contrats; de cette table devraient être extraits les MontantsHT dont tu aura besoin
    * tes trois tables (chacune ayant sa propre clé primaire), Clients, Contrats et Devis doivent être liées par une même clé qui est en fait la clé primaire de la table clients: RéfClient
    (voir sur le forum comment lier les tables)
    * une fois cette phase achevée, il ne te reste plus qu'a faire une requête sur la base des trois tables qui te listera les info dont tu as besoin: NomClient, Montants des contrats, Montants des devis, Totaux...
    * Enfin, à partir de cette requête tu pourras créer des Etats de suivi
    Je reste à ton écoute
    Bon courage

  6. #6
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Points : 8 489
    Points
    8 489
    Par défaut


    Je rejoins Boubker_023 sur la réorganisation des tables. A ce propos, je te conseille la lecture de 2 tutos très importants :

    La conception
    Les relations et les jointures

    Bonne lecture.

  7. #7
    Débutant
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 167
    Points : 39
    Points
    39
    Par défaut
    Merci Boubker_023, mais mes tables sont toutes liées, je pense que leurs relations sont bonnes... (je l'espère), mais mon problème réside plutôt dans la création d'une requête qui me permettrait de faire l'addition.

    Merci Jeannot45 mais j'avais déjà lu ces pages-là, et bien d'autres encore...malheureusement. Malheureusement parce que même dans les parties de requêtes, de formulaires et même de VB, je n'ai pas réussi à trouver mon bonheur. J'ai même regardé sur d'autres sites mais j'ai l'impression que ce que je veux faire, n'a encore jamais été fait, c'est à croire!
    Je suis désespéré

    Si quelqu'un a une idée sur cette requête ou autre, je suis preneur!

    pascal913

  8. #8
    Membre du Club Avatar de Boubker_023
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2007
    Messages : 61
    Points : 65
    Points
    65
    Par défaut
    Salut Pascal913
    Tout participant à ce forum devrait s'interdire le mot "désespoir" car bcp de gens sont à l'écoute d'autres et engagées à aider pour trouver solution à tt problème pour le plaisir de s'entraider.
    Depuis mon dernier message, je me suis posé quelques questions sur la structure de ta base. Comme cela semble urgent, je te demande de poster ta base de données en la vidant dans le cas où elle contiendrait des données professionnelles. Je te répondrai rapidement avec une solution qui ne serait peut être pas la meilleure, mais au mois ca serait un point de départ.
    A +

  9. #9
    Débutant
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 167
    Points : 39
    Points
    39
    Par défaut
    Veuillez trouver ci-joint ma base dorsale vide, pour vous aider à comprendre ma manière de faire...

    J'espère que ça vous aidera.

    Merci beaucoup

    pascal913
    Fichiers attachés Fichiers attachés

  10. #10
    Membre du Club Avatar de Boubker_023
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2007
    Messages : 61
    Points : 65
    Points
    65
    Par défaut Projet
    Salut Pascal913
    Comme promis, je t'envoie un projet de structure de ta BD.
    * concernant les tables, tu verras que la T_Clients contient les info sur tes clients
    * une seule T_Affaires contient les opérations en cours (Contrats ou Devis). la nature de tes opérations est à selectionner dans une liste déroulante qui propose par défaut Contrat ou Devis
    * tes autres tables peuvent être gardées mais il faudra les lier avec ta table client avec sa nouvelle clé: la Réf Client et non NomClient comme tu avais fait
    * tu as trois requêtes de construites pour extraire les info Contrats ou Devis ou Tous
    * tu as aussi des formulaires qui vont te permettre de rentrer des données dasn tes tables (Clients, Contrats et Devis)
    * enfin tu as un Etat de synthèse qui t'affiches toutes les opérations conclues avec chacun de tes clients avec nature (Contrat ou Devis), une totalisation par client et une totalisation générale.

    Tu as donc le loisir soit de compléter et adapter le projet que je t'envoie, soit de t'y inspirer pour parfaire ta propre base. Alors bon courage et renvoie un signal quelque soit la vitesse de ta progression
    A +

  11. #11
    Débutant
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 167
    Points : 39
    Points
    39
    Par défaut
    merci beaucoup pour avoir passé autant de temps sur mon problème, c'est très gentil de ta part (aussi tard! à 22h30, tu fais des heures supp!!!!).

    Je suis débordé, je viens de voir ton message à l'instant mais j'ai beaucoup de choses à faire et je suis très souvent en déplacement donc je ne pourrai pas vous donner de réponse quant à l'avancement des travaux avant demain, là, je m'en vais encore jusqu'à ce soir... voilà, encore merci et à demain peut-être, je l'espère.

    pascal913

  12. #12
    Débutant
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 167
    Points : 39
    Points
    39
    Par défaut
    bonjour!

    depuis mon dernier post, je reviens sur le forum.
    Ton Etat en guise de synthèse c'est exactement ce que je veux. Le souci est que je voudrais ré-utiliser cet outil mais en conservant ma base telle quelle est, mais je n'y arrive pas, je me suis aussi inspiré de tes requêtes.

    Est-il possible de réutiliser ton Etat mais avec ma propre base?

    merci

    pascal913

  13. #13
    Membre du Club Avatar de Boubker_023
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2007
    Messages : 61
    Points : 65
    Points
    65
    Par défaut
    Salut pascal913
    Je te renvoie ta propre BDD avec les modif suivantes:
    * table Devis retirée de la circulation
    * une seule table Affaires regroupe et tes Contrats et tes Devis
    * Une table Clients avec les info qu'il faut (ou à compléter) mais sans aucune info relative aux contrats
    * relations entre tables établies
    * requêtes et Etat de synthèse
    Bon courage et à bientôt

  14. #14
    Débutant
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 167
    Points : 39
    Points
    39
    Par défaut
    ok merci

Discussions similaires

  1. Réponses: 2
    Dernier message: 05/07/2010, 11h23
  2. soumettre un formulaire avec des champs vides
    Par pesti dans le forum GWT et Vaadin
    Réponses: 11
    Dernier message: 17/03/2009, 15h04
  3. Critères avec opérateurs dans une requête avec des champs calculés
    Par lmollard dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 11/05/2008, 18h53
  4. Réponses: 11
    Dernier message: 18/10/2007, 12h49
  5. formulaire avec des champs multiples
    Par don'de dans le forum Struts 1
    Réponses: 13
    Dernier message: 16/02/2007, 09h42

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