Projeto

Geral

Perfil

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

Anônimo, 16/08/2013 15:03 h

1 23 Anônimo
h1. Manual de Integração
2 1 Anônimo
3 23 Anônimo
[[Integração 1.3]]
4 23 Anônimo
5 23 Anônimo
_Compatível com a versão 1.1.0 e >1.2.1_
6 23 Anônimo
_Editado em: 10/06/2013_
7 23 Anônimo
8 1 Anônimo
*Índice* 
9 23 Anônimo
# [[Manual de Integração#Introdução|Introdução]] 
10 23 Anônimo
# [[Manual de Integração#Acesso-via-JDBC|Acesso via JDBC]] 
11 23 Anônimo
# [[Manual de Integração#Tabelas-de-Integração|Tabelas de Integração]] 
12 23 Anônimo
## [[Manual de Integração#Representantes|Representantes]] 
13 23 Anônimo
## [[Manual de Integração#Municípios-do-Representante|Municípios do Representante]] 
14 23 Anônimo
## [[Manual de Integração#Clientes-e-Prospects|Clientes e Prospects]] 
15 23 Anônimo
## [[Manual de Integração#Coleções|Coleções]] 
16 23 Anônimo
## [[Manual de Integração#Linhas-de-Produto|Linhas de Produto]] 
17 23 Anônimo
## [[Manual de Integração#Vendas|Vendas]] 
18 23 Anônimo
## [[Manual de Integração#Liquidez|Liquidez]]
19 23 Anônimo
## [[Manual de Integração#Títulos-em-Aberto|Títulos em Aberto]] _(versão > 1.2.1)_
20 22 Anônimo
21 1 Anônimo
h1. Introdução
22 1 Anônimo
23 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.
24 1 Anônimo
25 1 Anônimo
Dúvidas ou maiores esclarecimentos podem ser obtidos pelo e-mail contato@ibtech.inf.br ou pelo telefone (47) 3370-0504.
26 1 Anônimo
27 23 Anônimo
h1. Acesso via JDBC
28 1 Anônimo
29 23 Anônimo
*Pré-Requisito:* Suporte por parte do Banco de Dados da Empresa fornecedora do ERP a acesso JDBC.
30 1 Anônimo
31 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.
32 23 Anônimo
33 23 Anônimo
h1. Tabelas de Integração
34 23 Anônimo
35 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.
36 23 Anônimo
37 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.
38 23 Anônimo
39 23 Anônimo
Seguem os layouts das tabelas/visões
40 23 Anônimo
41 23 Anônimo
h2. Representantes
42 23 Anônimo
43 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.
44 23 Anônimo
45 23 Anônimo
|_. Campo      |_. Tipo   |_. Precisão |_. Descrição |
46 23 Anônimo
| codEmpresa * | String/Integer   | 10         | Código da Empresa origem dos dados |
47 23 Anônimo
| codRepres *  | String/Integer   | 255        | Código do Representante no ERP |
48 23 Anônimo
| nome         | String   | 255        | Nome do Representante |
49 23 Anônimo
| telefone     | String   | 255        | Telefone de Contato |
50 23 Anônimo
| email        | String   | 255        | E-Mail |
51 23 Anônimo
| endereco     | String   | 255        | Rua + Número do endereço do Representante |
52 23 Anônimo
| bairro       | String   | 255        | Bairro do Endereço do Representante |
53 23 Anônimo
| CEP          | String   | 8          | CEP do endereço do Representante |
54 23 Anônimo
| Cidade       | String   | 255        | Nome da Cidade do Endereço do Representante |
55 23 Anônimo
| UF           | String   | 2          | Sigla da UF da Cidade |
56 23 Anônimo
| codIBGE      | String   | 7          | Codigo do IBGE da Cidade |
57 23 Anônimo
| situacao     | Integer |          | Situação do cadastro do representante: 0 - Inativo, 1 - Ativo |
58 23 Anônimo
59 23 Anônimo
h2. Municípios do Representante
60 23 Anônimo
61 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.
62 23 Anônimo
63 23 Anônimo
|_. Campo      |_. Tipo   |_. Precisão |_. Descrição |
64 23 Anônimo
| codEmpresa * | String/Integer  | 10         | Código da Empresa origem dos dados |
65 23 Anônimo
| codRepres *  | String/Integer   | 255        | Código do Representante no ERP |
66 23 Anônimo
| codIBGE      | String   | 7          | Codigo do IBGE da Cidade |
67 25 Anônimo
| cidade       | String   | 255        | Nome da Cidade |
68 23 Anônimo
69 23 Anônimo
h2. Clientes e Prospects
70 23 Anônimo
71 23 Anônimo
Tabela/visão com a relação dos clientes e prospects.
72 23 Anônimo
Podem ser listados clientes ativos ou inativos dependendo da necessidade do cliente.
73 23 Anônimo
74 23 Anônimo
*Situação:* O conceito de situação do cliente para o IGS é:
75 23 Anônimo
* 0-Inativo: Cliente que não está comprando, mas pode voltar a comprar
76 23 Anônimo
* 1-Ativo: Cliente com compra regular
77 23 Anônimo
* 2-Bloqueado: Cliente com restrições (ex: crédito) ou "Clientes que não interessam a empresa"
78 23 Anônimo
Caso seu ERP tenha somente os clientes ativos e inativos, retorne desta forma.
79 23 Anônimo
80 23 Anônimo
*Representante:* Só usar os campos codRepres2 e codRepres3 caso o cliente tenha variação de representante por linha de produto
81 23 Anônimo
82 23 Anônimo
|_. Campo      |_. Tipo   |_. Precisão |_. Descrição |
83 23 Anônimo
| codEmpresa * | String/Integer   | 10         | Código da Empresa origem dos dados |
84 23 Anônimo
| codIBGE     | String   | 7          | Codigo do IBGE da Cidade |
85 23 Anônimo
| codCliente *    | String/Integer   | 255          | Codigo do Cliente ou Prospect |
86 23 Anônimo
| tipo      | Integer   |           | Tipo de registro: 1 - Cliente, 2 - Prospect |
87 23 Anônimo
| nome         | String   | 255        | Nome do cliente |
88 23 Anônimo
| situacao     | Integer |          | Situação do cadastro do cliente: 0 - Inativo, 1 - Ativo, 2 - Bloqueado |
89 23 Anônimo
| codRepres1   | String   | 255        | Código do Representante Principal no ERP |
90 23 Anônimo
| codRepres2  | String   | 255        | Código do Representante 2 no ERP |
91 23 Anônimo
| codRepres3   | String   | 255        | Código do Representante 3 no ERP |
92 23 Anônimo
| telefone     | String   | 255        | Telefone de Contato |
93 23 Anônimo
| email        | String   | 255        | E-Mail |
94 23 Anônimo
| endereco     | String   | 255        | Rua + Número do endereço do cliente |
95 23 Anônimo
| bairro       | String   | 255        | Bairro do Endereço do cliente |
96 23 Anônimo
| CEP          | String   | 8          | CEP do endereço do cliente |
97 23 Anônimo
| dataCadastro | Date    |          | Data de Cadastro do Cliente |
98 29 Anônimo
| cnpjCpf | String | 255 | CNPJ ou CPF do cliente |
99 29 Anônimo
| emailCobranca | String | 255 | Endereço de e-mail de cobrança |
100 29 Anônimo
| nomeDistrito       | String   | 255        | Nome do Distrito (em caso de São Paulo, os bairros) |
101 23 Anônimo
102 23 Anônimo
h2. Coleções
103 23 Anônimo
104 23 Anônimo
Tabela/visão com a relação das coleções.
105 23 Anônimo
106 23 Anônimo
|_. Campo      |_. Tipo   |_. Precisão |_. Descrição |
107 23 Anônimo
| codEmpresa * | String/Integer   | 10         | Código da Empresa origem dos dados |
108 23 Anônimo
| codColecao *     | String   | 255          | Codigo da coleção |
109 23 Anônimo
| nome      | String   | 255          | Nome da coleção |
110 23 Anônimo
111 23 Anônimo
h2. Linhas de Produto
112 23 Anônimo
113 23 Anônimo
Lista das linhas de produtos que tiveram dados gerados.
114 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.)
115 23 Anônimo
116 23 Anônimo
|_. Campo      |_. Tipo   |_. Precisão |_. Descrição |
117 23 Anônimo
| codEmpresa * | String/Integer  | 10   | Código da Empresa origem dos dados |
118 23 Anônimo
| codLinha *     | String  | 255        | Codigo da linha de produto |
119 23 Anônimo
| nome      | String   | 255          | Nome da linha de produto |
120 23 Anônimo
121 23 Anônimo
h2. Vendas
122 23 Anônimo
123 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.
124 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).
125 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.
126 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).
127 23 Anônimo
128 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.
129 23 Anônimo
130 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).
131 23 Anônimo
132 23 Anônimo
*Observação:* Os campos com asterisco (*) deverão ser agrupados(group by) e os demais somados (sum).
133 23 Anônimo
134 23 Anônimo
|_. Campo          |_. Tipo   |_. Precisão |_. Descrição |
135 23 Anônimo
| codEmpresa *     | String/Integer   | 10         | Código da Empresa origem dos dados |
136 23 Anônimo
| codColecao *     | String | 255        | Código da Coleção sobre a qual estamos gerando os dados. |
137 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) |
138 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.  |
139 23 Anônimo
| codRepres *      | String/Integer   | 255        | Código do Representante no ERP |
140 23 Anônimo
| codCliente *     | String/Integer   | 255        | Codigo do Cliente |
141 23 Anônimo
| codIBGE *        | String  | 7          | Codigo do IBGE da Cidade do Cliente |
142 23 Anônimo
| UF *             | String  | 2          | Sigla da UF da Cidade do Cliente |
143 23 Anônimo
| valorBruto       | Double   |            | Valor Bruto das Vendas |
144 23 Anônimo
| valorLiquido     | Double   |            | Valor Liquido das Vendas (ex: Valor Bruto - Valor Descontos) |
145 23 Anônimo
| valorDesconto    | Double   |            | Valor de Descontos das Vendas |
146 23 Anônimo
| valorComissao    | Double   |            | Valor de Comissão das Vendas |
147 23 Anônimo
| prazoMedioXValor | Double   |            | Valor Líquido das Vendas multiplicado pelo Prazo Médio de pagamento. |
148 23 Anônimo
| quantidade       | Double   |            | Quantidade de Peças das Vendas |
149 23 Anônimo
| nomeCliente *    | String   | 255        | Nome do Cliente |
150 23 Anônimo
| codPedido *      | String   | 255        | Código do Pedido |
151 23 Anônimo
| codProduto *     | String   | 255        | Código do produto ou referência |
152 23 Anônimo
| campoCoringa1 *  | String   | 255        | Campo valores diversos, inicialmente retornar NULL - Ver com IBTech |
153 23 Anônimo
| campoCoringa2 *  | String   | 255        | Campo valores diversos, inicialmente retornar NULL - Ver com IBTech |
154 23 Anônimo
| campoCoringa3 *  | String   | 255        | Campo valores diversos, inicialmente retornar NULL - Ver com IBTech |
155 28 Anônimo
| cidade *       | String   | 255        | Nome da Cidade |
156 23 Anônimo
157 23 Anônimo
h2. Liquidez
158 23 Anônimo
159 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.
160 23 Anônimo
161 1 Anônimo
*Importante!* Este SQL possui parâmetros.
162 1 Anônimo
163 1 Anônimo
Layout da tabela/visão:
164 1 Anônimo
165 23 Anônimo
|_. Campo          |_. Tipo   |_. Precisão |_. Descrição |
166 23 Anônimo
| codRepres *      | String/Integer   | 255        | Código do Representante no ERP |
167 23 Anônimo
| valorAReceber    | Double   |            | Valor a receber acumulado por representante |
168 23 Anônimo
| valorRecebido    | Double   |            | Valor recebido acumulado por representante |
169 1 Anônimo
170 1 Anônimo
Lista de Parâmetros:
171 1 Anônimo
172 23 Anônimo
_Formato sugerido de data: dd/mm/yyyy (31/12/2013)_
173 1 Anônimo
174 23 Anônimo
|_. Parâmetro      |_. Tipo   |_. Precisão |_. Descrição |
175 23 Anônimo
| :pCodEmpresa     | String/Integer   | 10         | (opcional) Código da empresa no ERP |
176 23 Anônimo
| :pDataInicio     | String   | 10         | Data inicial para filtrar o vencimento e pagamento (formato a combinar) |
177 23 Anônimo
| :pDataFim        | String   | 10         | Data final para filtrar o vencimento e pagamento (formato a combinar) |
178 1 Anônimo
179 23 Anônimo
*Exemplo:*
180 1 Anônimo
181 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:
182 1 Anônimo
183 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.
184 23 Anônimo
185 23 Anônimo
<pre>
186 23 Anônimo
SELECT codRepres, sum(valorAReceber), sum(valorRecebido)
187 23 Anônimo
FROM (
188 23 Anônimo
		SELECT codRepres,
189 23 Anônimo
				valorTitulo as valorAReceber,
190 23 Anônimo
				0.0 as valorRecebido
191 23 Anônimo
		FROM ContasAReceber
192 23 Anônimo
		WHERE codempresa = :pCodEmpresa
193 23 Anônimo
		AND dataVecto >= to_date(:pDataInicio,'dd/mm/yyyy')
194 23 Anônimo
		AND dataVecto <=to_date(:pDataFim,'dd/mm/yyyy')
195 23 Anônimo
		UNION ALL
196 23 Anônimo
		SELECT codrepres,
197 23 Anônimo
				0.0 as valorAReceber,
198 23 Anônimo
				sum(valorTitulo) as valorRecebido
199 23 Anônimo
		FROM ContasRecebidas
200 23 Anônimo
		WHERE codempresa = :pCodEmpresa
201 23 Anônimo
		AND dataPagto >= to_date(:pDataInicio,'dd/mm/yyyy')
202 23 Anônimo
		AND dataPagto <=to_date(:pDataFim,'dd/mm/yyyy')
203 23 Anônimo
		AND dataVecto >= to_date(:pDataInicio,'dd/mm/yyyy')
204 23 Anônimo
		AND dataVecto <=to_date(:pDataFim,'dd/mm/yyyy')
205 23 Anônimo
)
206 23 Anônimo
GROUP BY codRepres
207 23 Anônimo
</pre>