Où se trouve le bouton et quand il s'affiche
Les fiches de migration s'ouvrent depuis le menu Verifactu / SIF › Configuration › Migration Runs. Si une partie du menu n'apparaît pas, c'est qu'il vous manque une autorisation : la partie Configuration exige SIF Manager, et la partie Verifactu / SIF exige Accountant, Asesoría Operator, Auditor (read-only), Privacy Officer ou SIF Manager.

Le bouton Run Pre-flight se trouve sur l'écran Migration Runs dans toutes les branches publiées du module : Odoo 17, 18, 19 et 20. Dans les quatre, il est masqué lorsque le champ Estado n'a pas la valeur avec laquelle il s'affiche par défaut ; avec les valeurs par défaut, il s'affiche.
Quand la vérification se termine sans s'arrêter, le champ Estado change et le bouton n'est plus visible. Si elle s'arrête faute de fichier ou parce qu'il ne peut pas être analysé, l'état ne change pas et le bouton reste disponible.

Ejecutar Comprobación Previa ; en catalan, Executar Comprovació Prèvia.Pas à pas : ce qu'il fait quand on clique
Ce qui suit provient du code d'Odoo 20.
- Il choisit le lecteur du fichier selon le système d'origine de la migration. Il existe des lecteurs pour plusieurs logiciels de facturation et de comptabilité (par exemple Holded, Quipu ou Contasol) et un lecteur CSV générique, utilisé si le système ne correspond à aucun d'eux.
- Il vérifie que le fichier est téléversé. Le fichier se trouve dans le champ
Fichero Origen, dans le groupeSourcede la fiche de migration. S'il est vide, le bouton s'arrête avecNo file uploaded.et rien n'est enregistré. - Il analyse le fichier avec le lecteur choisi. Si le lecteur échoue, le bouton s'arrête avec
Could not parse file: …, avec le détail de l'échec à la place des points de suspension. Rien n'est enregistré non plus. - Il parcourt les lignes obtenues et note les incidents (le détail figure dans la section suivante). Noter un incident n'interrompt pas le parcours.
- Il enregistre le résultat : la liste des incidents dans le registre de la vérification, le total des enregistrements lus et le changement du champ
Estado. - Il remplace les lignes de la migration : il supprime celles qui existaient pour cette migration et en crée une pour chaque ligne lue, avec son numéro, sa date et son total d'origine et un état initial.
Un détail utile : la vérification préalable n'écarte aucune ligne. Même s'il y a des incidents, l'étape six crée une ligne pour chaque ligne lue.
Ce qu'il vérifie sur chaque ligne
Le module parcourt les lignes dans l'ordre, en commençant par la première, et pour chacune il peut noter ce qui suit.
- NIF de la contrepartie. Uniquement si la ligne contient un identifiant de la contrepartie, il le soumet au validateur de NIF du module, avec le type d'identifiant de la ligne (sans type, il utilise NIF). S'il ne le valide pas, il note
Row … (…): Invalid NIF/CIF/NIE "…". Entre parenthèses figure le numéro de facture de cette ligne, ou un point d'interrogation s'il n'en a pas ; à la fin, l'identifiant tel qu'il était fourni. - Numéro de facture vide. Si la ligne n'a pas de numéro, il note
Row …: missing invoice number (column not recognized or empty). - Numéro en double. Si le numéro était déjà apparu dans une ligne précédente, il note
Row …: Duplicate series number "…" (also row …). La seconde ligne citée est la première où ce numéro est apparu. - Avertissements du lecteur. Si le lecteur a marqué la ligne d'un avertissement propre, il le note sous la forme
Row …: …, avec le texte de l'avertissement.
Le numéro de ligne compte les lignes obtenues par le lecteur, et les incidents sont notés dans l'ordre où elles sont vérifiées.
Ce qui change quand la vérification se termine
Quand le parcours se termine sans s'arrêter, le module écrit trois choses dans la migration :
- La liste des incidents, enregistrée sous forme de texte, avec les accents et caractères spéciaux tels quels.
- Le total des enregistrements, qui est le nombre de lignes lues.
- L'
Estado, qui prend une valeur différente de celle qu'il avait. Avec ce changement, le bouton n'est plus visible.
En outre, les lignes précédentes de cette migration sont supprimées puis recréées avec ce qui vient d'être lu.
Que faire s'il s'arrête
No file uploaded.Téléversez le fichier dansFichero Origen, dans le groupeSourcede la fiche, puis cliquez de nouveau sur le bouton. Rien n'avait été enregistré : l'état reste ce qu'il était et le bouton reste visible.Could not parse file: …Lisez le détail qui suit les deux-points et vérifiez que le fichier correspond au système d'origine de la migration, car le lecteur est choisi selon ce système. Rien n'a été enregistré non plus et le bouton reste disponible.
Si ce que vous voyez, ce sont des incidents de ligne, le bouton ne s'est pas arrêté : la vérification s'est terminée et les a enregistrés. Les lignes avec un NIF non valide, sans numéro ou avec un numéro en double sont celles que vous pouvez revoir dans le fichier d'origine. Si vous voulez savoir en quoi le module change d'une branche à l'autre, c'est expliqué dans ce qui change entre les versions d'Odoo publiées.
Comment FlexigoTech vous aide
Si vous mettez en place Odoo et que vous allez importer des factures depuis un autre logiciel, FlexigoTech déploie Odoo 17, 18, 19 et 20 et développe des connecteurs et des intégrations sur mesure. Vous pouvez voir l'app sur sa fiche Odoo Apps, publiée pour les versions 17, 18, 19 et 20.
À lire aussi
Vérifié dans le code du module (version 20.0) et dans les sources citées
Sources
- Code du module : flexigo_spain_verifactu 20.0 (1fdc980f): views/verifactu_migracion_views.xml
- Code du module : flexigo_spain_verifactu 20.0 (1fdc980f): models/verifactu_migracion.py
- apps.odoo.com/apps/modules/20.0/flexigo_spain_verifactu
- flexigotech.com/en/services.html
