UC00094 - Tabela de preço

De Wiki Java - Interno
Ir para: navegação, pesquisa

Conteúdo

Objetivo

  • Manter cadastro de tabelas de preço.

Atores

  • Usuário

Pré-requisitos

  • Considerar documento Padrões de desenvolvimento.
  • No projeto da rotina, em confsrc > META-INF > messages > view.properties definir o nome como Tabela de preço. Este nome será utilizado para criar a página no Wiki.

Resultado esperado

  • Cadastrar no sistema tabelas de preço a serem utilizadas nos itens.

Diagrama de classes

Produto.png

Fluxo de eventos

Fluxos principais

Fluxo 1: Usuário acessa o menu Cadastros > Faturamento > Item > Tabela de preço.

  • Sistema exibe tela de pesquisa exibindo as tabelas já cadastradas em um grid com as seguintes colunas:
    1. DESCRIÇÃO
    2. DESCRIÇÃO ABREVIADA
    3. ATIVO
    4. PADRÂO
    5. DESCONTO (%)
    6. VALIDADE


Fluxo 2: Usuário aciona o botão <Adicionar tabela de preço>.


Fluxo 3: Usuário informa os dados da tabela de preço e aciona o botão <Salvar>.

  • Sistema cadastra a tabela de preço.

Fluxos alternativos

Fluxo 1: Na tela de pesquisa usuário aciona no grid o botão <Consulta> para um determinado registro.

  • Sistema exibe a tela de manutenção em modo de consulta com os dados do registro selecionado.


Fluxo 2: Usuário aciona o botão <Alterar> em um determinado registro no grid da tela de pesquisa ou após consulta-lo.

  • Sistema exibe a tela de manutenção com os dados do registro selecionado habilitados para alteração.


Fluxo 3: Usuário aciona o botão <Excluir> em um determinado registro no grid da tela de pesquisa ou após consulta-lo.

  • Sistema emite ao usuário a mensagem de confirmação: Confirma a exclusão deste registro?
  • Caso usuário selecione <Sim> na mensagem, sistema exclui permanentemente o registro em questão. Caso contrário a exclusão é abortada.

Fluxos de exceção

Fluxo 1: Tendo uma tabela de preço já cadastrada e definida como padrão em uma determinada filial, usuário altera uma outra tabela ou cadastra uma nova tabela definindo-a também como padrão na filial em questão.

  • Sistema aborta a gravação e emite ao usuário a seguinte mensagem de alerta: A tabela de preço cadastrada como XXXXXX já está definida como tabela padrão na filial YYY-YYYYYYY. Uma filial pode ter somente uma única tabela de preço definida como padrão. Onde XXXXXX equivale à descrição da tabela padrão já cadastrada e YYY-YYYYYYY ao código+nome da filial.


Fluxo 2: Tendo uma tabela de preço já cadastrada e vinculada a um cliente ou a um produto, usuário tenta alterá-la.

  • Ao entrar em modo de alteração sistema emite ao usuário a seguinte mensagem de alerta: Atenção! Esta tabela de preço é utilizada no cadastro de produtos/clientes e quaisquer alterações poderão afetar os produtos/clientes que a utilizam. Apesar do alerta, sistema permite ao usuário gravar as alterações (respeitando o controle de acesso do mesmo).


Fluxo 3: Tendo uma tabela de preço já cadastrada e vinculada a um cliente ou a um produto, usuário tenta excluí-la.

  • Sistema aborta a exclusão e emite ao usuário a seguinte mensagem de alerta: Atenção! Esta tabela de preço está sendo utilizada no cadastro de produtos ou já foi vinculada a um ou mais clientes e portanto sua exclusão não será permitida.


Fluxo 4: Usuário tenta alterar/cadastrar uma tabela de preço informando na mesma uma validade cuja data final é menor que a data corrente (de login).

  • Sistema aborta a gravação e emite ao usuário a seguinte mensagem: A data final da validade da tabela não pode ser menor que a data corrente.

Regras de negócio

RN01 - Descrição dos campos e funcionalidades da tela (de manutenção)

  1. Ativo: Campo que define se uma determinada tabela de preço está ativa para uso ou não. Tabelas de preço inativas não serão visíveis nas demais rotinas do sistema.
  2. Tabela padrão: Campo que define que a tabela de preço será a tabela padrão das filiais selecionadas. Somente será permitido ter cadastrada uma única tabela padrão por filial.
  3. Descrição: Campo onde deverá ser informada o nome/descrição da tabela de preço.
  4. Descrição abreviada: Campo onde poderá ser informada uma descrição abreviada para a tabela de preço. Esta descrição pode ser eventualmente utilizada em consultas e relatórios cujo espaço disponível para esta informação é limitado.
  5. Validade: Nestes campos poderá ser definido um período de validade para o uso da tabela de preço. Caso esta informação seja deixada em branco, não será estabelecido um prazo de validade para a tabela. Caso usuário informe um período, a tabela de preço somente poderá ser utilizada nas demais rotinas do sistema em datas compreendidas na validade da mesma.
  6. Desconto máximo: Campo onde pode ser definido um percentual máximo de desconto (no item) a ser utilizado em uma venda com uma determinada tabela de preço.
  7. Filiais: Neste campo poderá ser definida quais filiais poderão utilizar uma determinada tabela de preço. Por padrão, todas as filiais cadastradas serão listadas independente do controle de acesso do usuário. A rotina de cadastro de tabela de preço sempre considerará, excepcionalmente, todas as tabelas cadastradas independente das filiais atribuídas às mesmas.

Layouts sugeridos

Quadro de dados

Tela de manutenção

NOME OBRIGATÓRIO TIPO DE ENTRADA VALORES POSSÍVEIS TAMANHO VALOR PADRÃO OBSERVAÇÃO
Ativo Não Checkbox Marcado/Desmarcado Marcado
Descrição Sim Input Alfanuméricos 40 Vazio
Descrição abreviada Não Input Alfanuméricos 15 Vazio
Validade Não Input Numéricos Vazio
Desconto máximo Não Input Numéricos Vazio
Ferramentas pessoais
Espaços nominais

Variantes
Visualizações
Ações
Navegação
Ferramentas