Import réussi mais aucune données

Bonjour,

Je tenais déjà à vous dire que le travail accompli sur la V5 est incroyable.
Je viens d’installer cette version et je rencontre un comportement étrange lors des imports, par exemple pour Country.

L’import m’indique que mes lignes ont bien été prises en compte

Total : 238 - Succeeded : 238 - Not null : 3
Generated anomalies :0

pas d’erreur ni sur la webapp ni dans les fichiers tomcat, mais aucune donnée ajoutée dans la base…

Fichier de config (hors entete/pied bien sur) :

<input file="countries.csv" type="com.axelor.apps.base.db.Country"
    search="self.alpha2Code = :alpha2Code" update="true" separator=",">
    <header>alpha2Code,name</header>
    <bind to="alpha2Code" column="alpha2Code"></bind>
    <bind to="name" column="name"></bind>
  </input>

Exemple CSV:

alpha2Code,name
GA,GABON
GM,GAMBIA
GE,GEORGIA
DE,GERMANY
GH,GHANA
GI,GIBRALTAR
GR,GREECE
GL,GREENLAND

N’ayant aucune erreur vi message spécifique je me demande où sont passées mes données.

PS: j’ai aussi le symptôme sur la v 4.0.0…

Merci pour votre aide

Bonjour,
rien dans le catalina.out ?

Bonjour,
En regardant de plus près je constate en effet une erreur dans le catalina.out: No such class found com.axelor.app.base.db.Country

J’ai tenté aussi avec le fichier xml ainsi que le fichier CSV du code source (ressources) mais sans succès.

Le fichier de bind:
<?xml version="1.0"?>

  <input file="base_country.csv" type="com.axelor.app.base.db.Country" separator=";" search="self.alpha2Code = :alpha2Code" update="true">
    <bind to="cog" column="cog"></bind>
    <bind to="name" column="name"></bind>
    <bind to="alpha3Code" column="alpha3Code"></bind>
    <bind to="alpha2Code" column="alpha2Code"></bind>
    <bind to="numericCode" column="numericCode"></bind>
    <bind to="phonePrefix" column="phonePrefix"></bind>
  </input>

</csv-inputs> 

Partie du fichier CSV:
cog;name;alpha3Code;alpha2Code;numericCode;phonePrefix
99212;AFGHANISTAN;AFG;AF;4;93
99303;SOUTH AFRICA;ZAF;ZA;710;27
99125;ALBANIA;ALB;AL;8;355
99352;ALGERIA;DZA;DZ;12;213
99109;GERMANY;DEU;DE;276;49
99130;ANDORRA;AND;AD;20;376
99395;ANGOLA;AGO;AO;24;244
99441;ANTIGUA-AND-BARBUDA;ATG;AG;28;1
99201;SAUDI ARABIA;SAU;SA;682;966
99415;ARGENTINA;ARG;AR;32;54
99252;ARMENIA;ARM;AM;51;374

J’ai aussi tenté avec l’approche “Automatic Import” mais sans succès. La vraie question que je me pose: pourquoi la classe n’est pas reconnue ?

Je ne sais pas si cela à son importance mais la webapp est déployée dans ROOT du tomcat.
Warning au démarrage de tomcat: Could not find a specific ehcache configuration for cache named [com.axelor.apps.base.db.Country]; using defaults

Merci pour votre aide

Bonjour,

L’objet com.axelor.app.base.db.Country n’existe pas. Le bon nom est : com.axelor.apps.base.db.Country

Cordialement

Bonjour,

Désolé, j’avais vu cette erreur et donc corrigé dans le XML. Lors de l’import, la popup m’indique Total : 246 - Réussi : 246 - Not null : 5 Generated anomalies :0 .

J’ai donc placé axelor en mode debug et voici la trace lors de l’import:

2018-05-07 18:03:29.184 DEBUG 18118 --- [nio-8009-exec-1] c.a.meta.schema.actions.ActionGroup      : action: save
2018-05-07 18:03:29.185 DEBUG 18118 --- [nio-8009-exec-1] c.a.meta.schema.actions.ActionGroup      : wait for 'save', pending actions: action-import-configuration-method-run,save
2018-05-07 18:03:29.628 DEBUG 18118 --- [nio-8009-exec-9] c.a.meta.schema.actions.ActionGroup      : action: action-import-configuration-method-run
2018-05-07 18:03:29.651 DEBUG 18118 --- [nio-8009-exec-9] c.a.a.b.s.imports.importer.Importer      : Initialisation de l'import pour la configuration country import
2018-05-07 18:03:29.965  INFO 18118 --- [nio-8009-exec-9] com.axelor.data.csv.CSVImporter          : Importing com.axelor.apps.base.db.Country from base_country.csv
2018-05-07 18:03:29.969 DEBUG 18118 --- [nio-8009-exec-9] com.axelor.data.csv.CSVImporter          : Header [cog, name, alpha3Code, alpha2Code, numericCode, phonePrefix]
2018-05-07 18:03:30.731 DEBUG 18118 --- [nio-8009-exec-9] c.a.a.b.s.imports.importer.Importer      : Import terminé : 
Total : 246 - Réussi : 246 - Not null : 5
Generated anomalies :0
2018-05-07 18:03:30.732 DEBUG 18118 --- [nio-8009-exec-9] c.a.meta.schema.actions.ActionGroup      : action: save 

Malheureusement toujours aucune donnée.

Merci

Bonsoir,

L’attribut update=“true” indique que les enregistrements seront mis à jour uniquement (pas de création).

En lisant les logs je comprends que seuls 3 enregistrements sont présents en bdd et donc mis à jour.

Cordialement

Bonsoir,

Merci pour votre retour.
Petite erreur d’interprétation du flag update, pour moi il permettait de définir si en cas d’enregistrement similaire le rang devait être mis à jour.

Le texte décrivant le flag if search returns an existing record whether to update it devrait être plus explicite, par exemple ‘if set to true only matching records are updated, all other entries in the import file are ignored’

Merci encore pour votre aide