Histórico da Página
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|
Informações Gerais
Especificação | |||
Produto | Datasul | Módulo | Pedidos |
Segmento Executor |
| ||
Projeto1 | PCREQ-447 | IRM1 | PCREQ-447 |
Requisito1 | PCREQ-10479 | Subtarefa1 |
|
Chamado2 |
| ||
País | (x) Brasil ( ) Argentina ( ) Mexico ( ) Chile ( ) Paraguai ( ) Equador ( ) USA ( ) Colombia ( ) Outro _____________. | ||
Outros | <Caso necessário informe outras referências que sejam pertinentes a esta especificação. Exemplo: links de outros documentos ou subtarefas relacionadas>. |
Legenda: 1 – Inovação 2 – Manutenção (Os demais campos devem ser preenchidos para ambos os processos).
Objetivo
Desenvolvimento de um componente para permitir o cadastro de dashboards por grupo de segurança (perfil), e possibilitar a configuração do dashboard por usuário.
Conversão para HTML5 dos portlets de pedidos e telas de aprovações de pedidos, disponíveis para o perfil Analista de Pedidos de Venda (Flex).
Definição da Regra de Negócio
1 - Componente Dashboard HTML
Será desenvolvido um componente que permitirá o cadastro de dashboards por grupo de segurança (perfil), e será possível definir quais portlets estarão disponíveis para cada dashboard.
Os dashboards serão configuráveis por usuário, o usuário poderá escolher o nome, o nome de cabeçalho, quais portlets ele deseja visualizar no dasboard e a posição dos portlets.
O botão configurar estará disponível em cada dashboard, e abrirá a interface de configuração. Nesta interface o usuário poderá reposicionar para cima ou para baixo os portlets utilizando botões ou o recurso de arrastar e soltar (drag and drop), alterar o tamanho dos portlets para médio ou grande e remove-los.
No cabeçalho da interface de configuração do dashboard estará disponível um botão para cancelar ou gravar a configuração realizada pelo usuário.
O cabeçalho também terá um botão para adicionar widgets, este botão abrirá uma lista de portlets disponivéis para inclusão no dashboard, com opção de filtro pelo nome do portlet.
Os dashboards e seus portlets serão cadastrados no cadastro de programas do produto datasul (men012aa). Se for desenvolvido algum portlet customizado, este poderá ser adicionado ao dashboard através do cadastro de menus. O cliente também poderá adicionar dashboards customizados através do cadastro de menu do Datasul.
- Dados Técnicos:
Este componente poderá ser reutilizado para criar dashbaords para qualquer modulo disponível no Datasul, por este motivo foi desenvolvido no pacote html-dts-utils-X.X.X-SNAPSHOT.war que se encontra dentro do .EAR do Datasul.
Para acessar os dados progress será criado a fachada (API) "fch/fchutils/fchutils0001.p" e será adicionado na estrutura de arquivos progress do Datasul.
Para gravar as configurações realizadas pelo usuário será utilizado a tabela configur, disponível no foundation, está tabela é utilizada para gravação de preferencias de usuários do Datasul.
Este componente deverá ter um cadastro de menu geral denominado "Dashboard Generico" que o componente utilizará como base para os dashboards cadastrados pelas áreas de negócio (conforme tabela de estrutura de menu definida abaixo).
Cada dasboard deverá ser cadastrado no programa de cadastro de menu (men012aa) e ficará a critério da área de negócio defini-lo como visível ou não. O campo "Nome Externo" no cadastro do dashboard no programa men012aa deverá ser composto pelo seguinte valor: "dts/dts-utils/dashboard" mais o identificador único de cada dashboard, sendo sugerido que seja o código do grupo de segurança (perfil) do dashboard. Por exemplo: "dts/dts-utils/dashboard/rep".
Ainda no cadastro do dashboard no cadstro de programas (men012aa), o campo "Template" deverá conter a opção "Programa HTML", o campo "Tipo" deve conter a opção "Consulta" e o campo "Interface" deve conter a opção "WEB".
Para ficarem disponíveis nos dasboards os portlets serão cadastrados no cadastro de programas (men012aa), neste cadastro o campo "Nome Externo" obrigatoriamente deve conter o contexto do módulo (dts/[modulo]) a estrutura de pastas e o nome do arquivo principal do portlet html. Por exemplo: "dts/mpd/html/dashboard/customersummary.jsp".
Será através da informação do campo "Nome Externo" que o dashboard encontrará o portlet. Outro detalhe obrigatório é em relação ao arquivo Java Script que define o controller do portlet, este deve conter o mesmo nome do arquivo .html ou .jsp que define a interface html.
No cadastro no programa men012aa para o portlet, o campo "Template" deverá conter a opção "Programa HTML", o campo "Tipo" a opção "Consulta" o campo "Interface" a opção "FLEX", o campo "Categoria" a opção "MONITORY" e não deve ser marcado a opção "Visualiza Menu".
Se for adicionado mais de um grupo de segurança para um portlet através do programa men012aa (botão Grupo de Segurança), este portlet ficará disponível para os usuários que tiverem permissão de acesso a esses grupos.
Para as funcionalidades de drag and drop será utilizado um plugin externo ao Totvs HTML Framework, este plugin possui licença MIT e esta publicado na web no seguinte endereço:
http://ngmodules.org/modules/ngDraggable.
2 - Dashboard do Representante (Portal).
O dashboard do perfil representante no portal de vendas será alterado para utilizar o componente de Dashboard HTML, para isso será cadastrado uma nova opção de menu no cadastro de programas do Datasul (conforme tabela de estrutura de menu definida abaixo). O cadastro deste dashboard no cadastro de programas (men012aa) deve conter apenas o grupo de segurança "REP".
O menu exclusivo do portal, deverá ter a opção de menu "Dashboard do Representante" alterada para abrir este dashboard.
Para o perfil representante será disponibilizado o portlet Cliente Selecionado, que permitirá a seleção de um cliente e filtrará automaticamente os seguintes portlets: Resumo de Pedidos, Resumo de Agenda, Últimas Notas Fiscais, Resumo de Comissões , Resumo de Títulos dos Cliente e Últimos Pedidos. O portlet Cliente selecionado está detalhado abaixo no item 8.
A pesquisa rápida por código ou nome abreviado, atualmente disponível no dashboard de representante para o portal, será substituída pelo portlet Cliente Selecionado.
Os portlets disponíveis atualmente para o perfil representante no portal deverão ser adicionados no programa Cadastro de Programas do Datasul (men012aa).
A configuração de portlets disponível no programa Adiconar Campos por Seleção (FFAdicionaCamposPortal) através da opção "Dashboard do Representante" será removida, e a configuração dos portlets passarão a ser executas no próprio dashboard.
- Dados Técnicos:
Os arquivos dos portlets disponíveis atualmente na pasta "html/dashboard" para o dashboard do representante serão movidos para a pasta "html/dashboard/rep".
A opção do menu "Dashbaord do Representante" que está no menu exclusivo do portal para o perfil representante , deverá ser alterada no método "getMenu" do programa fch/fchdis/fchdis0035api.p de "#/dts/mpd/dashboard" para "#/dts/dts-utils/dashboard/rep".
3 - Dashboard do Cliente (Portal).
O dashboard do perfil cliente no portal de vendas será alterado para utilizar o componente de Dashboard HTML, para isso será cadastrado uma nova opção de menu no cadastro de programas do Datasul (conforme tabela de estrutura de menu definida abaixo). O cadastro deste dashboard no cadastro de programas (men012aa) deve conter apenas o grupo de segurança "CLV".
O menu exclusivo do portal, deverá ter a opção de menu "Dashboard" alterada para abrir este dashboard.
- Dados Técnicos:
Os portlets "Resumo de Pedidos" e "Últimos Pedidos" disponíveis atualmente para o dashboard do cliente do portal de vendas, deverá ser cadastrado no programa men012aa para os grupos de segurança "REP" e "CLV", desta forma estes dois portlets estarão disponíveis para os dashboards de Clientes e Representantes no portal.
A opção de menu "Dashoard" que está no menu exclusivo do portal para o perfil cliente, deverá ser alterada no método "getMenu" programa fch/fchdis0035api.p de "#/dts/mpd/dashboard" para "#/dts/dts-utils/dashboard/clv".
4 - Dashboard Analista de Pedidos de Venda.
Será criado o dashboard Analista de Pedidos de Venda (HTML) utilizando o componente Dashboard HTML, para isso será cadastrado uma nova opção de menu no cadastro de programas do Datasul (conforme tabela de estrutura de menu definida abaixo). O cadastro deste dashboard no cadstro de programas (men012aa) deve conter apenas o grupo de segurança "APD".
Para este deashboard estarão disponíveis os seguintes portlets:
- Resumo de Pedidos - definido no item 6.
- Resumo de Clientes - definido no item 7.
- Cliente Selecionado - definido no item 8.
- Resumo de Pedidos do Portal - definido no item 9.
- Resumo de Aprovação de Pedidos (Alçada) - definido no item 11.
5 - Dashboard Implantador de Pedidos de Venda.
Será criado o dashboard Implantador de Pedidos de Venda (HTML) este dashboard será similar ao do Analista de Pedidos de Venda, porém não terá o portlet "Resumo de Pedidos do Portal".
Para este dashboard será cadastrado uma nova opção de menu no cadastro de programas do Datasul (conforme tabela de estrutura de menu definida abaixo), e cadastro deste dashboard no cadastro de programas (men012aa) deve conter apenas o grupo de segurança "IPD".
Para este deashboard estarão disponíveis os seguintes portlets:
- Resumo de Pedidos - definido no item 6.
- Resumo de Clientes - definido no item 7.
- Cliente Selecionado - definido no item 8.
- Resumo de Aprovação de Pedidos (Alçada) - definido no item 11.
6 - Portlet - Resumo de Pedidos.
O portlet Resumo de Pedidos, disponível atualmente em Flex será convertido para HTML5, utilizando os padrões do Totvs HTML Framework. As funcionalidades do portlet permanecem similares porém não haverá a opção de visualizar planilha. Ao clicar no botão "detalhar" será aberta a interface de carteira de pedidos (especificada em outro documento).
Este portlet deve ser cadastrado no cadastro de programas (men012aa) para os grupos de segurança "APD" e "IPD" (conforme tabela de estrutura de menu definida abaixo).
- Dados Técnicos:
Para definição dos serviços REST, que acessarão os dados no banco de dados, será criada a fachada fch/fchdis/fchdis0046.p que utilizará o método ordersSummaryOrderAdder da API utilizada pela tela Flex para retornar o gráfico de pedidos (fch/fchdis/fchdis0003api.p).
Os arquivos deste portlet estarão na pasta "html/dashboard/apd" que se encontra dentro da estrutura de pastas do modulo html de pedidos.
Para tornar os campos "Tipo de Hierarquia" e "Hierarquia" visiveis, será verificado se o modulo de hierarquia de times esta ativo através do método getUserData da API fch/fchdis/fchdis0035api.p, estas informações já estão disponíveis na factory portalUserDataFactory.
Ao selecionar um cliente no portlet "Cliente Selecionado" este portlet deve atualizar o resumo de pedidos exibindo apenas os pedidos do cliente selecionado. Para isso o portlet "Resumo de Pedidos" deve escutar o evento "selectedcustomer".
Exemplo:this.$on("selectedcustomer", function(){ //filtrar aqui o resumo de pedidos });
Observação: para escutar o evento deve ser utilizado o escopo do portlet.
Se houver um código de cliente na variável $rootScope.selectedcustomercode, o checkbox "Todos" que define se será exibido apenas os pedidos do cliente selecionado ou de todos os clientes deve ficar habilitado, caso contrario deve ficar desabilitado.
7 - Portlet - Resumo de Clientes.
O portlet Resumo de Clientes, disponível em Flex, será convertido para HTML5, utilizando os padrões do Totvs HTML Framework.
Este portlet deve ser cadastrado no cadastro de programas (men012aa) para os grupos de segurança "APD" e "IPD" (conforme tabela de estrutura de menu definida abaixo).
- Dados Técnicos:
Para definição dos serviços REST, que acessarão os dados no banco de dados, será criada a fachada fch/fchdis/fchdis0048.p que utilizará o método
- método returnCustomerSumaryOrderAdder da API utilizada pela tela Flex para retornar os dados do gráfico de clientes (fch/fchdis/fchdis0001.p).
8 - Portlet - Cliente Selecionado
9 - Portlet - Resumo de Pedidos do Portal (Flex)
10 - Tela - Gerenciamento dos Pedidos de Venda do Portal
11 - Portlet - Resumo de Aprovação de Pedidos (Alçada)
12 - Tela - Aprovação de Pedidos de Venda (Alçada - mpd.FFLibPedVda)
13 - Tela - Configurações de Alçada de Desconto (Cadastro de Alçada + Configurações de Workflow)
<Regra de negócio é o que define a forma de fazer o negócio, o processo definido e/ou as regras que devem ser contempladas. Devem ser descritas restrições, validações, condições e exceções do processo. Caso necessário, incluir neste capítulo também regras de integridade que devem ser observadas no momento do desenvolvimento>.
<Na tabela abaixo informe quais são as rotinas envolvidas, o tipo de operação, a opção de menu e se necessário uma breve descrição das regras de negócio relacionadas a rotina>.
Rotina | Tipo de Operação | Opção de Menu | Regras de Negócio |
Componente Dashboard HTML | Criação | Não se aplica | |
Dashboard do Representante (Portal) | Criação | Logistica > Pedidos > Consultas > Representante de Vendas | |
Dashboard do Cliente (Portal) | Criação | Logistica > Pedidos > Consultas > Dashboard Cliente de Vendas | |
Dashboard Analista de Pedidos de Venda | Criação | Logistica > Pedidos > Consultas > Dashboard Analista de Pedidos de Venda | |
Dashboard Implantador de Pedidos de Venda | Criação | Logistica > Pedidos > Consultas > Dashboard Implantador de Pedidos de Venda | |
Portlet - Resumo de Pedidos | Criação | Logistica > Pedidos > Consultas > Dashboard Analista de Pedidos |
|
Portlet - Resumo de Clientes | Criação | Logistica > Pedidos > Consultas > Dashboard Analista de Pedidos |
|
Portlet - Cliente Selecionado | Criação | Logistica > Pedidos > Consultas > Dashboard Analista de Pedidos |
|
Portlet - Resumo de Pedidos do Portal | Criação | Logistica > Pedidos > Consultas > Dashboard Analista de Pedidos | |
Tela - Gerenciamento dos Pedidos de Venda do Portal | Criação | Logistica > Pedidos > Consultas > Gerenciamento dos Pedidos de Venda do Portal | |
Portlet - Resumo de Aprovação de Pedidos (Alçada) | Criação | Logistica > Pedidos > Consultas > Dashboard Analista de Pedidos | |
Tela - Aprovação de Pedidos de Venda (Alçada - mpd.FFLibPedVda) | Criação | Logistica > Pedidos > Consultas > Aprovação de Pedidos por Alçada de Desconto | |
Tela - Configurações de Alçada de Desconto (Cadastro de Alçada + Configurações de Workflow) | Criação | Logistica > Pedidos > Consultas > Configurações de Alçada de Desconto |
Exemplo de Aplicação:
- Criar o campo “% Mínimo Espécie” (AAA_PERESP) onde o usuário informará o % que o aluno pagará em dinheiro. Esse % poderá ser alterado durante a negociação.
- Criar o campo “Referência Mínima para Cálculo” (AAA_REFCAL) onde o usuário informará um dos 4 valores disponíveis para pagamento das mensalidades como a referência mínima para calcular o débito total do aluno.
- Criar o parâmetro MV_ACPARNE que definirá se as informações de “% Mínimo Espécie” e “Referência Mínima para Cálculo” serão obrigatórias.
- O parâmetro MV_ACPARNE deve ter as seguintes opções: 1=Obrigatório e 2=Opcional. Deve ser inicializado como opcional>.
Tabelas Utilizadas
- prog_dtsul
- prog_dtsul_segur
- configur
- usuar_mestre
Opcional
Protótipo de Tela
<Caso necessário inclua protótipos de telas com o objetivo de facilitar o entendimento do requisito, apresentar conceitos e funcionalidades do software>.
Protótipo 01
Opcional
Fluxo do Processo
<Nesta etapa incluir representações gráficas que descrevam o problema a ser resolvido e o sistema a ser desenvolvido. Exemplo: Diagrama - Caso de Uso, Diagrama de Atividades, Diagrama de Classes, Diagrama de Entidade e Relacionamento e Diagrama de Sequência>.
Opcional
Dicionário de Dados
Arquivo ou Código do Script: AAA – Negociação Financeira / *Versao=CP.2014.12_03*/
Índice | Chave |
01 | <FI9_FILIAL+FI9_IDDARF+FI9_STATUS> |
02 | <FI9_FILIAL+FI9_FORNEC+ FI9_LOJA+FI9_EMISS+FI9_IDDARF> |
03 | <FI9_FILIAL+FI9_FORNEC+ FI9_LOJA+FI9_PREFIX+FI9_NUM+FI9_PARCEL+FI9_TIPO> |
Campo | <AAA_PERESP> |
Tipo | <N> |
Tamanho | <6> |
Valor Inicial | <Varia de acordo com o tipo informado. Por exemplo, quando o campo “tipo” for date, neste campo pode ser informado uma data>. |
Mandatório | Sim ( ) Não ( ) |
Descrição | <Referência Mínima para Cálculo> |
Título | <Ref.Calc.> |
Picture | <@E999.99> |
Help de Campo | <Informar o % que o aluno pagará em dinheiro. Esse % poderá ser alterado durante a negociação> |
(Opcional)
Grupo de Perguntas
<Informações utilizadas na linha Protheus>.
Nome: FINSRF2
X1_ORDEM | 01 |
X1_PERGUNT | Emissão De |
X1_TIPO | D |
X1_TAMANHO | 8 |
X1_GSC | G |
X1_VAR01 | MV_PAR01 |
X1_DEF01 | Comum |
X1_CNT01 | '01/01/08' |
X1_HELP | Data inicial do intervalo de emissões das guias de DARF a serem consideradas na seleção dos dados para o relatório |
(Opcional)
Consulta Padrão
<Informações utilizadas na linha Protheus>
Consulta: AMB
Descrição | Configurações de Planejamento |
Tipo | Consulta Padrão |
Tabela | “AMB” |
Índice | “Código” |
Campo | “Código”; ”Descrição” |
Retorno | AMB->AMB_CODIGO |
(Opcional)
Estrutura de Menu
<Informações utilizadas na linha Datasul>.
Procedimentos
Procedimento |
|
|
|
Descrição | (Max 40 posições) | (Max 40 posições) | (Max 40 posições) |
Módulo |
|
|
|
Programa base |
|
|
|
Nome Menu | (Max 32 posições) | (Max 32 posições) | (Max 32 posições) |
Interface | GUI/WEB/ChUI/Flex | GUI/WEB/ChUI/Flex | GUI/WEB/ChUI/Flex |
Registro padrão | Sim | Sim | Sim |
Visualiza Menu | Sim/Não | Sim/Não | Sim/Não |
Release de Liberação |
|
|
|
Programas
Programa |
|
|
|
Descrição | (Max 40 posições) | (Max 40 posições) | (Max 40 posições) |
Nome Externo |
|
|
|
Nome Menu/Programa | (Max 32 posições) | (Max 32 posições) | (Max 32 posições) |
Nome Verbalizado[1] | (Max 254 posições) | (Max 254 posições) | (Max 254 posições) |
Procedimento |
|
|
|
Template | (Verificar lista de opções no man01211) | (Verificar lista de opções no man01211) | (Verificar lista de opções no man01211) |
Tipo[2] | Consulta/Manutenção/ Relatório/Tarefas | Consulta/Manutenção/ Relatório/Tarefas | Consulta/Manutenção/ Relatório/Tarefas |
Interface | GUI/WEB/ChUI/Flex | GUI/WEB/ChUI/Flex | GUI/WEB/ChUI/Flex |
Categoria[3] |
|
|
|
Executa via RPC | Sim/Não | Sim/Não | Sim/Não |
Registro padrão | Sim | Sim | Sim |
Outro Produto | Não | Não | Não |
Visualiza Menu | Sim/Não | Sim/Não | Sim/Não |
Query on-line | Sim/Não | Sim/Não | Sim/Não |
Log Exec. | Sim/Não | Sim/Não | Sim/Não |
Rotina (EMS) |
|
|
|
Sub-Rotina (EMS) |
|
|
|
Localização dentro da Sub Rotina (EMS) |
|
|
|
Compact[4] | Sim/Não | Sim/Não | Sim/Não |
Home[5] | Sim/Não | Sim/Não | Sim/Não |
Posição do Portlet[6] | 0 – Top Left 1 – Top Right 2 – Bottom Left 3 – Bottom Right | 0 – Top Left 1 – Top Right 2 – Bottom Left 3 – Bottom Right | 0 – Top Left 1 – Top Right 2 – Bottom Left 3 – Bottom Right |
Informar os papeis com os quais o programa deve ser vinculado |
|
|
|
Cadastro de Papéis
<O cadastro de papéis é obrigatório para os projetos de desenvolvimento FLEX a partir do Datasul 10>.
<Lembrete: o nome dos papeis em inglês descrito neste ponto do documento, devem ser homologados pela equipe de tradução>.
Código Papel | (máx 3 posições) |
Descrição em Português* |
|
Descrição em Inglês* |
|
[1] Nome Verbalizado é obrigatório para desenvolvimentos no Datasul 10 em diante.
[2] Tipo é obrigatório para desenvolvimento no Datasul 10 em diante
[3] Categorias são obrigatórias para os programas FLEX.
[4] Obrigatório quando o projeto for FLEX
[5] Obrigatório quando o projeto for FLEX
[6] Obrigatório quando o projeto for FLEX
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|