Mudanças entre as edições de "Calculo Frete Peso total e ranger -ANHAMBI"
| (26 revisões intermediárias por 2 usuários não estão sendo mostradas) | |||
| Linha 13: | Linha 13: | ||
|  11/06/2018  ||   Marcus Fabio      ||  Validação das alterações pelo desenvolvimento  | |  11/06/2018  ||   Marcus Fabio      ||  Validação das alterações pelo desenvolvimento  | ||
|-  | |-  | ||
| − | |  25/06/2018  ||   Renato Lima     ||  Alteração na integração, na RI1,RI2,implementção, RN5,RN6 e criação da RN7 e   | + | |  25/06/2018  ||   Renato Lima     ||  Alteração na integração, na RI1,RI2,implementção, RN5,RN6 e criação da RN7,RN8 e RN9.  | 
|-  | |-  | ||
| − | |    | + | |  25/06/2018  ||   Anderson Gomes      ||  Validação das alterações pelo desenvolvimento  | 
|-  | |-  | ||
| + | |  05/07/2018  ||   Renato Lima     ||  Tratar o fator de divisão por 1000 na integração e Utilizar o campo ID_TIPO_FRETE_PADRAO ja que é populado com o campo A1_TPFRETE.  | ||
| + | |-  | ||
| + | |  05/07/2018  ||   Anderson Gomes      ||  Validação das alterações pelo desenvolvimento  | ||
|}  | |}  | ||
| Linha 38: | Linha 41: | ||
No momento de integrar o valor do pedido o integrador deve observar a seguinte regra:  | No momento de integrar o valor do pedido o integrador deve observar a seguinte regra:  | ||
| − | Deve ser verificado os campos '''A1_TPFRETE''' e '''A1_X_MFRET''' os quais recebem '''C''' ou '''F''' e '''D''' ou '''C''', respectivamente.  | + | *Deve ser verificado os campos '''A1_TPFRETE''' e '''A1_X_MFRET''' os quais recebem '''C''' ou '''F''' e '''D''' ou '''C''', respectivamente.  | 
| − | Quando o campo '''A1_TPFRETE''' = '''C''' e o campo '''A1_X_MFRET''' = '''D''', o valor do frete deve ser integrado no campo  | + | *Quando o campo '''A1_TPFRETE''' = '''C''' e o campo '''A1_X_MFRET''' = '''D''', o valor do frete deve ser integrado no campo  | 
'''C5_FRETE''', somado ao total do pedido e exibido para o vendedor na tela de decomposição;  | '''C5_FRETE''', somado ao total do pedido e exibido para o vendedor na tela de decomposição;  | ||
| − | Quando o campo '''A1_TPFRETE''' = '''C''' e o campo '''A1_X_MFRET = C''' ou '''VAZIO''', o valor do frete deve ser integrado no  | + | *Quando o campo '''A1_TPFRETE''' = '''C''' e o campo '''A1_X_MFRET = C''' ou '''VAZIO''', o valor do frete deve ser integrado no  | 
campo '''C5_X_VFRET''', '''NÃO''' somar no total do pedido e '''NÃO''' exibir para o vendedor na tela de decomposição;  | campo '''C5_X_VFRET''', '''NÃO''' somar no total do pedido e '''NÃO''' exibir para o vendedor na tela de decomposição;  | ||
| − | Quando o campo A1_TPFRETE = F, o valor do frete deve ser integrado no campo '''C5_X_VFRET''', '''NÃO''' somar no total  | + | *Quando o campo A1_TPFRETE = F, o valor do frete deve ser integrado no campo '''C5_X_VFRET''', '''NÃO''' somar no total  | 
do pedido e NÃO exibir para o vendedor na tela de decomposição;  | do pedido e NÃO exibir para o vendedor na tela de decomposição;  | ||
O campo '''A1_TPFRETE''' não deve ser integrado com o valor null.  | O campo '''A1_TPFRETE''' não deve ser integrado com o valor null.  | ||
| + | |||
| + | O fator de divisão já virá convertido na integração.  | ||
| + | O valor do campo GV1_VLUNIN será divido por 1000,apresentando o valor da seguinte forma:  | ||
| + |  Tarifa Base  | ||
| + |  GV1_VLUNIN=   | ||
| + |  163,28:1000=0,16  | ||
== Implementação ==  | == Implementação ==  | ||
| Linha 53: | Linha 62: | ||
   Valor do Frete = (Tarifa Base) x Peso total do pedido  |    Valor do Frete = (Tarifa Base) x Peso total do pedido  | ||
| − | + | ||
  Onde:  |   Onde:  | ||
  Tarifa base será o valor populado no campo VR_PRECO_KG da tabela FAIXA_PRECO_FRETE  |   Tarifa base será o valor populado no campo VR_PRECO_KG da tabela FAIXA_PRECO_FRETE  | ||
| − | |||
  Peso do pedido = Peso total do pedido.  |   Peso do pedido = Peso total do pedido.  | ||
| Linha 66: | Linha 74: | ||
  Item 2: 05 unidades pesando 100 quilos cada unidade, total de 500 quilos.  |   Item 2: 05 unidades pesando 100 quilos cada unidade, total de 500 quilos.  | ||
  Total de peso do pedido: 1500 quilos.  |   Total de peso do pedido: 1500 quilos.  | ||
| − |   Tarifa Base = R$   | + |   Tarifa Base = R$ 0,16  | 
| − | |||
  Preço do Frete = R$ 244,92  |   Preço do Frete = R$ 244,92  | ||
| − | Ao ter peso total do pedido, será verificado na   | + | Ao ter peso total do pedido, será verificado na FAIXA_PRECO_FRETE, qual opção de faixa se encaixa, para aquele pedido, de acordo com seu peso, região e praça.  | 
Após realizar o calculo do frete, deve verificar:  | Após realizar o calculo do frete, deve verificar:  | ||
| − | *Quando o campo   | + | *Quando o campo ID_TIPO_FRETE_PADRAO = 'C' ou '1' e o campo ID_COMPOE_CALC_FRETE = D, o valor do frete deve ser somado ao total do pedido e exibido para o vendedor na tela de decomposição e o valor frete total;  | 
| − | *Quando o campo   | + | *Quando o campo ID_TIPO_FRETE_PADRAO = 'C' ou '1' e o campo ID_COMPOE_CALC_FRETE = C ou VAZIO,o valor do frete NÃO deve somar no total do pedido e NÃO deve exibir para o vendedor na tela de decomposição e o valor frete total;  | 
| − | *Quando o campo   | + | *Quando o campo ID_TIPO_FRETE_PADRAO = 'F' ou'2', o valor do frete NÃO deve somar no total do pedido e NÃO deve exibir para o vendedor na tela de decomposição e o valor frete total;    | 
* Qualquer outra situção que não esteja nas situações informadas acima, o valor do frete NÃO deve somar no total do pedido e NÃO deve  exibir para o vendedor na tela de decomposição e o valor frete total;     | * Qualquer outra situção que não esteja nas situações informadas acima, o valor do frete NÃO deve somar no total do pedido e NÃO deve  exibir para o vendedor na tela de decomposição e o valor frete total;     | ||
| Linha 95: | Linha 102: | ||
! style="width:300px" |Chave Primária  | ! style="width:300px" |Chave Primária  | ||
! style="width:300px" |Explicação  | ! style="width:300px" |Explicação  | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
|-    | |-    | ||
| ID_COMPOE_CALC_FRETE  | | ID_COMPOE_CALC_FRETE  | ||
| Linha 106: | Linha 107: | ||
| NAO  | | NAO  | ||
| NAO  | | NAO  | ||
| − | | Campo para informar se o valor do frete será exibido e comporá o valor do pedido, vai receber valores através da integração do campo '''A1_X_MFRET''' e poderá receber '''D''' ou '''C''' ou '''NULL'''.  | + | | Campo para informar se o valor do frete será exibido e comporá o valor do pedido, vai receber valores através da integração do campo '''A1_X_MFRET''' e poderá receber '''D''' - Destacado ou '''C''' - Conhecimento ou '''NULL'''.  | 
|-    | |-    | ||
|}  | |}  | ||
| − | |||
| − | |||
== Regras de integração ==  | == Regras de integração ==  | ||
| − | '''[RI1]''' – No momento de integrar o valor do frete, o sistema deve verificar o campo '''A1_TPFRETE''' que recebe os valores '''C''' ou '''F''' e o campo '''A1_X_MFRET'''que recebe os valores '''D''' ou '''C'''.  | + | '''[RI1]''' – No momento de integrar o valor do frete, o sistema deve verificar o campo '''A1_TPFRETE''' que    | 
| + | recebe os valores '''C''' ou '''F''' e o campo '''A1_X_MFRET''' que recebe os valores '''D''' ou '''C'''.  | ||
'''[RI2]''' – O campo '''A1_TPFRETE''' não pode ser null, ele receberá os valores '''C''' ou '''F'''.  | '''[RI2]''' – O campo '''A1_TPFRETE''' não pode ser null, ele receberá os valores '''C''' ou '''F'''.  | ||
| Linha 121: | Linha 121: | ||
'''C5_FRETE''', somado ao total do pedido.  | '''C5_FRETE''', somado ao total do pedido.  | ||
| − | *Quando o campo '''A1_TPFRETE = C''' e o campo '''A1_X_MFRET = C''' ou   | + | *Quando o campo '''A1_TPFRETE = C''' e o campo '''A1_X_MFRET = C''' ou NULL, o valor do frete deve ser integrado no  | 
campo '''C5_X_VFRET''',NÃO somar no total do pedido.  | campo '''C5_X_VFRET''',NÃO somar no total do pedido.  | ||
| Linha 137: | Linha 137: | ||
'''RN4 - ''' Para que o vendedor consiga visualizar o peso total do pedido, deve habilitar a configuração '''ID_MOSTRAR_COLUNA_PESO=S'''.  | '''RN4 - ''' Para que o vendedor consiga visualizar o peso total do pedido, deve habilitar a configuração '''ID_MOSTRAR_COLUNA_PESO=S'''.  | ||
| − | '''RN5 - ''' Quando o campo   | + | '''RN5 - ''' Quando o campo ID_TIPO_FRETE_PADRAO = 'C' ou '1' e o campo ID_COMPOE_CALC_FRETE = D, o valor do frete deve ser somado ao total do pedido e exibido para o vendedor na tela de decomposição e o valor frete total;  | 
| + | |||
| + | '''RN6 - ''' Quando o campo ID_TIPO_FRETE_PADRAO = 'C' ou '1' e o campo ID_COMPOE_CALC_FRETE = C ou NULL,o valor do frete NÃO deve somar no total do pedido e NÃO exibir para o vendedor na tela de decomposição e o valor frete total;  | ||
| − | '''  | + | '''RN7 - ''' Quando o campo ID_TIPO_FRETE_PADRAO = 'F' ou '2' e o campo ID_COMPOE_CALC_FRETE = C ou NULL o valor do frete NÃO deve somar no total do pedido e NÃO exibir para o vendedor na tela de decomposição e o valor frete total;  | 
| − | '''  | + | '''RN8 - '''Quando os valores deste campo, estiverem null, o sistema irá fazer os cálculos e exibi-los.  | 
| − | '''  | + | '''RN9 - '''Nos relatórios que exibi valor de frete, devem obedecer o  mesmo comportamento que a tela de pedido, ou seja deve levar em consideração os valores para exibir ou não nos relatórios.  | 
== Aprovação ==  | == Aprovação ==  | ||
Edição atual tal como às 13h48min de 5 de julho de 2018
Histórico de Revisões
| Data | Quem | Comentários | 
|---|---|---|
| 25/05/2018 | Renato Lima | Criação do Documento | 
| 29/05/2018 | Marcus Fabio | Validado pelo desenvolvimento | 
| 11/06/2018 | Renato Lima | Criar campo na tabela de cliente, tratar integração do campo e comportamento do calculo do frete. | 
| 11/06/2018 | Marcus Fabio | Validação das alterações pelo desenvolvimento | 
| 25/06/2018 | Renato Lima | Alteração na integração, na RI1,RI2,implementção, RN5,RN6 e criação da RN7,RN8 e RN9. | 
| 25/06/2018 | Anderson Gomes | Validação das alterações pelo desenvolvimento | 
| 05/07/2018 | Renato Lima | Tratar o fator de divisão por 1000 na integração e Utilizar o campo ID_TIPO_FRETE_PADRAO ja que é populado com o campo A1_TPFRETE. | 
| 05/07/2018 | Anderson Gomes | Validação das alterações pelo desenvolvimento | 
Necessidade
Customização do cálculo de frete, utilizando três parâmetros principais, código do cliente, código da loja e peso do pedido, concomitantemente, verificar esta viabilidade no portal GeoSales. Há necessidade de ajustar os atuais parâmetros de cálculo de frete do Portal GeoSales com o padrão de apuração do ERP Protheus, o qual utiliza como dado o peso total do pedido, de outro modo do atual, que se baseia no peso por item no pedido.
Solução
Deverá realizar a criação de uma nova regra de cálculo de frete, em que o sistema GeoSales usará como base as informações do cliente, da loja e do peso total do pedido para calcular o valor do frete.
Integração
O cliente utiliza o GFE de calculo de Frete do Protheus.
O cliente tem no modulo emitente as informações de Cod do cliente, Loja e Codigo da Cidade do cliente (GU3 TABELA DE EMITENTES), onde esse pontos irão definir a partir de que rota aquele pedido será atendido.
Na tabela GUA teremos o cadastro de Regiões x Cidades, a partir dessa tabela iremos montar o nosso cadastro de Região e Praça. Já as tabelas GV6 e GV1, iremos montar nossas tabelas FRETE e FAIXA_PRECO_FRETE
No momento de integrar o valor do pedido o integrador deve observar a seguinte regra:
- Deve ser verificado os campos A1_TPFRETE e A1_X_MFRET os quais recebem C ou F e D ou C, respectivamente.
 - Quando o campo A1_TPFRETE = C e o campo A1_X_MFRET = D, o valor do frete deve ser integrado no campo
 
C5_FRETE, somado ao total do pedido e exibido para o vendedor na tela de decomposição;
- Quando o campo A1_TPFRETE = C e o campo A1_X_MFRET = C ou VAZIO, o valor do frete deve ser integrado no
 
campo C5_X_VFRET, NÃO somar no total do pedido e NÃO exibir para o vendedor na tela de decomposição;
- Quando o campo A1_TPFRETE = F, o valor do frete deve ser integrado no campo C5_X_VFRET, NÃO somar no total
 
do pedido e NÃO exibir para o vendedor na tela de decomposição;
O campo A1_TPFRETE não deve ser integrado com o valor null.
O fator de divisão já virá convertido na integração. O valor do campo GV1_VLUNIN será divido por 1000,apresentando o valor da seguinte forma:
Tarifa Base GV1_VLUNIN= 163,28:1000=0,16
Implementação
O calculo do frete deve ocorrer conforme formula abaixo:
 Valor do Frete = (Tarifa Base) x Peso total do pedido
                      
Onde:
Tarifa base será o valor populado no campo VR_PRECO_KG da tabela FAIXA_PRECO_FRETE
Peso do pedido = Peso total do pedido.
Exemplo:
Cliente - 0001 Inseriu pedido com dois itens: Item 1: 10 unidades pesando 100 quilos cada unidade, total de 1000 quilos. Item 2: 05 unidades pesando 100 quilos cada unidade, total de 500 quilos. Total de peso do pedido: 1500 quilos. Tarifa Base = R$ 0,16 Preço do Frete = R$ 244,92
Ao ter peso total do pedido, será verificado na FAIXA_PRECO_FRETE, qual opção de faixa se encaixa, para aquele pedido, de acordo com seu peso, região e praça.
Após realizar o calculo do frete, deve verificar:
- Quando o campo ID_TIPO_FRETE_PADRAO = 'C' ou '1' e o campo ID_COMPOE_CALC_FRETE = D, o valor do frete deve ser somado ao total do pedido e exibido para o vendedor na tela de decomposição e o valor frete total;
 
- Quando o campo ID_TIPO_FRETE_PADRAO = 'C' ou '1' e o campo ID_COMPOE_CALC_FRETE = C ou VAZIO,o valor do frete NÃO deve somar no total do pedido e NÃO deve exibir para o vendedor na tela de decomposição e o valor frete total;
 
- Quando o campo ID_TIPO_FRETE_PADRAO = 'F' ou'2', o valor do frete NÃO deve somar no total do pedido e NÃO deve exibir para o vendedor na tela de decomposição e o valor frete total;
 
- Qualquer outra situção que não esteja nas situações informadas acima, o valor do frete NÃO deve somar no total do pedido e NÃO deve exibir para o vendedor na tela de decomposição e o valor frete total;
 
Tabelas a serem alteradas:
| CLIENTE | ||||
|---|---|---|---|---|
| Coluna | Tipo | Obrigatório | Chave Primária | Explicação | 
| ID_COMPOE_CALC_FRETE | CHAR(1) | NAO | NAO | Campo para informar se o valor do frete será exibido e comporá o valor do pedido, vai receber valores através da integração do campo A1_X_MFRET e poderá receber D - Destacado ou C - Conhecimento ou NULL. | 
Regras de integração
[RI1] – No momento de integrar o valor do frete, o sistema deve verificar o campo A1_TPFRETE que recebe os valores C ou F e o campo A1_X_MFRET que recebe os valores D ou C.
[RI2] – O campo A1_TPFRETE não pode ser null, ele receberá os valores C ou F.
- Quando o campo A1_TPFRETE = C e o campo A1_X_MFRET = D, o valor do frete deve ser integrado no campo
 
C5_FRETE, somado ao total do pedido.
- Quando o campo A1_TPFRETE = C e o campo A1_X_MFRET = C ou NULL, o valor do frete deve ser integrado no
 
campo C5_X_VFRET,NÃO somar no total do pedido.
- Quando o campo A1_TPFRETE = F, o valor do frete deve ser integrado no campo C5_X_VFRET,NÃO somar no total
 
do pedido.
Regras de Negócio
RN1 - Para realizar o calculo do frete deve ser levado em consideração o Peso total do itens inseridos do pedido.
RN2 - Para que o calculo de frete funcione corretamente, todos os produtos cadastrados devem ter seu peso cadastrado.
RN3 - Sempre que houver alteração no peso do pedido o valor do frete deve ser atualizado.
RN4 - Para que o vendedor consiga visualizar o peso total do pedido, deve habilitar a configuração ID_MOSTRAR_COLUNA_PESO=S.
RN5 - Quando o campo ID_TIPO_FRETE_PADRAO = 'C' ou '1' e o campo ID_COMPOE_CALC_FRETE = D, o valor do frete deve ser somado ao total do pedido e exibido para o vendedor na tela de decomposição e o valor frete total;
RN6 - Quando o campo ID_TIPO_FRETE_PADRAO = 'C' ou '1' e o campo ID_COMPOE_CALC_FRETE = C ou NULL,o valor do frete NÃO deve somar no total do pedido e NÃO exibir para o vendedor na tela de decomposição e o valor frete total;
RN7 - Quando o campo ID_TIPO_FRETE_PADRAO = 'F' ou '2' e o campo ID_COMPOE_CALC_FRETE = C ou NULL o valor do frete NÃO deve somar no total do pedido e NÃO exibir para o vendedor na tela de decomposição e o valor frete total;
RN8 - Quando os valores deste campo, estiverem null, o sistema irá fazer os cálculos e exibi-los.
RN9 - Nos relatórios que exibi valor de frete, devem obedecer o mesmo comportamento que a tela de pedido, ou seja deve levar em consideração os valores para exibir ou não nos relatórios.
Aprovação
Considero aprovada a documentação da funcionalidade especificada acima, e autorizo a implementação da mesma no Sistema GeoSales, em nome da Organização a qual estou vinculado.
| Setor | Aprovado Por | Data | Assinatura | 
|---|---|---|---|
| Gerente TI | |||
| Gerente Projeto | |||
| Gerente Comercial |