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

Requêtes et SQL. Discussion :

Transformer un devis en facture [AC-2013]


Sujet :

Requêtes et SQL.

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2015
    Messages : 27
    Points : 17
    Points
    17
    Par défaut Transformer un devis en facture
    bonjour, c'est mon premier post sur ce forum que je trouve super cool, j'espère bien que je suis au bon endroit. j'aimerais transformer mes devis en facture pour cela j'ai quatre tables a savoir :

    tblDevis qui est lié a tblDetailDevis et aussi tblFacture qui est lié a tblDetaiFactDevis, on a tblFacture qui est lié a tblDevis donc je veut qu'en sélectionnant le numéros de devis que je veux transformer en facture tous son detail soit recopier dans la tblDetailFactDevis mais je n'y arrive pas.

    merci bien de vouloir m'aider.

  2. #2
    Membre éprouvé
    Inscrit en
    Août 2008
    Messages
    740
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 740
    Points : 1 045
    Points
    1 045
    Par défaut
    Bonjour,

    Il faut a mon avis passer par 2 requete d'ajout
    - une premiere requete qui cree l'en-tete de facture a partir du devis, le point clef c'est de placer le numero de devis dans un champ de la facture. Cette requete aura le champ [Devis] en parametre (mais il me semble que tu as deja prevu ca)
    - une deuxieme requete (a lancer après la precedente) qui cree les lignes de la facture a partir des lignes de devis, la subtilite est que la source est une jointure entre la table tblDetailDevis et la table tblFacture sur le champ [Devis], qui est d'ailleurs aussi le champ utilise comme parametre. Cette jointure permet de charger le champ [NoFacture] dans chacune des lignes

    Ces 2 requetes peuvent etre lancees après un clic de bouton

    cette solution postule qu'on ne cree qu'une facture par devis

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2015
    Messages : 27
    Points : 17
    Points
    17
    Par défaut transformer un devis en facture
    Salut, merci pour ta réponse rapide, mais c'est ce que j'ai exactement mais le problème que je rencontre est qu'en sélectionnant le même le numéros de devis plusieurs fois les lignes devis aussi sont copier autant de fois. La véritable angoisse c'est que j'utilise les macro de données dans tblDetailFactDevis pour mettre à jour le stock. si ça peut aider j'ajoute en pièce jointes ma BD.

    Merci à toi et très cordialement
    Nom : Capture.PNG
Affichages : 2146
Taille : 73,1 Ko

  4. #4
    Membre éprouvé
    Inscrit en
    Août 2008
    Messages
    740
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 740
    Points : 1 045
    Points
    1 045
    Par défaut
    Ah, effectivement c'est un probleme, ca veut dire que la solution doit passer par une interface utilisateur intermediaire dans laquelle tu selectionne manuellement les lignes de devis, et eventuellement en modifiant la quantite en devis (si tu geres des quantites), avant de les transformer le lignes de facture.
    Pour ca je te conseille 2 tables intermediaire temporaires de en-tete/lignes de devis a facturer, qui n'auront pas besoin d'etre maintenuee, ni gerees dans le modele de donnees (tout est supprime avant chaque nouvelle creation de facture), et puisque tu connais les macro de donnees ca peut se faire de la facon suivante

    TblDevisAFacturer
    -ID
    -Devis
    -Valider (Oui/Non)

    TblDevisAFacturerDetail
    -Devis
    -Article
    -Qte
    -Valider (Oui/Non)

    1) Suppression de tous les records de TblDevisAFacturer et TblDevisAFacturerDetail, et Creation de l'en tete TblDevisAFacturer par saisie du No de devis

    2) Sur l'evenement after Insert de TblDevisAFacturer: creation deslignes TblDevisAFacturerdetail en parcourant les lignes de devis, rapatriant les quantites, mais aussi en soustrayant les quantites des lignes de facture deja emises sous ce devis

    3) Interface utilisateur dans laquelle tu coche [Valider] des lignes a facturer, modifie eventuellement les quantites, puis tu coches [Valider] dans l'entete

    4)Sur l'evenement afterupdate de TblDevisAFacturer (if update("Valider') and Valider=True), tu crees l'en-tete de facture

    5) sur l'evenement afterInsert de Tblfacture, creation des lignes de facture a partir de lignes cochees de TblDevisAFacturerDetail

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2015
    Messages : 27
    Points : 17
    Points
    17
    Par défaut
    bonjour une fois de plus un grand Merci à toi accessisgood, car la déjà grâce à toi je vois une faisabilité. je vais essayer ce que tu viens de poster, ma connaissance sur les macro de données ne sont pas aussi avancé que ça, c'est juste parcourir une table à partir d'une autre table lié et mettre à jour une valeur.
    un exemple :
    pour tblDetailFactDevis et tblProduit qui ont idpro en commun, donc depuis la table tblDetailFactDevis je parcour tblProduit pour modifier des valeurs. j'avous que je ne sait pas tros comment faire si tu pouvais m'eclairé un plus. Et pourquoi mettre une case à cocher sur les deux tables.
    Dès que j'avance un peu je le poste.

    Merci à toi et très cordialement.

  6. #6
    Membre éprouvé
    Inscrit en
    Août 2008
    Messages
    740
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 740
    Points : 1 045
    Points
    1 045
    Par défaut
    Bonjour,

    la case a cocher sur les lignes permet de signaler les lignes a prendre en compte dans la devis, il est possible d'eviter cette case a cocher en faisant en sorte que l'utilisateur saisisse zero dans la qte a facturer, c'est une question d'interface utilisateur, qu'est ce qui est le plus rapide.
    la case a cocher sur l'en-tete permet de lancer la generation de la facture

    D'une maniere generale, quand on commence a utiliser les macro de donnees, on n'a plus besoin de boutons, on utilise des champs a la place

    On n'a pas besoin de scruter la table des produits, seulement la table des lignes de devis et des lignes de facture... a moins que tu ne geres du stock?

    tu peux attacher ta base en PJ?

  7. #7
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2015
    Messages : 27
    Points : 17
    Points
    17
    Par défaut transformer un devis en facture
    pas de souci je le mets pièce jointe, je suis en train de reflechir sur ton post sur mon broullon actu.


    très cordialement.

  8. #8
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2015
    Messages : 27
    Points : 17
    Points
    17
    Par défaut Transformer un devis en facture
    ma bd en pièce jointe
    Fichiers attachés Fichiers attachés

  9. #9
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2015
    Messages : 27
    Points : 17
    Points
    17
    Par défaut Transformer un devis en facture
    bonjour a tous et un grand merci a accessisgood, en fait je n'ai pas changer la structure de mes tables ni ajouter d'autres tables j'ai tout simplement utiliser une requete ajout et les macros de données et mon problème est résolus cependant il y'a un petit qui me fatigue j'aimerais masquer le resultat de ma requete ajout j'utilise une macro ouvrirrequete merci d'avance

    je ne sais pas si c'est à moi de cliquer sur resolu?

  10. #10
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2015
    Messages : 27
    Points : 17
    Points
    17
    Par défaut transformer un devis en facture
    Bonjour à tous, tous est résolu j'ai utiliser la commande macro avertissement =non avant l'excution de la macro et à oui après ensuite j'ai utiliser la commande afficherfenetre à non et houp!!! tout marche

    un grand à tous et très cordialement.

  11. #11
    Membre éprouvé
    Inscrit en
    Août 2008
    Messages
    740
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 740
    Points : 1 045
    Points
    1 045
    Par défaut
    Bonjour,

    je t'ai mis un exemple de traitement en mode macro de donnees
    - les lignes de devis ont des nouveaus champs
    - Facturer (permet de savoir si la ligne est a facturer)
    - QteAFacturer qui peut etre different de la QteDevis
    - le devis a un nouveau champ
    - Facturer qui permet de lancer le process de facturation
    - la Facture devis
    - DernierCree, permet d'identifier la derniere facture cree
    - un identifiant autonumber

    le process est le suivant
    - tu mets a jour le champ QteAFacturer dans les lignes de devis et tu clic sur [Facturer] dans l'en tete de devis
    - sur la commande Apres mise a jour du devis, la macro
    - remet a jour le champ facturer a Non
    - cree une nouvelle facture de devis
    - sur la commande après creation de facture de devis, la macro
    - identifie le champ "dernierCree"
    - scrute les lignes de devis ou la qte a facturer est >0, et met [Facturer]=oui
    - sur la commande après mise a jour de la ligne de devis, la macro
    - remet le champ facturer a non
    - cree la ligne de facture avec les donnes de la ligne de devis et l'information [DernierCree] de l'en-tete

    quelques remarques sur ta base
    - pourquoi creer plusieurs tables de facture: une seule avec un champ [Type] (facture devis, facture vente, facture reservation...) pourrait suffire
    - il vaut mieux creer pour toute les tables, un champ autonumber qui sert d'identifiant et de relation entre les tables
    - tu peux ameliorer la visibilite de la base en leur donnamt des noms du type tbl[Module][NomTable]

    GestAC_2015-12-15BON - Copie.zip

  12. #12
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2015
    Messages : 27
    Points : 17
    Points
    17
    Par défaut
    bonjour, avant tous un grand merci c'est plaisir d’échanger avec toi. La pièce jointe que tu ma mis est corrompu donc j'ai pas vu voir, mais tel qu’expliquez je pense que cela me permettra d'utiliser une et une seule table facture.
    Pourquoi utiliser 3tables factures?
    1-le manque d’expérience car je suis débutant
    2-c'est le fait que j'ai mis une macro après Insertion dans la tblFactDevis qui copie les ligne détail devis que je veux transformer en facture à travers une requête ajout
    3-je ne sais pas comment faire de tel sorte que lorsqu'on sélectionne un element tous les autres soit inactifs (ex : en sélectionnant tblFact1, tblFact2 et tblFact3 soient inactifs)

    N'oublie pas le fichier que tu m'as mis est corrompu

    Merci et très cordialement

  13. #13
    Membre éprouvé
    Inscrit en
    Août 2008
    Messages
    740
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 740
    Points : 1 045
    Points
    1 045
    Par défaut
    Bonjour,

    bizarre, de mon cote je peux dezipper

    Pour ce qui est du triplement de facture, ca risque de te compliquer la vie: deja tu souhaites une table de numerotation unique, ensuite tu auras besoin de faire des sommes de toutes tes factures.
    le mieux c'est une seule table avec un "Type" qui te permette de les distinguer
    Fichiers attachés Fichiers attachés

  14. #14
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2015
    Messages : 27
    Points : 17
    Points
    17
    Par défaut Transformer un devis en facture
    Bonjour, merci de intéressé à mon sujet, je prends note pour ce qui est des remarques, elles sont les bienvenues. oui j'ai pu télécharger le processus est bien sauf que j'aurais voulu que la case à cocher soit sur la tblDevis seule la l'utilisateur ne va pas cocher 20 case et aller cocher sur l'entête s'il y'avait une possibilité avec une requête ou un bouton et même un code vba je prends. encors grand merci à toi


    Très cordialement

  15. #15
    Membre éprouvé
    Inscrit en
    Août 2008
    Messages
    740
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 740
    Points : 1 045
    Points
    1 045
    Par défaut
    la coche sur la ligne de devis est "technique", l'utilisateur ne coche que celle sur la table de devis

  16. #16
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2015
    Messages : 27
    Points : 17
    Points
    17
    Par défaut Transformer un devis en facture
    ah ok donc je vais créer les formulaires pour tester. et je te tiendrai informer Merci et Bonne et Heureuse année 2016 que ce soit plein de santé, de reussite, d’épanouissement.

  17. #17
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2015
    Messages : 27
    Points : 17
    Points
    17
    Par défaut Transformer un devis en facture
    Bonjour, à tous et particulièrement à ACCESSISGOOD, Merci je l'ai bien mis en place et il fonctionne correctement, mon petit souci, bien qu'il y est un champs derniercre, je voudrais que lorsqu'on clique sur facturer et valider la case reste cocher et moi je vais verouillé à l'aide du vba pour que l'utilisateur ait une idée comme quoi il à deja facturer ça.

    Merçi d'avance et très cordialement

  18. #18
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2015
    Messages : 27
    Points : 17
    Points
    17
    Par défaut Transformer un devis en facture
    Bonjour à toutes et à tous, je reviens encore suite aux remarques et suggestions de accessisgood j'ai puis faire ce que je voulais, mais j'ai un problème je voudrais que avant que le devis soit transformer une macro verifie si tblProduit.QteSTK - tblDevis.Qtedev <0 alors la case à cocher du tblDevis soit non cochable un petit message qui s'affiche "stock inferieur"

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Numérotation automatique Devis et Factures
    Par clickandgo dans le forum IHM
    Réponses: 18
    Dernier message: 11/01/2011, 11h33
  2. Faire passer un devis en facture
    Par David1259 dans le forum Modélisation
    Réponses: 5
    Dernier message: 29/03/2009, 08h56
  3. Transformer devis en facture
    Par nanie13 dans le forum Excel
    Réponses: 2
    Dernier message: 26/07/2007, 16h38
  4. Devis : Que facturer pour mon code source ?
    Par GLDavid dans le forum Juridique
    Réponses: 8
    Dernier message: 18/04/2007, 17h26
  5. devis et facture
    Par lisandre dans le forum Emploi
    Réponses: 3
    Dernier message: 08/10/2006, 21h12

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