UC00090 - Reajuste de preços por custo alterado
Conteúdo |
Objetivo
- Permitir ao usuário do sistema reajustar o preço de venda de seus produtos a partir das alterações de custo ocorridas nos mesmos.
Atores
- Usuário do sistema
Pré-requisitos
- Considerar documento Padrões de desenvolvimento.
- No projeto da rotina, em confsrc > META-INF > messages > view.properties definir o nome como Reajuste de preço por custo alterado. Este nome será utilizado para criar a página no Wiki.
Resultado esperado
- Atualizar preço de venda dos produtos.
Diagrama de classes
Fluxo de eventos
Fluxos principais
Fluxo 1: Usuário acessa a rotina Menu > Movimentos > Faturamento > Reajuste de preços > Por custo alterado.
- Sistema exibe a tela principal da rotina em questão com a aba de filtragem aberta, conforme layout sugerido Filtros.
Fluxo 2: Usuário informa os filtros desejados e aciona o botão <Consultar>.
- Sistema lista resultados encontrados em um grid conforme descreve a regra de negócio RN01.
Fluxo 3: Usuário reajusta preço dos produtos listados no grid através selecionado uma das três opções disponíveis e aciona o botão <Salvar>.
- Sistema procede, de acordo com a opção de reajuste utilizada, conforme descrito na regra de negócio RN02.
Fluxos alternativos
Fluxo 1: Usuário opta pelo tipo de reajuste Manual informando no grid novo markup e/ou preço de venda somente para algumas tabelas de preço ou somente para alguns produtos, deixando alguns registros inalterados.
- Para registros que usuário não alterou o preço ou markup manualmente um novo preço de venda será calculado com base no CUSTO ALTERADO do produto e no % MARKUP ATUAL de cada tabela.
Fluxos de exceções
Fluxo 1: Na aba de consulta usuário informa filtros para os quais não existem produtos cujo preço de custo foi alterado acionando o botão <Consultar> logo em seguida.
- Após constatar que não existem resultados a serem exibidos sistema emite ao usuário a seguinte mensagem de alerta: Não há produtos com alteração no preço de custo que correspondam aos filtros utilizados.
Regras de negócio
RN01 - Filtragem
- Período: Neste campo o usuário poderá filtrar produtos cujo preço de custo foi alterado via entrada de nota ou manualmente no período informado. Ao lado do campo em questão o usuário deverá informar o tipo de período que deseja utilizar escolhendo as opções Alteração manual ou Notas de entrada.
- Fornecedor: Neste campo o usuário poderá filtrar por um fornecedor específico produtos que tiveram seu custo alterado no período informado.
- Botão <Consultar>: Quando acionado buscará produtos cujo preço de custo foi alterado com base nos filtros informados listando os resultados encontrados no grid.
- Botão <Limpar>: Limpa todos os campos da aba de filtragem.
Os resultados encontrados serão listados no grid da seguinte maneira:
- SELECIONAR: Coluna que permite ao usuário selecionar um ou mais produtos ou todos os produtos, seguindo modelo da respectiva coluna no grid da liquidação em lote.
- ORIGEM ALTERAÇÃO: Nesta coluna será identificado o movimento que fez a alteração no custo do produto. Se a alteração no custo foi feita manualmente esta coluna exibirá o texto "MANUAL". Caso custo do produto tenha sido alterado em função de uma nota de entrada será exibido o ícone NF e a palavra "ENTRADA" à sua direita. O ícone será um link que quando acionado, exibirá em uma janela pop-up o a nota de entrada em questão. Se o custo foi alterado através da rotina de entrada/saídas, será exibido "ENTRADA/SAÍDA".
- DATA: Data em que ocorreu alteração no custo.
- PRODUTO: Coluna que exibe o código e descrição do produto cujo custo sofreu alteração.
- GRADE: Coluna que exibe a grade do produto que sofreu/originou alteração no custo. Para produtos sem grade será exibido GRADE PADRÃO.
- UNIDADE: No caso de alteração manual, exibe a unidade padrão do produto. No caso de nota de entrada e entrada/saída, exibe a unidade em que o produto foi movimentado.
- CUSTO ALTERADO: Exibe o preço de custo do produto que foi alterado na movimentação em questão.
- CUSTO ANTERIOR: Exibe o preço de custo do produto anterior à alteração em questão.
- TABELA DE PREÇO: Nome das tabelas de preço relacionadas ao produto.
- MARKUP ATUAL: Percentual de markup configurado para as tabelas de preço no cadastro do produto.
- PREÇO DE VENDA ATUAL: Preço de venda configurado para as tabelas de preço no cadastro do produto.
- NOVO MARKUP: Nesta célula do grid, para cada tabela de preço, poderá ser digitado pelo usuário um novo percentual de markup para o produto. Assim que o markup for digitado, quando o foco for posicionado sobre a próxima célula o sistema calculará automaticamente o novo preço com base no novo markup e no custo alterado.
- NOVO PREÇO: Nesta célula do grid, para cada tabela de preço, poderá ser digitado pelo usuário um novo preço de venda para o produto. Assim que o preço for digitado, quando o foco for posicionado sobre o próximo campo o sistema calculará o novo markup com base no novo preço e no custo alterado.
RN02 - Tipos de reajuste no preço de venda
O usuário poderá optar por reajustar o preço de venda dos produtos com base na alteração feita no custo dos mesmos de diferentes formas. Cada forma de reajuste terá suas particularidades e quando selecionada, habilitará ao usuário diferentes opções conforme descrito abaixo.
Reajuste manual
Com esta opção ativada o usuário poderá alterar manualmente no grid, para cada produto, as colunas NOVO % MARKUP e NOVO PREÇO DE VENDA. Sempre que uma destas colunas for alterada, o sistema calculará o valor da outra automaticamente com base no novo valor e no CUSTO ALTERADO do produto.
Reajuste com base na fórmula de preço de venda
Com esta opção selecionada, ao acionar o botão <OK> o sistema irá reajustar o markup e o preço de venda de todas as tabelas de preço de todos os produtos listados no grid com base na fórmula de preço de venda configurada para a filial logada.
Reajuste com base em uma tabela de preço
Com esta opção selecionada ao acionaro o botão <OK> o sistema exibirá uma tela pop-up com os seguintes dados:
- Tabela de preço padrão: Lista a tabela de preço preço cadastrada como padrão no sistema. Este campo é somente leitura.
- Fórmula de preço de venda: Lista a fórmula de preço de venda cadastrada para a filial logada. Este campo é somente leitura.
- Grid: Lista as demais tabelas de preço cadastradas no sistema (com exceção da padrão) com as seguintes colunas:
- TABELA DE PREÇO: Nome da tabela de preço.
- % DE REAJUSTE: Coluna onde o usuário poderá informar um percentual de reajuste para a tabela em questão com base na tabela padrão.
- TIPO DE REAJUSTE: Coluna onde o usuário deverá selecionar, caso tenha reajuste informado, se o mesmo será acima ou abaixo com base na tabela padrão.
- Botão <Limpar>: Limpa todos os dados informados voltando a tela a seu estado inicial.
- Botão <Salvar>: Salva as alterações feitas fechando a tela pop-up e transferindo-as para a tela anterior.
- Botão <Cancelar> : Fecha a tela e descarta todos as alterações feitas diante mensagem de confirmação.