Dans mon appli facturation, dans la base données, j'ai 2 tables Lignes
Factures et Lignes Factures Temp.
J'ai mis toutes les 2 une clé primaire RéfDétailFacture en NuméroAuto.
Au cours du déroulement du programme, par une requête ajout, j'ajoute
les enregistrements de la table Lignes Factures Temp dans Lignes Factures.
Les champs sont identiques dans les 2 tables.
Les autres champs sont : Numerofacture, N°BL, Codearticle, etc ...
Quand je lance la requête ajout, j'obtiens un message d'erreur de
violation de clé.
Forcément, les champs RéfDétailFacture (qui sont en NuméroAuto) dans
chaque table ne sont pas à la même valeur.
Et en plus, cette appli est destinée à tourner sur un runtime, le jour
où je l'installerai, je ne connaîtrai pas d'avance la valeur
RéfDétailFacture de la table Lignes Factures sur le pc runtime. Il me
sera difficile d'ajuster sa valeur.
2 questions :
- comment synchroniser RéfDétailFacture dans chacune des 2 tables ?
- peut-on s'en passer en utilisant un autre moyen d'utiliser comme une
clé primaire comme numerofacture + Codearticle.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
zOrg2net
Bonjour Gundt,
Si j'ai bien compris tu déverses les enregistrements de la table "Lignes Factures Temp", dans la table "Lignes Factures" ? Dans ce cas, il faut déclarer le champ "RéfDétailFacture" de la table "Lignes Factures" comme type de données numérique Entier long (et non NuméroAuto), et le garder comme clé primaire. Le numéro auto étant créé dans la table temporaire.
zOrg2net 7OuNet
Bonsoir à tous,
Dans mon appli facturation, dans la base données, j'ai 2 tables Lignes Factures et Lignes Factures Temp. J'ai mis toutes les 2 une clé primaire RéfDétailFacture en NuméroAuto.
Au cours du déroulement du programme, par une requête ajout, j'ajoute les enregistrements de la table Lignes Factures Temp dans Lignes Factures.
Les champs sont identiques dans les 2 tables. Les autres champs sont : Numerofacture, N°BL, Codearticle, etc ...
Quand je lance la requête ajout, j'obtiens un message d'erreur de violation de clé. Forcément, les champs RéfDétailFacture (qui sont en NuméroAuto) dans chaque table ne sont pas à la même valeur.
Et en plus, cette appli est destinée à tourner sur un runtime, le jour où je l'installerai, je ne connaîtrai pas d'avance la valeur RéfDétailFacture de la table Lignes Factures sur le pc runtime. Il me sera difficile d'ajuster sa valeur.
2 questions : - comment synchroniser RéfDétailFacture dans chacune des 2 tables ? - peut-on s'en passer en utilisant un autre moyen d'utiliser comme une clé primaire comme numerofacture + Codearticle.
Quelles solutions préconiseriez-vous ?
Merci d'avance.
Gundt
Bonjour Gundt,
Si j'ai bien compris tu déverses les enregistrements de la table "Lignes
Factures Temp", dans la table "Lignes Factures" ?
Dans ce cas, il faut déclarer le champ "RéfDétailFacture" de la table
"Lignes Factures" comme type de données numérique Entier long (et non
NuméroAuto), et le garder comme clé primaire. Le numéro auto étant créé dans
la table temporaire.
zOrg2net
7OuNet
Bonsoir à tous,
Dans mon appli facturation, dans la base données, j'ai 2 tables Lignes
Factures et Lignes Factures Temp.
J'ai mis toutes les 2 une clé primaire RéfDétailFacture en NuméroAuto.
Au cours du déroulement du programme, par une requête ajout, j'ajoute
les enregistrements de la table Lignes Factures Temp dans Lignes Factures.
Les champs sont identiques dans les 2 tables.
Les autres champs sont : Numerofacture, N°BL, Codearticle, etc ...
Quand je lance la requête ajout, j'obtiens un message d'erreur de
violation de clé.
Forcément, les champs RéfDétailFacture (qui sont en NuméroAuto) dans
chaque table ne sont pas à la même valeur.
Et en plus, cette appli est destinée à tourner sur un runtime, le jour
où je l'installerai, je ne connaîtrai pas d'avance la valeur
RéfDétailFacture de la table Lignes Factures sur le pc runtime. Il me
sera difficile d'ajuster sa valeur.
2 questions :
- comment synchroniser RéfDétailFacture dans chacune des 2 tables ?
- peut-on s'en passer en utilisant un autre moyen d'utiliser comme une
clé primaire comme numerofacture + Codearticle.
Si j'ai bien compris tu déverses les enregistrements de la table "Lignes Factures Temp", dans la table "Lignes Factures" ? Dans ce cas, il faut déclarer le champ "RéfDétailFacture" de la table "Lignes Factures" comme type de données numérique Entier long (et non NuméroAuto), et le garder comme clé primaire. Le numéro auto étant créé dans la table temporaire.
zOrg2net 7OuNet
Bonsoir à tous,
Dans mon appli facturation, dans la base données, j'ai 2 tables Lignes Factures et Lignes Factures Temp. J'ai mis toutes les 2 une clé primaire RéfDétailFacture en NuméroAuto.
Au cours du déroulement du programme, par une requête ajout, j'ajoute les enregistrements de la table Lignes Factures Temp dans Lignes Factures.
Les champs sont identiques dans les 2 tables. Les autres champs sont : Numerofacture, N°BL, Codearticle, etc ...
Quand je lance la requête ajout, j'obtiens un message d'erreur de violation de clé. Forcément, les champs RéfDétailFacture (qui sont en NuméroAuto) dans chaque table ne sont pas à la même valeur.
Et en plus, cette appli est destinée à tourner sur un runtime, le jour où je l'installerai, je ne connaîtrai pas d'avance la valeur RéfDétailFacture de la table Lignes Factures sur le pc runtime. Il me sera difficile d'ajuster sa valeur.
2 questions : - comment synchroniser RéfDétailFacture dans chacune des 2 tables ? - peut-on s'en passer en utilisant un autre moyen d'utiliser comme une clé primaire comme numerofacture + Codearticle.
Quelles solutions préconiseriez-vous ?
Merci d'avance.
Gundt
Gundt
Bonjour à tous,
[...]
2 questions : - comment synchroniser RéfDétailFacture dans chacune des 2 tables ? - peut-on s'en passer en utilisant un autre moyen d'utiliser comme une clé primaire comme numerofacture + Codearticle.
Quelles solutions préconiseriez-vous ?
J'ai trouvé comment faire.
Voici ce que j'ai fait : Sur la table lignes factures temp : - j'ai supprimé numéroauto dans RéfDétailFacture et je l'ai mis en numérique entier long non indexé, - j'ai mis les champs suivants en clé primaire : Numfacture, N°BL et codearticle
Sur la table lignes factures, j'ai laissé RéfDétailFacture en numéroauto
Cette fois-ci, la requête fonctionne sans que Access se plaigne.
C'est bien. J'espère que c'est une bonne solution car les index ne sont pas les mêmes. Apparemment, les données se retrouvent bien au bon endroit (N°BL pour le client avec les bons articles qui le concernent).
Gundt
Bonjour à tous,
[...]
2 questions :
- comment synchroniser RéfDétailFacture dans chacune des 2 tables ?
- peut-on s'en passer en utilisant un autre moyen d'utiliser comme une
clé primaire comme numerofacture + Codearticle.
Quelles solutions préconiseriez-vous ?
J'ai trouvé comment faire.
Voici ce que j'ai fait :
Sur la table lignes factures temp :
- j'ai supprimé numéroauto dans RéfDétailFacture et je l'ai mis en
numérique entier long non indexé,
- j'ai mis les champs suivants en clé primaire :
Numfacture, N°BL et codearticle
Sur la table lignes factures,
j'ai laissé RéfDétailFacture en numéroauto
Cette fois-ci, la requête fonctionne sans que Access se plaigne.
C'est bien. J'espère que c'est une bonne solution car les index ne sont
pas les mêmes. Apparemment, les données se retrouvent bien au bon
endroit (N°BL pour le client avec les bons articles qui le concernent).
2 questions : - comment synchroniser RéfDétailFacture dans chacune des 2 tables ? - peut-on s'en passer en utilisant un autre moyen d'utiliser comme une clé primaire comme numerofacture + Codearticle.
Quelles solutions préconiseriez-vous ?
J'ai trouvé comment faire.
Voici ce que j'ai fait : Sur la table lignes factures temp : - j'ai supprimé numéroauto dans RéfDétailFacture et je l'ai mis en numérique entier long non indexé, - j'ai mis les champs suivants en clé primaire : Numfacture, N°BL et codearticle
Sur la table lignes factures, j'ai laissé RéfDétailFacture en numéroauto
Cette fois-ci, la requête fonctionne sans que Access se plaigne.
C'est bien. J'espère que c'est une bonne solution car les index ne sont pas les mêmes. Apparemment, les données se retrouvent bien au bon endroit (N°BL pour le client avec les bons articles qui le concernent).