Mudanças entre as edições de "Configuração de Pedido por Lote"

De GeoSales
Ir para navegação Ir para pesquisar
(Criou página com ' == Histórico de Alterações == {| class = "wikitable" ! Data ! Quem ! Comentários |- | 02/06/2021 || João Ramon || Criação do documento |- |} == Necessidade == A...')
 
 
(28 revisões intermediárias por 2 usuários não estão sendo mostradas)
Linha 9: Linha 9:
 
! Comentários
 
! Comentários
 
|-
 
|-
| 02/06/2021 || João Ramon || Criação do documento
+
| 04/06/2021 || João Ramon || Criação do documento
 
|-
 
|-
 
|}
 
|}
 
  
 
== Necessidade ==
 
== Necessidade ==
  
Alguns clientes, pela natureza de sua atividade, são isentos da necessidade de cadastro de Inscrição Estadual (IE). a plataforma GeoSales EVO, na tela de cadastro de cliente aprovação, na área de informações adicionais, o usuário pode fazer a inserção do numero da Inscrição Estadual do cliente por meio do campo IE. Este campo, atualmente, '''é obrigatório para preenchimento'''. Portanto, há um problema de cadastro para clientes que não possuem este cadastro, visto que o campo de IE não tem como ser preenchido. A necessidade consiste em criar um meio que permita o cadastro deste cliente sem a necessidade de inserção deste campo.
+
A funcionalidade de lote foi implementada na plataforma GeoSales 3 por conta da necessidade da diferenciação de algumas variantes que possam ocorrer em um mesmo produto (ex. um lote de um produto pode ter diferenciação de um segundo lote do mesmo produto, mas ambos diferenciam-se pelo valor do lote, por motivo de aproximação do prazo de validade deste produto). Portanto, há uma diferenciação por lotes, ainda que sejam os mesmos produtos. Esta funcionalidade foi desenvolvida em 2017 para o GeoSales 3, e agora necessita que esta funcionalidade seja migrada para a nova plataforma, a GeoSales EVO.
  
 
== Solução ==
 
== Solução ==
  
Para que esta necessidade seja satisfeita, deve-se implementar um novo campo nas informações adicionais do cadastro de cliente para aprovação, no formato de flag, no qual seja informado a situação de IE isento. Quando o flag estiver com seu status ativado, o campo de IE será desativado, e o cadastro poderá ser realizado sem problemas.
+
A fim de atender a esta carência de funcionalidade, deve-se, em primeiro lugar, criar um mecanismo dentro da plataforma GeoSales EVO que consiga inserir, durante a elaboração de um pedido, produtos indicando os seus respectivo lotes, quando aplicável. Na plataforma GeoSales 3, a funcionalidade ficava na parte de pedidos, numa área chamada 'Dados de Produto'. Nesta área, é possível inserir o número do lote, o nome do produto a que se referia aquele lote, a quantidade de produtos existentes por lote e valores por lote. Cada uma dessas informações devem estar disponíveis para inclusão na EVO, a fim de determinar a que lote, o pedido está sendo elaborado, quando aplicável.
  
 
== Implementação ==
 
== Implementação ==
  
1. Na tela de cadastro de cliente para aprovação, na área de Informações adicionais, um flag de ativação será inserido ao lado do campo IE (NR_INSCRICAO_ESTADUAL).<br>
 
  
2. O campo de inscrição Estadual é obrigatório, mas, ao ativar o flag, o campo ficará desabilitado. <br>
+
#. O implemento da funcionalidade será feito a partir das informações dos cards de produtos. Ao selecionar determinado produto, no botão de informações, algumas informações já são disponíveis: Tipo de moeda, informações de verbas, quantidade de itens daquela embalagem, além de campos para informações customizáveis, a exemplo das áreas de aplicação dos descontos.
 +
#. Estes cards não possuem quaisquer informações sobre lote. A implementação consiste em apresentar dados de lote, tais como: prazo de validade do lote, quantidade de produtos no lote, valor e numero de lote.
 +
# Esta visualização ocorrerá abrindo-se nova janela no card do produto, apresentando, além dos dados existentes, a informação dos lotes daquele produto, além de mostrar a quantidade daquele lote e o valor total. 
 +
#. Quando o produto selecionado possui informações de lote, o usuário poderá alterar dados de quantidade de produtos por lote, valores do lote por meio da aplicação de desconto vinculado ao lote (exemplo: usuário, ao verificar dois lotes do mesmo produto, viu que um dos lotes está com a data de validade próximo ao vencimento, justificando o desconto por lote).
 +
#. Além disso, o usuário deverá ter a possibilidade de alterar a quantidade de produtos por lote.
 +
# O usuário também terá possibilidade para escolher mais de um lote para determinado produto.
  
3. Os cadastros de Inscrição Estadual ficam populados na coluna NR_INSCRICAO_ESTADUAL, na tabela de CLIENTE. Para fins de cadastro, ao ativar o flag de isenção, a tupla referente a coluna NR_INSCRICAO_ESTADUAL deverá ser populada com a informação 'ISENTO'.
+
== Cenários ==
  
== Cenários ==
+
Consideremos para composição dos cenários os seguintes dados.
  
=== Cenário 1 - Cliente com Inscrição Estadual: comportamento atual ===
+
Produtos no estoque
  
Consideremos o Cliente 001 que possui a inscrição estadual 0102030405. Ao fazer o cadastro deste cliente na plataforma, a informação de IE será inserida no campo, e salva, deixando a tabela da seguinte forma:
+
'''Produto 1'''
  
{|class="wikitable"
+
{|class= "wikitable"
!ID_CLIENTE
+
!CD_PRODUTO
!NR_INSCRICAO_ESTADUAL
+
!CD_LOTE
 +
!NM_PRODUTO
 +
!DT_VALIDADE
 +
!QT_LOTE
 
|-
 
|-
| 001 || 0102030405
+
| P001 || 1 || bandeja de iogurte 180 ml || 30/10/2021 || 48
 
|-
 
|-
 
|}
 
|}
  
Assim, o cliente cadastrado terá sua IE salva no cadastro de clientes para aprovação.
+
'''Produto 2'''
  
=== Cenário 2 - Cliente sem inscrição estadual: comportamento esperado ===
+
{|class= "wikitable"
 +
!CD_PRODUTO
 +
!CD_LOTE
 +
!NM_PRODUTO
 +
!DT_VALIDADE
 +
!QT_LOTE
 +
|-
 +
| P002 || 1 || bandeja de iogurte 180 ml especial || 30/10/2021 || 48
 +
|-
 +
| P002 || 2 || bandeja de iogurte 180 ml especial || 30/06/2021 || 48
 +
|-
 +
|}
  
Para esta situação, iremos considerar o cliente 002, que não possui IE, por ser isento. Ao fazer o cadastro deste cliente na plataforma, a informação de IE não será inserida no campo, e o flag 'IE isento' será selecionado. Assim, o campo IE será desabilitado, o cadastro poderá continuar, e a seguinte informação de campo será incluída na tabela:
+
'''Produto 3'''
  
{|class="wikitable"
+
{|class= "wikitable"
!ID_CLIENTE
+
!CD_PRODUTO
!NR_INSCRICAO_ESTADUAL
+
!CD_LOTE
 +
!NM_PRODUTO
 +
!DT_VALIDADE
 +
!QT_LOTE
 
|-
 
|-
| 001 || 0102030405
+
| P003 || 1 || garrafa iogurte 900 ml morango || 30/11/2021 || 12
 
|-
 
|-
| 002 || ISENTO
+
| P003 || 2 || garrafa iogurte 900 ml morango || 30/06/2021 || 12
 +
|-
 +
| P003 || 3 || garrafa iogurte 900 ml morango || 30/07/2021 || 12
 +
|-
 +
| P003 || 4 || garrafa iogurte 900 ml morango || 30/11/2021 || 6
 
|-
 
|-
 
|}
 
|}
  
Assim, o cadastro poderá ser finalizado, e não haverá necessidade de preenchimento do campo de IE.
+
 
 +
 
 +
 
 +
 
 +
 
 +
Pelas tabelas, dispomos de 3 produtos distintos, armazenados em lotes com datas de validades e quantidades definidas.
 +
 
 +
 
 +
 
 +
=== Cenário 1 - Pedido com o Produto 1 ===
 +
 
 +
O produto 1 possui apenas 1 único lote. No momento do pedido, ao selecionar o ícone de informações deste produto, só haverá a informação referente ao lote vinculado a ele.
 +
 
 +
=== Cenário 2 - Pedido com o Produto 2 ===
 +
 
 +
* Percebemos que o produto possui dois lotes distintos. A diferença entre os dois está nos valores do prazo de validade. No caso, o lote 2 possui prazo de validade mais curto do que o lote 1.
 +
* Ao realizar o pedido, na tela de produtos, ao selecionar o produto P002, o card se abrirá e mostrará em formato explodido os lotes que possuem aquele produto, com as informações de lote neessárias (prazo de validade, quantidade e valor de lote).
 +
* O usuário seleciona o lote 2 por possuir prazo de validade mais próximo do vencimento. Ele pode alterar a quantidade do lote, com base no estoque, e alterar o valor do lote, aplicando um desconto percentual ao lote inteiro.
 +
* Ao prosseguir com o pedido, as informações parametrizadas no primeiro momento já estarão compondo o montante final do pedido.
 +
 
 +
=== Cenário 3 - Pedido com o Produto 3 ===
 +
 
 +
 
 +
Neste cenário observam-se algumas situações distintas:
 +
 
 +
* Temos 4 lotes distintos para este produto;
 +
* O lote 2 possui validade próximo do vencimento;
 +
* O lote 4 possui quantidade diferenciada dos demais lotes.
 +
 
 +
#. O usuário inicia a composição do pedido selecionando o produto P003. Ao selecionar as informações de produto no card, as informações dos lotes disponíveis serão apresentados em formato explodido para o usuário.
 +
#. Nestes novos cards com as informações de lote, é possível verificar informações como prazo de validade, valor e quantidade de produtos dentro daquele lote.
 +
#. Pelo disposto, o usuário seleciona o lote 2, pelo fato do prazo de validade estar mais próximo do vencimento. Neste card, ele poderá aplicar um desconto percentual ao valor daquele lote e, neste caso, como seu cliente não irá realizar a compra do lote completo, ele poderá definir a quantidade desejada do card.
 +
#. Concluídas as parametrizações para aquele produto, o usuário poderá seguir normalmente com as tramitações do pedido.
 +
 
 +
 
 +
=== Cenário 4 - Criação de Pedido com o Produto 3 com dois lotes distintos ===
 +
 
 +
O produto 3 possui as mesmas observações do cenário anterior, mas agora a necessidade do pedido demanda a escolha de lotes diferentes para o mesmo produto.
 +
 
 +
#. O usuário inicia a composição do pedido selecionando o produto P003. Ao selecionar as informações de produto no card, as informações dos lotes disponíveis serão apresentados em formato explodido para o usuário.
 +
#. Nestes novos cards com as informações de lote, é possível verificar informações como prazo de validade, valor e quantidade de produtos dentro daquele lote.
 +
#. Pelo disposto, o usuário seleciona o lote 2, pelo fato do prazo de validade estar mais próximo do vencimento. Neste card, ele poderá aplicar um desconto percentual ao valor daquele lote e, neste caso, como seu cliente não irá realizar a compra do lote completo, ele poderá definir a quantidade desejada do card.
 +
#. Após a escolha do produto pelo lote 2, definidas as quantidades e descontos, o usuário direciona o pedido para o lote 4, e insere o lote para o pedido. Dessa forma, para o produto 3 teremos 2 lotes distintos: o lote 2 e o lote 4.
 +
#. Concluídas as parametrizações para aquele produto, o usuário poderá seguir normalmente com as tramitações do pedido.
 +
 
 +
 
 +
 
 +
 
 +
 
 +
A sequência operacional do pedido por lote está representado no diagrama abaixo:
 +
 
 +
 
 +
[[arquivo: lote.png]]
  
 
== Regras de Negócio ==
 
== Regras de Negócio ==
  
'''[RN1] - ''' Ao ativar o flag de isento, o campo será automaticamente preenchido com o texto 'ISENTO' e ficará desabilitado para edição.
+
'''[RN1] - ''' A aplicação do desconto por lote será aplicada apenas aos produtos inseridos naquele lote.
 +
 
 +
'''[RN2] - ''' Os demais descontos relacionados a outros aspectos do pedido continuam sendo aplicados sobre o produto cujo desconto por lote já tenha sido inserido.
 +
 
 +
'''[RN3] - ''' O usuário deverá ter a opção de selecionar mais de um lote para um mesmo produto durante a elaboração do pedido.
 +
 
 +
'''[RN4] - ''' O desconto que deverá ser aplicado ao lote atenderá ao formato de percentual.
  
 
== Aprovação ==
 
== Aprovação ==

Edição atual tal como às 17h16min de 9 de junho de 2021


Histórico de Alterações

Data Quem Comentários
04/06/2021 João Ramon Criação do documento

Necessidade

A funcionalidade de lote foi implementada na plataforma GeoSales 3 por conta da necessidade da diferenciação de algumas variantes que possam ocorrer em um mesmo produto (ex. um lote de um produto pode ter diferenciação de um segundo lote do mesmo produto, mas ambos diferenciam-se pelo valor do lote, por motivo de aproximação do prazo de validade deste produto). Portanto, há uma diferenciação por lotes, ainda que sejam os mesmos produtos. Esta funcionalidade foi desenvolvida em 2017 para o GeoSales 3, e agora necessita que esta funcionalidade seja migrada para a nova plataforma, a GeoSales EVO.

Solução

A fim de atender a esta carência de funcionalidade, deve-se, em primeiro lugar, criar um mecanismo dentro da plataforma GeoSales EVO que consiga inserir, durante a elaboração de um pedido, produtos indicando os seus respectivo lotes, quando aplicável. Na plataforma GeoSales 3, a funcionalidade ficava na parte de pedidos, numa área chamada 'Dados de Produto'. Nesta área, é possível inserir o número do lote, o nome do produto a que se referia aquele lote, a quantidade de produtos existentes por lote e valores por lote. Cada uma dessas informações devem estar disponíveis para inclusão na EVO, a fim de determinar a que lote, o pedido está sendo elaborado, quando aplicável.

Implementação

  1. . O implemento da funcionalidade será feito a partir das informações dos cards de produtos. Ao selecionar determinado produto, no botão de informações, algumas informações já são disponíveis: Tipo de moeda, informações de verbas, quantidade de itens daquela embalagem, além de campos para informações customizáveis, a exemplo das áreas de aplicação dos descontos.
  2. . Estes cards não possuem quaisquer informações sobre lote. A implementação consiste em apresentar dados de lote, tais como: prazo de validade do lote, quantidade de produtos no lote, valor e numero de lote.
  3. Esta visualização ocorrerá abrindo-se nova janela no card do produto, apresentando, além dos dados existentes, a informação dos lotes daquele produto, além de mostrar a quantidade daquele lote e o valor total.
  4. . Quando o produto selecionado possui informações de lote, o usuário poderá alterar dados de quantidade de produtos por lote, valores do lote por meio da aplicação de desconto vinculado ao lote (exemplo: usuário, ao verificar dois lotes do mesmo produto, viu que um dos lotes está com a data de validade próximo ao vencimento, justificando o desconto por lote).
  5. . Além disso, o usuário deverá ter a possibilidade de alterar a quantidade de produtos por lote.
  6. O usuário também terá possibilidade para escolher mais de um lote para determinado produto.

Cenários

Consideremos para composição dos cenários os seguintes dados.

Produtos no estoque

Produto 1

CD_PRODUTO CD_LOTE NM_PRODUTO DT_VALIDADE QT_LOTE
P001 1 bandeja de iogurte 180 ml 30/10/2021 48

Produto 2

CD_PRODUTO CD_LOTE NM_PRODUTO DT_VALIDADE QT_LOTE
P002 1 bandeja de iogurte 180 ml especial 30/10/2021 48
P002 2 bandeja de iogurte 180 ml especial 30/06/2021 48

Produto 3

CD_PRODUTO CD_LOTE NM_PRODUTO DT_VALIDADE QT_LOTE
P003 1 garrafa iogurte 900 ml morango 30/11/2021 12
P003 2 garrafa iogurte 900 ml morango 30/06/2021 12
P003 3 garrafa iogurte 900 ml morango 30/07/2021 12
P003 4 garrafa iogurte 900 ml morango 30/11/2021 6




Pelas tabelas, dispomos de 3 produtos distintos, armazenados em lotes com datas de validades e quantidades definidas.


Cenário 1 - Pedido com o Produto 1

O produto 1 possui apenas 1 único lote. No momento do pedido, ao selecionar o ícone de informações deste produto, só haverá a informação referente ao lote vinculado a ele.

Cenário 2 - Pedido com o Produto 2

  • Percebemos que o produto possui dois lotes distintos. A diferença entre os dois está nos valores do prazo de validade. No caso, o lote 2 possui prazo de validade mais curto do que o lote 1.
  • Ao realizar o pedido, na tela de produtos, ao selecionar o produto P002, o card se abrirá e mostrará em formato explodido os lotes que possuem aquele produto, com as informações de lote neessárias (prazo de validade, quantidade e valor de lote).
  • O usuário seleciona o lote 2 por possuir prazo de validade mais próximo do vencimento. Ele pode alterar a quantidade do lote, com base no estoque, e alterar o valor do lote, aplicando um desconto percentual ao lote inteiro.
  • Ao prosseguir com o pedido, as informações parametrizadas no primeiro momento já estarão compondo o montante final do pedido.

Cenário 3 - Pedido com o Produto 3

Neste cenário observam-se algumas situações distintas:

  • Temos 4 lotes distintos para este produto;
  • O lote 2 possui validade próximo do vencimento;
  • O lote 4 possui quantidade diferenciada dos demais lotes.
  1. . O usuário inicia a composição do pedido selecionando o produto P003. Ao selecionar as informações de produto no card, as informações dos lotes disponíveis serão apresentados em formato explodido para o usuário.
  2. . Nestes novos cards com as informações de lote, é possível verificar informações como prazo de validade, valor e quantidade de produtos dentro daquele lote.
  3. . Pelo disposto, o usuário seleciona o lote 2, pelo fato do prazo de validade estar mais próximo do vencimento. Neste card, ele poderá aplicar um desconto percentual ao valor daquele lote e, neste caso, como seu cliente não irá realizar a compra do lote completo, ele poderá definir a quantidade desejada do card.
  4. . Concluídas as parametrizações para aquele produto, o usuário poderá seguir normalmente com as tramitações do pedido.


Cenário 4 - Criação de Pedido com o Produto 3 com dois lotes distintos

O produto 3 possui as mesmas observações do cenário anterior, mas agora a necessidade do pedido demanda a escolha de lotes diferentes para o mesmo produto.

  1. . O usuário inicia a composição do pedido selecionando o produto P003. Ao selecionar as informações de produto no card, as informações dos lotes disponíveis serão apresentados em formato explodido para o usuário.
  2. . Nestes novos cards com as informações de lote, é possível verificar informações como prazo de validade, valor e quantidade de produtos dentro daquele lote.
  3. . Pelo disposto, o usuário seleciona o lote 2, pelo fato do prazo de validade estar mais próximo do vencimento. Neste card, ele poderá aplicar um desconto percentual ao valor daquele lote e, neste caso, como seu cliente não irá realizar a compra do lote completo, ele poderá definir a quantidade desejada do card.
  4. . Após a escolha do produto pelo lote 2, definidas as quantidades e descontos, o usuário direciona o pedido para o lote 4, e insere o lote para o pedido. Dessa forma, para o produto 3 teremos 2 lotes distintos: o lote 2 e o lote 4.
  5. . Concluídas as parametrizações para aquele produto, o usuário poderá seguir normalmente com as tramitações do pedido.



A sequência operacional do pedido por lote está representado no diagrama abaixo:


Lote.png

Regras de Negócio

[RN1] - A aplicação do desconto por lote será aplicada apenas aos produtos inseridos naquele lote.

[RN2] - Os demais descontos relacionados a outros aspectos do pedido continuam sendo aplicados sobre o produto cujo desconto por lote já tenha sido inserido.

[RN3] - O usuário deverá ter a opção de selecionar mais de um lote para um mesmo produto durante a elaboração do pedido.

[RN4] - O desconto que deverá ser aplicado ao lote atenderá ao formato de percentual.

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.

GeoSales

Setor Aprovado Por Data
Desenvolvimento - GeoSales Pessoa que aprovou 00/00/0000
Integração - GeoSales Pessoa que aprovou 00/00/0000
Configurações - GeoSales Pessoa que aprovou 00/00/0000

Empresa solicitante

Setor Aprovado Por Data Assinatura
Gerente TI - Cliente Pessoa que aprovou 00/00/0000
Gerente de Projeto - Cliente Pessoa que aprovou 00/00/0000
Gerente Comercial - Cliente Pessoa que aprovou 00/00/0000