UC00116 - Consulta de rentabilidade
(→RN01 - Filtragem) |
(→RN01 - Filtragem) |
||
| (16 edições intermediárias de um usuário não apresentadas) | |||
| Linha 8: | Linha 8: | ||
*Considerar documento [[Padrões de desenvolvimento]]. | *Considerar documento [[Padrões de desenvolvimento]]. | ||
*No projeto da rotina, em confsrc > META-INF > messages > view.properties definir o nome como '''Rentabilidade'''. Este nome será utilizado para criar a página no Wiki. | *No projeto da rotina, em confsrc > META-INF > messages > view.properties definir o nome como '''Rentabilidade'''. Este nome será utilizado para criar a página no Wiki. | ||
| + | *Tomar nota do caso de uso [[UC00115 - Rentabilidade]]. | ||
| + | *Em todos os comboboxes da aba de filtragem, utilizar o novo componente desenvolvido juntamente com o caso de uso [[UC00114 - Consulta estoque mín-máx/sugestão de compra#Pré-requisitos | UC00114]]. | ||
| + | *'''Não calcular''' novamente a rentabilidade das vendas e de seus itens, estes estarão gravados no banco de dados conforme caso de uso [[UC00072 - Ponto de venda#Gravação | UC00072 - Ponto de venda]]. | ||
= Resultado esperado = | = Resultado esperado = | ||
| Linha 14: | Linha 17: | ||
= Fluxo de eventos = | = Fluxo de eventos = | ||
== Fluxos principais == | == Fluxos principais == | ||
| − | '''Fluxo 1:''' | + | '''Fluxo 1:''' Usuário acessa '''''Menu > Consultas > Faturamento > Rentabilidade'''''. |
| + | *Sistema exibe a tela inicial da rotina com o grid vazio e com a aba de filtragem aberta. | ||
| + | |||
| + | |||
| + | '''Fluxo 2:''' Usuário informa os filtros desejados conforme regra de negócio [[#RN01 - Filtragem | RN01]] e aciona o botão '''[Consultar]'''. | ||
| + | *Com base nos filtros utilizados o sistema realiza a consulta e exibe os resultados encontrados no grid conforme regra de negócio [[#RN02 - Grid | RN02]]. | ||
| + | *Caso nenhum dado seja encontrado para os filtros utilizados, uma mensagem com esta informação será exibida ao usuário. | ||
== Fluxos alternativos == | == Fluxos alternativos == | ||
| − | '''Fluxo 1:''' | + | '''Fluxo 1:''' Após ter o resultado de sua consulta listado no grid usuário posiciona o mouse sobre o botão '''[Imprimir]''' no canto superior direito do grid. |
| + | *Sistema exibe ao usuário as opções de formato PDF, Word e Excel. | ||
| + | *Caso usuário clique sobre um determinado formato, o sistema exportará os dados do grid para o formato selecionado seguindo os padrões de relatório/consulta. | ||
| + | |||
| + | |||
| + | '''Fluxo 2:''' Após ter o resultado da consulta listado no grid o usuário aciona o botão '''[Gerar gráfico]''' no canto superior direito do grid. | ||
| + | *Com base nos resultados listados no grid o sistema exibe um gráfico de rentabilidade em um ''pop-up'' conforme caso de uso [[UC00115 - Rentabilidade#Gráficos | UC00115 - Rentabilidade]]. | ||
== Fluxos de exceção == | == Fluxos de exceção == | ||
| − | '''Fluxo 1:''' | + | '''Fluxo 1:''' Um determinado usuário com acesso a rotina em questão tenta acessá-la, porém na filial logada os parâmetros de rentabilidade não foram informados ou estão inativos. |
| + | *Assim que a tela for renderizada a seguinte mensagem de alerta será exibida ao usuário: <font color=#008B00>''Os parâmetros de rentabilidade da filial em questão estão inativos ou ainda não foram informados. Verifique as configurações de rentabilidade nos parâmetros da filial logada e tente novamente.''</font> | ||
| + | *O botão '''[Consultar]''' permanecerá desabilitado até que sejam encontrados parâmetros de rentabilidade para filial logada. | ||
= Regras de negócio = | = Regras de negócio = | ||
| Linha 32: | Linha 49: | ||
*#*Não faturados | *#*Não faturados | ||
*#*Ambos (opção padrão) | *#*Ambos (opção padrão) | ||
| − | *#'''Ordenação:''' Campo onde o usuário deverá selecionar a forma em que deseja que os dados sejam ordenados no resultado da consulta. As opções serão as seguintes: | + | *#'''Ordenação:''' Campo onde o usuário deverá selecionar a forma em que deseja que os dados sejam ordenados no resultado da consulta. A ordenação será aplicada somente ao totalizador selecionado salvo algumas restrições. Caso uma determinada ordenação não se aplique ao totalizador selecionado, a ordenação '''Alfabética''' será adotada por padrão. As opções de ordenação serão as seguintes: |
| − | *#*Código | + | *#*Código: Aplicável somente para os seguintes totalizadores: |
| − | *#*Alfabética | + | *#*#Cliente |
| − | *#*Itens mais vendidos | + | *#*#Fornecedor |
| − | *#*% Rentabilidade operacional (opção padrão) | + | *#*#Produto |
| − | *#*R$ Margem contribuição operacional | + | *#*#Vendedor |
| + | *#*Alfabética: Aplicável a todos os totalizadores. | ||
| + | *#*Itens mais vendidos: Aplicável somente quanto o totalizador selecionado for '''Produto'''. Neste caso os produtos serão ordenados de forma decrescente pela quantidade vendida na filtragem. | ||
| + | *#*% Rentabilidade operacional (opção padrão): Aplicável a todos os totalizadores, ordenando-os de forma decrescente pelo percentual de rentabilidade operacional. | ||
| + | *#*R$ Margem contribuição operacional: A exemplo do item acima, aplicável a todos os totalizadores. | ||
*#'''Totalizar por:''' Campo onde o usuário deverá selecionar a forma em que deseja que o resultado da consulta seja totalizado. As opções serão as seguintes: | *#'''Totalizar por:''' Campo onde o usuário deverá selecionar a forma em que deseja que o resultado da consulta seja totalizado. As opções serão as seguintes: | ||
*#*Cidade | *#*Cidade | ||
| Linha 69: | Linha 90: | ||
*'''Consultar:''' Quando acionado, com base nos filtros informados realizará a consulta. | *'''Consultar:''' Quando acionado, com base nos filtros informados realizará a consulta. | ||
*'''Limpar:''' Limpa todos os filtros informados pelo usuário voltando-os a seu estado inicial. | *'''Limpar:''' Limpa todos os filtros informados pelo usuário voltando-os a seu estado inicial. | ||
| + | |||
| + | <font face="Arial"> | ||
| + | Em todos os filtros cujo campo é um combobox o usuário poderá selecionar um ou mais registros, uma vez que será utilizado o novo componente citado | ||
| + | nos pré-requisitos deste caso de uso. | ||
== RN02 - Grid == | == RN02 - Grid == | ||
| − | a | + | Exibirá, de acordo com os filtros informados, o resultado obtido nas seguintes colunas: |
| + | *TOTALIZADOR | ||
| + | *R$ VENDA | ||
| + | *R$ CUSTO. | ||
| + | *% CUSTO AQUISIÇÃO | ||
| + | *% CUSTO VENDA | ||
| + | *R$ MARGEM RENT. BRUTA | ||
| + | *R$ MARGEM RENT. OPERACIONAL | ||
| + | *% RENTABILIDADE BRUTA | ||
| + | *% RENTABILIDADE OPERACIONAL | ||
| + | |||
| + | No canto superior esquerdo do grid, na linha em que é exibido os títulos das colunas, será accessível um ''combobox'' que listará as mesmas opções existentes no campo '''Totalizar por''' dos filtros gerais da consulta. Para cada tipo de totalização que o usuário selecionar o grid será preenchido novamente com dados referentes ao totalizador em questão a exemplo de como já acontece na consulta de curva ABC. | ||
| + | Exemplo: | ||
| + | *'''''Cidade:''' Os pedidos serão agrupados pela cidade de seus clientes e no grid serão exibidos os nomes das cidades com os totais de rentabilidade para cada uma.'' | ||
| + | *'''''Classificação do cliente:''' Os pedidos serão agrupados pela classificação de seus clientes e no grid serão exibidos os nomes das classificações com os totais de rentabilidade de cada uma''. | ||
| + | *'''''Cliente:''' Os pedidos serão agrupados por cliente e no grid serão exibidos os nomes do cliente e os totais de rentabilidade de cada um''. | ||
| + | |||
| + | |||
| + | No canto superior direito do grid serão visíveis dois botões: | ||
| + | *'''[Imprimir]:''' Quando usuário posicionar o mouse sobre este botão serão exibidas as opções de formato, para que no formato desejado seja gerada a impressão dos registros listados no grid. | ||
| + | *'''[Gerar gráfico]:''' Quando acionado este botão exibirá em uma janela ''pop-up'' o gráfico de rentabilidade da consulta conforme determina o caso de uso [[UC00115 - Rentabilidade#Gráfico na consulta de rentabilidade | UC00115 - Rentabilidade]]. | ||
| + | |||
| + | <font face="Arial"> | ||
| + | Maiores detalhes sobre os cálculos da rentabilidade na consulta devem ser verificados no caso de uso [[UC00115 - Rentabilidade#Rentabilidade_da_consulta| UC00115 - Rentabilidade]]. | ||
| + | |||
| + | <font face="Arial"> | ||
| + | As colunas que exibem percentuais não podem ser somadas com base nas venda gravadas. Para estas o cálculo deverá ser refeito. | ||
Edição atual tal como às 17h21min de 8 de setembro de 2014
Conteúdo |
[editar] Objetivo
- Manter consulta de rentbilidade
[editar] Atores
- Usuário
[editar] Pré-requisitos
- Considerar documento Padrões de desenvolvimento.
- No projeto da rotina, em confsrc > META-INF > messages > view.properties definir o nome como Rentabilidade. Este nome será utilizado para criar a página no Wiki.
- Tomar nota do caso de uso UC00115 - Rentabilidade.
- Em todos os comboboxes da aba de filtragem, utilizar o novo componente desenvolvido juntamente com o caso de uso UC00114.
- Não calcular novamente a rentabilidade das vendas e de seus itens, estes estarão gravados no banco de dados conforme caso de uso UC00072 - Ponto de venda.
[editar] Resultado esperado
- Visualizar dados de rentabilidade de forma dinâmica (no modelo da curva ABC) e com geração de gráfico.
[editar] Fluxo de eventos
[editar] Fluxos principais
Fluxo 1: Usuário acessa Menu > Consultas > Faturamento > Rentabilidade.
- Sistema exibe a tela inicial da rotina com o grid vazio e com a aba de filtragem aberta.
Fluxo 2: Usuário informa os filtros desejados conforme regra de negócio RN01 e aciona o botão [Consultar].
- Com base nos filtros utilizados o sistema realiza a consulta e exibe os resultados encontrados no grid conforme regra de negócio RN02.
- Caso nenhum dado seja encontrado para os filtros utilizados, uma mensagem com esta informação será exibida ao usuário.
[editar] Fluxos alternativos
Fluxo 1: Após ter o resultado de sua consulta listado no grid usuário posiciona o mouse sobre o botão [Imprimir] no canto superior direito do grid.
- Sistema exibe ao usuário as opções de formato PDF, Word e Excel.
- Caso usuário clique sobre um determinado formato, o sistema exportará os dados do grid para o formato selecionado seguindo os padrões de relatório/consulta.
Fluxo 2: Após ter o resultado da consulta listado no grid o usuário aciona o botão [Gerar gráfico] no canto superior direito do grid.
- Com base nos resultados listados no grid o sistema exibe um gráfico de rentabilidade em um pop-up conforme caso de uso UC00115 - Rentabilidade.
[editar] Fluxos de exceção
Fluxo 1: Um determinado usuário com acesso a rotina em questão tenta acessá-la, porém na filial logada os parâmetros de rentabilidade não foram informados ou estão inativos.
- Assim que a tela for renderizada a seguinte mensagem de alerta será exibida ao usuário: Os parâmetros de rentabilidade da filial em questão estão inativos ou ainda não foram informados. Verifique as configurações de rentabilidade nos parâmetros da filial logada e tente novamente.
- O botão [Consultar] permanecerá desabilitado até que sejam encontrados parâmetros de rentabilidade para filial logada.
[editar] Regras de negócio
[editar] RN01 - Filtragem
Assim que a rotina em questão for acessada será exibida ao usuário a aba com os filtros para consulta. Estes filtros serão exibidos em grupos, que podem ser expandidos ou agrupados a exemplo de como ocorre na consulta Curva ABC de vendas dinâmica. Os grupos/filtros da consulta serão:
- Gerais: Conjunto de filtros sempre visíveis e de preenchimento obrigatório. Para este grupo de filtros não será visível o botão para expandir/ocultar os filtros.
- Filial: Campo onde o usuário deverá marcar uma ou mais filiais (se tiver acesso) a serem consideradas na consulta. Por padrão a filial logada aparecerá já selecionada.
- Período: Campo onde o usuário deverá informar uma data inicial e final a serem consideradas como período de venda na consulta. Por padrão, o período será automaticamente preenchido com o primeiro e último dia do mês corrente.
- Apuração: Campo onde o usuário deverá selecionar os tipos de pedido a serem considerados na consulta. As opções serão as seguintes:
- Faturados
- Não faturados
- Ambos (opção padrão)
- Ordenação: Campo onde o usuário deverá selecionar a forma em que deseja que os dados sejam ordenados no resultado da consulta. A ordenação será aplicada somente ao totalizador selecionado salvo algumas restrições. Caso uma determinada ordenação não se aplique ao totalizador selecionado, a ordenação Alfabética será adotada por padrão. As opções de ordenação serão as seguintes:
- Código: Aplicável somente para os seguintes totalizadores:
- Cliente
- Fornecedor
- Produto
- Vendedor
- Alfabética: Aplicável a todos os totalizadores.
- Itens mais vendidos: Aplicável somente quanto o totalizador selecionado for Produto. Neste caso os produtos serão ordenados de forma decrescente pela quantidade vendida na filtragem.
- % Rentabilidade operacional (opção padrão): Aplicável a todos os totalizadores, ordenando-os de forma decrescente pelo percentual de rentabilidade operacional.
- R$ Margem contribuição operacional: A exemplo do item acima, aplicável a todos os totalizadores.
- Código: Aplicável somente para os seguintes totalizadores:
- Totalizar por: Campo onde o usuário deverá selecionar a forma em que deseja que o resultado da consulta seja totalizado. As opções serão as seguintes:
- Cidade
- Classificação do cliente
- Cliente
- Estado
- Fabricante
- Família
- Fornecedor
- Grupo
- Marca
- Produto
- Segmento de mercado
- Tabela de preço
- Vendedor
- Filtros de produto: Grupo de filtros específicos de itens. A informação destes filtros é opcional e quando informados, a consulta buscará por vendas cujos itens se encaixem em um ou mais filtros dentre os utilizados.
- Fornecedor (principal)
- Grupo
- Subgrupo
- Família
- Fabricante
- Marca
- Filtros de cliente: Grupo de filtros específicos de clientes. Sua informação é opcional e quando utilizados, a consulta buscará por vendas cujos clientes se encaixem em um ou mais filtros dentre os informados.
- Cliente
- Segmento
- Classificação
- Estado
- Cidade
Na parte inferior estarão disponíveis os botões:
- Consultar: Quando acionado, com base nos filtros informados realizará a consulta.
- Limpar: Limpa todos os filtros informados pelo usuário voltando-os a seu estado inicial.
Em todos os filtros cujo campo é um combobox o usuário poderá selecionar um ou mais registros, uma vez que será utilizado o novo componente citado
nos pré-requisitos deste caso de uso.
[editar] RN02 - Grid
Exibirá, de acordo com os filtros informados, o resultado obtido nas seguintes colunas:
- TOTALIZADOR
- R$ VENDA
- R$ CUSTO.
- % CUSTO AQUISIÇÃO
- % CUSTO VENDA
- R$ MARGEM RENT. BRUTA
- R$ MARGEM RENT. OPERACIONAL
- % RENTABILIDADE BRUTA
- % RENTABILIDADE OPERACIONAL
No canto superior esquerdo do grid, na linha em que é exibido os títulos das colunas, será accessível um combobox que listará as mesmas opções existentes no campo Totalizar por dos filtros gerais da consulta. Para cada tipo de totalização que o usuário selecionar o grid será preenchido novamente com dados referentes ao totalizador em questão a exemplo de como já acontece na consulta de curva ABC. Exemplo:
- Cidade: Os pedidos serão agrupados pela cidade de seus clientes e no grid serão exibidos os nomes das cidades com os totais de rentabilidade para cada uma.
- Classificação do cliente: Os pedidos serão agrupados pela classificação de seus clientes e no grid serão exibidos os nomes das classificações com os totais de rentabilidade de cada uma.
- Cliente: Os pedidos serão agrupados por cliente e no grid serão exibidos os nomes do cliente e os totais de rentabilidade de cada um.
No canto superior direito do grid serão visíveis dois botões:
- [Imprimir]: Quando usuário posicionar o mouse sobre este botão serão exibidas as opções de formato, para que no formato desejado seja gerada a impressão dos registros listados no grid.
- [Gerar gráfico]: Quando acionado este botão exibirá em uma janela pop-up o gráfico de rentabilidade da consulta conforme determina o caso de uso UC00115 - Rentabilidade.
Maiores detalhes sobre os cálculos da rentabilidade na consulta devem ser verificados no caso de uso UC00115 - Rentabilidade.
As colunas que exibem percentuais não podem ser somadas com base nas venda gravadas. Para estas o cálculo deverá ser refeito.