Migrando do Odoo 17 para o Odoo 18: O que muda, o que quebra e como se preparar
Odoo lança uma versão principal todos os anos, e cada atualização traz novos recursos, melhorias de desempenho e, inevitavelmente, alterações importantes. A migração do Odoo 17 para o Odoo 18 requer um planejamento cuidadoso, especialmente se você executa módulos personalizados ou depende de complementos da comunidade. Este guia cobre tudo o que você precisa saber sobre a migração do Odoo 17 para 18: principais mudanças, possíveis falhas, etapas de preparação e estratégias de teste.
Por que atualizar para o Odoo 18?
Odoo 18 introduz melhorias significativas em toda a plataforma:
- Novos componentes OWL 3: Componentes frontend reescritos com melhor desempenho e experiência do desenvolvedor
- Recursos alimentados por IA: Pontuação preditiva de leads, sugestões inteligentes de reconciliação bancária e criação de conteúdo assistida por IA
- Melhorias nas planilhas: Integração nativa de planilhas com dados Odoo em tempo real, tabelas dinâmicas e edição colaborativa
- Atualizações de fabricação: Programação de produção melhorada, portal de subcontratação e interface de tablet no chão de fábrica
- Desempenho: carregamentos de páginas 15 a 25% mais rápidos por meio de agrupamento de ativos otimizado e carregamento lento
- Construtor de sites: novos blocos de arrastar e soltar, opções de personalização de temas e edição móvel aprimorada
Permanecer em versões desatualizadas significa perder patches de segurança, perder acesso a atualizações de módulos da comunidade e acumular dívidas técnicas que dificultam migrações futuras.
Cronograma: Quanto tempo leva uma migração para Odoo?
| Complexidade | Módulos personalizados | Cronograma estimado | |---|---|---| | Padrão (sem código personalizado) | 0 | 1-2 semanas | | Baixo (poucos campos/visualizações personalizados) | 1-5 | 2-4 semanas | | Médio (fluxos de trabalho personalizados) | 5-15 | 4-8 semanas | | Alto (personalizações profundas) | 15+ | 8-16 semanas |
Esses cronogramas incluem análise, migração, testes e entrada em operação. A maior variável é a complexidade do módulo personalizado.
Mudanças importantes no Odoo 18
Mudanças na estrutura OWL
Odoo 18 continua a migração para OWL 3. Se seus módulos personalizados incluem componentes JavaScript frontend, espere estas mudanças:
Principais alterações no OWL:
- Ciclo de vida do componente:
willStartewillUpdatePropssão substituídos por ganchossetup()eonWillStart - Compilação de modelos: os modelos QWeb agora são compilados para JavaScript otimizado em tempo de construção, em vez de tempo de execução
- Injeção de serviços: Acessar serviços exclusivamente através do padrão
this.env.services; importações diretas estão obsoletas - Pacote de ativos: A estrutura do pacote
web.assets_backendfoi alterada; atualize suas declarações de ativos__manifest__.py
Exemplo de migração:
// Odoo 17
class MyComponent extends Component {
async willStart() {
this.data = await this.rpc('/my/endpoint');
}
}
// Odoo 18
class MyComponent extends Component {
setup() {
onWillStart(async () => {
this.data = await this.env.services.rpc('/my/endpoint');
});
}
}
Mudanças no back-end do Python
Alterações de modelo e campo:
fields.Monetaryagora requer quecurrency_fieldseja explicitamente declarado (não é mais o padrãocurrency_id)- O decorador
@api.multifoi totalmente removido (obsoleto desde a v13, mas alguns módulos da comunidade ainda o utilizavam) - Mudança de comportamento de
sudo():sudo()sem argumentos agora usa explicitamente o SUPERUSER em vez do usuário OdooBOT search_count()agora aceita um parâmetro opcionallimitpara otimização de desempenho
Métodos obsoletos para atualização:
| Obsoleto (v17) | Substituição (v18) |
|---|---|
| CÓDIGO0 | fields.Many2one com atributo domain |
| CÓDIGO0 | _post_init_hook no manifesto |
| SQL direto em modelos | self.env.cr.execute() com parametrização adequada |
| Campo website.published | website.is_published (renomeado) |
Alterações de visualização e modelo
- Visualização de formulário: O wrapper
sheetagora é obrigatório para todas as visualizações de formulário (anteriormente opcional) - Visualização de lista: a tag
treefoi oficialmente renomeada paralist(o alias compatível com versões anteriores ainda funciona, mas aciona avisos de descontinuação) - Visualização Kanban: QWeb
t-escagora é o padrão;t-rawrequer aceitação explícita para segurança - Relatório QWeb: Mecanismo de renderização de PDF atualizado; testar todos os relatórios impressos para alterações de layout
Alterações no esquema do banco de dados
Odoo 18 inclui mudanças estruturais nas tabelas principais:
sale.order.lineganha novos campos para gerenciamento de assinaturasaccount.move.lineinclui novas colunas relacionadas à reconciliação- Tabela
stock.quantreestruturada para melhorar o desempenho com grandes estoques - Tabelas
mail.messageemail.activityotimizadas com novos índices
Essas alterações de esquema são tratadas pelos scripts de migração integrados do Odoo para módulos padrão, mas os módulos personalizados que fazem referência a essas tabelas precisam de atualizações manuais.
Lista de verificação de preparação pré-migração
1. Audite sua instalação atual
Documente tudo antes de começar:
- [] Listar todos os módulos instalados (oficial, comunitário e personalizado)
- [] Grave a versão atual do Odoo e o nível do patch
- [ ] Documentar todos os desenvolvimentos customizados (campos, modelos, visualizações, relatórios, ações agendadas)
- [] Listar todas as integrações externas (gateways de pagamento, transportadoras, APIs de terceiros)
- [] Exportar direitos de acesso atuais e configuração de regras de registro
- [] Faça backup completo do banco de dados de produção e do armazenamento de arquivos
2. Verifique a compatibilidade do módulo da comunidade
Para cada módulo de comunidade (OCA ou terceiros):
- Verifique se existe uma versão compatível com Odoo 18 no GitHub ou na loja Odoo Apps
- Se não existir uma versão compatível, decida se deseja portar o módulo sozinho, encontrar uma alternativa ou remover a funcionalidade
- Entre em contato com os mantenedores do módulo para saber o ETA nas portas v18
3. Prepare portas de módulos personalizados
Para cada módulo personalizado, avalie o esforço de migração:
Baixo esforço (1-3 dias por módulo):
- Módulos apenas com novos campos e visualizações simples
- Sem componentes JavaScript/OWL
- Sem substituições de métodos principais alterados
Esforço médio (3 a 10 dias por módulo):
- Módulos com componentes OWL que requerem atualizações
- Substituições de métodos principais obsoletos ou alterados
- Relatórios personalizados que precisam de atualizações do QWeb
Alto esforço (mais de 10 dias por módulo):
- Integração profunda com módulos principais alterados (contabilidade, inventário, website)
- Aplicativos front-end OWL complexos
- Módulos que usam APIs obsoletas ou removidas extensivamente
Trabalhar com especialistas em migração Odoo experientes reduz significativamente o tempo e o risco de portabilidade de módulos personalizados.
Etapas de execução da migração
Etapa 1: Configurar o ambiente de migração
Production (v17) ──backup──> Test Database (v17)
│
Upgrade to v18
│
Test Database (v18)
│
Validation & UAT
│
Production (v18)
Crie um ambiente isolado com:
- Uma nova instalação do servidor Odoo 18
- Uma cópia do seu banco de dados de produção
- Todos os módulos personalizados portados para v18
Etapa 2: Execute a atualização do banco de dados
Para Odoo Enterprise: Use o serviço de atualização oficial do Odoo em upgrade.odoo.com. Faça upload do seu banco de dados e o Odoo SA executa os scripts de migração para todos os módulos padrão.
Para a comunidade Odoo: Use o projeto openupgrade da OCA. OpenUpgrade fornece scripts de migração mantidos pela comunidade para módulos padrão:
- Instale o OpenUpgrade para a versão de destino
- Execute a migração em seu banco de dados de teste
- Revise o log de migração em busca de erros e avisos
- Corrija quaisquer problemas e execute novamente até limpar
Etapa 3: Portar Módulos Personalizados
Para cada módulo personalizado:
- Atualize a versão
__manifest__.pypara18.0.x.x.x - Corrigir código Python (APIs obsoletas, assinaturas de método alteradas)
- Atualize os componentes JavaScript/OWL para padrões v3
- Corrigir visualizações XML (árvore para lista, wrapper de planilha, alterações de modelo)
- Execute o conjunto de testes do módulo e corrija as falhas
- Teste manualmente no ambiente de teste
Etapa 4: verificação de dados
Após a migração, verifique a integridade dos dados:
- Contabilidade: compare os totais do balancete entre v17 e v18. Eles devem corresponder exatamente.
- Inventário: Verifique as quantidades em estoque para obter uma amostra de produtos de alto valor.
- Vendas/Compras: Confirme os pedidos em aberto e seus status transferidos corretamente.
- Contatos: Verifique se os registros de clientes e fornecedores estão intactos, incluindo endereços e dados bancários.
- Anexos: verifique se documentos, imagens e anexos de arquivos estão acessíveis.
Estratégia de teste
Nível 1: Testes Automatizados
Execute o conjunto de testes completo para cada módulo instalado. Corrija todas as falhas antes de continuar.
Nível 2: Teste Funcional
Teste os principais fluxos de trabalho do negócio de ponta a ponta:
- Crie uma cotação, confirme, entregue mercadorias, crie uma fatura, registre pagamento
- Processar um pedido de compra por meio de recibo e fatura do fornecedor
- Executar uma ordem de fabricação desde a BOM até o produto acabado
- Conclua um ciclo completo de reconciliação bancária
- Gerar e verificar os principais relatórios financeiros
Nível 3: Teste de aceitação do usuário (UAT)
Faça com que usuários reais de cada departamento executem suas tarefas diárias no ambiente de teste por 5 a 10 dias úteis. Acompanhe os problemas em uma planilha compartilhada ou ferramenta de gerenciamento de projetos.
Nível 4: Teste de desempenho
Compare os tempos de carregamento da página, a velocidade de geração de relatórios e o desempenho de pesquisa entre v17 e v18 com volumes de dados em nível de produção.
Estratégia de entrada em operação
Abordagem recomendada: migração de fim de semana
- Sexta-feira à noite: Faça um backup final da produção. Congele todas as transações.
- Sábado: Execute a atualização no banco de dados de produção. Transfira quaisquer dados de última hora.
- Domingo: Verificação completa de dados e teste de fumaça. Implante em servidores de produção.
- Segunda-feira de manhã: Entre ao vivo. Monitore de perto durante as primeiras 48 horas.
Tenha um plano de reversão pronto: mantenha o backup do banco de dados v17 e a configuração do servidor disponíveis para que você possa reverter em poucas horas se surgirem problemas críticos.
Perguntas frequentes
P: Posso pular versões e migrar do Odoo 16 para o Odoo 18 diretamente? Sim, mas é mais complexo. Cada versão tem seus próprios scripts de migração, e pular versões agrava as alterações. O serviço de atualização do Odoo lida com saltos de várias versões, mas a portabilidade de módulo personalizado requer o tratamento de alterações significativas de cada versão ignorada. Reserve de 50 a 100% mais tempo para migrações de várias versões.
P: Meus relatórios personalizados serão interrompidos durante a migração? Potencialmente. Os modelos de relatório QWeb mudam frequentemente entre versões devido a estruturas de dados atualizadas e melhorias no mecanismo de renderização. Teste todos os relatórios impressos (faturas, guias de entrega, pedidos de compra) após a migração e ajuste os modelos conforme necessário.
P: Devo migrar ou começar do zero? Migre se você tiver anos de dados históricos, configurações complexas e usuários treinados. Comece do zero se sua instalação atual for altamente personalizada e não puder ser reparada, tiver problemas significativos de qualidade de dados ou se seus processos de negócios tiverem mudado tanto que uma reconfiguração seria mais rápida. A maioria das empresas escolhe a migração para preservar o seu histórico operacional. Consulte um parceiro de consultoria Odoo para avaliar qual abordagem se adapta à sua situação.
Suporte Profissional à Migração
Migrar entre versões Odoo é um projeto técnico que conta com mãos experientes. Os serviços de migração Odoo da ECOSIRE cobrem o processo completo: auditoria de pré-migração, portabilidade de módulo personalizado, migração de dados, testes e suporte de entrada em operação.
Entre em contato com nossa equipe para obter uma avaliação de migração e uma estimativa de cronograma com base em sua instalação específica do Odoo. Analisaremos seus módulos, personalizações e complexidade de dados para fornecer escopo e orçamento precisos.
Escrito por
ECOSIRE Research and Development Team
Construindo produtos digitais de nível empresarial na ECOSIRE. Compartilhando insights sobre integrações Odoo, automação de e-commerce e soluções de negócios com IA.
Artigos Relacionados
Integração Amazon.de Odoo: vendendo no maior mercado da Alemanha com Odoo ERP
Como integrar Amazon.de com Odoo ERP para o mercado alemão. Abrange FBA Alemanha, cumprimento pan-europeu, IVA alemão, conformidade com VerpackG e reconciliação de liquidação.
Entrando no mercado alemão de comércio eletrônico com Odoo: guia passo a passo para vendedores internacionais
Guia completo para vendedores internacionais que entram no mercado alemão de comércio eletrônico. Abrange análise de mercado, requisitos legais, registro de IVA, seleção de mercado e configuração do Odoo ERP para venda a consumidores alemães.
Gerenciando retornos de comércio eletrônico alemão com Odoo: estratégias para mercados de alto retorno
Como lidar com as altas taxas de retorno do comércio eletrônico na Alemanha usando o Odoo ERP. Abrange fluxos de trabalho de processamento de devoluções, análise de código de razão, automação de reabastecimento e políticas específicas de mercado para Zalando, Otto, Amazon.de e Kaufland.