Integração isocrm via tabelas
Introdução
Para integrar dados de um sistema (qualquer sistema) para o isoCRM devem ser alimentadas as tabelas de integração com as informações do sistema origem e em seguida rodar os executáveis denominados motores, que irão ler essas tabelas de integração e alimentar a base de dados do isoCRM.
Obter as informações do isoCRM também é possível, para isso deve ser executado um motor que irá ler a base de dados do isoCRM e gravar nas tabelas de Integração.
Observação: As tabelas de integração poderão estar na mesma base dados do isoCRM somente quando a integração for de um único sistema com o isoCRM, caso exista mais de um sistema a ser integrado, deverá existir um banco de dados de integração para cada sistema e será necessário configurar as integrações separadamente para cada sistema.
Configurando a integração
O pacote isoCRM_Integracao deve ser descompactado no mesmo diretório que a aplicação de produção.
O arquivo Cliente.exe.config, presente no pacote deve ser alterado, as informações neles são separadas por tags (esse arquivo possui a sintaxe XML), sendo que, na tag <datastores> estão as configurações de leitura do banco de dados. Algumas dessas informações estão criptografadas. São elas:
● Datasource (ip do servidor);
● User (usuário do banco de dados);
● Password (senha do usuário do bando de dados);
● DB (bando de dados).
Essas 4 informações são mantidas criptografadas no arquivo e devem ser alteradas, para alterar, entre em contato com a iso Enterprise .
O arquivo WCFClient.config , presente no pacote deve ser alterado. Nesse arquivo estão os Web Services que os motores utilizam, os web-services existem no modelo isoCRM de produção e a integração deve aponta-los para eles, para isso, deve ser alterado o campo address contido em cada tag <endpoint> do arquivo.
Exemplo:
<endpoint name="GeneXus.Programs.SdtisoCRM_integracaoEntCliWSClient"
address=" http://localhost/m04r102/ aisoCRM_integracaoentcliws.aspx" binding="basicHttpBinding"
contract="GeneXus.Programs.ISdtisoCRM_integracaoEntCliWS">
</endpoint>
No exemplo acima, temos um web-service configurado no ambiente de desenvolvimento, o conteúdo destacado deve ser substituído pelo endereço web do ambiente de produção do isoCRM (Mesmo link usado para logar-se no sistema, basta remover o hiso_login.aspx do endereço referente a tela de login do sistema isoCRM).
Essa configuração deve ser feita em todas as tags <endpoint> , contidas no arquivo, cada tag representa um web-service.
Configurando os motores
Para executar os motores é necessário passar três parâmetros, código da empresa, login do usuário motor e senha do usuário motor (esses parâmetros podem ser passados criando um arquivo .bat para cada motor).
É necessário passar esses parâmetros?
- Sim, pois a integração utiliza web-services para gravar/obter dados do isoCRM, e todos os web-services desenvolvidos para o isoCRM fazem validação de sessão.
É necessário criar um usuário para cada motor?
- No mínimo um usuário é necessário ser criado, os outros motores poderão utilizar o mesmo usuário, porém, como é feita validação de sessão não será possível executar dois motores com a mesma sessão se apenas um usuário for criado.
Criando os arquivos *.bat para execução dos motores
Para criar um arquivo bat basta abrir o bloco de notas e colocar os comandos abaixo, de acordo com a integração desejada:
Integração de entrada completa: entidades, produtos, pedidos, notas fiscais e duplicatas.
C:
CD C:\ endereco completo da integração \
aisoCRM_integracaoEntrada.exe empresa login senha intervalo limiteExecucao
debug executa integraNotaFiscal integraPedidos integraProdutos IntegraEstoque IntegraPrecoLista
Somente integração de entrada de entidades.
C:
CD C:\ endereco completo da integração \
aisoCRM_integracaoEntidadeEntrada.exe empresa login senha intervalo
limiteExecucao debug executa
Somente integração de entrada de produtos.
C:
CD C:\ endereco completo da integração \
aisoCRM_integracaoProdutoEntrada.exe empresa login senha intervalo
limiteExecucao debug executa IntegraEstoque IntegraPrecoLista
Integração de entrada de estoque
A partir da versão isoCRM 8.5.0 RC3 R2
C:
CD C:\ endereco completo da integração \
aisoCRM_integracaoProdutoEntrada.exe empresa login senha intervalo
limiteExecucao debug executa
Integração de entrada de preço de lista
A partir da versão isoCRM 8.5.0 RC3 R2
C:
CD C:\ endereco completo da integração \
aisoCRM_integracaoProdutoPrecoLista.exe empresa login senha intervalo
limiteExecucao debug executa
Somente integração de entrada de pedidos não gerados no isoCRM.
C:
CD C:\ endereco completo da integração \
aisoCRM_integracaoEntrada_Pedidos.exe empresa login senha intervalo
limiteExecucao debug executa
Somente integração de entrada de notas fiscais e duplicatas.
C:
CD C:\ endereco completo da integração \
aisoCRM_integracaoEntradaNF.exe empresa login senha intervalo
limiteExecucao debug executa
Somente integração de entrada de notas fiscais e duplicatas utilizada no Modern.
Utiliza as mesmas tabelas de notas fiscais e duplicatas da integração, porém é necessário uma chave da nota fiscal referenciado nas tabelas da nota fiscal, itens da nota fiscal e duplicatas.
C:
CD C:\ endereco completo da integração \
aisoCRM_integracaoEntradaNFS.exe empresa login senha intervalo
limiteExecucao debug executa
Integração de saída de pedidos do isoCRM (Pedidos, itens, observações, descontos, dados complementares e ficha do cliente).
C:
CD C:\ endereco completo da integração \
aisoCRM_integracaoSaida.exe empresa login senha intervalo limiteExecucao
debug executa
Abaixo os parâmetros de configuração dos .bat:
Empresa: é o código da empresa no isoCRM (normalmente 1).
Login: é o usuário motor.
Senha: é a senha do usuário motor.
Intervalo: Tempo de espera entre duas uma execução e outra, em segundos.
LimiteExecucao: Hora limite de execução
Log: S ou N para habilitar o log de execução.
Executa: 1 para executar uma única vez e encerrar o motor. Default 0.
IntegraNotaFiscal:
S ou N para habilitar a integração de notas fiscais.
Default N.
IntegraPedidos:
S para integrar somente pedidos gerados no isoCRM.
N para integrar somente pedidos não gerados no isoCRM.
T para integrar todos os pedidos.
Default T.
IntegraMatrizImpostos:
S para habilitar a integração de matriz de impostos no motor de entrada.
N para não integrar matriz de impostos pelo motor de entrada.
IntegraProdutos:
S para habilitar a integração de produtos no motor de entrada.
N para não integrar os produtos pelo motor de entrada.
IntegraEstoque:
S para habilitar a integração de estoque no motor de entrada ou no motor de entrada de produtos.
N para não integrar o estoque pelo motor de entrada ou pelo motor de entrada de produtos.
IntegraPrecoLista:
S para habilitar a integração de preço de lista no motor de entrada ou no motor de entrada de produtos.
N para não integrar o preço de lista pelo motor de entrada ou pelo motor de entrada de produtos.
Características da integração
Não é necessário conhecer os códigos internos do isoCRM para integração, os motores foram desenvolvidos de maneira que utilizam o código externo e origem para identificar o dado integrado (seja entidade, produto, pedido e outros posteriormente), e para as demais informações associadas, são utilizadas suas descrições para obter os códigos. Exemplo:
Int_ISOEntSeg_Descricao da tabela Int_ISOEntPessoa.
Ainda sobre o exemplo acima, ao integrar uma pessoa, deve-se colocar a descrição do segmento no campo Int_ISOEntSeg_Descricao, o motor irá buscar o segmento da entidade no isoCRM pela descrição e assim irá gravar a pessoa com seu respectivo segmento, porém, se for informado uma descrição que não exista, o motor irá primeiramente cadastrar no sistema esse segmento e irá associar esse segmento recém cadastrado a pessoa que está sendo integrada.
Esse comportamento está replicado para todos os campos descrição de todas as tabelas de integração quando possível executar tal comportamento , caso contrário irá gerar algum erro que irá aparecer nos campos mensagem de cada tabela de integração. Exemplo:
Int_ISOEntPes_Mensagem da tabela Int_ISOEntPessoa
É aconselhável que integrem as descrições com um padrão de formatação, e se utilizar acentuação, garantir que não haverá divergências, para não gerar dados em duplicidades, diferentes apenas por um acento no lugar errado, ou pela falta de acento, ou por troca de letrar como “c” e “ç”.
Como integrar os dados para o isoCRM usando a integração
Todas as tabelas de integração possuem dois campos de controle, um campo se refere a Operação e o outro ao Processamento.
Exemplo:
Tabela: Int_ISOEntPessoa.
Campos: Int_ISOEntPes_Operacao, Int_ISOEntPes_Processado.
No campo referente a operação, a informação que deverá ser gravada será “E” ou “S” (Entrada e Saída respectivamente).
Para gravar informações no isoCRM usando a integração o campo operação deve ser gravado com “E” (Entrada) e o campo referente a processamento igual a “N” (Não processado).
Depois que todas as tabelas forem alimentadas, o motor deverá ser executado.
Após a execução do motor, se o motor integrar com sucesso, o campo processado será alterado para “S” (Sim), se não integrar ou se integrar com erro(s), o campo referente a processado será alterado para “E” (Erro no processamento) e nessa situação, os erros identificados serão retornados para o campo referente a mensagem das tabelas de integração.
Quando isso ocorrer, o que deve ser feito?
- Deve-se identificar o erro, se for por falta de dados na integração, os dados faltantes devem ser preenchidos nas tabelas de integração, em seguida, o campo referente a processado deve ser alterado de “E” para “N” e somente após isso, executar o motor novamente. Nessa situação, somente o que estiver com “E” deve ser alterado para “N” (não alterar dados que estejam com “S”, pois eles já foram alterados uma vez).
- Se o erro gerou mensagem, mas a mensagem não foi clara o suficiente para identificar o problema, entrar em contato com a isoEnterprise para verificação. O mesmo deve ser feito caso o motor aborte.
Parâmetros
Os parâmetros são criados automaticamente pelos motores, mas aconselhamos a serem criados anteriormente, isso porque para o motor poder criar os parâmetros ele tem que definir valores, gravando informações no isoCRM, essas informações muitas vezes já existem no sistema.
Parâmetros para integração de entidades
Parâmetro: ISOCRM_INTEGRACAO
O usuário que deve ser parametrizado é o usuário do motor da integração de entidades com os seguintes detalhes:
ENTCLI_CODIGO_ENTCLA
Quando a classificação do cliente não for fornecida na integração, será utilizada a classificação parametrizada no detalhe ENTCLI_CODIGO_ ENTCLA.
Se não for parametrizado, o motor irá procurar uma classificação de cliente com a descrição CLIENTE, se encontrar, irá parametrizar o código dessa classificação no detalhe ENTCLI_CODIGO_ENTCLA, caso contrário, irá inserir uma classificação com a descrição CLIENTE.
ENT_CODIGO_ENDTIP
Quando o tipo do endereço não for fornecido na integração, será utilizado o tipo parametrizado no detalhe ENT_CODIGO_ENDTIP.
Se não for parametrizado, o motor irá procurar um tipo de endereço com a descrição COMERCIAL, se encontrar, irá parametrizar o código desse tipo no detalhe ENT_CODIGO_ENDTIP, caso contrário, irá inserir um tipo com a descrição COMERCIAL.
ENT_CODIGO_TELTIP
Quando o tipo do telefone não for fornecido na integração, será utilizado o tipo parametrizado no detalhe ENT_CODIGO_TELTIP.
Se não for parametrizado, o motor irá procurar um tipo de telefone com a descrição COMERCIAL, se encontrar, irá parametrizar o código desse tipo no detalhe ENT_CODIGO_TELTIP, caso contrário, irá inserir um tipo com a descrição COMERCIAL.
ENT_CODIGO_ECTTIP
Quando o tipo do e-contact não for fornecido na integração, será utilizado o tipo parametrizado no detalhe ENT_CODIGO_ECTTIP.
Se não for parametrizado, o motor irá procurar um tipo de e-contact com a descrição NÃO INFORMADO, se encontrar, irá parametrizar o código desse tipo no detalhe ENT_CODIGO_ECTTIP, caso contrário, irá inserir um tipo com a descrição NÃO INFORMADO.
VERIFICA_TELEFONE_COMPLETO
Com esse parâmetro configurado com o valor: "S", quando efetuar a busca pela informação e caso não tenha código externo, será feita uma busca pela informação completa do registro para garantir que o encontre e caso não seja encontrado ele será cadastrado como novo.
VERIFICA_ENDERECO_COMPLETO
Com esse parâmetro configurado com o valor: "S", quando efetuar a busca pela informação e caso não tenha código externo, será feita uma busca pela informação completa do registro para garantir que o encontre e caso não seja encontrado ele será cadastrado como novo.
VERIFICA_ECONTACT_COMPLETO
Com esse parâmetro configurado com o valor: "S", quando efetuar a busca pela informação e caso não tenha código externo, será feita uma busca pela informação completa do registro para garantir que o encontre e caso não seja encontrado ele será cadastrado como novo.
ENTEND_NAOVALIDACEP
Com esse parâmetro configurado com o valor: "S" no momento do cadastro do endereço do cliente a integração não irá validar o CEP. Caso não exista o parâmetro cadastrado irá assumir o valor "N".
Esse parâmetro funciona em conjunto com o seguinte parâmetro: Define se a validação de CEP será obrigatória ou não. Se o valor for configurado com "S", um erro irá retornar na inserção/atualização do endereço se o CEP não for um CEP válido, nesse caso, NÃO será possível gravar endereço até a troca por um CEP válido. Lembrando que a validação só é feita quando o CEP é fornecido, CEP branco não é validado. Caso não exista o parâmetro cadastrado irá assumir o valor "N".
Parâmetro: ISOENTENDERECO
Detalhe: VALIDACAO_DE_CEP
Valor: "N"
Parâmetro: TELALIBERARCLIENTE
O usuário que deve ser parametrizado é o usuário do motor da integração de entidades com os seguintes detalhes:
LIBERAR
Possíveis valores S ou N. Informar N caso não necessita enviar dados de clientes para a integração. Default N. Caso necessite retornar alterações de clientes para a integração, deve-se deixar N para o usuário do motor de integração e S para os demais usuários do sistema.
LIMPA_INTEGRA_ENTRADA
Possíveis valores S ou N. Informar S para que ao integrar uma informação da entidade, o campo ISOEntCli_Operacao seja atualizado para que os dados do cadastro não sejam retornados ao ERP, neste momento. Default N. Orienta-se deixar S para o usuário do motor de integração e N para os demais usuários do sistema.
Parâmetros para integração de pedidos
Parâmetro: ISOCRM_INTEGRACAO
O usuário que deve ser parametrizado é o usuário do motor da integração de pedidos com os seguintes detalhes:
PVPEDIDO_CODIGO_SITUACAOERRO
Quando ocorrer algum erro na integração de pedido, o pedido integrado no isoCRM irá mudar de situação para a situação parametrizado nesse detalhe.
Se não for parametrizado, o motor irá cadastrar a situação do pedido CANCELADO (ERRO NA INTEGRACAO) com situação interna CANCELADO, e em seguida irá parametrizar o código dessa situação no detalhe PVPEDIDO_CODIGO_SITUACAOERRO.
PVPEDIDO_CODIGO_SITUACAOAPROVACAO
Quando o pedido for integrado do isoCRM para o sistema Destino (ERP)o pedido no isoCRM irá mudar de situação para a situação parametrizado no detalhe PVPEDITE_CODIGO_SITUACAOAPROVACAO.
Se não for parametrizado, o motor irá cadastrar uma situação com a descrição APROVAÇÃO (INTEGRAÇÃO)com situação interna APROVAÇÃO, em seguida irá parametrizar o código dessa situação no detalhe PVPEDITE_CODIGO_SITUACAO APROVACAO.
PVPEDITE_CODIGO_SITUACAO
Quando as situações dos itens dos pedidos não forem informadas na integração, será utilizado o tipo parametrizado no detalhe PVPEDITE_CODIGO_SITUACAO.
Se não for parametrizado, o motor irá cadastrar uma situação com a descrição NÃO DEFINIDO com situação interna ABERTO, em seguida irá parametrizar o código dessa situação no detalhe PVPEDITE_CODIGO_SITUACAO .
PEDORI_CODIGO_ORIGEM
A origem do pedido deve ser parametrizado nesse detalhe, se não for parametrizado, o motor irá procurar uma origem com o código IVT, se encontrar, irá parametrizar o código dessa origem no detalhe PEDORI_CODIGO_ORIGEM, caso contrário, irá cadastrar uma origem com código IVT e descrição INTEGRAÇÃO VIA TABELAS e irá parametrizar esse código.
PEDITEORI_CODIGO_ORIGEM
A origem do item do pedido deve ser parametrizado nesse detalhe, se não for parametrizado, o motor irá procurar uma origem com o código IVT, se encontrar, irá parametrizar o código dessa origem no detalhe PEDORI_CODIGO_ORIGEM, caso contrário, irá cadastrar uma origem com código IVT e descrição INTEGRAÇÃO VIA TABELAS e irá parametrizar esse código.
ISOPVTV_CODIGO
Configurar o código padrão da condição de pagamento, caso não venha informado na integração ou a informada não foi encontrada no isoCRM.
ISOPVPED_VENDEDORCD
Configurar o código padrão do responsável do pedido, caso não venha informado na integração ou o informado não foi encontrado no isoCRM.
CNDPGTO_USA_CODIGO
Define se a informação que está vindo da integração é o código da condição de pagamento ou a descrição. S para código e N para descrição. Default N. Utilizado na integração de saída de pedidos.
ISOPVPED_CODIGOATENDENTE
Configurar o código padrão do atendente do pedido. Por padrão o código do atendente gravado virá o código do responsável do pedido. Caso não tenha sido encontrado o responsável o código gravado que será gravado será o configurado neste detalhe.
ORIGEM_SAIDA
Configurar o código de origem do isoCRM para que, no webservice de saída do pedido, busque e envie o código externo do cliente.
SITUACAO_PEDIDO_SAIDA
Configurar os códigos das situações dos pedidos que serão enviados na integração de saída do pedido. Caso exista mais de uma situação, repetir o detalhe com os referidos códigos das situações.
SITUACAO_TIPO_PEDIDO_SAIDA
Configurar os códigos das situações dos pedidos X Tipos de pedidos que serão enviados no webservice de saída do pedido. Deverá cadastrar a situação e valor separados por ponto e vírgula. Ex: 1;22 onde 1 é o código da situação do pedido e 22 o código do tipo de pedido. Caso existam mais de uma situação X tipo, repetir o detalhe com os referidos valores.
ITENS_PEDIDOS_CANCELADOS
Informar se itens cancelados serão disponibilizados na integração de saída dos pedidos. S para sim. N para não. Default S.
PEDIDO_ENTIDADE_LIBERACAO
Recomendado deixar como N. Caso seja necessário informar se a integração de saída utilizará o campo ISOPvPed_CliOperacao da tabela ISOPvPedido para enviar pedidos. Caso S o campo deverá estar “” para a integração liberar o pedido. Caso N não irá considerar o conteúdo do campo. Default N.
VALIDAR_SITUACAO_PEDIDO_SAIDA
Informar se a integração de saída verificará se a situação interna do pedido é “ABERTO”. Caso S só irá liberar pedidos com situação interna ABERTO. Caso N irá liberar pedidos ignorando a situação interna. Default S.
SAIDA_CLIENTE_INATIVO
Informar se a integração de saída verificará se a situação do cliente está ativa. Caso N só irá liberar pedidos de clientes ativos. Caso S irá liberar pedidos de clientes ativos e inativos. Default N.
ENTRADA_CLIENTE_LIMPACLIOPER
Cadastra-se S para o usuário do motor de integração, definindo que este deve limpar o campo ISOEntCli_Operacao ao integrar os dados do papel cliente. Default N.
DELAY_SAIDA_PEDIDO
Define um atraso em segundos a partir do momento da execução do motor de saída de pedidos. Ex.: Se o motor for executar ás 12:00:00 e definir o parâmetro com o valor de 60 (sessenta segundos), o motor irá processar os pedidos que foram concluídos até 11:59:00.
Integrando entidades
Para integrar entidade no isoCRM, as tabelas que deverão ser alimentadas são:
Int_ISOEntPessoa – Pessoas físicas
Int_ISOEntOrganizacao – Pessoas jurídicas
Int_ISOEntEndereco - Endereços
Int_ISOEntEndCategoriaFiscal - Categoria fiscal dos endereços
Int_ISOEntTelefone - Telefones
Int_ISOEntEcontact - Econtacts
Int_ISOEnt_DadoComplementar – Dados complementares
Int_ISOEnt_DadoComplementarResp – Respostas tabuladas dos dados complementares
Int_ISOEntCliente – Entidade como cliente
Int_ISOEntRelacao – Relacionamento de entidades
Int_ISOEntRspCliente – Responsável do cliente
Int_ISOEntCliDC – Dado complementar do cliente e ficha do cliente
Int_ISOEntCliDCR – Respostas tabuladas dos dados complementares dos clientes e das fichas dos clientes
Int_ISOEntCliTabVenda – Tabelas de venda dos clientes
Int_ISOEmpEntAlerta – Alertas dos clientes
Int_ISOEntCategoriaFiscal – Categoria fiscal do cliente
Integrando produtos
Para integrar produtos no isoCRM, as tabelas que deverão ser alimentadas são:
Int_ISOProdutos - Prudutos
Int_ISOPrdEstoqueProgramado – Estoque programado
Int_ISOArmProdutos – Armazéns x Produtos
Int_ISOPrdFavoritos – Produtos favoritos
Int_ISOMatrizUndPrd – Matriz de unidades
Int_ISOPrdArmLote - Lotes
Int_ISOPrdDA – Descontos/Acréscimos
Int_ISOPrdPrecoLista – Preço de lista
Int_ISOPrdUndFatorConversao – Unidade/Fator de conversão
Int_ISOPrd_DadoComplementar – Dados complementares
Int_ISOPrd_DadoComplementarRes – Respostas válidas dos dados complementares
Int_ISOPeCatFiscal – Categoria fiscal
Int_ISOPeAgrFiscal – Agrupamento fiscal
Int_ISOPvClassificacaoFiscal – Classificação fiscal
Int_ISOPeOriProduto - Origem
Int_ISOPvDestinacao - Destinação
Int_ISOPeEspProduto – Espécie
Int_ISOPrdDadoFiscal – Dados fiscais
Int_ISOPvEstabelecimento - Estabelecimentos
Int_ISOPvPrdEstabelecimento – Estabelecimentos x Produtos
Integrando pedidos
Para integrar pedidos no isoCRM, as tabelas que deverão ser alimentadas são:
Int_ISOPeNatOperacao – Natureza de operação
Int_ISOPvICMS - ICMS
Int_ISOMatrizIPI – Matriz de IPI
Int_ISOMatrizICMS – Matriz de ICMS
Int_ISOPvFrete – Matriz de frete
Int_ISOPvMatSubTributaria – Matriz de substituição tributária
Int_ISOPvMatPISCOFINS – Matriz de PIS/COFINS
Int_ISOPvMatPISCOFINSRepasse – Matriz de PIS/COFINS repasse
Int_ISOPvAliqPISCOFINS – Alíquotas de PIS/COFINS
Int_ISOPvTabelaVenda – Condições de pagamentos
Int_ISOPvTVUsuEst – Usuários x Condições de pagamentos
Int_ISOPvTvMaCondicao – Matriz de condição de pagamento
Int_ISOPvPedido - Pedido
Int_ISOPvPedItem – Itens dos pedidos
Int_ISOPvPedIteDA – Descontos/Acréscimos dos itens dos pedidos
Int_ISOPvPedObservacao – Observações dos pedidos
Int_ISOPvPed_DadoComplementar – Dados complementares dos pedidos
Int_ISOPvPed_DadoComplementarResp – Respostas válidas dos dados complementares dos dos pedidos
Int_ISOPvPedIt_DadoComplementa - Dados complementares dos itens dos pedidos
Int_ISOPvPedIt_DCResp - Respostas válidas dos dados complementares dos itens dos pedidos
Int_ISOPvPedIteOrdProducao – Ordem de produção
Condições para integração:
Os clientes referentes aos pedidos devem ser integrandos anteriormente.
Os produtos referentes aos itens dos pedidos devem ser integrados anteriormente.
Tabelas de cadastro de clientes
Int_ISOEntPessoa - Pessoa física
Int_ISOEntOrganização - Pessoa Jurídica (Empresas)
Int_ISOEntEndereco - Endereços
Int_ISOEntEndCategoriaFiscal - Categoria fiscal dos endereços
Int_ISOEntTelefone - Telefones
Int_ISOEntEcontact - Endereços eletrônicos, e-mail, site, redes sociais
Int_ISOEntCliente - Informações sobre cliente
Int_ISOEntCliTabVenda - Tabelas de vendas disponíveis para o cliente
Int_ISOEntRelacao - Relacionamento entre as pessoas e organizações
Int_ISOEntRspCliente - Responsáveis pelo cliente
Int_ISOEnt_DadoComplementar - Dados complementares
Int_ISOEntCliDC - Dados complementares das informações do cliente
Int_ISOEmpEntAlerta - Alertas do cliente
Int_ISOEntCategoriaFiscal - Informações fiscais do cliente
Tabelas de produtos
Int_ISOProdutos - Produtos comercializados
Int_ISOArmProdutos - Local de armazenamento dos produtos
Int_ISOPrdPrecoLista - Lista de preço dos produtos
Tabela de preço lista: -> Valor do produto para uma lista de preço definido por uma chave. O valor da chave é obrigatório. O cliente somente irá utilizar esse preço se a mesma tabela (chave) estiver vinculada a ele.
Tabela de preço por cliente: -> Valor do produto para um determinado cliente. É obrigatório enviar o código isoCRM do cliente ou código externo e a origem do cliente ou CPF ou CNPJ do cliente..
Tabela de preço por região: -> Para utilizar a tabela de preço por região é necessário efetuar o cadastro da região no isoCRM e vincular essa região ao cliente. O código da região gerado pelo isoCRM é a chave que deverá ser utilizada no campo região desse método. Clique aqui para ver as regras específicas do método região.
Tabela de preço desconto: -> Para utilizar a tabela de preço de desconto é necessário cadastrar o parâmetro PERCODDES com o valor do código da pergunta do dado complementar do papel cliente. E a chave utilizada no cadastro da tabela de preço deverá ser a mesma da resposta do dado complementar do cliente.
Tabela de preço armazém + lista: -> Para essa tabela de preço a chave será composta pelo código do armazém concatenado "_" com o chave da lista. Ex.: A1_LISTA. E para relacionar essa tabela de preço com o cliente, deverá cadastrar a chave da tabela de preço no endereço de entrega do cliente.
Int_ISOPrdDA - Lista de possíveis descontos/acréscimos do produto
Int_ISOPrdUndFatorConversao - Fator de conversão da unidade de venda do produto
Int_ISOPrdArmLote - Local de armazenamento do lote do produto
Int_ISOPrdEstoqueProgramado - Definição de estoque programado do produto
Int_ISOPrd_DadoComplementar - Dados complementares do produto
Int_ISOPrdFavoritos - Produtos favoritos de um cliente
Int_ISOPeCatFiscal - Categoria fiscal utilizado no produto
Int_ISOPeAgrFiscal - Agrupamento fiscal utilizado no produto
Int_ISOPeEspProduto - Espécie do produto
Int_ISOPeOriProduto - Origem do produto
Int_ISOPvPrdEstabelecimento - Estabelecimento do produto
Parâmetros fiscais
Int_ISOPvICMS - Parametros de ICMS
Int_ISOPvDestinacao - Definição de destinação utilizada no produto
Int_ISOPvClassificacaoFiscal - Definição da classificação fiscal utilizada no produto
Int_ISOPeNatOperacao - Definição da natureza de operação
Int_ISOPvEstabelecimento - Definição dos estabelecimentos a serem utilizados
ISOPvEstab_CodTratRepICMS: Caso esteja configurado com os valores 1 ou 5 não irá aplicar repasse de ICMS.
ISOPvEstab_CodCalcRepICMS: Caso esteja configurado com o valor 1 irá utilizar como base de cálculo para repasse a matriz de ICMS da UF do cliente.
Int_ISOPvEstab_GerPISCOFINS - GERAL: Define se as alíquotas de PIS e COFINS serão adicionadas na base de cálculo. Valor "SSS" considera PIS e COFINS no cálculo de ajuste de preço de lista. Valor "NNN" não considera PIS e COFINS no cálculo de ajuste de preço de lista.
Considera todos os clientes.
Int_ISOPvEstab_CliPISCOFINS - CLIENTE: Define se as alíquotas de PIS e COFINS serão adicionadas na base de cálculo. Valor "SSS" verifica no cadastro da categoria fiscal do cliente se considera PIS e COFINS no cálculo de ajuste de preço de lista. Valor "NNN" não considera PIS e COFINS no cálculo de ajuste de preço de lista.
Somente vai verificar essa regra por cliente se o campo GERAL (Int_ISOPvEstab_GerPISCOFINS ) estiver configurado para considerar PIS/COFINS.
Int_ISOPvAliqPISCOFINS - Definição das alíquotas de PIS/COFINS
Int_ISOPrdDadoFiscal - Dados fiscal ao qual o produto pertence
Matrizes de impostos
Int_ISOMatrizICMS - Matriz de ICMS para definição de alíquota
Int_ISOMatrizIPI - Matriz de IPI para definição de alíquota
Int_ISOPvMatSubTributaria - Matriz de ST para definição de alíquota
Int_ISOPvMatSubsT_AliqICMSDif: Alíquota de ICMS próprio.
Int_ISOPvMatSubsT_DescontoBCICMS: Caso seja informado com o valor “S” será aplicado o desconto na base de cálculo da ST.
Int_ISOPvMatSubsT_PercMarLucroFix: Referente ao MVA (Margem de Valor Agregado).
Int_ISOPvMatSubsT_SubstPrecoMaximo: Define se o IPI soma na base de cálculo da substituição tributária. Caso informe o valor “N” o IPI será somado, quando possuir, na base de cálculo da ST.
Int_ISOPvMatSubsT_AplicMvaDir: Aplicação de substituição tributária diferenciada. Quando informado o valor “2” é utilizado o valor do Int_ISOPvMatSubsT_PercMarLucroFix diretamente na base de cálculo. Assim, o valor do ST será o resultado da carga tributária presumida, devendo ser calculado sem o MVA e também sem a dedução do valor do ICMS próprio. Ex.: (valor da mercadoria x quantidade) x percentual ST. Quando informado o valor "3" só não é efetuado a redução do ICMS de origem ou o ICMS destacado em nota. Ex:
( (valor da mercadoria x quantidade) + (mva calculado)) * % ICMS Próprio.
Int_ISOPvMatPISCOFINS - Matriz de PIS/COFINS para definição de alíquota
Int_ISOPvMatPISCOFINSRepasse - Matriz de repasse PIS/COFINS para definição de alíquota
Matrizes
Int_ISOMatrizUndPrd - Matriz para definição das unidades de venda dos produtos
Int_ISOMatrixUndPrd - Estabelece uma regra de negócio para determinar que tal responsável só pode vender para tal cliente uma certa quantidade de produto. EX: responsável 1 está criando um pedido para o cliente 10, e na matriz esta estabelecido que neste caso só poderá vender Paracetamol (prod 20) de 10x unidades.
Int_ISOPvTvMaCondicao - Matriz para definição das condições de pagamentos possíveis
Int_ISOPromocao - Definição das promoções
No caso de utilizar promoção fechada (Int_ISOPrm_Fechada = S), será obrigatório enviar os ao menos campos Int_ISOPrmFai_Descricao, Int_ISOPrmFai_QtdeInicial e Int_ISOPrmFai_QtdeFinal.
No caso de não utilizar promoção fechada (Int_ISOPrm_Fechada = N), os campos iniciados em Int_ISOPrmFai_* não necessitam ser informados.