Doublon

Bonjour, après un import csv d’une liste de partners, j’ai l’erreur suivante :

More than one row with the given identifier was found:
2705, for class: com.axelor.apps.base.db.Partner

Et aucun partner n’est visible depuis l’ensemble des IHM !

@gdu-axelor vous avez pris conscience de ce bug/probleme ?

Ma « solution », faire en base de donnée cette requete SQL, elle est à adpter, mais surtout à faire uniquement si vous comprenez ce que vous faites. Je ne suis pas responsable.

UPDATE auth_user
SET partner=null
WHERE id=2;

2 « J'aime »

Merci !
Pour ma part entre temps j’ai supprimé mes deux partner car je suis en phase de tests.
Mais je retiens cette solution !

Bonjour, j’essaye d’importer mes clients existants dans la table Partner, et ce que quelqu’un a un template d’import pour ce module car je ne comprend pas pourquoi le modèle proposé par Axelor " import-print-template-config.xml " du module base, ne map aucun champs du modèle partner…

Ce n est pas le bon fichier .

liste des élements de partner en v6 ou 7 je ne sais plus. faites un GET en API pour avoir la liste:

purchasePartnerPriceList
siren
carrierPartner
nic
companyStr
partner2SupplychainLinkList
mainActivity
invoicesCopySelect
isCarrier
password
taxNbr
accountingSituationList
functionBusinessCard
id
fax
contactPartnerSet
chargeBackPurchaseSelect
isEmployee
groupProductsOnPrintings
partnerStockSettingsList
purchaseOrderComments
updatedOn
customerCatalogList
mainAddress
version
attrs
mainPartner
partnerAddressList
mobilePhone
partnerProductQualityRatingList
umrList
factorizedCustomer
industrySector
supplierArrivalProductQty
timeSlot
createdOn
partner1SupplychainLinkList
proformaComments
webSite
archived
chargeBackPurchase
partnerSeq
isIspmRequired
currency
tradingName
isProspect
parentPartner
reportsTo
team
picture
saleTurnover
headOfficeAddress
importId
pickingOrderComments
supplierQualityRatingSelect
fiscalPosition
jobTitleFunction
isNeedingConformityCertificate
isSupplier
linkedUser
language
partnerTypeSelect
source
employee
payerQuality
titleSelect
emailAddress
partnerCategory
invoiceComments
supplierQualityRating
freightCarrierMode
processInstanceId
updatedBy
isSubcontractor
nbrEmployees
fixedPhone
partnerRoleSet
salePartnerPriceList
specificTaxNote
blockingList
isInternal
firstName
saleOrderComments
rejectCounter
simpleFullName
name
outPaymentMode
partnerAttrs
invoiceSendingFormatSelect
isContact
paymentDelay
importOrigin
complementaryProductList
activeUmr
description
freightCarrierModeList
inPaymentMode
batchSet
purchaseOrderInformation
customerShippingCarriagePaidList
sellerCode
freightCarrierCustomerAccountNumberList
isFactor
registrationCode
companySet
department
saleOrderInformation
deliveryDelay
supplierCatalogList
paymentCondition
contactAttrs
fullName
shipmentMode
bankDetailsList
isCustomer
createdBy
analyticDistributionTemplate
user
deliveryComments

Bonjour merci pour les infos , mais il me faut le process clair complet, j’ai mon csv avec les colonnes nommées comme le fichier d’exemple cdv de base partner.

Ensuite j’ai pris le fichier base-config.xml complet, à la ligne 136 je met le nom de mon csv :

<input file="test-6-donnees-client-TG76.csv" separator=";" 
 type="com.axelor.apps.base.db.PartnerCategory" search="self.importId = :importId"/>.

Ensuite j’ajoute bien les deux fichiers :


Et voici le log

javax.validation.ConstraintViolationException: Validation failed for classes [com.axelor.apps.base.db.PartnerCategory] during persist time for groups [javax.validation.groups.Default, ]
List of constraint violations:[
    ConstraintViolationImpl{interpolatedMessage='ne doit pas être nul', propertyPath=name, rootBeanClass=class com.axelor.apps.base.db.PartnerCategory, messageTemplate='{javax.validation.constraints.NotNull.message}'}
    ConstraintViolationImpl{interpolatedMessage='ne doit pas être nul', propertyPath=code, rootBeanClass=class com.axelor.apps.base.db.PartnerCategory, messageTemplate='{javax.validation.constraints.NotNull.message}'}
]
Total : 11 - Réussi : 0 - Non vide : 0
Anomalies générées :11

Le process n’est pas encore clair pour moi.

Je ne fais pas d’import via CSV.
Je le fais en API avec n8n. Si vous optez pour ca, j’ai fait un fil ici : Thread n8n.io for Axelor. All we can do

Il ne doit pas y avoir de process pour la création d’un partner, je regarderai dans mes scripts si je trouve un brouillon potable qui fait une création.

Dans l’idée quand je veux faire des imports :

  1. Je crée un partner standard directement sur Axelor (web), pour savoir quels sont les champs obligatoires, ceux qui me semblent importants… avec des valeurs clairement identifiable. (pensez à lire les infobulles de l’interface, il y a des relations de tables et le nom des variables)

  2. Je fais un export du partner créé sur Axelor. L’export m’indique quel champs fait quoi, ceux qui ont été automatiquement créé par Axelor, les champs relationnel (uniquement l’ID), et des champs « doublon ».

  3. Je fais un premier import, identique à l’export précédemment réalisé. Je reprends tous les champs rempli et je tente l’import quasi identique pour voir où sont les champs qui bloquent.

  4. Une fois le succes de l’étape 3, c’est à dire que je connais le minimum à envoyer, j’ajoute les variables que je veux dans les champs disponible de la table.

C’est fastidieux, mais j’ai pas mieux.

@admin est ce que quelqu’un du staff technique pourrait donner une explication précise ?

Je ne comprend pas vraiment ce que vous faites. L’erreur semble être sur les catégories de tiers.

Je chercher à comprend la logique d’import de données, ici des clients donc pour le modèle Partner, avec le fichier de base de config base-config.xml. Importer des clients tout simplement…

ok d accord , il faut vous faire un fichier xml avec seulement ce que vous voulez importer. Je suis dans la même démarche que vous mais pour initialiser la plateforme ( sociétés , utilisateurs , droits …)

Voila les colonnes de mon fichier csv avec le nombre de colonnes réduites pour tester

importId,name,firstName,email

Et le fichier que le support d’Axelor me dit d’utiliser est : base-config.xml. Vous êtes dans la même démarche mais vous avez réussi à importer correctement quelque chose ?

Je travaille sur autre chose en ce moment plus urgent . Je prépare mes fichiers csv et xml . Base config contient les rubriques pour plusieurs fichiers a importer . Mettez en commentaire ce qui ne vous conerne pas . Pourquoi ne partez vous pas du fichier de démo des tiers ?

Pouvez vous me donner le lien du fichier s’il vous plait ?

Merci mais j’ai déjà consulté ce fichier, je ne sais pas comment vous expliquer davantage. J’ai réduit mes colonnes pour tester uniquement " importId,name,firstName,email " et ça ne fonctionne pas

Oui , honnêtement je ne sais pas pourquoi.

Vous savez si l’ordre des colonnes dans le CSV a un impact ?

Voici l’ordre de mes colonnes : " « importId »;« name »;« firstName »;« email »;« isCustomer »;« partnerTypeSelect » "

et voici ce que ça me donne dans l’app , les données sont bien la mais se s’affichent pas à moins que je clique sur modifier pour qu’elle s’affiche d’elles même ensuite.

Quand je clique sur modifier :

Oui je vois que c est le champs calculé qui ne se fait pas bien