Pourquoi avoir laissé une base donnée totalement vide?

Bonjour,

J’ai installé la V5, sublime au passage, et je me pose une question.
Pourquoi Est-ce qu’Axelor est aussi compliqué à mettre en oeuvre ?

Pourquoi ne pas intégrer de base, la base de donnée des pays ? Pourquoi rendre bloquant le fait qu’on ai pas forcément toutes les communes pour créer une adresse ?

Par ailleurs, aucune doc n’est plus disponible pour gérer les imports ?

Merci !

1 « J'aime »

Bonjour,
Vous pouvez tout à fait peupler la base avec les données de démo, tout ou partie.
Ensuite, Axelor commercialise ABS, il parait donc normal que la version communautaire nécessite un minimum de travail, je suppose que le paramétrage de base fait partie de la prestation standard.
Cela dit, rien ne vous empêche de maintenir et publier des fichiers d’imports prêts à utiliser pour les données de base, ça se fait très simplement à partir des données de démo.
Cordialement,

1 « J'aime »

Bonjour Beuss,

Merci pour votre réponse.

Axelor n’est pas le seul à proposer une version gratuite et payante.
C’est quelque chose que j’entends. Mais sur des données aussi basiques que les pays, j’ai du mal à le concevoir. quand tous les concurrent vont même jusqu’à proposer des modèles de facture, de format d’impression etc… même dans leur version basique.

Je suis personnellement sur un outil concurrent dans sa version payante et j’envisageais de changer de solution pour privilégier Axelor. L’installation a été faite sur un serveur TEST afin de me faire une idée du réel potentiel de cette V5 qu’on ne peut pas apprécier dans leur version démo fourni par mail. Ainsi j’aurais, si cela n’avait pas nécessiter des heures d’install et de configuration ridicule, certainement definitivement sauté le pas.

Mais quand je vois le boulot à accomplir, cela ne donne pas envie surtout quand on a très très peu de documentation concernant le fonctionnement même d’Axelor. Ainsi même d’un point de vue commercial, cela est une erreur.

Cordialement,

1 « J'aime »

Re,

Il y a tous les modèles fournis de base dans Axelor. Encore une fois, pour du test les données de démo permettent de se faire une idée (elles pourraient être encore plus fournies). Je ne comprends pas l’allusion au mail, l’installation des données se fait dans la config de chaque application, en cliquant sur le bouton « Charger les données de démonstration », pas d’install ni de config compliquée (je n’ai pas testé l’autoinstaller de la v5 mais je pense qu’il a été pas mal amélioré et ne nécessite que quelques clics). Si vous souhaitez l’installer à la main, c’est juste une install d’appli tomcat tout ce qu’il y a de plus basique.

Vraiment, j’ai 3 instances en prod’, la dernière a du me prendre en tout et pour tout 10 minutes de config, import des données de base compris (données que j’ai reprises dans les données de démo disponibles par exemple ici https://github.com/axelor/axelor-business-suite/tree/dev/axelor-account/src/main/resources/demo ou ici https://github.com/axelor/axelor-business-suite/tree/dev/axelor-base/src/main/resources/demo. Il suffit de modifier les XML d’entrées pour éliminer ce que l’on ne veut pas (ça demande quelques minutes avant de comprendre pourquoi certains éléments sont présents 2 fois mais rien d’insurmontable).

Concernant la doc, ils ont fait un effort en mettant à disposition une doc synthétique ici https://www.axelor.com/functional-documentation/ qui n’est certes pas parfaite mais documente quand même pas mal de chose niveau workflow.

Pour moi, le dernier manque est dans la documentation “in-app” avec de l’aide sur tous les champs de config mais c’est un travail de fond qui a démarré de leur côté.

Cordialement,

Je suis tout à fait d’accord avec beuss, les données de démo permettent d’importer rapidement des données comme les pays ,villes, … Personnellement je suis en train de bosser sur la récupération de ma base client de mon ancien logiciel vers Axelor. Le seul point ou je bloque pour le moment c’est de définir par défaut que ma société soit renseigné en “associé à” et le champ note. Y’a un truc que j’ai du oublier dans le XML ou j’ai pas renseigné le bon champ dans le csv. Une idée beuss?

Bonjour,

Je dirais qu’il s’agit des champs mainPartner qui doit pointer vers le tiers associé à la société et doit figurer dans la collection companySet. Il faut donc importer les données deux fois comme dans https://github.com/axelor/axelor-business-suite/blob/master/axelor-base/src/main/resources/demo/base-config.xml#L92 et https://github.com/axelor/axelor-business-suite/blob/master/axelor-base/src/main/resources/demo/base-config.xml#L169 (le binding est fait au second import)

Cordialement,

J’avais vu, il y’a même une troisième importation juste en dessous de la seconde.
Malgré tout, je n’arrives pas à lui définir l’entreprise par défaut :frowning:

Sans le CSV ni le mapping je ne peux pas aider plus :slight_smile:

J’avoue :relaxed: . Voici le contenu des fichiers.

base-config-clients.xml : (je vous épargne les en-têtes de fichier)

<input file="base_clients.csv" separator=";" type="com.axelor.apps.base.db.Partner" search="self.importId = :importId" call="com.axelor.csv.script.ImportPartner:importPartner">
	<bind to="partnerSeq" eval="call:com.axelor.apps.base.service.administration.SequenceService:getSequenceNumber(com.axelor.apps.base.db.repo.SequenceRepository.PARTNER)" />
	<bind to="emailAddress" search="self.address = :email">
		<bind to="address" column="email" />
	</bind>
	<bind to="partnerAddressList" search="self.address.importId = :address" if="address != null &amp;&amp; isContact == 'false'">
	    <bind to="address" search="self.importId = :address" update="true" />
	    <bind to="isInvoicingAddr" eval="true" />
	    <bind to="isDeliveryAddr" eval="true" />
	    <bind to="isDefaultAddr" eval="true" />
	</bind>
	<bind to="contactAddress" search="self.importId = :address" if="address != null &amp;&amp; isContact == 'true'" update="true" />
	<bind to="inPaymentMode" column="inPaymentMode.importId" if="false"/>
	<bind to="outPaymentMode" column="outPaymentMode.importId" if="false"/>
	<bind to="paymentCondition" column="paymentCondition.importId" if="false"/>
	<bind to="language" search="self.code = :languageCode"/>
</input>

<input file="base_clients.csv" separator=";" search="self.importId = :importId" update="true" type="com.axelor.apps.base.db.Partner">
	<bind column="companySet_importId" to="companySet" search="self.importId in :companySet_importId" eval="companySet_importId.split('\\|') as List" update="true"/>
	<bind to="mainPartner" search="self.importId = :mainPartner_importId" update="true" />
	<bind to="mainPartner" search="self.importId = :mainPartner_importId" update="true" if="mainPartner_importId"/>
	<bind to="inPaymentMode" column="inPaymentMode.importId" if="false"/>
	<bind to="outPaymentMode" column="outPaymentMode.importId" if="false"/>
	<bind to="paymentCondition" column="paymentCondition.importId" if="false"/>
</input>

base_clients.csv :

importId;partnerTypeSelect;isContact;isCustomer;isSupplier;isEmployee;name;firstName;fullName;titleSelect;languageCode;address;email;fixedPhone;mobilePhone;invoiceSendingFormatSelect;paymentMode.importId;paymentCondition.importId;partnerCategory.code;currency.code;blocking.importId;rejectCounter;companySet_importId;customerAccount_code;supplierAccount_code;mainPartner_importId;customerTypeSelect;supplierTypeSelect;industrySector.importId;user.importId;team.importId;source.id;fiscalPosition.importId;picture_fileName;invoicesCopySelect
;2;false;true;true;false;PICARD;Anna;PICARD Anna;2;fr;;a.picard@msn.com;03.79.67.80.99;06.45.25.47.99;email;4;2;INDIV;EUR;;;1;411100;401100;;2;;;1;;1;;;1
;2;false;true;true;false;MEYER;Philippe;MEYER Philippe;1;fr;;p.meyer@yahoo.com;01.52.66.34.99;07.31.30.96.99;email;5;2;INDIV;EUR;;;1;411100;401100;;2;;;1;;1;;;1

Merci par avance ! :slight_smile:

L’import_id de la société est bien à 1 ? (select import_id from base_company)

L’id oui, l’import_id est “null”. A savoir que j’ai créé manuellement la société dans axelor. Je dois modifier le champ import_id en bdd à la main?

Dans ce cas, il ne faut pas reprendre les fichiers d’import tels quels, ils se basent tous sur l’import_id (<bind column="companySet_importId" to="companySet" search="self.importId in :companySet_importId" eval="companySet_importId.split('\\|') as List" update="true"/>). Soit vous modifiez le fichier pour avoir quelque chose du genre <bind column="companySet_importId" to="companySet" search="self.id in :companySet_importId" eval="companySet_importId.split('\\|') as List" update="true"/>, soit, si vous voulez éviter de mettre à jour chaque fichier, vous mettez l’importId de la société à 1 :slight_smile:

Malheureusement, et pour une raison que j’ignore, aucune des deux techniques ne fonctionnent pour moi :worried: . Mais ta réponse m’a permis de comprendre un peu mieux le fonctionnement des imports axelor. Je vais tenter de faire des fichiers d’imports pour créer ma société directement et je l’espère solutionner le problème. Encore un grand merci beuss.