Importar registros para vários objetos
Sim, é possível importar mais de um tipo de objeto — Contatos e Empresas, por exemplo — em uma única carga. A chave está na planilha datamap do modelo, que até agora só tinha uma linha.
O que o modelo padrão traz
Seção intitulada “O que o modelo padrão traz”O modelo baixado em Mais ações → Baixar modelo traz três planilhas: README (instruções técnicas para importar via API), datamap (o mapa de qual planilha corresponde a qual objeto) e uma planilha com o nome do objeto (Contact, Company…) com as colunas reais.
A planilha datamap tem esta forma:
| sheetName | objectType | from | to | skip |
|---|---|---|---|---|
| Contact | Contact | false |
Cada linha diz ao importador: “processe a planilha sheetName como registros do objeto objectType”. Por padrão só há uma linha — a do módulo de onde você baixou o modelo.
Adicionar um segundo objeto à mesma carga
Seção intitulada “Adicionar um segundo objeto à mesma carga”Para importar, por exemplo, Contatos e Empresas juntos:
- Baixe o modelo de Contatos (ou abra um que já tenha dados).
- Baixe também o modelo de Empresas e copie sua planilha
Companycompleta (com suas colunas) para dentro do mesmo arquivo. - Na planilha
datamap, adicione uma segunda linha:sheetName = Company,objectType = Company. - Preencha os dados em cada planilha como de costume e salve o arquivo.
- Envie o arquivo uma única vez em Mais ações → Importar, em qualquer um dos dois módulos.
A planilha datamap fica assim:
| sheetName | objectType | from | to | skip |
|---|---|---|---|---|
| Contact | Contact | false | ||
| Company | Company | false |
O Prolibu processa cada planilha declarada como uma importação independente, mas dentro da mesma carga: o painel Importar dados mostra um contador combinado (2 Total, 2 Importados neste exemplo) com sua própria barra de progresso por objeto.

Se você precisar carregar vários tipos de registro sem vinculá-los entre si — o caso mais comum — isso já resolve: dois objetos, um arquivo, uma única carga.
Vincular os registros: a empresa precisa existir primeiro
Seção intitulada “Vincular os registros: a empresa precisa existir primeiro”A coluna de referência company só resolve contra uma empresa que já exista no momento em que aquela linha do contato é processada — não contra uma linha mais abaixo no mesmo arquivo. Isso dá dois caminhos válidos, e nos dois o dado que vincula é o mesmo: company precisa levar o companyCode da empresa, não o refId nem o nome.
Na mesma carga, com a ordem certa no datamap
Seção intitulada “Na mesma carga, com a ordem certa no datamap”Se Contatos e Empresas vão no mesmo arquivo (veja acima), o importador processa as planilhas na ordem em que aparecem no datamap. Coloque a linha de Company antes da linha de Contact:
| sheetName | objectType | from | to | skip |
|---|---|---|---|---|
| Company | Company | false | ||
| Contact | Contact | false |
Com essa ordem, quando chega a vez da planilha Contact a empresa já existe e a coluna company a encontra: ao abrir a ficha do contato, o campo Empresa fica realmente vinculado ao registro, não só com o nome solto que a tabela mostra. Se você inverter a ordem (Contact antes de Company), a carga do contato falha linha a linha com “Documento não encontrado pela chave primária ‘‹código›’ em ‘company’”, porque naquele ponto do processo a empresa ainda não existe.
Em duas cargas separadas
Seção intitulada “Em duas cargas separadas”Se preferir não depender da ordem das planilhas — ou se a empresa já existia antes —, envie primeiro o arquivo de Empresas e depois o de Contatos:
- Primeiro as empresas. Envie o arquivo com a planilha
Companye dê a cada uma o seucompanyCode. - Depois os contatos. Na planilha
Contact, preencha a colunacompanycom esse mesmocompanyCode.
O companyCode funciona também como chave única, então reenviar a mesma planilha Company atualiza a empresa em vez de duplicá-la.
Perguntas frequentes
Sim. O modelo traz uma planilha "datamap" que declara quais planilhas do arquivo processar e a qual objeto cada uma corresponde — adicione mais uma planilha (por exemplo Company) e mais uma linha em "datamap" para incluí-la na mesma carga.
Sim, com duas condições. A coluna "company" do contato precisa levar o companyCode da empresa (não o refId nem o nome), e na planilha "datamap" a linha de Company precisa vir antes da linha de Contact: o importador processa as planilhas nessa ordem, então a empresa já precisa existir quando chegar a vez do contato. Com a ordem invertida, a carga do contato falha linha a linha com "Documento não encontrado pela chave primária", porque busca uma empresa que ainda não foi criada.
Não. Você envia o arquivo uma única vez, em Mais ações → Importar em qualquer um dos módulos envolvidos; o Prolibu processa cada planilha declarada em "datamap" como uma importação independente, todas dentro da mesma carga.
Porque você preencheu a coluna companyName, que é texto solto: a coluna Empresa da tabela mostra o nome, mas a ficha do contato fica com o campo Empresa vazio. A que vincula é a coluna company, com o companyCode da empresa.
Este artigo foi útil?
Obrigado pelo seu feedback!