Edoo Export XLS

13 de junho de 2025 por
Edoo Export XLS
EDOO Tecnologia, Elio Viniski
| Nenhum comentário ainda

Edoo Export XLS


🧾 Compatibilidade e Lançamento

  • Versões compatíveis: Odoo 17.0
  • Edições compatíveis: Community e Enterprise
  • 📅 Data de lançamento: 13 de junho de 2025

O módulo foi desenvolvido com base nas melhores práticas para garantir compatibilidade total com ambientes padrão e customizados, tanto na versão Community quanto na Enterprise do Odoo 17.0.


📦 Documentação Técnica – Edoo Export XLS

O módulo Edoo Export XLS permite exportar dados de qualquer modelo do Odoo para arquivos Excel (.xls), com filtros avançados, seleção de campos e suporte a campos relacionados.

Esta ferramenta é especialmente útil para exportar dados a serem utilizados em outras plataformas ou sistemas externos, como sistemas contábeis, fiscais ou operacionais. Os arquivos gerados podem ser facilmente utilizados para importação de lançamentos, conciliações ou relatórios em softwares de terceiros.

🧭 Visão Geral

📌 Exemplo apresentado nesta documentação:

Neste documento, será utilizado como exemplo o modelo account.move.line (Itens do diário), com o identificador de exportação EXP00006.

Informações do exemplo:

  • Nome do documento: EXP00006
  • Modelo exportado (Target Model): account.move.line
  • Arquivo gerado: Domínio (account.move.line) ON 2025-06-13.xls
  • Criado por: Administrator
  • Data de criação: 10/06/2025 09:14:43

🛠️ Funcionalidades Principais

1. Cabeçalho do Documento

  • Identificador automático do exportador (ex: EXP00006)
  • Seleção do modelo de dados a ser exportado
  • Opção para definir limite de registros
  • Botão Export & Download para geração imediata do Excel

2. Filtros (Domínio)

O módulo permite aplicar regras de filtragem (domínio) para exportar apenas os dados relevantes.

No exemplo, foram aplicadas as seguintes regras:

  • Tipo de fatura = Fatura de fornecedor
  • Status = Lançado
  • Data entre 01/05/2025 e 31/05/2025
  • Tipo de exibição = Produto

✅ As regras funcionam como domínios padrão do Odoo e permitem incluir filtros simples e complexos, inclusive com campos de relacionamentos (many2one, one2many, etc).

3. Campos Exportados (Fields)

Na aba Fields, é possível configurar quais campos devem ser exportados. Os campos podem ser:

  • Diretos do modelo escolhido
  • Relacionados a outros modelos (via field chain)

Exemplo de campos configurados:

Campo VisívelCampo TécnicoModelo OrigemTipoCadeia de Campos (field Chain)Formato de Data
Faturamove_idaccount.move.linemany2onename
Data da Faturamove_idaccount.move.linemany2onedate%d/%m/%Y
Cidade do Parceiromove_idaccount.move.linemany2onepartner_id.city_id.name
Nome do Produtoproduct_idaccount.move.linemany2onename

🔗 Field Chain: permite acessar campos de modelos relacionados, como trazer o nome da cidade do parceiro da fatura.

📥 Geração do Arquivo Excel

  • O botão Export & Download executa a exportação com base nos filtros e campos definidos.
  • O nome do arquivo gerado segue o padrão:
    Domínio (<modelo>) ON <data>.xls
    Exemplo: Domínio (account.move.line) ON 2025-06-13.xls
  • O conteúdo do Excel terá as colunas configuradas e os dados resultantes do domínio.

🧩 Recursos Avançados

  • Suporte a tipos de campo: char, float, date, many2one, boolean, entre outros.
  • Opção de aplicar lógica Python (campo “Python Logic”) para transformação personalizada dos dados.
  • Controle de permissões baseado em grupos, restringindo o uso do módulo conforme o perfil do usuário.

EXEMPLO DE XLS CRIADO


🧠 Campo “Python Logic” – Personalização Avançada de Valores

O campo Python Logic permite aplicar expressões condicionais em Python diretamente sobre os valores exportados, tornando possível ajustar dinamicamente a saída dos dados no Excel.

Essa funcionalidade é especialmente útil para:

  • Exibir valores formatados condicionalmente
  • Traduzir booleanos em textos compreensíveis
  • Evitar a criação de novos campos no modelo apenas para exportação

✅ Exemplos práticos:

CampoLógica AplicadaResultado no Excel
is_companyCompany if True else IndividualExibe "Company" ou "Individual" conforme o tipo de parceiro
locked'Lock' if value else 'unlock'Exibe "Lock" se verdadeiro, ou "unlock" se falso
team_id.is_favorite'Fav' if value else 'Un Fav'Exibe "Fav" para registros marcados como favoritos

🧪 O valor da variável value corresponde ao valor do campo original da linha. A expressão deve ser válida em sintaxe Python e pode utilizar if, else, str(), round(), value.upper(), entre outros.

🔒 Observações técnicas:

  • Não é permitido usar estruturas complexas como while, import, exec, etc.
  • A expressão não deve conter múltiplas linhas — deve ser avaliada como uma única linha de retorno.
  • É possível utilizar qualquer função básica do Python que seja segura e compatível com o contexto.

Edoo Export XLS
EDOO Tecnologia, Elio Viniski 13 de junho de 2025
Compartilhar esta publicação
Marcadores
Arquivar
Faça login para deixar um comentário