Pb d'ajout d'enregistrements au formulaire

lili20 -  
 lili20 -
Bonjour à tous,

j'ai crée un formulaire avec l'assistant Access à partir de 3 tables:

Patient(Num_de_dossier, Nom, Prénom, date_de_naissance,...,#id_prog(clé étrangère provenant de la table Programme),#id_service(clé étrangère provenant de la table Service))
Programme(Id_prog, Nom_Prog)
Service(Id_service, Type_service)

Ce formulaire est caractérisé par les champs suivants: Num_de_dossier, Nom, Prénom, date_de_naissance,...,Id_prog,Nom_prog, Id_service, Type_service.

Mon problème est que j'arrive pas à entrer les enregistrements au formulaire(mode formulaire).
J'ai eu comme message:" Impossible d'ajouter des enregistrements. La clé de jointure de la table «tblPatient» n'apparait pas dans l'ensemble d'enregistrements".
J'ai essayé de créer une requête qui me renseigne sur les champs désirés et ainsi d'utiliser l'assistant pour créer le formulaire mais j'ai eu le même problème au moment de la saisie des enregistrements.

S'il vous plait, est-ce que quelqu'un peut m'aider ?
Merci d'avance.

Lili

65 réponses

Résumé de la discussion

Le problème porte sur un formulaire Access lié à trois tables (Patient, Programme, Service) où l’entrée d’enregistrements échoue avec l’erreur « La clé de jointure n’apparaît pas dans l’ensemble d’enregistrements ». Des essais avec une requête et l’assistant de formulaire renvoient le même blocage; l’origine évoquée est une formule de total des heures pouvant échouer lorsque Deb et Fin sont vides, avec une correction qui ajoute le calcul de l’âge sur le formulaire. Le débat s’oriente ensuite sur l’utilité d’une requête d’ajout et sur le schéma du formulaire, notamment l’emploi de sous-formulaires et de relations un-à-plusieurs, autour d’une table Période et des éléments du formulaire. Des conseils soulignent l’importance d’aligner les sous-formulaires et les requêtes liées à tblPeriode, et d’intégrer les heures nuit/jour/soir dans la requête de base. La discussion évolue vers des besoins plus avancés, visant le calcul de durées et d’indicateurs par période pour chaque mesure, ce qui implique une architecture de base plus claire et des calculs statistiques.

Généré automatiquement par IA
sur la base des meilleures réponses
Le Pingou Messages postés 12713 Date d'inscription   Statut Contributeur Dernière intervention   1 467
 
Bonjour,
Oui, mais dans quel formulaire .....?
Et pourquoi un identifiant dans la table [tblUsager] puisque cette table est déjà en relation via la [tblUsagerMesureDeRemplacement] donc pas besoin d'un doublon...?
0
lili20
 
reslt,

Oui, c vrai je l'ai pas vu la relation. j'enlèverai cet identifiant que je viens d'ajouter.

Et pour les 5 cases à cocher, j'utiliserai juste la table [tblMesureDeRemplacement] en utilisant l'assistant.

Le truc c'est que je veux toutes les informations sur le même formulaire.

De plus, j'aurais pas besoin de l'identifiant de la Mesure de remplacement dans le formulaire.

Merci

lili
0
Le Pingou Messages postés 12713 Date d'inscription   Statut Contributeur Dernière intervention   1 467
 
Bonjour,
Merci pour les informations.
Si vous mettez tout sur le même formulaire alors pourquoi créer toutes les tables ?
Bizzare votre projet, enfin c'est le votre.
Bon travail.
0
lili20
 
Bonjour,

Le lien ci dessous montre la version papier du formulaire
https://www.cjoint.com/?gsxbVZsH8j

A votre avis, quelle est la meilleure façon de l'implémenter.
Est ce avec une seule table, ca donnerai un bon résultat semblable à celui de la version papier.

Merci
lili
0

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

Posez votre question
Le Pingou Messages postés 12713 Date d'inscription   Statut Contributeur Dernière intervention   1 467
 
Bonjour,
J'ai regardé votre formulaire.
Oui c'est une manière de la réaliser avec une seule table et c'est aussi possible de le réaliser avec Excel .
Ce qui me rend perplexe c'est la base que vous avez présentée.
0
lili20
 
Merci Pingou
0
lili20
 
Bonjour,

Je voudrais savoir comment calculer sous Access les durées suivantes étant donnée qu'on a une date de début et une date de cession (date de fin):

- Durée de 8h et 16h
- Durée de 16h et 24h
- Durée de 24h et 8h

Voici un exemple
HEURE DE DÉBUT HEURE DE CESSION Durée de 8h et 16h Durée de 16h et 24h Durée de 24h à 18h
6h 11h30 3h30 0h00 2h

voici ci dessous le lien
https://www.cjoint.com/?hcwWbai8to

Plus précisément, dans le formulaire frmDateTabulaire je voudrais avoir les valeurs des 3 champs suivants: Durée de 8h et 16h Durée de 16h et 24h Durée de 24h à 18h

Merci bcp

lili20
0
Le Pingou Messages postés 12713 Date d'inscription   Statut Contributeur Dernière intervention   1 467
 
Bonjour lili20,
Mettre un exemple de calcul serait très profitable...!
0
lili20
 
Bonjour Pingou,

Voici un exemple
HEURE_DE_DÉBUT HEURE_DE_CESSION Durée_de 8h et 16h Durée_de 16h et 24h Durée_de 24h à 8h
6h 11h30 3h30(=8hà1130) 0h00 2h(=6hà8h)

Merci
0
lili20
 
Resalut

Voici un exemple
HEURE_DE_DÉBUT 6h
HEURE_DE_CESSION 11h30

Les durées que nous voulons calculer sont:

Durée entre 24h à 8h: 2h(= 6h à 8h)
Durée entre 8h et 16h : 3h30(= 8h à 11h30)
Durée entre 16h et 24h: 0h00



Merci

lili20
0
lili20
 
Reslt

Voici un exemple
HEURE_DE_DÉBUT 6h
HEURE_DE_CESSION 11h30

Les durées que nous voulons calculer sont
Durée_de 8h et 16h 3h30(=8hà1130)
Durée_de 16h et 24h 0h00
Durée_de 24h à 8h 2h(=6hà8h)

Merci

lili
0
Le Pingou Messages postés 12713 Date d'inscription   Statut Contributeur Dernière intervention   1 467
 
Bonjour lili20,
Jolie case tête votre demande ....
Petite question : entre le début et la fin d'une session le maximum est de 24 heures ... Oui / Non !
0
lili20
 
Bonjour Pingou,,

oui c bien ça, en fait c dans la même journée les deux durées: l'heure de début et l'heure de cession(fin)

donc le maximum est 24h.

Merci bcp
lili20
0
Le Pingou Messages postés 12713 Date d'inscription   Statut Contributeur Dernière intervention   1 467
 
Bonsoir lili20,
Enfin voici mon exemple; https://www.cjoint.com/?hfxytDM82i
Vous essayez le formulaire [F­_test_Repart_heure] dont la source de données sont basées sur la requête [R_test_Repart_heure].
0
lili20
 
Merci Pingou,

Tu m'aide énormément.

J'ai une autre question. Dans le même formulaire, j'ai pas considéré de clé primaire dans la table date.

C'est parce que pour un usager(identifié par son num de dossier) on peut lui appliquer plusieurs mesures qui ont des durées de début et de fin qui peuvent être différente. Est ce correct? Le Truc c 'est que je veux afficher toutes les meusures qui ont été appliquées à un usager sur le même formulaire.

Plus précisement,

num de dossier 11 11
mesure1 aa
mesure2 bb
mesure3
date dapplication d1 d1
heure de début 10h 11h
heure de fin 13h 13h
heure jour
heure soir
heure nuit

Quelle est la meilleure facon de procéder pr spécifier une clé primaire?

Je te remercie bcp Pingou
lili
0
Le Pingou Messages postés 12713 Date d'inscription   Statut Contributeur Dernière intervention   1 467
 
Bonjour lili20,
Je me base sur votre dernière base de données [lili20_com_Formulaire_usager_date] et voici ma réponse.

En principe il faut une clef primaire dans la table [tblUsager] sur le champ [Numéro de dossier] ce qui est correcte.
Il n’est pas nécessaire de créer une clef primaire dans la table [tblDate]. Si vous voulez absolument en avoir une, il faut ajouter un champ supplémentaire de type numéro automatique !

Par contre mettre une relation, une à plusieurs, entre [tblUsager] et [tblDate] sur le champ [Numéro de dossier].
0
lili20
 
Ok Pingou, je vais mettre une relation un à plusieurs entre les 2 tables.

Encore merci pour ton aide.
lili20
0
Le Pingou Messages postés 12713 Date d'inscription   Statut Contributeur Dernière intervention   1 467
 
Merci lili20.
Juste au passage, comme le [Numéro de dossier] est unique, je vous suggère pour ce champ du formulaire [frmDateTabulaire] de le mette en zone de liste déroulante qui sera alimenté par les valeurs présentent dans la table [tblUsager]; se qui évitera de choisir des numéros existants.

Salutations.
Jean-Pierre
0
lili20
 
Bonjour Pingou,

Je m'excuse pour le dérangement.
Je voudrais savoir le nombre maximal qu'une liste déroulante peut contenir.

Merci
Lili20
0
lili20
 
Bonne idée Pingou .
Merci
0
Le Pingou Messages postés 12713 Date d'inscription   Statut Contributeur Dernière intervention   1 467
 
Désolé lili20, je ne le sais pas.
0
lili20
 
Bonjour Pingou,

svp je me demandais comment modifier ton formulaire [F_test_Repart_heure] ou le formulaire [frmDateTabulaire] pour qu'il contiendrai toutes les informations relatives à un patient donné à différentes dates.
Je m'explique:

Pour un patient donné, je voudrais avoir toutes les dates d'application de chaque mesure utilisée et non pas de remplir un nouveau formulaire à chaque fois que j'ai une nouvelle date ou une autre mesure qui à été appliquée ayant une heure de début et une heure de fin différent.

Plus précisément, je voudrais qu'il ait la forme du formulaire [frmDateTabulaire] , càd un formulaire pour chaque patient.

Merci
Lili20
0
Le Pingou Messages postés 12713 Date d'inscription   Statut Contributeur Dernière intervention   1 467
 
Bonjour lili20,
Voici une idée, un formulaire avec l'usager qui contient un sous formulaire pour date.
voir exemple sous [F_Usager_Date]. https://www.cjoint.com/?hhwW1BxKbI

Avez-vous réalisé un plan de se que vous désirez pour votre base ?
0
lili20
 
Merci Pingou,

En fait votre nouveau formulaire correspond à ma demande.
Qu'est ce que vous voulez dire par "Avez-vous réalisé un plan de se que vous désirez pour votre base ?".

Lili20
0