# Dotnet > Gnral Dotnet > Dveloppement Office System > InfoPath >  infopath vs Access

## Geishy

bonjour !

J'utilise InfoPath depuis peu et je le trouve trs compliqu, mais j'apprends et je trouve qu'une fois matris, il sera trs utile.

Prsentement, je fais un formulaire pour "valider notre produit" Donc, j'ai construit une base de donnes Access, il y a une table "pre" et plusieurs tables "fils" pour chacun des documents  vrifi avant la validation finale.

Voil que j'ai fais mes liens entre la table "pre" et les tables "fils" de un  plusieurs. J'ai mis la table "pre" comme table "repeating section" dans Infopath et j'intgre mes tables "fils" dans cette table en les mettant "repeating table", jusque l, ca fonctionne trs bien. Mon problme surgit lorsque je veux faire un "publish" de ce formulaire pour qu'il mette  jour la base de donne Access. C'est alors qu'il me dit:

[0x80004005][Microsoft JET Database Engine] The changes you requested to the table were not successful because they would create duplicate values in the index, primary key, or relationship. Change the data in the field or fields that contain duplicate data, remove the index, or redefine the index to permit duplicate entries and try again.

Excusez-moi, mon logiciel est en anglais, j'espre que a ne drange pas trop?  

Alors je ne sais pas c'Est quoi le problme.. qu'en pensez-vous? En passant, si vous pouvez m'aider sans passer par du code, a m'arrangerait! je ne suis pas programmeur du tout !

----------


## fraoustin

je ne connais pas ton produit mais l'erreur est claire:
 tu insres dans une table possdant une pk  (un champ unique) plusieurs lignes ayant une valeur unique pour ce champ pk.
un exemple tu as une table Acteur possdant un champ id et un champ nom.
Et tu fais un


```

```

et bien lors de l'insre de ta deuxime ligne une erreur de pk est gnr alors que les lignes suivantes fonctionnent


```

```

----------


## Geishy

Je ne comprends malheureusement pas tellement ce que tu essaies de m'expliquer fraoustin  ::cry::  

Mais tout ce que je sais, c'est que j'ai dj fait une base de donnes Access qui avait une table "pre" relier avec une table "fils" et que a fonctionnait trs bien dans InfoPath.

Le problme prsentement, c'est que j'essai de relier plusieurs talbes "fils"  ma table "pre" et c'est ce qui a l'air de causer problme...  Ma table "Pre" a un champ clef primaire qui est relier avec toutes les autres tables "fils" ayant le mme champ mais qui ne sont pas clef primaire..

Pourquoi a fonctionnait avec une seule table "fils" et que maintenant que j'essai d'en ajouter plusieurs, a ne fonctionne plus?

----------


## virgul

Salut,

dit t'a reprsent ta primary key dans ton tableau?

Si oui change est-elle quand tu insre une ligne?

Si non fait le regarde ce que ca te renvoie quand tu insre une ligne.

C'est ce que fraoustin essayait de t'expliquer. La primary key doit tre unique c'est obligatoire et la a voir tu essaye de faire deux entr avec la mme primary key.

Et au faite Infopath est trs simple a utilis je vois pas ou ta vas chercher tous ca  ::aie::  

++

Thierry

P.S. Ton titre n'est pas trs bon car il s'agit d'un travail ensemble et non une bataille ou une comparaison entre les deux.

----------


## Heureux-oli

C'est dans la dfinition de la table access que tu dois aller chercher.

Tu dois ajouter une cl primaire qui devra tre un autonumber.
Et access devra remplir ce champ de lui mme par incrmentation.

----------

