UC00060 - Digitação de inventário
Conteúdo |
Objetivo
Permitir ao usuário do sistema digitar os valores de estoque físico encontrados para cada item durante o inventário.
Atores
- Usuário
Pré-requisitos
- Considerar documento de padronização do sistema java.
- Ter cadastrados produtos cujo estoque já foi movimentado.
- No projeto da rotina, em confsrc > META-INF > messages > view.properties definir o nome como Digitação de inventário. Este nome será utilizado para criar a página no Wiki.
Resultado esperado
- Inventário digitado.
Diagrama de classes
Fluxo de eventos
Fluxos principais
Fluxo 1
- Usuário acessa a rotina Menu > Movimentos > Faturamento > Inventário > Digitação de inventário.
- Sistema exibe a tela inicial da rotina listando as movimentações já realizadas conforme regra de negócio RN01.
- Usuário aciona o botão <Adicionar Digitação de Inventário>.
- Sistema exibe a tela de digitação de inventário conforme layouts de tela.
- Usuário informa os itens para digitação e aciona o botão <Adicionar item>.
- Sistema valida dados informados de acordo com regra de negócio RN02.
4. Após informar os itens desejados, usuário aciona o botão <Salvar>. a. Sistema grava a digitação para a data atual e o usuário responsável exibindo uma mensagem ao usuário confirmando a movimentação e retornando à tela inicial da rotina.
Fluxo 2
Fluxo 3
Fluxos alternativos
Fluxo 1
Fluxos de exceções
Fluxo 1
Fluxo 2
Fluxo 3
Regras de negócio
RN01 - Tela inicial
No grid da tela inicial deverão ser exibidas as seguintes colunas:
- FILIAL: Código + nome da filial em que o inventário foi digitado. Movimentações de outras não poderão ser visualizadas.
- DATA: Data em que a digitação foi realizada.
- USUÁRIO: Usuário que realizou a digitação.
- FINALIZADA: Deverá exibir os valores Sim ou Não, dependendo se a digitação já foi utilizada no acerto de estoque ou não.
RN02 - Itens
Os dados abaixo deverão ser obrigatoriamente informados conforme suas regras:
• Item: Neste campo o usuário deverá informar o item cujo estoque deseja inicializar.
• Unidade de saída: Neste campo deverá ser selecionada uma unidade de saída cadastrada para o item informado. De acordo com a unidade, o sistema deve habilitar ou não as casas decimais, e a quantidade de casas decimais.
• Estoque atual: Este campo será somente para leitura e exibirá o estoque atual do item informado.
• Estoque físico: Neste campo o usuário deverá informar o estoque inventariado.
• Causa: Neste campo o usuário deverá selecionar uma causa (dentre as já cadastradas) para a digitação
• Botão <Grades>: Ficará sempre desabilitado até que no campo “Item” seja informado um item que controla grade. A partir do momento que o item que controla grade é informado este botão ficará habilitado e sua utilização se torna obrigatória. Ver regra de negócio RN01 do caso de uso UC00003 - Movimento de Estoque.
• Botão : Ficará sempre desabilitado até que no campo “Item” seja informado um item que controle série. A partir do momento que o item que controla série é informado este botão ficará habilitado e sua utilização se torna obrigatória. Ver caso de uso UC00004 - Movimentação de séries.
• Botão <Adicionar item>: Uma vez que os dados acima foram informados o usuário deverá acionar este botão para que os mesmos sejam inclusos no grid logo abaixo. Se os dados informados estiverem corretos eles serão inclusos no grid, caso contrário uma mensagem com a não conformidade será exibida ao usuário. Uma vez que o item foi adicionado no grid os campos serão limpos e o foco ficará posicionado sobre o campo item para que um novo produto seja adicionado.
• Grid: Para cada registro incluso no grid o sistema deverá disponibilizar funcionalidades de alterar e excluir na última coluna. A funcionalidade de alteração irá carregar os dados do registro selecionado nos campos acima do grid para que sejam editados e atualizados quando o botão <Adicionar item> for acionado.
A funcionalidade de exclusão deverá emitir ao usuário uma mensagem de confirmação. Este grid deverá fazer uso da pesquisa estilo google.
Na inclusão de itens o usuário poderá, se desejar, informar um mesmo item mais de uma vez desde que as unidades sejam diferentes. Exemplo:
• Já existe um item no grid cuja unidade de saída é CX. Se o usuário tentar inserir este mesmo item com a unidade CX, o sistema abortará a inclusão e emitirá a seguinte mensagem: Este item já foi digitado no grid, portanto não será possível inseri-lo novamente. Selecione o item correspondente já existente no grid e faça nele as alterações desejadas.
• Já existe um item no grid cuja unidade de saída é CX. Se o usuário tentar inserir este mesmo item com uma unidade de saída diferente, UN por exemplo, o sistema fará a inclusão normalmente.