Ordre pour l'export

Bonjour,
J’ai besoin de votre aide pour un cas d’export/import que je n’arrive pas gérer :

Un compte bancaire peut être associé à un et une seule société (0,1)
Une société doit avoir un compte bancaire associé pour pouvoir passer en statut « Validée ».

Ce contrôle est fait dans le postValidate de l’objet :
ImmoCompany.postValidate = function() {
if (this.getField(“companyStatus”).getValue() ==“20” || this.getField(“companyStatus”).getValue() ==“30”) {
var a =this.getRowId();
var o = this.getGrant().getTmpObject(“ImmoBankAccount”);
o.resetFilters();
o.getField(“bankAccImmoCompanyId”).setFilter(a);
var rows = o.search();
if (rows.size() < 1) {
console.error(“Un compte bancaire associé est obligatoire pour le statut ‘Active’”);
return Message.formatError(“ERR_COMPANY_BANK”, null, a);
}

Supposons que la SOC-00001 est validée et associée au compte CB-00001.
Lors de la définition de l’ordre de l’export des objets (et donc de l’import), si je mets l’objet CB en premier, j’obtiens une erreur de Validation de la société SOC-00001 qui n’existe pas encore.
Si je mets l’objet société avant, c’est la validation du CB-00001 qui plante.

Auriez-vous une idée svp comment puis-je faire ? Puis-je mettre une condition dans le postValidate de la société pour empêcher l’exécution de ce contrôle lors d’un import par exemple ?
Merci d’avance.
Abed.

Ca se mord la queue, il faut donc exclure ce test lors de l’import en vérifiant quelle instance d’objet travaille.

Pour ne pas faire le test au moment de l’import :

if (!this.isBatchInstance()) ...

Ou pour faire le test que sur l’instance principale UI :

if (this.isMainInstance()) ...

ps : pour nous rendre lisible vos posts dans le forum vous pouvez encadrer votre code par des triples ``` et utiliser une syntaxe markdown