Mudanças entre as edições de "Venda por lote"
(91 revisões intermediárias por 8 usuários não estão sendo mostradas) | |||
Linha 5: | Linha 5: | ||
! Comentários | ! Comentários | ||
|- | |- | ||
− | | 19/06/2017 || Arielton Nunes || Criação do Documento | + | | 19/06/2017 || Arielton Nunes || Criação do Documento. |
− | | | + | |- |
+ | | 26/07/2017 || Leonardo Sousa || Aprovação do Documento | ||
+ | |- | ||
+ | | 06/09/2017 || Inaldo França || Envio da Documentação para o Cliente | ||
+ | |- | ||
+ | | 25/09/2017 || Renato Lima || Alteração comportamento de inserir produto através do portal e aplicação de desconto por lote. | ||
+ | |- | ||
+ | | 27/09/2017 || Marcus Fábio Salviano || - Várias pequenas alterações de ortografia e formatação no texto para melhor entendimento. | ||
+ | - Alterações na seção "Aplicação desconto" (texto e estrutura da tabela '''DESCONTO_LOTE'''). | ||
+ | |||
+ | - Criação da '''[RN6]'''. | ||
+ | |- | ||
+ | | 27/09/2017 || Renato Lima || Criação da RN7, Mudar o desenhos das telas de mobile e portal, além do desenvolvimentos da funcionalidade tela a tela. | ||
+ | |- | ||
+ | | 28/09/2017 || Marcus Fábio Salviano || Documento aprovado pelo desenvolvimento. | ||
+ | |- | ||
+ | | 29/09/2017 || Inaldo França || Reenvio do Documento Ajustado para o Cliente | ||
+ | |- | ||
+ | | 03/10/2017 || Inaldo França || Criação da RN8 sobre o Custo do Lote | ||
+ | |- | ||
+ | | 03/10/2017 || Inaldo França || Reenvio do Documento Ajustado para o Cliente | ||
+ | |- | ||
+ | | 19/10/2017 || Renato Lima || Remover pre condição de criação de tabela e Adaptar a RN4, ao fluxos de telas que ja acontece no portal e mobile. | ||
+ | |- | ||
+ | | 30/10/2017 || Renato Lima || Adicionar campos de Organização de venda e tabela de preco da tabela desconto lote, inserir a RN9 e mudar a imagem da tela de cadastro de lote. | ||
+ | |- | ||
|} | |} | ||
== Necessidade == | == Necessidade == | ||
− | + | A empresa tem a necessidade do controle de venda por produto lote, para que se possa gerar um rastreamento e uma politica de preço diferenciada. | |
Atualmente o sistema não controla a venda de itens por lote associando cada lote a uma tabela de preço. Dessa forma o usuário não consegue vender o mesmo item em lotes separados por conta do estado do item e vencimento associados a preços diferentes para o mesmo produto. | Atualmente o sistema não controla a venda de itens por lote associando cada lote a uma tabela de preço. Dessa forma o usuário não consegue vender o mesmo item em lotes separados por conta do estado do item e vencimento associados a preços diferentes para o mesmo produto. | ||
== Solução == | == Solução == | ||
Para que o GeoSales realize a venda por lote, a informação deve ser importada do ERP para o GeoSales, associando o lote ao seu devido produto. | Para que o GeoSales realize a venda por lote, a informação deve ser importada do ERP para o GeoSales, associando o lote ao seu devido produto. | ||
− | Cada lote terá seu estoque que não | + | Cada lote terá seu estoque que não afetará no estoque do produto que será controlado de forma individual. |
Todo estoque terá uma data de validade. Após a data de validade o estoque deverá ficar indisponível para venda. | Todo estoque terá uma data de validade. Após a data de validade o estoque deverá ficar indisponível para venda. | ||
O preço será por produto e não por lote, mas o GeoSales terá a opção de desconto por lote permitindo flexibilidade de valores. | O preço será por produto e não por lote, mas o GeoSales terá a opção de desconto por lote permitindo flexibilidade de valores. | ||
== Pré-Requisitos== | == Pré-Requisitos== | ||
− | Será necessário utilizar o campo | + | - Será necessário utilizar o campo '''NR_ITEM_PEDIDO''' como chave do item do pedido para que possamos ter mais de um item do pedido com o mesmo produto mas de lotes diferentes. |
− | + | ||
− | O campo | + | - O campo '''CD_LOTE''' na tabela '''ITEM_PEDIDO''' deve ser preenchido com o código do lote do produto escolhido. |
− | As | + | |
− | Os relatórios de pedidos devem contemplar itens com lote e sem lote para evitar agrupamento de itens pelo código do produto, nesse caso deverá ser feita a distinção do agrupamento através da configuração '''ID_UTILIZA_VENDA_POR_LOTE''' dentro da tabela '''CONFIGURACAO''' com valor S. | + | - As tabela e '''LOTE''' deve conter as informações respectivas a cada lote e a tabela '''ESTOQUE_LOTE''' fará a associação do lote com o estoque e conterá a quantidade do item em estoque. |
+ | |||
+ | - Os relatórios de pedidos devem contemplar itens com lote e sem lote para evitar agrupamento de itens pelo código do produto, nesse caso deverá ser feita a distinção do agrupamento através da configuração '''ID_UTILIZA_VENDA_POR_LOTE''' dentro da tabela '''CONFIGURACAO''' com valor S. | ||
=== Cadastro de Pedido === | === Cadastro de Pedido === | ||
+ | '''PORTAL''' | ||
+ | |||
+ | O vendedor fará a busca do produto no GeoSales Portal através do campo de busca do produto na tela de pedido, ao selecionar o produto do lado do campo quantidade, o sistema exibirá um botão lote. | ||
+ | |||
+ | [[Arquivo:TelaProdutoLote1.png]] | ||
+ | |||
+ | Ao clicar no botão lote o sistema abrirá um modal com as informações: | ||
+ | |||
+ | '''- Cód. Lote''': Código alfanumérico do lote que será selecionado (CAMPO DS_LOTE da tabela lote) | ||
+ | |||
+ | '''- Qt Estoque''': Quantidade de itens em estoque para aquele lote | ||
+ | |||
+ | '''- Preco''': Preço do lote | ||
+ | |||
+ | '''- Vencimento''': Data de validade do lote | ||
+ | |||
+ | [[Arquivo:TelaPedidosLote33.png]] | ||
+ | |||
+ | O vendedor ao visualizar a tabela com as opções detalhadas deverá escolher o lote e em seguida clicar em selecionar. O sistema voltará para tela e ao lado do botão lote, vai exibir o nome do lote, do produto selecionado. | ||
+ | Todas as validações de preço e estoque devem ser implementadas nas ações de inserir e editar. | ||
+ | Caso deseje inserir o mesmo produto de um lote diferente, o usuário fará o mesmo processo. | ||
− | + | [[Arquivo:TelaProdutoLote111.png]] | |
+ | O item deverá ser apresentado exibindo o código do lote antes do código do produto. | ||
− | [[Arquivo: | + | [[Arquivo:ItemPedidoLote.png]] |
+ | Para edição dos itens, o vendedor vai selecionar o item, após seleciona-lo ao clicar em lote o sistema vai exibir seus lotes, onde o usuário poderá fazer as alterações necessárias. | ||
− | + | '''MOBILE''' | |
+ | No GeoSales Mobile o vendedor fará a busca do produto, ao selecionar o produto do lado do campo quantidade, o sistema exibirá um botão lote. | ||
− | + | [[Arquivo:MobileCadastroPedidoLote.png]] | |
− | + | Ao clicar no botão lote o sistema abrirá um modal com as informações de Lote, qt estoque, preco e vencimento. | |
− | + | [[Arquivo:MobileTelaSelecaoLote1.png]] | |
− | |||
− | + | O vendedor ao Visulizar a tabela com as opções detalhadas deverá escolher o lote e em seguida clicar em selecionar. O sistema voltará para tela e ao lado do botão lote, vai exibir o nome do lote, do produto selecionado. Todas as validações de preço e estoque devem ser implementadas nas ações de inserir e editar. Caso deseje inserir o mesmo produto de um lote diferente, o usuário fará o mesmo processo. | |
− | + | [[Arquivo:MobileTelaItemLote.png]] | |
− | + | Para edição dos itens, o vendedor vai selecionar o item, após seleciona-lo ao clicar em lote o sistema vai exibir seus lotes, onde o usuário poderá fazer as alterações necessárias. | |
− | + | Na Tabela de item pedido deve ser inserido o campo cd_lote. | |
− | + | {| class="wikitable" | |
+ | ! colspan="5" | ITEM_PEDIDO | ||
+ | |- | ||
+ | ! style="width:200px" |Coluna | ||
+ | ! Tipo | ||
+ | ! style="width:200px" |Obrigatório | ||
+ | ! style="width:300px" |Chave Primária | ||
+ | ! style="width:300px" |Explicação | ||
+ | |- | ||
+ | | CD_LOTE | ||
+ | | INT | ||
+ | | NAO | ||
+ | | NAO | ||
+ | | Código do lote | ||
+ | |- | ||
+ | |} | ||
− | + | === Aplicação desconto === | |
+ | Na nossa estrutura de aplicação de desconto, será criada o '''DESCONTO_LOTE''' e na hierarquia de desconto será colocada como prioridade mais alta para que o preço seja aplicado de acordo com que o sistema já oferece, em toda a faixa de preço ou apenas no valor minimo. | ||
− | + | Será criada a tabela DESCONTO_LOTE | |
− | + | {| class="wikitable" | |
+ | ! colspan="5" | DESCONTO_LOTE | ||
+ | |- | ||
+ | ! style="width:200px" |Coluna | ||
+ | ! Tipo | ||
+ | ! style="width:200px" |Obrigatório | ||
+ | ! style="width:300px" |Chave Primária | ||
+ | ! style="width:300px" |Explicação | ||
+ | |- | ||
+ | | CD_LOTE | ||
+ | | INT | ||
+ | | SIM | ||
+ | | SIM | ||
+ | | Código do lote | ||
+ | |- | ||
+ | | PR_DESCONTO | ||
+ | | DECIMAL | ||
+ | | SIM | ||
+ | | NÃO | ||
+ | | Percentual desconto | ||
+ | |- | ||
+ | | CD_ORG_VENDA | ||
+ | | VARCHAR(20) | ||
+ | | NÃO | ||
+ | | NÃO | ||
+ | | Organização de venda | ||
+ | |- | ||
+ | | CD_TAB_PRECO | ||
+ | | INT | ||
+ | | NÃO | ||
+ | | NÃO | ||
+ | | Tabela de preço | ||
+ | |- | ||
+ | |} | ||
− | + | Essas informações poderão vir através de integração ou o desconto poderá ser cadastrado. | |
− | + | [[Arquivo:Desconto Lote.png]] | |
− | + | O preço de tabela será o preço padrão. No caso de ter um preço por lote, no momento de integrar essa diferença de preço será tratado como regra de desconto, cuja diferença será criada em uma regra de desconto para o lote do produto. Ao selecionar o produto de lote especifico, caso tenha alguma regra de desconto o valor do produto será exibido, de acordo com as regras e configurações aplicadas no Geosales. | |
− | + | *'''Cenário''' | |
− | + | Produto A tem seu preço de tabela R$ 100,00. | |
− | + | Para o lote A, existe uma regra de desconto de 10%. | |
− | + | Ao selecionar esse produto que esteja no lote A, o valor do mesmo será exibido com o desconto de 10%, ou seja R$ 90,00. | |
+ | Ao selecionar um produto que seja do Lote B, o valor do produto será exibido sem o desconto de 10%, ou seja R$ 100,00 | ||
=== Relatório === | === Relatório === | ||
Linha 89: | Linha 189: | ||
'''[RN2]''' - No GeoSales Mobile Deverá apresentar na tela de pedidos uma primeira seleção com os dados da busca por produto exibindo no campo de estoque os dados da tabela estoque lote caso os lotes tenham o cd_produto do produto selecionado. O campo Qtd não deve ser possível de editar pois as quantidades serão escolhidas na tela de itens de lote que é acessada através de um botão habilitado apenas quando o produto possuir estoque. | '''[RN2]''' - No GeoSales Mobile Deverá apresentar na tela de pedidos uma primeira seleção com os dados da busca por produto exibindo no campo de estoque os dados da tabela estoque lote caso os lotes tenham o cd_produto do produto selecionado. O campo Qtd não deve ser possível de editar pois as quantidades serão escolhidas na tela de itens de lote que é acessada através de um botão habilitado apenas quando o produto possuir estoque. | ||
− | '''[RN3]''' - | + | '''[RN3]''' - Na tela de consulta de produtos a quantidade em estoque de produtos deverá conter os dados do estoque do produto vindo do somatório de todas as quantidades de lotes para a organização de venda selecionada. |
− | '''[RN4]''' - No GeoSales | + | '''[RN4]''' - No GeoSales deverá ser alterada a tela de cadastro de pedido para caso a configuração '''ID_UTILIZA_VENDA_POR_LOTE''' esteja com valor "S", apresentará um botão "LOTE", cujo evento disparado constrói uma tabela com os lotes que possuem data de validade posterior a data atual e estoque na tabela de estoque_lote caso o lote tenha estoque maior que zero. |
'''[RN5]''' - No GeoSales Portal quando o usuário selecionar o lote na tabela gerada ele carregará os detalhes de quantidade em estoque e faixa de preço do lote específico. | '''[RN5]''' - No GeoSales Portal quando o usuário selecionar o lote na tabela gerada ele carregará os detalhes de quantidade em estoque e faixa de preço do lote específico. | ||
+ | |||
+ | '''[RN6]''' - O sistema dever ter a configuração '''EXIGE_HIERARQUIA_DESCONTO''' na tabela '''CONFIGURACAO''' para S para que o sistema use hierarquia de desconto e assim contemple a aplicação de desconto por lote e demais tipos de descontos existentes. | ||
+ | |||
+ | '''[RN7]''' - O sistema não aceitará um produto de mesmo lote, só poderá ser inserido mesmo produto se possuir lotes diferentes. | ||
+ | |||
+ | '''[RN8]''' - O sistema irá exibir a informação do Custo do Lote concatenado a descrição do Lote | ||
+ | |||
+ | '''[RN9]''' - O sistema irá exibir as informações dos produtos selecionados, quando houver desconto lote e utilização de tabela de preço e organização de venda, de acordo com o que foi selecionado no cabeçalho do pedido. | ||
== Aprovação == | == Aprovação == |
Edição atual tal como às 15h29min de 30 de outubro de 2017
Histórico de Revisões
Data | Quem | Comentários |
---|---|---|
19/06/2017 | Arielton Nunes | Criação do Documento. |
26/07/2017 | Leonardo Sousa | Aprovação do Documento |
06/09/2017 | Inaldo França | Envio da Documentação para o Cliente |
25/09/2017 | Renato Lima | Alteração comportamento de inserir produto através do portal e aplicação de desconto por lote. |
27/09/2017 | Marcus Fábio Salviano | - Várias pequenas alterações de ortografia e formatação no texto para melhor entendimento.
- Alterações na seção "Aplicação desconto" (texto e estrutura da tabela DESCONTO_LOTE). - Criação da [RN6]. |
27/09/2017 | Renato Lima | Criação da RN7, Mudar o desenhos das telas de mobile e portal, além do desenvolvimentos da funcionalidade tela a tela. |
28/09/2017 | Marcus Fábio Salviano | Documento aprovado pelo desenvolvimento. |
29/09/2017 | Inaldo França | Reenvio do Documento Ajustado para o Cliente |
03/10/2017 | Inaldo França | Criação da RN8 sobre o Custo do Lote |
03/10/2017 | Inaldo França | Reenvio do Documento Ajustado para o Cliente |
19/10/2017 | Renato Lima | Remover pre condição de criação de tabela e Adaptar a RN4, ao fluxos de telas que ja acontece no portal e mobile. |
30/10/2017 | Renato Lima | Adicionar campos de Organização de venda e tabela de preco da tabela desconto lote, inserir a RN9 e mudar a imagem da tela de cadastro de lote. |
Necessidade
A empresa tem a necessidade do controle de venda por produto lote, para que se possa gerar um rastreamento e uma politica de preço diferenciada. Atualmente o sistema não controla a venda de itens por lote associando cada lote a uma tabela de preço. Dessa forma o usuário não consegue vender o mesmo item em lotes separados por conta do estado do item e vencimento associados a preços diferentes para o mesmo produto.
Solução
Para que o GeoSales realize a venda por lote, a informação deve ser importada do ERP para o GeoSales, associando o lote ao seu devido produto. Cada lote terá seu estoque que não afetará no estoque do produto que será controlado de forma individual. Todo estoque terá uma data de validade. Após a data de validade o estoque deverá ficar indisponível para venda. O preço será por produto e não por lote, mas o GeoSales terá a opção de desconto por lote permitindo flexibilidade de valores.
Pré-Requisitos
- Será necessário utilizar o campo NR_ITEM_PEDIDO como chave do item do pedido para que possamos ter mais de um item do pedido com o mesmo produto mas de lotes diferentes.
- O campo CD_LOTE na tabela ITEM_PEDIDO deve ser preenchido com o código do lote do produto escolhido.
- As tabela e LOTE deve conter as informações respectivas a cada lote e a tabela ESTOQUE_LOTE fará a associação do lote com o estoque e conterá a quantidade do item em estoque.
- Os relatórios de pedidos devem contemplar itens com lote e sem lote para evitar agrupamento de itens pelo código do produto, nesse caso deverá ser feita a distinção do agrupamento através da configuração ID_UTILIZA_VENDA_POR_LOTE dentro da tabela CONFIGURACAO com valor S.
Cadastro de Pedido
PORTAL
O vendedor fará a busca do produto no GeoSales Portal através do campo de busca do produto na tela de pedido, ao selecionar o produto do lado do campo quantidade, o sistema exibirá um botão lote.
Ao clicar no botão lote o sistema abrirá um modal com as informações:
- Cód. Lote: Código alfanumérico do lote que será selecionado (CAMPO DS_LOTE da tabela lote)
- Qt Estoque: Quantidade de itens em estoque para aquele lote
- Preco: Preço do lote
- Vencimento: Data de validade do lote
O vendedor ao visualizar a tabela com as opções detalhadas deverá escolher o lote e em seguida clicar em selecionar. O sistema voltará para tela e ao lado do botão lote, vai exibir o nome do lote, do produto selecionado. Todas as validações de preço e estoque devem ser implementadas nas ações de inserir e editar. Caso deseje inserir o mesmo produto de um lote diferente, o usuário fará o mesmo processo.
O item deverá ser apresentado exibindo o código do lote antes do código do produto.
Para edição dos itens, o vendedor vai selecionar o item, após seleciona-lo ao clicar em lote o sistema vai exibir seus lotes, onde o usuário poderá fazer as alterações necessárias.
MOBILE
No GeoSales Mobile o vendedor fará a busca do produto, ao selecionar o produto do lado do campo quantidade, o sistema exibirá um botão lote.
Ao clicar no botão lote o sistema abrirá um modal com as informações de Lote, qt estoque, preco e vencimento.
O vendedor ao Visulizar a tabela com as opções detalhadas deverá escolher o lote e em seguida clicar em selecionar. O sistema voltará para tela e ao lado do botão lote, vai exibir o nome do lote, do produto selecionado. Todas as validações de preço e estoque devem ser implementadas nas ações de inserir e editar. Caso deseje inserir o mesmo produto de um lote diferente, o usuário fará o mesmo processo.
Para edição dos itens, o vendedor vai selecionar o item, após seleciona-lo ao clicar em lote o sistema vai exibir seus lotes, onde o usuário poderá fazer as alterações necessárias.
Na Tabela de item pedido deve ser inserido o campo cd_lote.
ITEM_PEDIDO | ||||
---|---|---|---|---|
Coluna | Tipo | Obrigatório | Chave Primária | Explicação |
CD_LOTE | INT | NAO | NAO | Código do lote |
Aplicação desconto
Na nossa estrutura de aplicação de desconto, será criada o DESCONTO_LOTE e na hierarquia de desconto será colocada como prioridade mais alta para que o preço seja aplicado de acordo com que o sistema já oferece, em toda a faixa de preço ou apenas no valor minimo.
Será criada a tabela DESCONTO_LOTE
DESCONTO_LOTE | ||||
---|---|---|---|---|
Coluna | Tipo | Obrigatório | Chave Primária | Explicação |
CD_LOTE | INT | SIM | SIM | Código do lote |
PR_DESCONTO | DECIMAL | SIM | NÃO | Percentual desconto |
CD_ORG_VENDA | VARCHAR(20) | NÃO | NÃO | Organização de venda |
CD_TAB_PRECO | INT | NÃO | NÃO | Tabela de preço |
Essas informações poderão vir através de integração ou o desconto poderá ser cadastrado.
O preço de tabela será o preço padrão. No caso de ter um preço por lote, no momento de integrar essa diferença de preço será tratado como regra de desconto, cuja diferença será criada em uma regra de desconto para o lote do produto. Ao selecionar o produto de lote especifico, caso tenha alguma regra de desconto o valor do produto será exibido, de acordo com as regras e configurações aplicadas no Geosales.
- Cenário
Produto A tem seu preço de tabela R$ 100,00.
Para o lote A, existe uma regra de desconto de 10%.
Ao selecionar esse produto que esteja no lote A, o valor do mesmo será exibido com o desconto de 10%, ou seja R$ 90,00.
Ao selecionar um produto que seja do Lote B, o valor do produto será exibido sem o desconto de 10%, ou seja R$ 100,00
Relatório
O relatório de pedidos necessita ser alterado para exibir a informação do lote do item
Regras de Negócio
[RN1] – Deve ser criado uma flag no banco de dados que irá alterar a configuração do sistema para utilizar VENDA POR LOTE, sugerimos a flag ID_UTILIZA_VENDA_POR_LOTE, quando configurada como "S" no banco de dados, o GeoSales Mobile irá apresentar na tabela de pedidos toda a estrutura de itens levando em consideração o código do lote. Caso esteja marcado como "N", o sistema irá utilizar a estrutura de itens pelo código do produto como também toda a estrutura de criação de pedidos padrão.
[RN2] - No GeoSales Mobile Deverá apresentar na tela de pedidos uma primeira seleção com os dados da busca por produto exibindo no campo de estoque os dados da tabela estoque lote caso os lotes tenham o cd_produto do produto selecionado. O campo Qtd não deve ser possível de editar pois as quantidades serão escolhidas na tela de itens de lote que é acessada através de um botão habilitado apenas quando o produto possuir estoque.
[RN3] - Na tela de consulta de produtos a quantidade em estoque de produtos deverá conter os dados do estoque do produto vindo do somatório de todas as quantidades de lotes para a organização de venda selecionada.
[RN4] - No GeoSales deverá ser alterada a tela de cadastro de pedido para caso a configuração ID_UTILIZA_VENDA_POR_LOTE esteja com valor "S", apresentará um botão "LOTE", cujo evento disparado constrói uma tabela com os lotes que possuem data de validade posterior a data atual e estoque na tabela de estoque_lote caso o lote tenha estoque maior que zero.
[RN5] - No GeoSales Portal quando o usuário selecionar o lote na tabela gerada ele carregará os detalhes de quantidade em estoque e faixa de preço do lote específico.
[RN6] - O sistema dever ter a configuração EXIGE_HIERARQUIA_DESCONTO na tabela CONFIGURACAO para S para que o sistema use hierarquia de desconto e assim contemple a aplicação de desconto por lote e demais tipos de descontos existentes.
[RN7] - O sistema não aceitará um produto de mesmo lote, só poderá ser inserido mesmo produto se possuir lotes diferentes.
[RN8] - O sistema irá exibir a informação do Custo do Lote concatenado a descrição do Lote
[RN9] - O sistema irá exibir as informações dos produtos selecionados, quando houver desconto lote e utilização de tabela de preço e organização de venda, de acordo com o que foi selecionado no cabeçalho do pedido.
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 |
---|---|---|---|
TOTVS | |||
CLIENTE |