Projeto

Geral

Perfil

Analytics » Histórico » Versão 7

Versão 6 (paulo, 03/07/2024 09:59 h) → Versão 7/18 (euler, 19/09/2024 08:47 h)

h1. Analytics

*Índice*
# [[Analytics#Introdução|Introdução]]
# [[Analytics#Acesso-via-JDBC|Acesso via JDBC]]
# [[Analytics#Tabelas-de-Integração-Parâmetros-e-Exemplo-de-SQL-de-Integração|Tabelas de Integração, Parâmetros e Exemplo de SQL de Integração]]
## [[Analytics#Tabelas-de-Integração|Tabelas de Integração]]
## [[Analytics#Parâmetros|Parâmetros]]
## [[Analytics#Exemplo-de-SQL-de-Integração|Exemplo de SQL de Integração]]
# [[Analytics#Layouts-de-Integração|Layouts de Integração]]
## [[Analytics#Representantes|Representantes]]
## [[Analytics#Representante-Gerente|Representante Gerente]]
## [[Analytics#Municípios-do-Representante|Municípios do Representante]]
## [[Analytics#Municípios-do-ERP|Municípios do ERP]]
## [[Analytics#Clientes-e-Prospects|Clientes e Prospects]]
## [[Analytics#Integração-de-Cliente-Único|Integração de Cliente Único]]
## [[Analytics#Representantes-dos-Clientes|Representantes dos Clientes ]]
## [[Analytics#Marcas-do-Cliente|Marcas do Cliente]]
## [[Analytics#Coleções|Coleções]]
## [[Analytics#Linhas-de-Produto|Linhas de Produto]]
## [[Analytics#Marcas|Marcas]]
## [[Analytics#Tipos de Venda|Tipos de Venda]]
## [[Analytics#Vendas|Vendas]]
## -[[Analytics#Liquidez|Liquidez]]- (depreciado)
## [[Analytics#Faturamento-Contrato|Faturamento - Contrato]]
## [[Analytics#Meta-do-Representante|Meta do Representante]]
## [[Analytics#Meta-do-Representante-Linha-de-Produto|Meta do Representante - Linha de Produto]]
## [[Analytics#Meta-do-Cliente|Meta do Cliente]]
## [[Analytics#Meta-do-Cliente-Linha-de-Produto|Meta do Cliente - Linha de Produto]]
## [[Analytics#Meta-do-Escritório|Meta do Escritório]]
## [[Analytics#Condição de Vendas|Condição de Vendas]]
## [[Analytics#País|País]]
## [[Analytics#Estoque Centralizado|Estoque Centralizado]]
## [[Analytics#Clientes Inadimplentes|Clientes Inadimplentes]]
## [[Analytics#Transportadoras|Transportadoras]]
## [[Analytics#Ranking de referências|Ranking de referências]]

h1. Introdução

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 GEOvendas.

*Atenção!! Os campos que estiverem com a descrição "Campo Específico" retornar null, salvo se for combinado algo diferente com a GEOvendas durante o processo.*

*Atenção!! Cabe ao desenvolvedor das Views retornar nas views os campos obrigatórios e os campos não obrigatórios que forem pertinentes ao processo do Cliente, ou a informação que o cliente deseja enxergar.*

Dúvidas ou maiores esclarecimentos podem ser obtidos pelo e-mail atendimento@geovendas.com ou pelo telefone (47) 3370-0504. atendimento whatsapp 47 99950146

h1. Acesso via JDBC

*Pré-Requisito:* Suporte por parte do Banco de Dados da Empresa fornecedora do ERP a acesso JDBC.

Na integração via JDBC a fornecedora de ERP deve disponibilizar para a GEOvendas 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 GEOvendas fará acesso via JDBC à base de dados do cliente para extrair as informações.

h1. Tabelas de Integração, Parâmetros e Exemplo de SQL de Integração

h2. Tabelas de Integração

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.
*Observação:* Os campos com asterisco (*) compõem a “primaryKey” e podem ser enviados como String ou Integer dependendo da necessidade do cliente.

h2. Parâmetros

Algumas tabelas de integração necessitam de parâmetros. Os parâmetros trabalham em pares: Campo e Parâmetro.
O Campo refere-se ao campo correspondente na tabela/visão, e o parâmetro é o código que será substituído na hora da execução do SQL.

h2. Exemplo de SQL de Integração

Vamos usar abaixo um exemplo a Tabela de Preços:

*Documentação do IGS:*
> Consulta informações de tabela de preço do ERP.
>
> |_. Campo |_. Tipo |_. Precisão |_. Descrição |
> | codEmpresa * | String/Integer | 10 | Código da Empresa origem dos dados |
> | codTabela * | String/Integer | 255 | Código da tabela de preços no ERP |
> | descricao | String | 255 | Descrição da tabela de preços |
>
> Lista de Parâmetros:
>
> |_. Campo |_. Parâmetro |_. Tipo |_. Precisão |_. Descrição |
> | codEmpresa | :p1 | String/Integer | 10 | Código da empresa no ERP |
> | codTabela | :p2 | String/Integer | 255 | Código da tabela de preços no ERP |

*SQL de exemplo com base na documentação*
<pre>SELECT codEmpresa,
codTabela,
descricao
FROM TabelaDePreco
WHERE codEmpresa = :p1
AND codTabela = :p2</pre>

h1. Layouts de Integração

h2. Representantes

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.

|_.num|_. Campo |_. Tipo |_. Precisão |_. Descrição |
|1| codEmpresa * | String/Integer | 10 | Código da Empresa origem dos dados |
|2| codRepres * | String/Integer | 255 | Código do Representante no ERP |
|3| nome | String | 255 | Nome do Representante |
|4| telefone | String | 255 | Telefone de Contato |
|5| email | String | 255 | E-Mail |
|6| endereco | String | 255 | Rua + Número do endereço do Representante |
|7| bairro | String | 255 | Bairro do Endereço do Representante |
|8| CEP | String | 8 | CEP do endereço do Representante |
|9| Cidade | String | 255 | Nome da Cidade do Endereço do Representante |
|10| UF | String | 2 | Sigla da UF da Cidade |
|11| codIBGE | String | 7 | Código do IBGE da Cidade |
|12| situacao | Integer | | Situação do cadastro do representante: 0 - Inativo, 1 - Ativo |
|13| Cod Repres Agrupador | String | 255 | *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas |
|14| telefone 2 | String | 255 | Telefone de Contato 2 |
|15| telefone 3 | String | 255 | Telefone de Contato 3 |
|16| codigoAdministrador | String | 255 | Código do administrador do representante no erp |
|17| cnpj | String | 255 | CNPJ do representante |
|18| codAgrupadorEscritorio | String | 255 | *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas |
|19| flagAgrupadorMaster | Integer | | 0 - Não, 1 - Sim (Somente um por grupo) / *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas |
|20| percComissa | Double | | Percentual de comissão |
|21| codigoPessoaFisica | String | 255 | Código que representa o cadastro da pessoa física do representante |
|22| nomePessoaFisica | String | 255 | Nome da pessoa física |
|23| senhaAPi | | | Senha API |
|24| Origem | | | Origem |
|25| fantasia | String | 255 | Nome fantasia |
|26| empresaIntegracaoPedido | String | 255 | Código da empresa que será integrado os pedidos |
|27| marcas | String | 255 | Códigos das marcas do representante, separados por *','* e sem *espaços*. Ex..: '10,20,30' |
|28| flagPermiteVendaPorFamilia | Integer | | 0 - Não, 1 - Sim / *Campo Específico*. Retornar null |
|29| depositosDivisao | String | | Depósitos de para divisão de pedidos do representante |
|30| regionalDesconto | String | 255 | Desconto regional do representante |

*As duas colunas abaixo são utilizadas apenas na Kyly Exportação, e para que funcione para eles, essas informações precisam estar nas respectivas posições. Quando nacional (projeto principal) essas colunas não precisam ser informadas, a menos que haja uma alteração.*

|28| codTabelaPrecoFOB | String | 255 | Tabela preço FOB do representante |
|29| codTabelaPrecoLanded | String | | Tabela preço Landed do representante |

h2. Representante Gerente

Na integração que temos hoje apenas o código, nome e telefone são usados;

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa * | String/Integer | 10 | Código da Empresa origem dos dados |
| Codigo Gerente * | String/Integer | 255 | Código do Representante no ERP |
| Nome * | String | 7 | Código do IBGE da Cidade |
| Telefone | String | 255 | Nome da Cidade ou Distrito |

Lista de Parâmetros:

|_. Campo |_. Parâmetro |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa | :p1 | String | 255 | Código da Empresa |
| codigoGerente | :p2 | String | 255 | Código do Gerente |

h2. Municípios do Representante

Tabela/visão com a relação dos municípios que o representante atende. Esta não é uma integração obrigatória.
*Atenção! Tabela não obrigatória. Retornar apenas se existir no ERP.*

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa * | String/Integer | 10 | Código da Empresa origem dos dados |
| codRepres * | String/Integer | 255 | Código do Representante no ERP |
| codIBGE | String | 7 | Código do IBGE da Cidade |
| nomeDistrito | String | 255 | Nome da Cidade ou Distrito |

h2. Municípios do ERP

Tabela/visão com a relação dos municípios do ERP. Esta não é uma integração obrigatória.
*Atenção! Tabela não obrigatória. Retornar apenas se for solicitada.*

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codIBGE* | String | 7 | Código do IBGE da Cidade |
| codCidadeERP* | String | 255 | Código da Cidade no ERP |
| codIBGERegiao | String | 255 | Código da sub-região no ERP _(somente quando trabalha com sub-regiões / distritos)_ |



h2. Clientes e Prospects

Tabela/visão com a relação dos clientes e prospects.
Podem ser listados clientes ativos ou inativos dependendo da necessidade do cliente.

*Situação:* O conceito de situação do cliente para o IGS é:
* 0-Inativo: Cliente que não está comprando, mas pode voltar a comprar
* 1-Ativo: Cliente com compra regular
* 2-Bloqueado: Cliente com restrições (ex: crédito) ou "Clientes que não interessam a empresa"
Caso seu ERP tenha somente os clientes ativos e inativos, retorne desta forma.

*Representante:* Só usar os campos codRepres2 e codRepres3 caso o cliente tenha variação de representante por linha de produto

|num |_. Campo |_. Tipo |_. Precisão |_. Descrição |
|1| codEmpresa * | String/Integer | 10 | Código da Empresa origem dos dados |
|2| codIBGE | String | 7 | Código do IBGE da Cidade |
|3| codCliente * | String/Integer | 255 | Código do Cliente ou Prospect no ERP. |
|4| tipo | Integer | | Tipo de registro: 1 - Cliente, 2 - Prospect |
|5| nome | String | 255 | Nome do cliente |
|6| situacao | Integer | | Situação do cadastro do cliente: 0 - Inativo, 1 - Ativo, 2 - Bloqueado |
|7| codRepres1 | String | 255 | Código do Representante Principal no ERP |
|8| codRepres2 | String | 255 | Código do Representante 2 no ERP (Opcional, habilitar Clientes do representante caso tenha mais de 3 rep por cliente.) |
|9| codRepres3 | String | 255 | Código do Representante 3 no ERP (Opcional, habilitar Clientes do representante caso tenha mais de 3 rep por cliente.) |
|10| telefone | String | 255 | Telefone de Contato |
|11| email | String | 255 | E-Mail |
|12| endereco | String | 255 | Rua |
|13| bairro | String | 255 | Bairro do Endereço do cliente |
|14| CEP | String | 8 | CEP do endereço do cliente |
|15| dataCadastro | Date | | Data de Cadastro do Cliente |
|16| cnpjCpf | String | 255 | CNPJ ou CPF do cliente |
|17| emailCobranca | String | 255 | Endereço de e-mail de cobrança. Não Obrigatório |
|18| nomeDistrito | String | 255 | Nome do Distrito (para o caso de São Paulo, os bairros – para o caso de Brasília, os Distritos)
Se o seu sistema não tiver esta informação, retornar o bairro. |
|19| celular | String | 255 | Numero do Celular |
|20| inscricaoEstadual | String | 255 | Inscrição estadual do cliente |
|21| enderecoNumero | String | 255 | Número do endereço do cliente |
|22| complemento | String | 255 | Complemento do endereço |
|23| IndicePontualidade | Number | 5,2 | Indice de Pontualidade. *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas|
|24| telefone2 | String | 255 | Telefone 2. Se não existir o campo, retornar null |
|25| telefoneCobranca | String | 255 | Telefone de cobrança. Se não existir o campo, retornar null |
|26| 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 |
|27| codClientePrincipal | String | 255 | Código do cliente principal do Grupo Ecônomico (conforme regra de negócio de cada empresa). Se o seu ERP não tem isso, retornar null |
|28| situacaoEdt | String | 255 | Descrição da Situação ERP |
|29| nomeGrupoCliente | String | 255 | Nome do Grupo Economico do Cliente (conforme regra de negócio de cada empresa). Se o seu ERP não tem isso, retornar null |
|30| flagInadimplente| Integer| | 0 - Não / 1 - Sim. Conforme regra da empresa. Não obrigatório para o GeoVendas |
|31| cidade| String| | cidade do cliente |
|32| uf| String| | UF do cliente |
|33| nomeFantasia| String| | Nome Fantasia do cliente. Não obrigatório |
|34| ramoAtividade| String| | Descrição do Ramo de atividade do cliente. Não obrigatório. Se não tiver retornar null |
|35| dataPrimeiraCompra| Date| | Não obrigatório. Retornar apenas se for um campo fácil de ser buscado. Se não tiver retornar null |
|36| dataUltimaCompra| Date| | Não obrigatório. Retornar apenas se for um campo fácil de ser buscado. Se não tiver retornar null |
|37| maiorCompra| Double| | Retornar o valor da maior Compra do Cliente. Não obrigatório. Retornar apenas se for um campo fácil de ser buscado. Se não tiver retornar null |
|38| maiorAcumulado| Double| | Retornar o valor do maior Acumulo deste cliente. Não obrigatório. Retornar apenas se for um campo fácil de ser buscado. Se não tiver retornar null |
|39| codClienteERP| String |255| *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas. Código do cliente dentro do ERP. Retornar apenas se for um campo fácil de ser buscado. Caso contrário, retornar null. Geralmente, é o mesmo valor do campo codCliente. |
|40| DataFundacao| Data |255| Data de Fundação do cliente nâo obrigatório. Se não tiver retornar null. |
|41| limiteCredito | Double | | *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas. Limite de crédito do cliente. |
|42| ultimoFaturamento | Date | | Registro do último faturamento |
|43| dataReativacao | Date | | |
|44| codSitCreditoERP | Integer | 10 | |
|45| descSitCreditoERP | String | 255 | |
|46| motivoInativo | String | 255 | Motivo cujo o qual o cliente foi inativado no ERP. Não obrigatório. Se não tiver retornar null|
|47| diasVencimentoTitulo | Integer | | Dias Vencimento de Titulo. |
|48| socios | String | | Sócios, separdos por vírgula. |
|49| cidadeGrupoCliente | String | 255 | Cidade do Grupo Ecônomico do Cliente (conforme regra de negócio de cada empresa). Se o seu ERP não tem isso, retornar null |
|50| classificacaoERP | String | 255 | Classificação do Cliente segundo o ERP. Se o seu ERP não tem isso, retornar null |
|51| instagram | String | 255 | Instagram do Cliente segundo o ERP. Se o seu ERP não tem isso, retornar null |
|52| facebook | String | 255 | Facebook do Cliente segundo o ERP. Se o seu ERP não tem isso, retornar null |
|53| marcasLiberadas | String | 255 | Campo especifico Retornar Null, salvo orientação |
|54| emailNfe | String | 255 | E-Mail de NFe |
|55| observacao | String | 255 | Observação do cliente, campo não é mostrado em nenhum local, utilizado somente caso precise de alguma informação em cubo |
|56| colecaoPrimeiraCompra | String | 255 | Nome da coleção correspondente à primeira compra do cliente, informação mostrada na tela Dashboard Prospects |
|57| qtdePrimeiraCompra | Double | |Quantidade de itens referente a primeira compra do cliente, informação mostrada na tela Dashboard Prospects |
|58| vlrPrimeiraCompra | Double | |Valor do pedido referente a primeira compra do cliente, informação mostrada na tela Dashboard Prospects |
|59| primeiroFaturamento | Date | | Registro do primeiro faturamento |



h2. Integração de Cliente Único

Tabela/visão com a relação dos clientes Únicos, devido ao filtro.
Podem ser listados clientes ativos ou inativos dependendo da necessidade do cliente.

*Situação:* O conceito de situação do cliente para o IGS é:
* 0-Inativo: Cliente que não está comprando, mas pode voltar a comprar
* 1-Ativo: Cliente com compra regular
* 2-Bloqueado: Cliente com restrições (ex: crédito) ou "Clientes que não interessam a empresa"
Caso seu ERP tenha somente os clientes ativos e inativos, retorne desta forma.

*Representante:* Só usar os campos codRepres2 e codRepres3 caso o cliente tenha variação de representante por linha de produto

|num |_. Campo |_. Tipo |_. Precisão |_. Descrição |
|1| codEmpresa * | String/Integer | 10 | Código da Empresa origem dos dados |
|2| codIBGE | String | 7 | Código do IBGE da Cidade |
|3| codCliente * | String/Integer | 255 | Código do Cliente ou Prospect no ERP. |
|4| tipo | Integer | | Tipo de registro: 1 - Cliente, 2 - Prospect |
|5| nome | String | 255 | Nome do cliente |
|6| situacao | Integer | | Situação do cadastro do cliente: 0 - Inativo, 1 - Ativo, 2 - Bloqueado |
|7| codRepres1 | String | 255 | Código do Representante Principal no ERP |
|8| codRepres2 | String | 255 | Código do Representante 2 no ERP (Opcional, habilitar Clientes do representante caso tenha mais de 3 rep por cliente.) |
|9| codRepres3 | String | 255 | Código do Representante 3 no ERP (Opcional, habilitar Clientes do representante caso tenha mais de 3 rep por cliente.) |
|10| telefone | String | 255 | Telefone de Contato |
|11| email | String | 255 | E-Mail |
|12| endereco | String | 255 | Rua |
|13| bairro | String | 255 | Bairro do Endereço do cliente |
|14| CEP | String | 8 | CEP do endereço do cliente |
|15| dataCadastro | Date | | Data de Cadastro do Cliente |
|16| cnpjCpf | String | 255 | CNPJ ou CPF do cliente |
|17| emailCobranca | String | 255 | Endereço de e-mail de cobrança. Não Obrigatório |
|18| nomeDistrito | String | 255 | Nome do Distrito (para o caso de São Paulo, os bairros – para o caso de Brasília, os Distritos)
Se o seu sistema não tiver esta informação, retornar o bairro. |
|19| celular | String | 255 | Numero do Celular |
|20| inscricaoEstadual | String | 255 | Inscrição estadual do cliente |
|21| enderecoNumero | String | 255 | Número do endereço do cliente |
|22| complemento | String | 255 | Complemento do endereço |
|23| IndicePontualidade | Number | 5,2 | Indice de Pontualidade. *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas|
|24| telefone2 | String | 255 | Telefone 2. Se não existir o campo, retornar null |
|25| telefoneCobranca | String | 255 | Telefone de cobrança. Se não existir o campo, retornar null |
|26| 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 |
|27| codClientePrincipal | String | 255 | Código do cliente principal do Grupo Ecônomico (conforme regra de negócio de cada empresa). Se o seu ERP não tem isso, retornar null |
|28| situacaoEdt | String | 255 | Descrição da Situação ERP |
|29| nomeGrupoCliente | String | 255 | Nome do Grupo Economico do Cliente (conforme regra de negócio de cada empresa). Se o seu ERP não tem isso, retornar null |
|30| flagInadimplente| Integer| | 0 - Não / 1 - Sim. Conforme regra da empresa. Não obrigatório para o GeoVendas |
|31| cidade| String| | cidade do cliente |
|32| uf| String| | UF do cliente |
|33| nomeFantasia| String| | Nome Fantasia do cliente. Não obrigatório |
|34| ramoAtividade| String| | Descrição do Ramo de atividade do cliente. Não obrigatório. Se não tiver retornar null |
|35| dataPrimeiraCompra| Date| | Não obrigatório. Retornar apenas se for um campo fácil de ser buscado. Se não tiver retornar null |
|36| dataUltimaCompra| Date| | Não obrigatório. Retornar apenas se for um campo fácil de ser buscado. Se não tiver retornar null |
|37| maiorCompra| Double| | Retornar o valor da maior Compra do Cliente. Não obrigatório. Retornar apenas se for um campo fácil de ser buscado. Se não tiver retornar null |
|38| maiorAcumulado| Double| | Retornar o valor do maior Acumulo deste cliente. Não obrigatório. Retornar apenas se for um campo fácil de ser buscado. Se não tiver retornar null |
|39| codClienteERP| String |255| *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas. Código do cliente dentro do ERP. Retornar apenas se for um campo fácil de ser buscado. Caso contrário, retornar null. Geralmente, é o mesmo valor do campo codCliente. |
|40| DataFundacao| Data |255| Data de Fundação do cliente nâo obrigatório. Se não tiver retornar null. |
|41| limiteCredito | Double | | *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas. Limite de crédito do cliente. |

Lista de Parâmetros:

|_. Campo |_. Parâmetro |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa | ? | String/Integer | 10 | Código da empresa no ERP, obrigatório, geralmente colocado no SQL [ *'1' = ?* ] |
| CNPJ | ? | String/Integer | 255 | CNPJ do cliente, obrigatório, geralmente feito os replaces para ter tanto o parametro quando o campo de CNPJ sem nenhum caracteres especial (-, / e - |

Exemplo de SQL:

<pre>
select
'1' codEmpresa
, codIBGE
, codCliente
, tipo
, nome
, situacao
, codRepres1
, codRepres2
, codRepres3
, telefone
, email
, endereco
, bairro
, CEP
, dataCadastro
, cnpjCpf
... outros campos ...
FROM TABLE_CLIENTES
WHERE '1' = ?
and cnpjCpf = ?
</pre>

h2. Representantes dos Clientes

integracao utilizada para quando existir mais de 1 cliente por representante

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa | String | 255 | Código da Empresa |
| codigoCliente | String | 255 | Código do Cliente |
| codigoRepres | String | 255 | Código do Representante |
| flagEPrincipal | int | | Flag, 1 é o representante principal, 0 é preposto. Se na tabela existir somente representantes (Ex.: MPL, Latreille) não informar esta coluna. Caso informado, ocasionará duplicação de valores na consulta de vendas se um cliente possuir mais de um representante principal |

h2. Cliente e Prospect - Histórico
*Atenção! Tabela específica. Retornar apenas se for combinado algo com a GEOvendas*

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| dataAlteracao | Date | | Data da Alteração |
| horaAlteracao | Date | | Hora da Alteração |
| codUsuario | String | 255 | Código do Usuário |
| nomeUsuario | String | 255 | Nome do usuário |
| situacao | String | 255 | Código da Situação |
| situacaoEdt | String | 255 | Descrição da Situação |

Lista de Parâmetros:

|_. Campo |_. Parâmetro |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa | :p1 | String | 255 | Código da Empresa |
| codCliente | :p2 | String | 255 | Código do Cliente |

h2. Marcas do Cliente
*Atenção! Tabela específica. Retornar apenas se for combinado algo com a GEOvendas*

Tabela com a relação de marcas do cliente, conforme vendas.

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa * | String | 255 | Código da Empresa origem dos dados |
| codCliente * | String | 255 | Código do Cliente |
| codMarca * | String | 255 | Código da Marca |

h2. Coleções

Tabela/visão com a relação das coleções.

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa * | String/Integer | 10 | Código da Empresa origem dos dados |
| codColecao * | String | 255 | Código da coleção |
| nome | String | 255 | Nome da coleção |
| situacaoForcaVendas | Integer | 255 | Campo responsável por ativar a coleção para o força de vendas. 0 - Coleção inválida para venda 1 - Coleção válida para venda. |
| qtdReferencia | Integer | 255 | Quantidade de Referências por coleção |

h2. Linhas de Produto

Lista das linhas de produtos que tiveram dados gerados.
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.)

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa * | String/Integer | 10 | Código da Empresa origem dos dados |
| codLinha * | String | 255 | Código da linha de produto |
| nome | String | 255 | Nome da linha de produto |

h2. Marcas

_Integração Opcional - Confirme com a GEOvendas a necessidade de criar esta integração._
Lista de marcas por empresa.

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa * | String/Integer | 10 | Código da Empresa origem dos dados |
| codMarca * | String | 255 | Código da marca |
| nome | String | 255 | Nome da marca |

h2. Tipos de Venda

_Integração Opcional - Confirme com a GEOvendas a necessidade de criar esta integração._
Lista de tipos de venda por empresa.

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa * | String/Integer | 10 | Código da empresa origem dos dados |
| codTipoVenda * | String | 255 | Código do tipo de venda |
| nome | String | 255 | Nome do tipo de venda |

h2. Vendas

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.
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).
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.
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).

*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.

*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).

*Observação:* Os campos com asterisco (*) deverão ser agrupados(group by) e os demais somados (sum).

|_. Col |_. Campo |_. Tipo |_. Precisão |_. Descrição |
|_. 1 | codEmpresa * | String/Integer | 10 | Código da Empresa origem dos dados |
|_. 2 | codColecao * | String | 255 | Código da Coleção sobre a qual estamos gerando os dados. |
|_. 3 | 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) |
|_. 4 | codLinha * | String | 255 | Código da Linha de Produto. Define-se com o cliente o que ele quer gerar como linha de produto. |
|_. 5 | codRepres * | String/Integer | 255 | Código do Representante no ERP |
|_. 6 | codCliente * | String/Integer | 255 | Código do Cliente |
|_. 7 | codIBGE * | String | 7 | Código do IBGE da Cidade do Cliente |
|_. 8 | UF * | String | 2 | Sigla da UF da Cidade do Cliente |
|_. 9 | valorBruto | Double | | Valor Bruto das Vendas |
|_.10 | valorLiquido | Double | | Valor Liquido das Vendas (ex: Valor Bruto - Valor Descontos) |
|_.11 | valorDesconto | Double | | Valor de Descontos das Vendas |
|_.12 | valorComissao | Double | | Valor de Comissão das Vendas |
|_.13 | prazoMedioXValor | Double | | Valor Líquido das Vendas multiplicado pelo Prazo Médio de pagamento. |
|_.14 | quantidade | Double | | Quantidade de Peças das Vendas |
|_.15 | nomeCliente * | String | 255 | Nome do Cliente |
|_.16 | codPedido * | String | 255 | Código do Pedido |
|_.17 | codProduto * | String | 255 | Código do produto ou referência *(Utilizado somente para MIX, não é utilizado, manter NULL)* |
|_.18 | campoCoringa1 * | String | 255 | Campo valores diversos, inicialmente retornar NULL - Ver com GEOvendas |
|_.19 | campoCoringa2 * | String | 255 | Campo valores diversos, inicialmente retornar NULL - Ver com GEOvendas |
|_.20 | campoCoringa3 * | String | 255 | Campo valores diversos, inicialmente retornar NULL - Ver com GEOvendas |
|_.21 | dataPrevFaturamento | Date | | Data de Previsão de Faturamento |
|_.22 | nomeDistrito * | String | 255 | Nome do Distrito (para o caso de São Paulo, os bairros – para o caso de Brasília, os Distritos)
Se o seu sistema não tiver esta informação, retornar o bairro. |
|_.23 | grupoCliente | String | 255 | Grupo Econômico do Cliente (conforme regra de negócio de cada empresa). Se o seu ERP não tem isso, retornar null |
|_.24 | valorRentabilidade | Double | | *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas. Valor da Rentabilidade do Pedido. Se o seu ERP não tem rentabilidade por pedido, retornar null |
|_.25 | dataUltFaturamento | Date | | *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas. Data do último faturamento do Pedido. Retornar apenas se for uma informação fácil|
|_.26 | valorFaturado | Double | | *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas. Valor já Faturado do pedido |
|_.27 | valorSaldo | Double | | *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas. Valor Saldo |
|_.28 | codMarca * | String | 255 | Código da Marca do Produto |
|_.29 | nomeGrupoCliente | String | 255 | Descrição do Grupo do Cliente |
|_.30 | dataEmissao | Date | | Data de Emissão do Pedido |
|_.31 | codRepresAgrupador | String | 255 | *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas. Código do representante agrupador (atacado) |
|_.32 | flagPolitica | Integer| | *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas. Pedido de acordo com a politica comercial (0 - não / 1 - sim) |
|_.33 | codTabPreco | String | 255 | Código da Tabela de Preço |
|_.34 | qtdeItens | Double | | *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas. Quantidade de Itens do Pedido |
|_.35 | qtdeEmQuilos | Double | | *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas. Quantidade de Peças das Vendas em Quilos |
|_.36 | cidadeGrupoCliente | String | 255 | Cidade do Grupo Economico do Cliente (conforme regra de negócio de cada empresa). Se o seu ERP não tem isso, retornar null |
|_.37 | campoCoringa4 * | String | 255 | Campo valores diversos, inicialmente retornar NULL - Ver com a GEOvendas |
|_.38 | campoCoringa5 * | String | 255 | Campo valores diversos, inicialmente retornar NULL - Ver com a GEOvendas |
|_.39 | campoCoringa6 * | String | 255 | Campo valores diversos, inicialmente retornar NULL - Ver com a GEOvendas |
|_.40 | situacaoPedido | String | 255 | Situacao do Pedido no ERP |
|_.41 | dataUltimaNF | Date | 255 | Data da ultima nota fiscal do pedido (Alguns bancos não aceitam null, usar data padrão '1900-01-01' nesses casos)|
|_.42 | numeroUltimaNF | String | 255 | Numero da ultima nota fiscal do pedido |
|_.43 | pedidoCliente | String | 255 | Código do Pedido de controle do cliente |
|_.44 | pedidoRepresentante | String | 255 | Codigo do Pedido de controle do representante |
|_.45 | percComissaoAtendente | Double | | Percentual de comissão do atendente |
|_.46 | observacao | String | Indef. | Observação |
|_.47 | valorFrete | Double | | Valor do Frete |
|_.48 | flagPedidoPrincipal | Integer | | *Campo Específico*. Retornar null. Flag Pedido Principal (0 - não / 1 - sim) |
|_.49 | codTipoVenda | String | 255 | Campo valores diversos, inicialmente retornar NULL - Ver com a GEOvendas |
|_.50 | qtdeEmMetros | Double | | *Campo Específico*. Retornar null , salvo alguma orientação diferente da GEOvendas. Quantidade de Peças das Vendas em Metros |

h2. Coringa

Configuração de campos coringas.

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codCoringa | String | 255 | Código do Coringa |
| descCoringa | String | 255 | Descrição do Coringa |
| flagParticipaContrato | String | 255 | Aparece no Contrato? 0 = Não 1 = Sim. Registros marcados como não ira refletir os resultados na tela Comparativa de agrupadores no contrato de resultados |

h2. Liquidez (Deprecated)

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.
A Liquidez resume-se a:
- O Valor a vencer no período e pago dividido pelo a vencer no período.
- Não entra no cálculo da Liquidez os títulos pagos fora do período de vencimento.

*Importante!* Este SQL possui parâmetros.

Layout da tabela/visão:

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codRepres * | String/Integer | 255 | Código do Representante no ERP |
| valorAReceber | Double | | Valor a receber acumulado por representante |
| valorRecebido | Double | | Valor recebido acumulado por representante |

Lista de Parâmetros:

_Formato sugerido de data: dd/mm/yyyy (31/12/2013)_

|_. Parâmetro |_. Tipo |_. Precisão |_. Descrição |
| :pCodEmpresa | String/Integer | 10 | (opcional) Código da empresa no ERP |
| :pDataInicio | String | 10 | Data inicial para filtrar o vencimento e pagamento (formato a combinar) |
| :pDataFim | String | 10 | Data final para filtrar o vencimento e pagamento (formato a combinar) |

*Exemplo:*

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:

*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 GEOvendas para configuração.

<pre>
SELECT codRepres, sum(valorAReceber), sum(valorRecebido)
FROM (
SELECT codRepres,
valorTitulo as valorAReceber,
0.0 as valorRecebido
FROM ContasAReceber
WHERE codempresa = :pCodEmpresa
AND dataVecto >= to_date(:pDataInicio,'dd/mm/yyyy')
AND dataVecto <=to_date(:pDataFim,'dd/mm/yyyy')
UNION ALL
SELECT codrepres,
0.0 as valorAReceber,
sum(valorTitulo) as valorRecebido
FROM ContasRecebidas
WHERE codempresa = :pCodEmpresa
AND dataPagto >= to_date(:pDataInicio,'dd/mm/yyyy')
AND dataPagto <=to_date(:pDataFim,'dd/mm/yyyy')
AND dataVecto >= to_date(:pDataInicio,'dd/mm/yyyy')
AND dataVecto <=to_date(:pDataFim,'dd/mm/yyyy')
)
GROUP BY codRepres
</pre>

h2. Faturamento - Contrato

*Atenção! Tabela específica. Retornar apenas se for combinado algo com a GEOvendas*

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codRepres * | String/Integer | 255 | Código do Representante no ERP |
| qtdeFaturada | Double | | Quantidade Faturada |
| valorFaturado | Double | | Valor Faturado |

Lista de Parâmetros:

|_. Parâmetro |_. Tipo |_. Precisão |_. Descrição |
| :p1 | String/Integer | 10 | (opcional) Código da empresa no ERP |
| :p2 | String | 10 | Data inicial para filtrar a emissão da nota fiscal |
| :p3 | String | 10 | Data final para filtrar a emissão da nota fiscal |
| #COLECOES | String | 10 | Coleção da nota fiscal |
| #MARCAS | String | 10 | Marca da nota fiscal |
| #LINHAS | String | 10 | Linha da nota fiscal |
| #CORINGA1 | String | 10 | Campo valores diversos, inicialmente retornar NULL - Ver com GEOvendas |
| #CORINGA2 | String | 10 | Campo valores diversos, inicialmente retornar NULL - Ver com GEOvendas |
| #CORINGA3 | String | 10 | Campo valores diversos, inicialmente retornar NULL - Ver com GEOvendas |

h2. Meta do Representante

*Atenção! Tabela específica. Retornar apenas se for combinado algo com a GEOvendas*

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa * | String/Integer | 255 | Código da empresa |
| codColecao * | String | 255 | Código da coleção no ERP. |
| codMarca | String | 255 | Código da marca no ERP. |
| codRepres * | String/Integer | 255 | Código do Representante no ERP |
| metaValor | Double | | Meta em valor do representante |
| metaQtde | Double | | Meta em quantidade do representante |
| metaPrecoMedio | Double | | Meta em preco médio do representante |
| metaQtdeClientes | Double | | Meta em quantidade por clientes do representante |
| periodoVendaIni | Date | | Data inicial de venda |
| periodoVendaFim | Date | | Data final de venda |

h2. Meta do Representante - Linha de Produto

*Atenção! Tabela específica. Retornar apenas se for combinado algo com a GEOvendas*

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa * | String/Integer | 255 | Código da empresa |
| codColecao * | String | 255 | Código da coleção no ERP. |
| codMarca | String | 255 | Código da marca no ERP. |
| codRepres * | String/Integer | 255 | Código do Representante no ERP |
| codLinha | Double | | Código da linha de produto no ERP. |
| percMeta | Double | | Percentual de representatividade da linha sobre a meta geral |
| periodoVendaIni | Date | | Data inicial de venda |
| periodoVendaFim | Date | | Data final de venda |

h2. Meta do Cliente

*Atenção! Tabela específica. Retornar apenas se for combinado algo com a GEOvendas*

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa * | String/Integer | 255 | Código da empresa |
| idContrato * | Long | | ID do contrato de resultado. |
| codCliente * | String | 255 | Código do Cliente. |
| codRepres * | String/Integer | 255 | Código do Representante no ERP. |
| tipoCalcMeta | Integer | | Tipo de calculo meta (0 - Manual / 1 - Somatório). |
| sitContrato | Integer | | Situação em relação ao Contrato (0 - Inativo / 1 - Ativo). |
| metaValor | Double | | Meta em valor do cliente. |
| metaQtde | Double | | Meta em quantidade do cliente. |
| metaQtdeRefs | Double | | Meta em quantidade de referências do cliente. |

Lista de Parâmetros:

|_. Parâmetro |_. Tipo |_. Precisão |_. Descrição |
| #CONTRATO_ID | Long | 10 | (opcional) Código do contrato a ser importado |

h2. Meta do Cliente - Linha de Produto

*Atenção! Tabela específica. Retornar apenas se for combinado algo com a GEOvendas*

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa * | String/Integer | 255 | Código da empresa |
| idContrato * | Long | | ID do contrato de resultado. |
| codCliente * | String | 255 | Código do Cliente. |
| codLinhaProduto * | String | 255 | Código da linha de produto. |
| codRepres * | String/Integer | 255 | Código do Representante no ERP. |
| sitContrato | Integer | | Situação em relação ao Contrato (0 - Inativo / 1 - Ativo). |
| metaValor | Double | | Meta em valor do cliente. |
| metaQtde | Double | | Meta em quantidade do cliente. |
| metaQtdeRefs | Double | | Meta em quantidade de referências do cliente. |

Lista de Parâmetros:

|_. Parâmetro |_. Tipo |_. Precisão |_. Descrição |
| #CONTRATO_ID | Long | 10 | (opcional) Código do contrato a ser importado |

h2. Meta do Escritório

*Atenção! Tabela específica. Retornar apenas se for combinado algo com a GEOvendas*

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa * | String/Integer | 255 | Código da empresa |
| codColecao * | String | 255 | Código da coleção no ERP. |
| codMarca | String | 255 | Código da marca no ERP. |
| codEscritorio * | String/Integer | 255 | Código do escritório de representação no ERP |
| metaValor | Double | | Meta em valor do escritório |
| metaQtde | Double | | Meta em quantidade do escritório |
| metaPrazoMedio | Double | | Meta em prazo médio do escritório |
| periodoVendaIni | Date | | Data inicial de venda |
| periodoVendaFim | Date | | Data final de venda |

Lista de Parâmetros:

|_. Parâmetro |_. Tipo |_. Precisão |_. Descrição |
| :p1 | String/Integer | 10 | (opcional) Código da empresa no ERP |
| :p2 | String | 10 | Data inicial para filtrar a emissão da nota fiscal |
| :p3 | String | 10 | Data final para filtrar a emissão da nota fiscal |
| #COLECOES | String | 10 | Coleção da nota fiscal |
| #MARCAS | String | 10 | Marca da nota fiscal |
| #LINHAS | String | 10 | Linha da nota fiscal |
| #CORINGA1 | String | 10 | Campo valores diversos, inicialmente retornar NULL - Ver com GEOvendas |
| #CORINGA2 | String | 10 | Campo valores diversos, inicialmente retornar NULL - Ver com GEOvendas |
| #CORINGA3 | String | 10 | Campo valores diversos, inicialmente retornar NULL - Ver com GEOvendas |

h2. Valores para Cálculo Desconto Fidelidade Acumulativa

Deve retornar o valor total somado, agrupado por cliente e data a ser considerada para o cálculo de desconto acumulativo por cliente
Parâmetro obrigatório :p1 e :p2, codEmpresa e data limite cujo a qual o sistema irá considerar os registros para cálculo, ultima dia do mês anterior ao calculo. os vide exemplo abaixo.

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
|data | Date | | Data vigente da compra, dependendo do cliente pode ser considerada a data de emissão, de faturamento |
|codCliente | Varchar| 255 | Código do cliente |
|valor| Double | | Valor somado por cliente e data |

Ex:
<pre><code class="sql">
SELECT DataEmissao,
codCliente,
SUM(valorBruto)
FROM (
select date_trunc('month', dataEmissao) DataEmissao,
codCliente,
valorBruto
FROM ETLPedido pedido
WHERE pedido.codEmpresa = :p1
AND pedido.dataEmissao<=:p2) Pedidos
GROUP BY DataEmissao,codCliente
ORDER BY codCliente, DataEmissao DESC
</code></pre>

h2. Ranking de referências

Ranking de referências mais vendidas, homologado somente no ERP Virtual Age.
O SQL deve retornar a grade da referencia completa sem repetir os campos de grade.
Apenas um registro por SKU.

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codReferencia * | String | 255 | Código da referência |
| descricao | String | 255 | Descrição da referência |
| codSortimento * | String | 255 | Código do sortimento |
| descSortimento | String | 255 | Descrição do sortimento |
| seqTamanho * | String | 255 | Código do tamanho |
| codTamaho | String | 255 | Descrição do tamanho |
| quantidade | Double | | Quantidade vendida |
| valorLiquido | Double | | Valor líquido vendido |
| valorBruto | Double | | Valor bruto vendido |
| preco | Double | | Valor unitário do produto, baseado na tabela de preço selecionada |
| comissaoMedia | Double | | Comissão média do produto |
| prazoMedio | Double | | Prazo médio vendido |
| codFicha | Double | | Código da ficha (campo específico, retornar NULL)|
| seqOrdenacaoTamanho | Integer | | Sequencia de ordeação dos tamnahos |

Lista de parâmetros

|_. Parâmetro |_. Tipo |_. Precisão |_. Descrição |
| #COLECOES / #COL_NULL * | String | 10 | Coleções para filtro de vendas |
| #MARCAS / #MARC_NULL | String | 10 | Marca para filtro de vendas |
| #REPRESENTANTES / #REPRES_NULL | String | 10 | Representantes para filtro de vendas |
| #UFS / #UF_NULL | String | 10 | Estados para filtro de vendas |
| #TABELASPRECO * / #TABPRECONULL | String | 10 | Tabela de preço para filtro de vendas |
| #DATAINICIO / #DATAINI_NULL | String | 10 | Data de emissão inicial para filtro de vendas |
| #DATAFINAL / #DATAFIM_NULL | String | 10 | Data de emissão final para filtro de vendas |
| #LINHAS / #LINHA_NULL | String | 10 | Linha de produto para filtro de vendas |
| #CORINGA1 / #CPCOR1_NULL | String | 10 | Coringa número 1 para filtro de vendas |
| #CORINGA2 / #CPCOR2_NULL | String | 10 | Coringa número 2 para filtro de vendas |
| #CORINGA3 / #CPCOR3_NULL | String | 10 | Coringa número 3 para filtro de vendas |
| #CORINGA4 / #CPCOR4_NULL | String | 10 | Coringa número 4 para filtro de vendas |
| #CORINGA5 / #CPCOR5_NULL | String | 10 | Coringa número 5 para filtro de vendas |
| #CORINGA6 / #CPCOR6_NULL | String | 10 | Coringa número 6 para filtro de vendas |

Exemplo de sql:

<pre><code class="sql">
SELECT grupo.cdNivel as codReferencia,
grupo.dsNivel as descReferencia,
grade.cdCor as seqSortimento,
grade.dsCor as descSortimento,
grade.cdTamanho as seqTamanho,
grade.dsTamanho as descTamanho,
cast(sum(vendaItem.qtSolicitada - vendaItem.qtCancelada) as numeric) AS quantidade,
sum(round(cast(((vendaItem.qtSolicitada - vendaItem.qtCancelada) * vendaItem.vlUnitario) * ((100 - venda.prDesconto) / 100) as numeric), 4)) as valorLiquido,
sum(round(cast((vendaItem.qtSolicitada - vendaItem.qtCancelada) * vendaItem.vlUnitario as numeric), 4)) as valorBruto,
sum(round(cast((vendaItem.qtSolicitada - vendaItem.qtCancelada) * vendaItem.vlUnitario as numeric), 4)) as valorUnitarioBruto,
0 as comissaoMedia,
0 as prazoMedio,
'' as codFicha,
null seqOrdenacaoTamanaho
FROM ProdutoGrupoAdicionalVAEntity grupo
JOIN ProdutoGradeVAEntity grade ON grade.cdProduto = grupo.cdProduto
JOIN ProdutoClassificacaoVAEntity linha on grupo.cdProduto = linha.cdProduto and linha.cdTipoClass = 75
JOIN VendaItemVAEntity vendaItem ON vendaItem.cdProduto = grupo.cdProduto
JOIN VendaVAEntity venda ON venda.cdEmpresa = vendaItem.cdEmpresa AND venda.cdPedido = vendaItem.cdPedido
JOIN VendaClassificacaoVAEntity colecao ON vendaItem.cdEmpresa = colecao.cdEmpresa AND venda.cdPedido = colecao.cdPedido AND colecao.cdTipoClass = 1
JOIN ETLProdutoTabelaPreco tabelaPrecoProduto ON tabelaPrecoProduto.codProduto = CAST(grupo.cdProduto as text)
JOIN ETLProdutoTabelaPreco tabelaPrecoProdutoBase ON tabelaPrecoProdutoBase.codProduto = CAST(grupo.cdProduto as text) AND ((tabelaPrecoProdutoBase.codTabelaPreco = #TABELAPRECOBASE) OR (#TABPRECOBASENULL IS NULL))
JOIN PessoaVAEntity pessoa ON pessoa.cdPessoa = venda.cdCliente
JOIN PessoaEnderecoVAEntity pessoaEndereco ON pessoaEndereco.cdPessoa = pessoa.cdPessoa AND pessoaEndereco.nrSequencia = (SELECT MIN(nrSequencia) FROM PessoaEnderecoVAEntity WHERE pessoa.cdPessoa = cdPessoa)
WHERE ((tabelaPrecoProduto.codTabelaPreco IN (#TABELASPRECO)) OR (#TABPRECONULL IS NULL))
AND ((colecao.cdClassificacao IN (#COLECOES)) OR (#COL_NULL IS NULL))
AND ((linha.cdClassificacao IN (#LINHAS)) OR (#LINHA_NULL IS NULL))
AND ((cast(venda.cdRepresentant as text) IN (#REPRESENTANTES)) OR (#REPRES_NULL IS NULL))
AND ((venda.dtPedido >= to_date(#DATAINICIO, 'yyyy-mm-dd')) OR (#DATAINI_NULL IS NULL))
AND ((venda.dtPedido <= to_date(#DATAFINAL, 'yyyy-mm-dd')) OR (#DATAFIM_NULL IS NULL))
AND ((pessoaEndereco.ufSigla IN (#UFS)) OR (#UF_NULL IS NULL))
GROUP BY 1, 2, 3, 4, 5, 6, 14
</code></pre>

Como o resultado é esperado:
Ex:

|_. codReferencia |_. codSortimento |_. seqTamanho |_. quantidade |_. valorLiquido |_. valorBruto |_. preco |_. comissaoMedia |_. prazoMedio |
| 001 | 00009 | 1 | 580 | 14.500 | 29.000 | 50.00 | 0 | 80 |
| 001 | 00009 | 2 | 580 | 14.500 | 29.000 | 50.00 | 0 | 80 |
| 001 | 00009 | 3 | 580 | 14.500 | 29.000 | 50.00 | 0 | 80 |
| 001 | 00009 | 4 | 580 | 14.500 | 29.000 | 50.00 | 0 | 80 |

h2. Condição de Vendas

Tabela/visão com a relação das condições de vendas. Esta não é uma integração obrigatória.

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa * | String/Integer | 10 | Código da Empresa origem dos dados |
| codigo * | String/Integer | 255 | Código da condição de venda |
| nome * | String | 7 | Nome da Condição |
| qtdeParcelas * | String | 255 | Quantidade de parcelas |
| prazoMedio * | String | 255 | Prazo médio |
| ativo | String | 255 | Situação da condição de venda |
| parcelas | String | 255 | Parcelas (Para Sispla/TI Empresarial colocar condição separadas por espaço. Ex: 30 60 ou 30 60 90) |

h2. País

Tabela/visão com a relação dos países. Esta não é uma integração obrigatória, somente se for exportação do B2B.

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codigo * | String/Integer | 255 | Código do país |
| nome * | String | text | Nome do país |

h2. Estoque Centralizado

Tabela/visão com a informações de estoque centralizado.

*Caso trabalhe com estoque por data*: Neste caso o estoque deve ser acumulativo, sempre.
Por exemplo, se o estoque aumenta em 10 peças a cada data, sem considerar nenhuma venda,
na primeira data seu estoque será de 10 peças, na segunda data será de 20 peças e na terceira data será de 30 peças.

*Atenção!! Esta tabela/visão possui parâmetros!!!*

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa | String | 255 | Código da Empresa origem dos dados |
| codigoProduto | String | 255 | Código do Produto |
| seqTamanho | String | 255 | Código do tamanho |
| seqSortimento | String | 255 | Código da cor/Sortimento |
| colecao | String | 255 | Código da coleção |
| estoqueLimitado | Integer | 10 | Flag para estoque limitado ( 1 = limitado, 0 = não limitado) |
| quantidade | Double | 10 | Quantidade em estoque |
| codTamanho | String | 255 | Código do tamanho |
| codGrade | String | 255 | Código da grade |
| deposito | String | 255 | Código do depósito (Se não for usar, deixar 0. O preenchimento com NULL deste campo pode fazer com que as quantidades não apareçam nas referencias.)|
| nomeColecao | String | 255 | Nome da coleção |
| dataProduto | Date | 10 | Data do estoque (enviar '2000-01-01' caso não trabalhe com estoque por data) |
| quantidadeProntaEntrega | Double | 10 | Quantidade pronta entrega (retornar 0 se não trabalhar com pronta entrega) |
| codCorBase | String | 255 | Código da Cor Base |
| nomeReferencia | String | 255 | Nome da Referência |
| nomeCor | String | 255 | Nome da Cor |
| ean13 | String | 255 | EAN |
| visualQuantidadeProduto | Double | 10 | Quantidade visual do produto *(enviar null)* |
| visualQuantidadeProducao | Double | 10 | Quantidade visual da produção *(enviar null)* |
| seqOrdenacaoTamanho | Integer | 10 | Sequencia de ordenação do tamanho do produto *(enviar null)* |
| codReferenciaProvisoria | String | 10 | Código de referencia provisória *(enviar null)* |
| visualDataProduto | String | 255 | Data em formate visual "de - até" *(enviar null)* |
| coringa1 | String | 20 | Código do coringa 1 *(enviar null)* |
| coringa2 | String | 20 | Código do coringa 2 *(enviar null)* |
| coringa3 | String | 20 | Código do coringa 3 *(enviar null)* |
| coringa4 | String | 20 | Código do coringa 4 *(enviar null)* |
| coringa5 | String | 20 | Código do coringa 5 *(enviar null)* |
| unidade | String | 255 | Unidade de medida *(enviar null)* |
| conversorUnidade | String | 255 | Conversor da unidade de medida *(enviar null)* |
| conversorFator | String | 255 | Fator do da conversão *(enviar null)* |
| conversorOperador | String | 255 | Operador da conversão *(enviar null)* |

Lista de Parâmetros:

|_. Campo |_. Parâmetro |_. Tipo |_. Precisão |_. Descrição |
| codColecao | in (#COLECOES) or (#COLECOESNULL = '-1') | String | 255 | Código da coleção |
| tabPreco| in (#PRICETABLES) or (#PRICETABLES = '-1') | String | 255 | Código da tabela de preço |
| codReferencia | in (#REFERENCES) or (#REFERENCES = '-1') | String | 255 | Código da referencia |

h2. Clientes Inadimplentes

Tabela/visão com a informações de Clientes Inadimplentes.

Trazer somente as informações de clientes inadimplentes,
de acordo com as regras desejadas pela empresa

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa | String | 255 | Código da Empresa origem dos dados |
| codcliente | String | 255 | Código do Cliente |
| nomeCliente | String | 255 | Nome do Cliente |
| telefone | String | 255 | Telefone do Cliente |
| codRepres1 | String | 255 | Código do Representante 1 do Cliente |
| codRepres2 | String | 255 | Código do Representante 2 do Cliente |
| codRepres3 | String | 255 | Código do Representante 3 do Cliente |
| codIBGE | String | 255 | Código do IBGE |
| titulo | String | 255 | Numero do Título |
| dataVencimento | Date | Data | Data de Vencimento do Título |
| valor | String | 255 | Valor do Título |

h2. Transportadoras

Tabela/visão com a informações de Transportadoras.

Trazer somente as informações de Transportadoras,
de acordo com as regras desejadas pela empresa

|_. Campo |_. Tipo |_. Precisão |_. Descrição |
| codEmpresa | String | 255 | Código da Empresa origem dos dados |
| codTransportadora | String | 255 | Código da Transportadora |
| nomeTransportadora | String | 255 | Nome da Transportadora |
| situacao | Inteiro | | 0 - Invativo / 1 - Ativo |