{Access} état automatique via formulaire

Fermé
gege_p - 21 juil. 2009 à 23:25
 castours - 29 mars 2013 à 22:01
Bonjour,

Je viens de découvrir access, en particulier le 2007 et ce n'est pas facile de l'aide serai la bienvenu. Dans mon travail je dois réaliser des bons de livraison, confirmation de commande etc... via access.

Donc plusieurs tables (avec table produit, client,...)

Je souhaite que dans mon formulaire bon de livraison je saisisse seulement un id client et un id produit (avec les quantité, date,... en plus) qui vont remplir la table bon de livraison et que mon état bon de livraison soit renseigné des informations complémentaires présente dans les tables produit et client (cad description du produit, adresse client, tél client,...) automatiquement.

Car actuellement je dois remplir manuellement ces info pour quelles soient affiché dans mon état, et la je ne vois pas l'intérêt d'access.

Merci aux personnes qui vont m'aider.

22 réponses

Bonjour,

Enfin je suis débloqué, c 'était tout bête mais il fallait le savoir.

Dans propriété, données, Filtrer par réplica-maître : NON

Voila si ça peut servir à d'autre...

Prochaine étape gestion de stock, encore une montagne à franchir.

A bientôt et merci pour votre aide.
1
Jean_Jacques Messages postés 1040 Date d'inscription mercredi 30 avril 2008 Statut Membre Dernière intervention 1 août 2014 112
22 juil. 2009 à 09:06
Bonjour gege_p,

Microsoft propose en téléchargement un tutorial ACCESS. Il s'agit d'une base de gestion commerciale ; elle contient les fonctionnalités que vous recherchez. Elle est librement consultable. C'est une bonne base de référence.



http://www.microsoft.com/downloads/details.aspx?FamilyID=C6661372-8DBE-422B-8676-C632D66C529C&displaylang=en


Cordialement
0
zenon Messages postés 726 Date d'inscription jeudi 30 septembre 2004 Statut Membre Dernière intervention 13 février 2010 180
22 juil. 2009 à 13:14
Bj,

Il est sous Access 2007. Ca va tourner?

Bien à vs,
0
g4br13l Messages postés 344 Date d'inscription dimanche 20 février 2011 Statut Membre Dernière intervention 8 mai 2013 100
27 mars 2013 à 09:05
Bonjour je m'interesse a se post 4 ans après mais cette base que tu parle exciste-t-elle encore ? car ton lien me menne sur la page d'acceuil :/
0
Jean_Jacques Messages postés 1040 Date d'inscription mercredi 30 avril 2008 Statut Membre Dernière intervention 1 août 2014 112
22 juil. 2009 à 13:40
zenon,

D'une manière générale, une version antérieure de ACCESS s'ouvre normalement via une version plus moderne.
A l'ouverture, il se produit une sorte de upgrade. C'est le principe de la compatibilité ascendante.

Quelquefois la conversion n'est pas à 100 %, toutefois, je n'ai encore rien rencontré de bloquant.
Ceci n'interdit pas de prendre des précautions, et de se doter de sauvegardes ... Mais je suis confiant.


Bonne journée
0
Re,

Merci pour les infos, oui il est sous access 2007, je vais regardé ce tutoriel je vous tiens au courant.

Mais n'hésitez pas si vous avez des réponses.

Bonne soirée.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Je viens de regarder la base de gestion que tu m'as indiqué Jean_Jacques. En effet c'est le top, mais difficilement réalisable a mon niveau. Cependant j'ai piqué quelques concept mais ils ne répondent pas vraiment a mon problème.

Est ce que quelqu'un aurait une solution à mon problème ???

Merci d'avance.
0
zenon Messages postés 726 Date d'inscription jeudi 30 septembre 2004 Statut Membre Dernière intervention 13 février 2010 180
22 juil. 2009 à 22:46
Bonsoir,

Je pense malheureusement que tu devras "mettre les mains dans le cambouis".

Je ne crois pas que tu trouveras quelqu'un pour concevoir toute une application... De plus, si tu veux maîtriser ta base, la seule manière est d'apprendre à la construire.

Ceci dit, pour des questions plus "focales", pas de problème...

C'est vrai que la base exemple proposée par Jean-Pierre est très complexe en apparence. Tu pourrais peut-être commencer par t'inspirer de la structure des tables et des relations: dans le domaine commercial, c'est toujours un peu le même principe.

Si tu éprouves des difficultés pour les formulaires ou les états, reviens avec des questions plus précises.

Bon courage!
0
Bonsoir zenon,

Je ne veux pas que quelqu'un réalise ma bd à ma place, ma bd est déjà en place il me manque juste les connaissances pour réaliser de la programmation sur access.

Je vais essayer de préciser mon problème:

Actuellement mon fichier peut générer des états "bon de livraison", mais celui ci n'est pas pratique et est source d'erreur à la saisie des BL.
En effet quand je saisie un BL (via le formulaire BL) je dois mentionner ligne par ligne (grâce à une liste déroulante) les infos que je souhaite afficher dans l'état.

Mon souhait est de saisir dans le formulaire seulement un code client (qui sera l'id client) présent actuellement dans ma table client et que les infos de ce client (adresse, tél, fax,...) soit réenregistré dans la table bon de livraison pour éditer l'état BL.

Avez vous une solution a ce problème? ou une autre méthode pour afficher les infos client dans l'état?

Merci beaucoup.
0
Re,

Voici mes relations:

- Table clients:
code client
société
nom
prénom
adresse
...

- Table bon de livraison:
N° bon de livraison
code client
date commande
date livraison
montant total ht
...

-Table lignes BL:
N° lignes
N° bon de livraison
Référence
Désignation
quantité
prix unitaire
montant ligne bl

- Table produit:
Référence
désignation
prix unitaire

Elles sont toutes reliées par un champ (code client, N° bon de livraison, référence).

Merci pour votre aide.
0
zenon Messages postés 726 Date d'inscription jeudi 30 septembre 2004 Statut Membre Dernière intervention 13 février 2010 180
23 juil. 2009 à 00:19
Bonsoir,


Je me demande si tu n'as pas une table "en trop" (pour une fois)

Je ne suis pas sûr que tu aies besoin d'une table ligne bon de livraison.

La date et le N°client permettent probablement d'extraire ce dont tu as besoin dans la table bon de livraison.

Si on regarde la création d'un état "bon de livraison", si tu as:

T_Clients (N°Client,Adresse...)
T_Produits(N°Produit,DésignationProduit,PrixUnitaire,....)
T_Ventes(N°Vente,N°Produit,N°Client,Quantité,DateCommande,...)

On peut fonder l'état sur une requête du type:

SELECT T_Clients.*, T_Produits.*, T_Ventes.*, T_Clients.N°Client, T_Ventes.DateVente
FROM T_Produits INNER JOIN (T_Clients INNER JOIN T_Ventes ON T_Clients.N°Client = T_Ventes.N°Client) ON T_Produits.N°Produit = T_Ventes.N°Produit
WHERE (((T_Clients.N°Client)=FormulaireActif) AND ((T_Ventes.DateVente)=Date()));

Ensuite les calculs peuvent être faits directement dans l'état.
0
Bonsoir,

Je viens de rentrer ta formule adapter a ma situation.

Une boite de dialogue s'ouvre lors de l'affichage de la requête me disant que j'ai une "erreur de syntaxe (opérateur absent) dans l'expression "Clients revendeurs.Code client".

J'ai pourtant rentré la formule en respectant bien le nom de mes tables et ...

Merci d'avance pour votre aide.
0
zenon Messages postés 726 Date d'inscription jeudi 30 septembre 2004 Statut Membre Dernière intervention 13 février 2010 180
23 juil. 2009 à 22:01
C'est difficile de s'imaginer hors contexte...

Peut-être devrais-tu essayer de mettre [Clients revendeurs].[Code client]

Access ne reconnait pas automatiquement les champs s'il y a des espaces.
0
Re,

La formule est bonne maintenant c'était bien les [] qu'ils fallaient.

Mais maintenant quand j'ouvre la reqête il me demande:
- une valeur de paramètre Clients revendeurs.Code client
et
- une valeur de paramètre formulaire actif

Que dois je mettre pour que la requête fonctionne?

Merci pour l'aide.
0
zenon Messages postés 726 Date d'inscription jeudi 30 septembre 2004 Statut Membre Dernière intervention 13 février 2010 180
23 juil. 2009 à 22:57
Là aussi c'est difficile d'imaginer.

Moi je partais de l'idée que tu allais ouvrir l'état à partir d'un formulaire.

Dans ce dernier, on aurait trouvé le N°client (auquel est remise la facture) et les références des produits vendus.

Il faudrait alors remplacer "formulaire actif" par... le nom du formulaire actif à partir duquel tu ouvres l'état. Ca marche aussi si actuellement tu ne veux exécuter que la requête.

Je ne peux pas deviner le nom que tu as donné à ce formulaire. Si tu es en phase de test, tu peux entrer manuellement un N°client pour vérifier.

En principe, pour faire référence au formulaire actif, son nom suffit, ou alors Me!NomFormulaire (le vrai) sinon la référence complète: Forms!NomFormulaire!N°Client
0
C'est bon sa fonctionne. J'ai plus qu'a l'adapté à ma situation.

Merci de ton aide, j'aurais peut être besoin de toi plus tard.

Bonne soirée.
0
Comme je te l'ai dit j'ai besoin d'aide. Désolé.

C'est génial le programme que tu m'a dit mais il ne correspond pas totalement a mes attentes.

Du coup je vais reformuler mon souhait:

Lorsque je créé un bon de livraison je renseigne ma table bon de livraison avec un numéro de bon de livraison , 2 code client (un pour l'adresse de livraison, un autre pour l'adresse de facturation), date de livraison, date de commande.
Puis un sous formulaire "Lignes BL" qui est le détails du bon : référence,quantité,remise.

Je voudrait créer un état qui puisse afficher les adresses correspondante des clients (livraison et facturation), grâce aux code client sélectionné, ainsi que la désignation et le prix des produits sélectionné aussi grâce à la référence des produits. Ce sont des infos qui compléteront mon BL, en plus de ce que j'ai rempli dans la table Bon de livraison et Lignes BL. D'ailleur le prix pourra mettre utile pour effectué les opérations de calculs (montant ht, montant total ht,...) via l'état.

J'éspère que mon explication est assez claire.

Merci d'avance pour votre aide.
0
zenon Messages postés 726 Date d'inscription jeudi 30 septembre 2004 Statut Membre Dernière intervention 13 février 2010 180
24 juil. 2009 à 19:03
Pour créer un état basé sur plusieurs tables, il faut que tes tables soient liées.
A priori, je comprends qu'il y a une relation entre ta table bon de commande et ta table clients.
En revanche, je ne vois pas comment tu relies les produits et le bon de commande, mais peut-être les remplis-tu manuellement.

Pour créer un état avec les infos d'adresses clients, tu as deux solutions: fonder l'état sur une requête reprenant les différentes tables ou créer une sous état (le mieux, je pense)

Les sous-états fonctionnent de la même manière que les sous-formulaires. Si tu mets le N°client dans l'état, tu peux afficher le sous état correspondant avec les infos champs père et fils.
0
Bonsoir,

Ok je sais faire un sous formulaire, mais par contre je viens d'essayer de faire un sous-état et je n'arrive pas à trouver les champs pères et fils.

Y'a t'il une condition particulière pour créer des sous états?
(en autre afficher "les champs pères et fils")

Merci d'avance.
0
Bonjour, tout bien réfléchi je vais essayer d'imprimer mes bons de livraison via le formulaire sa sera certainement plus simple mais voila :

Je viens de créer un formulaire avec sous formulaire pour réaliser des bons de livraison. Les deux fonctionnent à merveille séparément et même ensemble.

Le problème survient quand je lie les deux formulaires avec champ père et fils (afin d'afficher seulement le détail des bons de livraison par BL: référence, designation, prix,...).

En effet avant qu'ils soient liés je pouvais remplir le sous formulaire en renseignant la référence souhaité via liste déroulante et cela remplissait automatiquement les cases désignation, prix...

Une fois lié je ne peux plus renseigné ma case référence cela me dit :" Le champ ne peut pas être modifié, il est lié au champ inconnu [Lignes BL].référence". (qui est l'endroit de stockage de la valeur de la liste déroulante).

Avez vous une solution ?

Merci d'avance pour votre aide.
0
Jean_Jacques Messages postés 1040 Date d'inscription mercredi 30 avril 2008 Statut Membre Dernière intervention 1 août 2014 112
28 juil. 2009 à 21:12
gege_p,

Il faut repartir du bon pied.
Voici un fichier à télécharger qui provient des exemples fournis par défaut sous ACCESS 2000.
Pour info chemin sous ACCES 2000 : Fichier/Nouvelle base de données/Onglet base de données
Nom : Traitement des commandes (Tout un programme si j'osais le jeu de mot).

http://www.cijoint.fr/cjlink.php?file=cj200907/cijrdGJXuL.zip

Northwind était peut-être trop ambitieux pour un début.

Au boulot

Cordialement
0
Jean_Jacques

Merci de ta réponse, j'ai télécharger le fichier qui me sera très utile pour finaliser ma BD.

Mais voilà, ma base de donnée est bien avancée et je ne compte pas tout refaire (sauf si je n'ai plus le choix) il me faudrait juste la solution au problème bien ciblé qui me bloque actuellement pour finir mon projet.

Je suis certain que la solution est toute bête.

Merci d'avance pour votre aide si précieuse.
0
Jean_Jacques Messages postés 1040 Date d'inscription mercredi 30 avril 2008 Statut Membre Dernière intervention 1 août 2014 112
29 juil. 2009 à 06:23
Bonjour gege_p,


Désolé, je ne dispose que de la version 2000 de ACCESS. Je n'ai donc même pas la possibilité de consulter
votre travail.
Le plus simple est de "Pomper" les solutions présentes dans 'Northwind' ou 'Traitement des commandes' pour les adapter à votre contexte.


Cordialement
0
Jean_Jacques Messages postés 1040 Date d'inscription mercredi 30 avril 2008 Statut Membre Dernière intervention 1 août 2014 112
30 juil. 2009 à 19:14
gege_p,


Jusqu'à présent je n'ai pas eu affaire à ce paramètre. Merci pour le retour d'information.


A+
0