
1. Identificação da Rotina
Nome da Rotina | Integração SCRM |
|---|
| Programa | VEIA120 |
|---|
| Módulo ERP | Oficina (SIGAOFI) |
|---|
| Acesso à Rotina | Atualizações/SCRM/ Integração SCRM (VEIA120) |
|---|
| Data da Documentação (Última Atualização) | |
|---|
2. Descrição Funcional
A rotina de execução é responsável por identificar, preparar e enviar os dados de clientes e veículos ao SCRM, respeitando integralmente todas as regras definidas na configuração. Essa execução pode ocorrer de forma manual ou automática, sempre considerando apenas informações que sofreram alteração desde a última execução válida.
Durante a execução, o sistema realiza uma análise criteriosa dos dados, verificando se os clientes atendem aos requisitos funcionais antes de qualquer envio. Somente clientes considerados elegíveis são processados, evitando integrações desnecessárias ou incorretas. Quando aplicável, o sistema também avalia a existência de frota válida associada ao cliente, garantindo coerência entre os dados enviados.
O processo organiza os registros em lotes controlados, permitindo:
Divisão do envio em múltiplos arquivos, quando o volume de dados ultrapassa os limites definidos;
Rastreabilidade completa de cada envio, associando cliente, veículo e execução;
Tratamento de erros por lote, sem comprometer toda a execução.
Cada envio é submetido a uma validação do retorno do serviço externo. Apenas respostas positivas são consideradas como execução bem-sucedida. Em caso de falha, o processo registra o erro e segue a regra definida para interrupção ou continuidade, sempre preservando a integridade das informações.
Ao final da execução, o sistema atualiza os controles internos, garantindo que execuções futuras considerem corretamente o histórico já processado, evitando reenvios indevidos e mantendo a consistência da integração.
3. Pré-requisitos e Configurações
Configurações SCRM
- No Configurador (SIGACFG), acesse Ambientes/Cadastros/Menu (CFGX013) e informe as novas opções de menu do módulo de Oficina (SIGAOFI) conforme instruções a seguir:
Menu | Atualizações |
|---|
Submenu | SCRM |
|---|
Nome da Rotina | Integração SCRM |
|---|
Programa | VEIA120 |
|---|
Módulo | Veículos (SIGAVEI) |
|---|
Tipo | Função Protheus |
|---|
Criação de Tabela no arquivo SX2 – Tabelas:
Chave | Nome | Modo | Único | PYME |
|---|
| VEF | SCRM Scania - Clientes | C | VEF_FILIAL+VEF_CODIGO | S |
|---|
| VEV | SCRM SCANIA - Veiculos | C | VEV_FILIAL+VEV_CODIGO | S |
|---|
Criação de Campo no arquivo SX3 – Campos:
- Tabela VEF - SCRM Scania - Clientes:
Campo | VEF_FILIAL | VEF_CODIGO | VEF_TPEXEC | VEF_DTEXEC |
|---|
| Tipo | Caractere | Caractere | Caractere | Data |
|---|
| Grupo de Campos | 033 |
|
|
|
|---|
| Ordem | 01 | 02 | 03 | 04 |
|---|
| Tamanho | 2 | 8 | 1 | 8 |
|---|
| Decimal | 0 | 0 | 0 | 0 |
|---|
| Formato | @! | @! | @! |
|
|---|
| Contexto | 1 - Real | 1 - Real | 1 - Real | 1 - Real |
|---|
| Propriedade | 2 - Visualizar | 2 - Visualizar | 2 - Visualizar | 2 - Visualizar |
|---|
| Título | Filial | Cod. Seq. | Tp.Execução | Dt.Execução |
|---|
| Descrição | Filial | Código Sequencial | Tipo Execução | Data Execução |
|---|
| Val. Sistema |
|
| Pertence("12 ") |
|
|---|
| Opções |
|
| 1=Carga Inicial;2=Diario |
|
|---|
| Inic. Padrão |
| GetSXENum("VEF","VEF_CODIGO",,1) | "1" | dDataBase |
|---|
| Inic. Browse |
|
|
|
|
|---|
| Cons. Padrão |
|
|
|
|
|---|
| Nível | 1 | 1 | 1 | 1 |
|---|
| Usado | Não | Sim | Sim | Sim |
|---|
| Obrigatório | Não | Sim | Não | Não |
|---|
| Browse | Não | Sim | Sim | Sim |
|---|
| When |
|
|
|
|
|---|
| Pasta |
|
|
|
|
|---|
| Help | Código que identifica a filial da empresa usuária do sistema. | Identificador numérico gerado automaticamente pelo sistema. | Campo no qual apresenta o Tipo de Execução, onde: 1 - Carga Inicial 2 - Diário | Campo de exibição que apresenta a data em que o processo foi realizado, permitindo rastreabilidade e conferência das informações. |
|---|
Campo | VEF_HREXEC | VEF_CODCLI | VEF_LOJCLI |
|---|
| Tipo | Caractere | Caractere | Caractere |
|---|
| Grupo de Campos |
| 001 | 002 |
|---|
| Ordem | 05 | 06 | 07 |
|---|
| Tamanho | 4 | 6 | 2 |
|---|
| Decimal | 0 | 0 | 0 |
|---|
| Formato | @! | @! | @! |
|---|
| Contexto | 1 - Real | 1 - Real | 1 - Real |
|---|
| Propriedade | 2 - Visualizar | 2 - Visualizar | 2 - Visualizar |
|---|
| Título | Hr.Execução | Cód. Cliente | Loja Cliente |
|---|
| Descrição | Hora Execução | Código do Cliente | Loja do Cliente |
|---|
| Val. Sistema |
|
|
|
|---|
| Opções |
|
|
|
|---|
| Inic. Padrão |
|
|
|
|---|
| Inic. Browse |
|
|
|
|---|
| Cons. Padrão |
| SA1 |
|
|---|
| Nível | 1 | 1 | 1 |
|---|
| Usado | Sim | Sim |
|
|---|
| Obrigatório | Não | Não |
|
|---|
| Browse | Sim | Sim | Sim |
|---|
| When |
|
|
|
|---|
| Pasta |
|
|
|
|---|
| Help | Campo de exibição que apresenta a hora em que o processo foi realizado, permitindo rastreabilidade e conferência das informações. | Número único que diferencia cada cliente dentro da empresa. A identificação completa é composta pelo código do cliente e o código da loja. | Número que diferencia cada loja do cliente, utilizado para organizar e controlar as operações. |
|---|
Campo | VEF_DEALER | VEF_STATUS | VEF_ARQUIV |
|---|
| Tipo | Caractere | Caractere | Caractere |
|---|
| Grupo de Campos |
|
|
|
|---|
| Ordem | 08 | 09 | 10 |
|---|
| Tamanho | 6 | 1 | 50 |
|---|
| Decimal | 0 | 0 | 0 |
|---|
| Formato | @! | @! | @! |
|---|
| Contexto | 1 - Real | 1 - Real | 1 - Real |
|---|
| Propriedade | 2 - Visualizar | 2 - Visualizar | 2 - Visualizar |
|---|
| Título | Cod. Dealer | Status | Arquivo |
|---|
| Descrição | Código do Dealer | Status | Arquivo Gerado |
|---|
| Val. Sistema |
| Pertence("12 ") |
|
|---|
| Opções |
| 1=Gerado apenas Clientes;2=Gerado Clientes e Veiculos |
|
|---|
| Inic. Padrão |
| "1" |
|
|---|
| Inic. Browse |
|
|
|
|---|
| Cons. Padrão |
|
|
|
|---|
| Nível | 1 | 1 | 1 |
|---|
| Usado | Sim | Sim | Sim |
|---|
| Obrigatório | Não | Não | Não |
|---|
| Browse | Sim | Sim | Sim |
|---|
| When |
|
|
|
|---|
| Pasta |
|
|
|
|---|
| Help | Identifica a concessionária ou revendedor autorizado responsável pela operação. | Campo no qual apresenta o Status da operação, onde: 1 = Gerado apenas Clientes 2 = Gerado Clientes e Veículos | Exibe o nome do arquivo que foi produzido ao final da execução do processo, permitindo identificar o resultado da operação e servir como referência para conferência, auditoria e acompanhamento das etapas realizadas. |
|---|
Criação de Campo no arquivo SX3 – Campos:
- Tabela VEV - SCRM SCANIA - Veiculos:
Campo | VEV_FILIAL | VEV_CODIGO | VEV_CODVEF |
|---|
| Tipo | Caractere | Caractere | Caractere |
|---|
| Grupo de Campos | 033 |
|
|
|---|
| Ordem | 01 | 02 | 03 |
|---|
| Tamanho | 2 | 8 | 8 |
|---|
| Decimal | 0 | 0 | 0 |
|---|
| Formato | @! | @! | @! |
|---|
| Contexto | 1 - Real | 1 - Real | 1 - Real |
|---|
| Propriedade | 2 - Visualizar | 2 - Visualizar | 2 - Visualizar |
|---|
| Título | Filial | Cod. Seq. | Código VEF |
|---|
| Descrição | Filial | Código Sequencial | Código VEF |
|---|
| Val. Sistema |
|
|
|
|---|
| Opções |
|
|
|
|---|
| Inic. Padrão |
| GetSXENum("VEV","VEV_CODIGO") |
|
|---|
| Inic. Browse |
|
|
|
|---|
| Cons. Padrão |
|
|
|
|---|
| Nível | 1 | 1 | 1 |
|---|
| Usado | Não | Sim | Sim |
|---|
| Obrigatório | Não | Sim | Não |
|---|
| Browse | Não | Sim | Sim |
|---|
| When |
|
|
|
|---|
| Pasta |
|
|
|
|---|
| Help | Código que identifica a filial da empresa usuária do sistema. | Identificador numérico gerado automaticamente pelo sistema. | Número único que individualiza o registro VEF, utilizado para rastreabilidade e conferência das informações. |
|---|
Campo | VEV_CHASSI | VEV_ARQUIV |
|---|
| Tipo | Caractere | Caractere |
|---|
| Grupo de Campos |
|
|
|---|
| Ordem | 04 | 05 |
|---|
| Tamanho | 25 | 50 |
|---|
| Decimal | 0 | 0 |
|---|
| Formato | @! | @! |
|---|
| Contexto | 1 - Real | 1 - Real |
|---|
| Propriedade | 2 - Visualizar | 2 - Visualizar |
|---|
| Título | Chassi | Arquivo |
|---|
| Descrição | Número do Chassi | Arquivo Gerado |
|---|
| Val. Sistema |
|
|
|---|
| Opções |
|
|
|---|
| Inic. Padrão |
|
|
|---|
| Inic. Browse |
|
|
|---|
| Cons. Padrão |
|
|
|---|
| Nível | 1 | 1 |
|---|
| Usado | Sim | Sim |
|---|
| Obrigatório | Não | Não |
|---|
| Browse | Sim | Sim |
|---|
| When |
|
|
|---|
| Pasta |
|
|
|---|
| Help | Número de identificação do veículo, utilizado para rastreabilidade e conferência das informações. | Exibe o nome do arquivo que foi produzido ao final da execução do processo, permitindo identificar o resultado da operação e servir como referência para conferência, auditoria e acompanhamento das etapas realizadas. |
|---|
Criação de Campo no arquivo SX3 – Campos:
- Tabela VCF - Dados Adicionais Clientes Cev:
Campo | VCF_SCRMID | VCF_SCRMED | VCF_SCRMSC |
|---|
| Tipo | Caractere | Caractere | Caractere |
|---|
| Grupo de Campos |
|
|
|
|---|
| Ordem | A9 | A9 | B0 |
|---|
| Tamanho | 20 | 1 | 1 |
|---|
| Decimal | 0 | 0 | 0 |
|---|
| Formato | @! | @! | @! |
|---|
| Contexto | 1 - Real | 1 - Real | 1 - Real |
|---|
| Propriedade | 1 - Alterar | 1 - Alterar | 1 - Alterar |
|---|
| Título | ID SCRMID | Envia SCRM | SCRM St.Cred |
|---|
| Descrição | ID SCRMID Scania | Envia Dados SCRM | SCRM-Status de Crédito |
|---|
| Val. Sistema |
| VAZIO() .or. Pertence('12 ') | VAZIO() .or. Pertence('01234 ') |
|---|
| Opções |
| 1=Sim;2=Nao | 0=Sem Credito Estabelecido;1=Liberado ate o Limite;2=Credito Bloqueado;3=Credito Irrestrito;4=Sob Consulta |
|---|
| Inic. Padrão |
|
|
|
|---|
| Inic. Browse |
|
|
|
|---|
| Cons. Padrão |
|
|
|
|---|
| Nível | 1 | 1 | 1 |
|---|
| Usado | Sim | Sim | Sim |
|---|
| Obrigatório | Não | Não | Não |
|---|
| Browse | Sim | Não | Não |
|---|
| When |
|
| M->VCF_SCRMED=="1" |
|---|
| Pasta |
|
|
|
|---|
| Help | Informe o código único do registro SCRMID da Scania. Esse valor é utilizado para associar corretamente o registro no sistema, garantindo controle, auditoria e acompanhamento das operações. | Identificar se os dados em questão podem ou não ser enviados para a plataforma SCRM. | Permitirá armazenar de forma dinâmica a informação referente ao status de crédito a ser enviada à Scania. 0 - Sem Crédito Estabelecido 1 - Liberado até o Limite 2 - Crédito Bloqueado 3 - Crédito Irrestrito 4 - Sob Consulta |
|---|
|
|
4. Fluxo de Utilização
- Acesse o Módulo 14 (Oficina).
- Acesse o menu Atualizações → Cadastros Peças → Importação Glass (OFIA538).
- Preencha os parâmetros obrigatórios:
- Grupo Padrão da Peça
- Armazém Padrão da Peça
- Arquivo .DAT
- Ação Após o Processamento
- No parâmetro Arquivo .DAT, será exibida uma tela mostrando o servidor (pasta protheus_data) e seus diretórios. Selecione o arquivo .DAT que será processado pela rotina.
- No parâmetro Ação Após o Processamento:
- Selecione a opção Nenhuma Ação. Com isso, o arquivo .DAT permanecerá no diretório original sem ser movido ou apagado após o processamento.
Após preencher todos os parâmetros obrigatórios, clique no botão “OK”. A rotina processará o arquivo .DAT e após a inclusão ou atualização das peças serão executadas ações personalizadas definidas através do ponto de entrada. Ao final do processamento, serão executadas ações personalizadas definidas através dos pontos de entrada de conclusão da rotina.

|
- Acesse o Módulo 14 (Oficina).
- Acesse o menu Atualizações → Cadastros Peças → Importação Glass (OFIA538).
- Preencha os parâmetros obrigatórios:
- Grupo Padrão da Peça
- Armazém Padrão da Peça
- Arquivo .DAT
- Ação Após o Processamento
- No parâmetro Arquivo .DAT, será exibida uma tela mostrando o servidor (pasta protheus_data) e seus diretórios. Selecione o arquivo .DAT que será processado pela rotina.
- No parâmetro Ação Após o Processamento:
- Selecione a opção Mover Arquivo. Com isso, o parâmetro Mover Para será habilitado, permitindo que seja selecionado o diretório destino no servidor. Ao final do processamento, o arquivo será movido do diretório de origem para o diretório selecionado.
Após preencher todos os parâmetros obrigatórios, clique no botão “OK”. A rotina processará o arquivo .DAT e após a inclusão ou atualização das peças serão executadas ações personalizadas definidas através do ponto de entrada. Ao final do processamento, serão executadas ações personalizadas definidas através do ponto de entrada de conclusão da rotina e o arquivo será movido do diretório original para o diretório destino indicado no parâmetro Mover Para.

|
- Acesse o Módulo 14 (Oficina).
- Acesse o menu Atualizações → Cadastros Peças → Importação Glass (OFIA538).
- Preencha os parâmetros obrigatórios:
- Grupo Padrão da Peça
- Armazém Padrão da Peça
- Arquivo .DAT
- Ação Após o Processamento
- No parâmetro Arquivo .DAT, será exibida uma tela mostrando o servidor (pasta protheus_data) e seus diretórios. Selecione o arquivo .DAT que será processado pela rotina.
- No parâmetro Ação pós Processamento:
- Selecione a opção Apagar Arquivo. Com isso, ao término do processamento, o arquivo será apagado do diretório onde foi selecionado.
Após preencher todos os parâmetros obrigatórios, clique no botão “OK”. A rotina processará o arquivo .DAT e após a inclusão ou atualização das peças, serão executadas ações personalizadas definidas através do ponto de entrada. Ao final do processamento, serão executadas ações personalizadas definidas através do ponto de entrada de conclusão da rotina e o arquivo será apagado do diretório original onde foi selecionado.

|
Após a execução da rotina, será possível visualizar na tabela VQL os registros de logs gerados pelo processamento, conforme o exemplo na imagem abaixo. - Na coluna VQL_AGROUP (Agrupador), será registrado o nome do fonte da rotina;
- Na coluna VQL_TIPO (Tipo), será registrado o status da ação após o processamento, se houve sucesso, erro e também o início da ação.
- Na coluna VQL_MSGLOG (Mensagens de Log), será registrada a mensagem de log referente ao status de execução da rotina (Início, Processamento, Finalização ou Erro).

|
Após a execução da rotina, será possível visualizar na tabela VQL os registros de logs gerados pelo processamento, conforme o exemplo na imagem abaixo. - Na coluna VQL_AGROUP (Agrupador), será registrado o nome do fonte da rotina;
- Na coluna VQL_TIPO (Tipo), será registrado o status da ação após o processamento, se houve sucesso, erro e também o início da ação.
- Na coluna VQL_MSGLOG (Mensagens de Log), será registrada a mensagem de log referente ao status de execução da rotina (Início, Processamento, Finalização ou Erro).

|
|
5. Integrações e Dependências
Integrações
Ao final da execução, as peças importadas pela rotina Importação Glass (OFIA538) estarão disponíveis nas rotinas de Cadastro de Peças (MATA010), Peças Substituídas (OFIPA910) e Kits (OFIPA920).
| Principais campos importados após o processamento do arquivo DAT |
|---|
| Cadastro de Peças | Substituição de Itens | Cadastro de Kits |
|---|
| Tabela SB1(Segmento 01) | Tabela SB5 | Tabela SBZ | Tabela VE9 | Tabela VEH(Cabeçalho) | Tabela VE8(Itens do Kit) |
|---|
| B1_DATCAD | B5_COD | BZ_COD | Todos Segmentos | Segmento 01 | Segmento 02 | Segmento 04 | Segmento 06 | Segmento 06 |
| B1_COD | B5_CEME | BZ_LOCPAD | VE9_FILIAL | VE9_STAGLA | VE9_APLICA | VE9_ITENOV | VE9_ITENOV | VEH_FILIAL | VE8_FILIAL |
| B1_GRUPO | B5_UMIND |
| VE9_SEGMEN | VE9_ITENOV | VE9_ITENOV | VE9_QTDADE | VE9_QTDADE | VEH_TIPO | VE8_TIPO |
| B1_CODITE |
|
| VE9_NROSEQ |
|
| VE9_DATSUB |
| VEH_GRUKIT | VE8_GRUKIT |
| B1_FABRIC |
|
| VE9_NROSUB |
|
| VE9_QTDSUB |
| VEH_CODKIT | VE8_CODKIT |
| B1_DESC |
|
| VE9_GRUITE |
|
| VE9_STATUS |
| VEH_DESKIT | VE8_GRUITE |
| B1_UM |
|
| VE9_GRUNOV |
|
|
|
| VEH_VALKIT | VE8_CODITE |
| B1_SEGUM |
|
| VE9_ITEANT |
|
|
|
|
| VE8_QTDADE |
| B1_TIPO |
|
|
|
|
|
|
|
|
|
| B1_LOCPAD |
|
|
|
|
|
|
|
|
|
| B1_CONTA |
|
|
|
|
|
|
|
|
|
| B1_CC |
|
|
|
|
|
|
|
|
|
6. Assuntos Relacionados
<style>
.link_container {
display: flex;
flex-direction: column;
align-items: flex-start; /* Alinhado à esquerda */
width: 100%;
gap: 8px; /* Espaçamento entre os itens */
}
.btn-doc,
.btn-doc:link,
.btn-doc:visited {
display: inline-block;
padding: 12px 24px;
font-size: 16px;
font-weight: 600;
color: #FFFFFF !important; /* Força o texto branco */
background-color: #08244C; /* Fundo azul escuro */
border: none;
border-radius: 8px;
text-decoration: none;
text-align: left;
transition: background-color 0.3s ease, transform 0.2s ease, color 0.3s ease;
}
.btn-doc:hover {
background-color: #FFFFFF; /* Azul mais claro no hover */
color: #08244C !important; /* Mantém texto branco */
transform: scale(1.03);
}
.btn-doc:active {
background-color: #061B3B; /* Azul ainda mais escuro no clique */
color: #FFFFFF !important; /* Mantém texto branco */
transform: scale(0.98);
}
</style>
<div class="link_container">
<a href="https://tdn.totvs.com/pages/viewpage.action?pageId=1014654380" target="_blank" class="btn-doc">
📄 Ponto de Entrada OF538PRO - Importação Glass (OFIA538)
</a>
<a href="https://tdn.totvs.com/pages/viewpage.action?pageId=1014655032" target="_blank" class="btn-doc">
📄 Ponto de Entrada OF538FIM - Importação Glass (OFIA538)
</a>
</div> |