Come leggere i messaggi del modulo
I messaggi di FlexigoTech Migration Base sono di due tipi. Alcuni proteggono una regola di unicità: qualcosa che il modulo ammette una sola volta per progetto, per set di mappatura, per categoria o per record. Altri compaiono quando provi a cambiare stato e ti spiegano cosa lo impedisce.
Nella tabella vedrai alcuni testi con parentesi graffe, come {current_status} o {len(blocking_recs)}. Sono scritti così nel codice del modulo; sul tuo schermo, al loro posto, compare lo stato o la quantità del tuo caso.
Se prima vuoi capire quale percorso fa ogni record, lo spieghiamo in come funziona Migration Base dall'interno.

I messaggi di Migration Base, uno per uno
| Messaggio | Quando compare | Cosa fare |
|---|---|---|
Each source record can only be archived once per project | Quando archivi un record di origine già archiviato nello stesso progetto | Cerca l'archivio già esistente per quel record nel progetto e lavora su quello |
Each source record can only be staged once per project | Quando porti in staging un record di origine già in staging in quel progetto | Individua la voce di staging esistente invece di crearne un'altra |
Each validation rule can only run once per record | Quando la stessa regola di validazione verrebbe eseguita di nuovo sullo stesso record | Controlla il risultato già presente per quella regola e quel record |
Each checklist item can only appear once per project | Quando aggiungi a un progetto una voce di checklist che è già presente | Usa la voce già presente nella checklist del progetto |
Each account can only appear once per reconciliation type per project | Quando ripeti un conto con lo stesso tipo di riconciliazione nello stesso progetto | Modifica la riga già esistente per quel conto e quel tipo |
Each source dimension value can only map once per set | Quando mappi una seconda volta lo stesso valore di dimensione di origine in un set | Correggi la mappatura che ha già quel valore nel set |
Each source value can only map once per category per set | Quando mappi due volte un valore di origine nella stessa categoria dello stesso set | Correggi la mappatura esistente di quel valore in quella categoria |
Each mapping set version must be unique | Quando salvi un mapping set con una versione che esiste già | Assegna una versione diversa |
Illegal status transition: {current_status} → {new_status}. Allowed transitions: {allowed} | Quando richiedi uno stato non consentito da quello attuale | Leggi Allowed transitions e scegli uno di quegli stati |
Cannot advance to Reconciled: {len(blocking_recs)} blocking reconciliation line(s) remain unresolved. Please resolve or sign off these items first. | Quando provi ad avanzare a Reconciled con righe di riconciliazione bloccanti non risolte | Risolvi o firma quelle righe e riprova |
Cannot go live: {len(blocking_items)} checklist items not completed | Quando provi ad andare in produzione con voci della checklist non completate | Completa le voci in sospeso e ripeti il passaggio |
Gli avvisi che bloccano un cambio di stato
Questi tre non segnalano un dato scritto male: ti dicono che il passaggio che stai tentando non si può ancora fare.
Illegal status transition
Il messaggio completo riporta lo stato attuale, quello richiesto e l'elenco Allowed transitions. Quell'elenco è la risposta: dallo stato in cui ti trovi, il modulo accetta solo quelli indicati lì. Se lo stato che vuoi raggiungere non compare, il modulo non ti permette quel salto da dove sei.
Cannot advance to Reconciled
Il numero nel messaggio è la quantità di righe di riconciliazione bloccanti ancora non risolte. Il testo stesso dice cosa fare: risolverle o firmarle (sign off) prima di riprovare. Nell'elenco Reconciliation hai, per ogni riga, il progetto, il tipo di riconciliazione, il codice del conto, gli importi di origine e destinazione, lo scostamento e le caselle di tolleranza, blocco e firma.

Cannot go live
Qui il numero è la quantità di voci della checklist non completate. Apri le voci della checklist del progetto, completale e ripeti il passaggio. L'elenco Checklist Items mostra il progetto, la voce, le caselle Done e Blocking, chi l'ha fatta e la data.

I messaggi che impediscono i duplicati
I messaggi di unicità del modulo hanno la stessa forma: Each … can only … once per …. La parte finale del testo ti dice l'ambito della regola: progetto, set, categoria o record. Leggerla bene ti evita di cercare nel posto sbagliato. Per esempio, il messaggio sui conti parla di una volta per tipo di riconciliazione e per progetto, quindi il conflitto sta nella combinazione di conto e tipo all'interno di quel progetto.
Nei set di mappatura
Tre messaggi riguardano i mapping set. Each source dimension value can only map once per set e Each source value can only map once per category per set compaiono quando ripeti un valore di origine nello stesso set (nel secondo caso, nella stessa categoria). Each mapping set version must be unique compare quando la versione del set esiste già. Nei primi due casi apri il set, cerca il valore e correggi la riga che lo mappa già; nel terzo, cambia la versione.
In staging, archiviazione e validazione
Each source record can only be archived once per project e Each source record can only be staged once per project compaiono quando un record di origine ha già il suo archivio o la sua voce di staging in quel progetto. Each validation rule can only run once per record compare quando una regola è già stata eseguita su quel record. In tutti e tre i casi, ciò che cerchi è già stato creato: trovalo prima di ripetere.
In checklist e riconciliazione
Each checklist item can only appear once per project impedisce di avere la stessa voce due volte in un progetto. Each account can only appear once per reconciliation type per project impedisce di ripetere un conto con lo stesso tipo di riconciliazione nello stesso progetto. La soluzione è modificare il record esistente invece di aggiungerne un altro.
Dove cercare il record che esiste già
Nell'app Migration, il menu in alto ha Migration Projects, Mapping Sets e Reconciliation, e gli elenchi hanno il pulsante New e la barra di ricerca. Lì trovi il set, la riga di riconciliazione o il progetto che provoca il conflitto.

Altri elenchi del modulo, come Connection Profiles, seguono lo stesso schema di pulsante New, barra di ricerca e colonne, in questo caso Profile Name, Connection Type, Validated e Validation Message.

Se sei in piena configurazione e vuoi sapere cosa compilare in ogni record, hai la guida alla messa in funzione di Migration Base.
Come ti aiuta FlexigoTech
FlexigoTech Migration Base è gratuito su Odoo Apps per Odoo 17, 18, 19 e 20 (IVA esclusa). Se il messaggio persiste o la migrazione ha bisogno di qualcosa che il modulo non copre, in FlexigoTech implementiamo Odoo 17, 18, 19 e 20 e sviluppiamo connettori e integrazioni su misura.
Continua a leggere
Verificato nel codice del modulo (versione 20.0) e nelle fonti collegate
Fonti
- Codice del modulo: flexigo_migration_base 20.0 (075d1af0): models/migration_archive.py
- Codice del modulo: flexigo_migration_base 20.0 (075d1af0): models/migration_checklist.py
- Codice del modulo: flexigo_migration_base 20.0 (075d1af0): models/migration_dimension_map.py
- Codice del modulo: flexigo_migration_base 20.0 (075d1af0): models/migration_mapping.py
- Codice del modulo: flexigo_migration_base 20.0 (075d1af0): models/migration_project.py
- Codice del modulo: flexigo_migration_base 20.0 (075d1af0): models/migration_reconciliation.py
- Codice del modulo: flexigo_migration_base 20.0 (075d1af0): models/migration_staging_record.py
- Codice del modulo: flexigo_migration_base 20.0 (075d1af0): models/migration_validation.py
- apps.odoo.com/apps/modules/20.0/flexigo_migration_base
- apps.odoo.com/apps/modules/17.0/flexigo_migration_base
- apps.odoo.com/apps/modules/18.0/flexigo_migration_base
- apps.odoo.com/apps/modules/19.0/flexigo_migration_base
- flexigotech.com/en/services.html
