Projeto

Geral

Perfil

Manual de Integração » Histórico » Versão 62

victor.klemann, 12/08/2016 13:38 h

1 23 Anônimo
h1. Manual de Integração
2 1 Anônimo
3 36 Anônimo
[[Envio de Duplicatas]]
4 40 vinidalmagro
[[CRM]]
5 52 Anônimo
[[Digitação de Pedidos]]
6 57 ivo
[[Loja Virtual]]
7 23 Anônimo
8 23 Anônimo
9 1 Anônimo
*Índice* 
10 23 Anônimo
# [[Manual de Integração#Introdução|Introdução]] 
11 23 Anônimo
# [[Manual de Integração#Acesso-via-JDBC|Acesso via JDBC]] 
12 23 Anônimo
# [[Manual de Integração#Tabelas-de-Integração|Tabelas de Integração]] 
13 23 Anônimo
## [[Manual de Integração#Representantes|Representantes]] 
14 23 Anônimo
## [[Manual de Integração#Municípios-do-Representante|Municípios do Representante]] 
15 23 Anônimo
## [[Manual de Integração#Clientes-e-Prospects|Clientes e Prospects]] 
16 60 victor.klemann
## [[Manual de Integração#Marcas-do-Cliente|Marcas do Cliente]] 
17 23 Anônimo
## [[Manual de Integração#Coleções|Coleções]] 
18 23 Anônimo
## [[Manual de Integração#Linhas-de-Produto|Linhas de Produto]] 
19 47 Anônimo
## [[Manual de Integração#Marcas|Marcas]] 
20 23 Anônimo
## [[Manual de Integração#Vendas|Vendas]] 
21 56 Anônimo
## -[[Manual de Integração#Liquidez|Liquidez]]- (depreciado)
22 22 Anônimo
23 1 Anônimo
h1. Introdução
24 1 Anônimo
25 23 Anônimo
O presente documento tem por objetivo orientar as empresas de ERP na geração dos arquivos e/ou tabelas necessárias para integração com o IGS.
26 1 Anônimo
27 54 Anônimo
Dúvidas ou maiores esclarecimentos podem ser obtidos pelo e-mail suporte@ibtech.inf.br ou pelo telefone (47) 3370-0504.
28 1 Anônimo
29 23 Anônimo
h1. Acesso via JDBC
30 1 Anônimo
31 23 Anônimo
*Pré-Requisito:* Suporte por parte do Banco de Dados da Empresa fornecedora do ERP a acesso JDBC.
32 1 Anônimo
33 23 Anônimo
Na integração via JDBC a fornecedora de ERP deve disponibilizar para a IBTech tabelas (ou visões) conforme os layouts especificados neste documento, também deverá fornecer um usuário e senha que tenha permissão de consulta nas referidas tabelas ou visões. A IBTech fará acesso via JDBC à base de dados do cliente para extrair as informações.
34 23 Anônimo
35 23 Anônimo
h1. Tabelas de Integração
36 23 Anônimo
37 23 Anônimo
Todas as tabelas/visões tem um campo chamado “codEmpresa” que separa a geração dos dados entre as possíveis várias empresas que o cliente tenha na mesma base de ERP.
38 23 Anônimo
39 23 Anônimo
*Observação:* Os campos com asterisco (*) compõem a “primaryKey” e podem ser enviados como String ou Integer dependendo da necessidade do cliente.
40 23 Anônimo
41 23 Anônimo
Seguem os layouts das tabelas/visões
42 23 Anônimo
43 23 Anônimo
h2. Representantes
44 23 Anônimo
45 23 Anônimo
Esta tabela/visão será utilizada para carregar no IGS a lista de representantes. Não é uma integração obrigatória, pois o cliente pode digitar os representantes diretamente no IGS.
46 23 Anônimo
47 23 Anônimo
|_. Campo      |_. Tipo   |_. Precisão |_. Descrição |
48 23 Anônimo
| codEmpresa * | String/Integer   | 10         | Código da Empresa origem dos dados |
49 23 Anônimo
| codRepres *  | String/Integer   | 255        | Código do Representante no ERP |
50 23 Anônimo
| nome         | String   | 255        | Nome do Representante |
51 23 Anônimo
| telefone     | String   | 255        | Telefone de Contato |
52 23 Anônimo
| email        | String   | 255        | E-Mail |
53 23 Anônimo
| endereco     | String   | 255        | Rua + Número do endereço do Representante |
54 23 Anônimo
| bairro       | String   | 255        | Bairro do Endereço do Representante |
55 23 Anônimo
| CEP          | String   | 8          | CEP do endereço do Representante |
56 23 Anônimo
| Cidade       | String   | 255        | Nome da Cidade do Endereço do Representante |
57 23 Anônimo
| UF           | String   | 2          | Sigla da UF da Cidade |
58 23 Anônimo
| codIBGE      | String   | 7          | Codigo do IBGE da Cidade |
59 23 Anônimo
| situacao     | Integer |          | Situação do cadastro do representante: 0 - Inativo, 1 - Ativo |
60 23 Anônimo
61 23 Anônimo
h2. Municípios do Representante
62 23 Anônimo
63 23 Anônimo
Tabela/visão com a relação dos municípios que o representante atende. Esta não é uma integração obrigatória.
64 23 Anônimo
65 23 Anônimo
|_. Campo      |_. Tipo   |_. Precisão |_. Descrição |
66 23 Anônimo
| codEmpresa * | String/Integer  | 10         | Código da Empresa origem dos dados |
67 23 Anônimo
| codRepres *  | String/Integer   | 255        | Código do Representante no ERP |
68 23 Anônimo
| codIBGE      | String   | 7          | Codigo do IBGE da Cidade |
69 30 Anônimo
| nomeDistrito       | String   | 255        | Nome da Cidade ou Distrito |
70 23 Anônimo
71 23 Anônimo
h2. Clientes e Prospects
72 23 Anônimo
73 23 Anônimo
Tabela/visão com a relação dos clientes e prospects.
74 23 Anônimo
Podem ser listados clientes ativos ou inativos dependendo da necessidade do cliente.
75 23 Anônimo
76 23 Anônimo
*Situação:* O conceito de situação do cliente para o IGS é:
77 23 Anônimo
* 0-Inativo: Cliente que não está comprando, mas pode voltar a comprar
78 23 Anônimo
* 1-Ativo: Cliente com compra regular
79 23 Anônimo
* 2-Bloqueado: Cliente com restrições (ex: crédito) ou "Clientes que não interessam a empresa"
80 23 Anônimo
Caso seu ERP tenha somente os clientes ativos e inativos, retorne desta forma.
81 23 Anônimo
82 23 Anônimo
*Representante:* Só usar os campos codRepres2 e codRepres3 caso o cliente tenha variação de representante por linha de produto
83 23 Anônimo
84 23 Anônimo
|_. Campo      |_. Tipo   |_. Precisão |_. Descrição |
85 23 Anônimo
| codEmpresa * | String/Integer   | 10         | Código da Empresa origem dos dados |
86 23 Anônimo
| codIBGE     | String   | 7          | Codigo do IBGE da Cidade |
87 23 Anônimo
| codCliente *    | String/Integer   | 255          | Codigo do Cliente ou Prospect |
88 23 Anônimo
| tipo      | Integer   |           | Tipo de registro: 1 - Cliente, 2 - Prospect |
89 23 Anônimo
| nome         | String   | 255        | Nome do cliente |
90 23 Anônimo
| situacao     | Integer |          | Situação do cadastro do cliente: 0 - Inativo, 1 - Ativo, 2 - Bloqueado |
91 23 Anônimo
| codRepres1   | String   | 255        | Código do Representante Principal no ERP |
92 23 Anônimo
| codRepres2  | String   | 255        | Código do Representante 2 no ERP |
93 23 Anônimo
| codRepres3   | String   | 255        | Código do Representante 3 no ERP |
94 23 Anônimo
| telefone     | String   | 255        | Telefone de Contato |
95 23 Anônimo
| email        | String   | 255        | E-Mail |
96 23 Anônimo
| endereco     | String   | 255        | Rua + Número do endereço do cliente |
97 23 Anônimo
| bairro       | String   | 255        | Bairro do Endereço do cliente |
98 23 Anônimo
| CEP          | String   | 8          | CEP do endereço do cliente |
99 23 Anônimo
| dataCadastro | Date    |          | Data de Cadastro do Cliente |
100 29 Anônimo
| cnpjCpf | String | 255 | CNPJ ou CPF do cliente |
101 29 Anônimo
| emailCobranca | String | 255 | Endereço de e-mail de cobrança |
102 43 ivo
| nomeDistrito       | String   | 255        | Nome do Distrito (para o caso de São Paulo, os bairros – para o caso de Brasília, os Distritos)
103 43 ivo
Se o seu sistema não tiver esta informação, retornar o bairro. |
104 38 vinidalmagro
| celular       | String   | 255        | Numero do Celular |
105 38 vinidalmagro
| inscricaoEstadual       | String   | 255        | Inscrição estadual do cliente |
106 39 vinidalmagro
| enderecoNumero       | String   | 255        | Número do endereço do cliente  |
107 38 vinidalmagro
| complemento       | String   | 255        | Complemento do endereço |
108 44 Anônimo
| IndicePontualidade       | Number   | 5,2       | Indice de Pontualidade. |
109 41 ivo
| telefone2       | String   | 255        | Telefone 2. Se não existir o campo, retornar null |
110 1 Anônimo
| telefoneCobranca       | String   | 255        | Telefone de cobrança. Se não existir o campo, retornar null |
111 50 Anônimo
| grupoCliente | String | 255 | Grupo Economico do Cliente (conforme regra de negócio de cada empresa). Se o seu ERP não tem isso, retornar null |
112 50 Anônimo
| codClientePrincipalGrupo | String | 255 | Código do cliente principal do Grupo Economico (conforme regra de negócio de cada empresa). Se o seu ERP não tem isso, retornar null |
113 61 victor.klemann
| situacaoEdt     | String |   255       | Descrição da Situação |
114 23 Anônimo
115 62 victor.klemann
h2. Cliente e Prospect - Histórico
116 62 victor.klemann
117 62 victor.klemann
|_. Campo      |_. Tipo   |_. Precisão |_. Descrição |
118 62 victor.klemann
| dataAlteracao | Date |             | Data da Alteração | 
119 62 victor.klemann
| horaAlteracao | Date  |           | Hora da Alteração |
120 62 victor.klemann
| codUsuario     |  String | 255  | Código do Usuário |
121 62 victor.klemann
| nomeUsuario  | String | 255  | Nome do usuário |
122 62 victor.klemann
| situacao           | String | 255  | Código da Situação |
123 62 victor.klemann
| situacaoEdt     | String | 255  | Descrição da Situação |
124 62 victor.klemann
125 62 victor.klemann
126 62 victor.klemann
127 59 victor.klemann
h2. Marcas do Cliente
128 59 victor.klemann
129 59 victor.klemann
Tabela com a relação de marcas do cliente, conforme vendas.
130 59 victor.klemann
131 59 victor.klemann
|_. Campo      |_. Tipo   |_. Precisão |_. Descrição |
132 59 victor.klemann
| codEmpresa * | String | 255         | Código da Empresa origem dos dados |
133 59 victor.klemann
| codCliente *    | String   | 255          | Codigo do Cliente |
134 59 victor.klemann
| codMarca * | String   | 255          | Código da Marca |
135 59 victor.klemann
136 23 Anônimo
h2. Coleções
137 23 Anônimo
138 23 Anônimo
Tabela/visão com a relação das coleções.
139 23 Anônimo
140 23 Anônimo
|_. Campo      |_. Tipo   |_. Precisão |_. Descrição |
141 23 Anônimo
| codEmpresa * | String/Integer   | 10         | Código da Empresa origem dos dados |
142 23 Anônimo
| codColecao *     | String   | 255          | Codigo da coleção |
143 23 Anônimo
| nome      | String   | 255          | Nome da coleção |
144 23 Anônimo
145 23 Anônimo
h2. Linhas de Produto
146 23 Anônimo
147 23 Anônimo
Lista das linhas de produtos que tiveram dados gerados.
148 23 Anônimo
Entendesse como Linha de Produto a forma adotada pela empresa detentora do ERP para dividir seus produtos em grupos! Em caso de confecções, por exemplo, pode-se utilizar os critérios de (Infantil, Masculino, Feminino,etc.)
149 23 Anônimo
150 23 Anônimo
|_. Campo      |_. Tipo   |_. Precisão |_. Descrição |
151 23 Anônimo
| codEmpresa * | String/Integer  | 10   | Código da Empresa origem dos dados |
152 23 Anônimo
| codLinha *     | String  | 255        | Codigo da linha de produto |
153 23 Anônimo
| nome      | String   | 255          | Nome da linha de produto |
154 46 Anônimo
155 46 Anônimo
h2. Marcas
156 46 Anônimo
157 46 Anônimo
_Integração Opcional - Confirme com a IBTech a necessidade de criar esta integração._
158 46 Anônimo
Lista de marcas por empresa.
159 46 Anônimo
160 46 Anônimo
|_. Campo      |_. Tipo   |_. Precisão |_. Descrição |
161 46 Anônimo
| codEmpresa * | String/Integer  | 10   | Código da Empresa origem dos dados |
162 46 Anônimo
| codMarca *     | String  | 255        | Código da marca |
163 46 Anônimo
| nome      | String   | 255          | Nome da marca |
164 23 Anônimo
165 23 Anônimo
h2. Vendas
166 23 Anônimo
167 23 Anônimo
Esta é a principal tabela do processo de integração. Ela deverá armazenar os dados necessários para apresentação dos valores relativos às vendas realizadas.
168 23 Anônimo
Geralmente é gerada em cima dos pedidos de venda. Caso o ERP não consiga gerar os dados com base nos pedido de venda, deveremos acionar o cliente para definir outra tabela para extração dos dados (Exemplo: Notas Fiscais).
169 23 Anônimo
Caso a geração seja por coleção (no caso de Confecções, por exemplo), a fornecedora de ERP deve manter uma configuração onde o cliente deverá informar de quais coleções as informações devem ser geradas.
170 23 Anônimo
Caso a geração seja por período, deve-se definir com o cliente de qual período ele quer as informações (ultimo ano, últimos 2 anos, etc).
171 23 Anônimo
172 23 Anônimo
*Prazo Médio:* Média em dias do prazo de pagamento (condição de pagamento). Por exemplo, condição 30/60/90: 30+60+90 = 180, 180 / 3 parcelas = 60 dias.
173 23 Anônimo
174 23 Anônimo
*Campos Coringa:* Os campos coringa são definidos no momento da implantação, para a primeira integração deve-se retornar nestes campos valor nulo (NULL).
175 23 Anônimo
176 23 Anônimo
*Observação:* Os campos com asterisco (*) deverão ser agrupados(group by) e os demais somados (sum).
177 23 Anônimo
178 23 Anônimo
|_. Campo          |_. Tipo   |_. Precisão |_. Descrição |
179 23 Anônimo
| codEmpresa *     | String/Integer   | 10         | Código da Empresa origem dos dados |
180 23 Anônimo
| codColecao *     | String | 255        | Código da Coleção sobre a qual estamos gerando os dados. |
181 23 Anônimo
| dataReferencia * | Date     | 255        | Armazena a data de emissão do Pedido de Venda. (Caso a geração seja em cima das notas fiscais, deverá armazenar a data de emissão da Nota Fiscal) |
182 23 Anônimo
| codLinha *       | String   | 255        | Código da Linha de Produto. Define-se com o cliente o que ele quer gerar como linha de produto.  |
183 23 Anônimo
| codRepres *      | String/Integer   | 255        | Código do Representante no ERP |
184 23 Anônimo
| codCliente *     | String/Integer   | 255        | Codigo do Cliente |
185 23 Anônimo
| codIBGE *        | String  | 7          | Codigo do IBGE da Cidade do Cliente |
186 23 Anônimo
| UF *             | String  | 2          | Sigla da UF da Cidade do Cliente |
187 23 Anônimo
| valorBruto       | Double   |            | Valor Bruto das Vendas |
188 23 Anônimo
| valorLiquido     | Double   |            | Valor Liquido das Vendas (ex: Valor Bruto - Valor Descontos) |
189 23 Anônimo
| valorDesconto    | Double   |            | Valor de Descontos das Vendas |
190 23 Anônimo
| valorComissao    | Double   |            | Valor de Comissão das Vendas |
191 23 Anônimo
| prazoMedioXValor | Double   |            | Valor Líquido das Vendas multiplicado pelo Prazo Médio de pagamento. |
192 23 Anônimo
| quantidade       | Double   |            | Quantidade de Peças das Vendas |
193 23 Anônimo
| nomeCliente *    | String   | 255        | Nome do Cliente |
194 23 Anônimo
| codPedido *      | String   | 255        | Código do Pedido |
195 23 Anônimo
| codProduto *     | String   | 255        | Código do produto ou referência |
196 23 Anônimo
| campoCoringa1 *  | String   | 255        | Campo valores diversos, inicialmente retornar NULL - Ver com IBTech |
197 23 Anônimo
| campoCoringa2 *  | String   | 255        | Campo valores diversos, inicialmente retornar NULL - Ver com IBTech |
198 1 Anônimo
| campoCoringa3 *  | String   | 255        | Campo valores diversos, inicialmente retornar NULL - Ver com IBTech |
199 1 Anônimo
| dataPrevFaturamento | Date    |        | Data de Previsão de Faturamento |
200 43 ivo
| nomeDistrito *       | String   | 255        |  Nome do Distrito (para o caso de São Paulo, os bairros – para o caso de Brasília, os Distritos)
201 43 ivo
Se o seu sistema não tiver esta informação, retornar o bairro. |
202 43 ivo
| grupoCliente       | String   | 255        | Grupo Economico do Cliente (conforme regra de negócio de cada empresa). Se o seu ERP não tem isso, retornar null |
203 43 ivo
| valorRentabilidade | Double   |            | Valor da Rentabilidade do Pedido. Se o seu ERP não tem rentabilidade por pedido, retornar null |
204 45 Anônimo
| dataUltFaturamento | Date   |            | Data do último faturamento |
205 45 Anônimo
| valorFaturado | Double   |            | Valor Faturado |
206 45 Anônimo
| valorSaldo | Double   |            | Valor Saldo |
207 48 Anônimo
| codMarca *       | String   | 255        | Código da Marca do Produto |
208 51 victor.klemann
| nomeGrupoCliente | String | 255 | Descrição do Grupo do Cliente |
209 58 victor.klemann
| dataEmissao | Date | | Data de Emissão do Pedido |
210 23 Anônimo
211 23 Anônimo
h2. Liquidez
212 23 Anônimo
213 23 Anônimo
Listar dados totalizando os valores a receber e os valores recebidos agrupando por representante. Normalmente estes registros são provenientes do cadastro de contas a receber.
214 32 ivo
A Liquidez resume-se a:
215 32 ivo
- O Valor a vencer no período e pago dividido pelo a vencer no período.
216 32 ivo
- Não entra no cálculo da Liquidez os títulos pagos fora do período de vencimento.
217 23 Anônimo
218 1 Anônimo
*Importante!* Este SQL possui parâmetros.
219 1 Anônimo
220 1 Anônimo
Layout da tabela/visão:
221 1 Anônimo
222 23 Anônimo
|_. Campo          |_. Tipo   |_. Precisão |_. Descrição |
223 23 Anônimo
| codRepres *      | String/Integer   | 255        | Código do Representante no ERP |
224 23 Anônimo
| valorAReceber    | Double   |            | Valor a receber acumulado por representante |
225 23 Anônimo
| valorRecebido    | Double   |            | Valor recebido acumulado por representante |
226 1 Anônimo
227 1 Anônimo
Lista de Parâmetros:
228 1 Anônimo
229 23 Anônimo
_Formato sugerido de data: dd/mm/yyyy (31/12/2013)_
230 1 Anônimo
231 23 Anônimo
|_. Parâmetro      |_. Tipo   |_. Precisão |_. Descrição |
232 23 Anônimo
| :pCodEmpresa     | String/Integer   | 10         | (opcional) Código da empresa no ERP |
233 23 Anônimo
| :pDataInicio     | String   | 10         | Data inicial para filtrar o vencimento e pagamento (formato a combinar) |
234 23 Anônimo
| :pDataFim        | String   | 10         | Data final para filtrar o vencimento e pagamento (formato a combinar) |
235 1 Anônimo
236 23 Anônimo
*Exemplo:*
237 1 Anônimo
238 23 Anônimo
Supondo que o ERP possua duas tabelas/visões, uma para Contas a Receber e outra para Contas Recebidas. Então devera ser feito um UNION das duas tabelas a fim de facilitar a manutenção do SQL:
239 1 Anônimo
240 23 Anônimo
*Observação:* Note que usamos uma função “to_date” que converte o valor String para o formato data, utilize uma função compatível com o seu banco. Caso seja necessário utilizar outro formato, favor entrar em contato com a IBTech para configuração.
241 23 Anônimo
242 23 Anônimo
<pre>
243 23 Anônimo
SELECT codRepres, sum(valorAReceber), sum(valorRecebido)
244 23 Anônimo
FROM (
245 23 Anônimo
		SELECT codRepres,
246 23 Anônimo
				valorTitulo as valorAReceber,
247 23 Anônimo
				0.0 as valorRecebido
248 23 Anônimo
		FROM ContasAReceber
249 23 Anônimo
		WHERE codempresa = :pCodEmpresa
250 23 Anônimo
		AND dataVecto >= to_date(:pDataInicio,'dd/mm/yyyy')
251 23 Anônimo
		AND dataVecto <=to_date(:pDataFim,'dd/mm/yyyy')
252 23 Anônimo
		UNION ALL
253 23 Anônimo
		SELECT codrepres,
254 23 Anônimo
				0.0 as valorAReceber,
255 23 Anônimo
				sum(valorTitulo) as valorRecebido
256 23 Anônimo
		FROM ContasRecebidas
257 23 Anônimo
		WHERE codempresa = :pCodEmpresa
258 23 Anônimo
		AND dataPagto >= to_date(:pDataInicio,'dd/mm/yyyy')
259 23 Anônimo
		AND dataPagto <=to_date(:pDataFim,'dd/mm/yyyy')
260 23 Anônimo
		AND dataVecto >= to_date(:pDataInicio,'dd/mm/yyyy')
261 23 Anônimo
		AND dataVecto <=to_date(:pDataFim,'dd/mm/yyyy')
262 23 Anônimo
)
263 23 Anônimo
GROUP BY codRepres
264 23 Anônimo
</pre>