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 | Microsiga Protheus | Módulo | SIGAPLS - Plano de Saúde |
Segmento Executor | Saúde | ||
Projeto1 | M_SAU_PLS002 | IRM1 | PCREQ-5699 |
Requisito1 | PCREQ-5701 | Subtarefa1 | PCSFL-79 |
Release de Entrega Planejada | 12.1.7 | Réplica | Não |
País | ( x ) Brasil ( ) Argentina ( ) Mexico ( ) Chile ( ) Paraguai ( ) Equador ( ) USA ( ) Colombia ( ) Outro _____________. | ||
Outros | Não Aplicável |
Objetivo
Esta especificação tem como objetivo descrever o processo técnico para criação da rotina de perfil de acesso para usuários do tipo prestador e usuários do tipo beneficiário.
Por questões de segurança é muito importante que o sistema faça o controle de acesso aos menus do portal do prestador/beneficiário, portanto essa rotina é extremamente necessária e deve ser desenvolvida levando em consideração todos os detalhes aqui especificados.
Definição da Regra de Negócio
- Criar um novo campo na tabela BSW chamado BSW_PERACE que será uma consulta padrão e fará o vínculo do usuário de portal com um perfil de acesso.
- A consulta padrão criada neste campo deve exibir o código e a descrição do perfil e deverá retornar o código do perfil selecionado.
- Esta consulta padrão deve ser filtrada de acordo com o tipo do usuário, isto é, se o usuário for um prestador, devem ser carregados somente os perfis do tipo prestador, se for um beneficiário, deve carregar somente os perfis do tipo beneficiário na consulta.
- A consulta padrão criada neste campo deve exibir o código e a descrição do perfil e deverá retornar o código do perfil selecionado.
- Quando o operador do sistema for vincular um usuário de portal a um perfil de acesso na rotina usuários de portal (PLSA226), o sistema deverá validar, no botão confirmar da rotina, o tipo de usuário com o tipo do perfil, por exemplo: é criado um perfil de acesso com o tipo "Beneficiário" para o portal do beneficiário, o sistema não deverá permitir que um usuário do tipo prestador seja vinculado a este perfil criado.
- Deverão ser criadas três tabelas B7I, B7J, B7H que correspondem, respectivamente, a Perfil de Acesso, Permissões de Acesso e Histórico de Alteração de Perfis de acesso.
- A tabela B7I corresponde a uma Grid de perfil de acesso e nela deverão ser contemplados os seguintes campos:
- Código Sequencial do Perfil - B7I_CODSEQ
- Descrição do Perfil - B7I_DESCRI
- Tipo do portal - B7I_TIPPOR
- Campo com X3_CBOX = "1=Prestador; 2=Beneficiário"
- Código do portal - B7I_CODPOR
- Gravar o código do portal de acordo com o tipo do portal (B7I_TIPPOR) selecionado (AI8_PORTAL).
- Se B7I_TIPPOR = 1, então gravar 000008 = Código do portal do prestador.
- Se B7I_TIPPOR = 2, então gravar 000010 = Código do portal do beneficiário.
- Gravar o código do portal de acordo com o tipo do portal (B7I_TIPPOR) selecionado (AI8_PORTAL).
- Data de criação do perfil - B7I_DATCRI
- A tabela B7J corresponde a uma Grid de permissões de acesso e está diretamente relacionada com a tabela B7I sendo a relação = 1 B7I para N B7J, esta deverá contemplar os seguintes campos:
- Código do perfil - gravar o código do perfil da tabela B7I - B7J_CODPER
- Código do menu - código do menu do portal - B7J_CODMNU
- Gravar o código do menu (AI8_CODMNU).
- Descrição do menu - B7J_DESMNU
- Campo virtual que exibirá a descrição da opção de menu.
- Permite acesso - Campo que exibirá o status de permissão da opção de menu (Acesso liberado, Acesso Negado) - B7J_PERACE
- Na tabela B7H deverá ser gravado o histórico de alterações de perfis de acesso, deve contemplar os seguintes campos:
- Código do usuário logado no Protheus que efetuou a criação ou alteração do perfil - B7H_CODUSR
- Data de criação/alteração do perfil - B7H_DATALT
- Hora de criação/alteração do perfil. - B7H_HORALT
- Código do perfil - B7H_CODPER
- Descrição do perfil - B7H_DESPER
- Tipo de Operação - B7H_TIPOPE
- Campo com X3_CBOX = "3=Inclusão; 4=Alteração;5=Exclusão"
- A tabela B7I corresponde a uma Grid de perfil de acesso e nela deverão ser contemplados os seguintes campos:
- Quando o usuário posicionar em um perfil no grid de perfil de acesso, o grid de permissões deverá ser atualizado com as opções de menu, de acordo com o tipo de portal que está configurado no perfil selecionado, e também deverá carregar as permissões de cada menu.
- Enquanto o grid de permissões de acesso estiver sendo carregado, deverá ser exibida uma barra de progresso.
- Na criação de um novo perfil, ao selecionar o tipo de portal no grid de perfil, o grid de permissões deverá exibir todas opções de menu com acesso liberado.
- Deverá ser criada uma coluna na grid de permissões que conterá uma legenda.
- Quando o acesso ao menu estiver liberado, a legenda deverá ser verde.
- Quando o acesso ao menu estiver negado, a legenda deverá ser vermelha.
- A troca de status da permissão deverá ser executada mediante a clique na linha do grid.
- Quando o usuário logar no portal, o sistema deve verificar o perfil de acesso vinculado a ele, e exibir no menu do portal somente as permissões configuradas com acesso liberado neste perfil.
- Se não houver nenhum perfil de acesso vinculado ao usuário, o sistema deverá carregar todos os menus.
- Sempre que for criado, alterado ou excluído algum perfil, a tabela B7H deve ser gravada, e todos os campos devem ser preenchidos.
- O sistema não deve permitir que um perfil de acesso seja excluído se houver algum usuário de portal vinculado.
- Depois de confirmada a inclusão de um perfil, o sistema não deve permitir que o campo Tipo de Portal seja alterado.
- A rotina de Perfil de Acesso deverá ser acessada a partir do SIGAPLS em: Atualizações->Portal->Perfis de Acesso, portanto deverá ser criado um menu no SIGAPLS
- Utilizar como exemplo para criação da tela a rotina HS_PERMLAB do fonte HSPAHP09.
Rotina | Tipo de Operação | Opção de Menu | Regras de Negócio |
PLSA226 | Alteração | Atualizações -> Portal-> Menu dos Portais | 1; 2 |
HS_PERMLAB | Envolvida | - | 710 |
Tabelas Utilizadas
- BSW – Usuários do Portal
- B7I – Perfis de acesso
- B7J – Permissões de acesso portal
- B7H – Histórico de alterações de perfil de acesso
Protótipo de Tela
Protótipo 01 - Tela do cadastro de usuários do portal com o campo Perf. Acesso (BSW_PERACE)
Protótipo 02 - Tela da configuração de perfis de acesso
Fluxo do Processo
Processo 01 - Criação de um perfil de acesso
Processo 02 - Alteração de um perfil de acesso
Processo 03 - Exclusão de um perfil de acesso
Processo 04 - Vincular um perfil de acesso a um usuário do portal
Caso de Uso
Dicionário de Dados
BSW – Usuários do portal
Campo | BSW_PERACE |
Tipo | Caracter |
Tamanho | 6 |
Decimal | 0 |
Título | Perf. Acesso |
Descrição | Perfil de acesso ao portal |
Usado | Sim |
Obrigatório | Não |
Browse | Não |
Contexto | Real |
Propriedade | Alterar |
Help | Perfil de acesso ao portal |
Cons. Padrão | BSWB7I |
Inicializador do campo | |
Lista de opções |
B7I – Perfis de acesso
Índice | Chave |
01 | B7I_FILIAL+B7I_CODSEQ+B7I_TIPPOR+B7I_CODPOR |
Campo | B7I_FILIAL |
Tipo | Caracter |
Tamanho | 2 |
Decimal | 0 |
Título | Filial |
Descrição | Filial do Sistema |
Usado | Sim |
Obrigatório | Sim |
Browse | Sim |
Contexto | Real |
Propriedade | Alterar |
Help | Filial do Sistema |
Inicializador do campo | |
Lista de opções |
Campo | B7I_CODSEQ |
Tipo | Caracter |
Tamanho | 6 |
Decimal | 0 |
Título | Sequencial |
Descrição | Código sequencial |
Usado | Sim |
Obrigatório | Sim |
Browse | Sim |
Contexto | Real |
Propriedade | Visualizar |
Help | Código sequencial do registro |
Inicializador do campo | getSxEnum("B7I", "B7I_CODSEQ") |
Lista de opções |
Campo | B7I_DESCRI |
Tipo | Caracter |
Tamanho | 50 |
Decimal | 0 |
Título | Descrição |
Descrição | Descrição do perfil |
Usado | Sim |
Obrigatório | Sim |
Browse | Sim |
Contexto | Real |
Propriedade | Alterar |
Help | Descrição do perfil |
Inicializador do campo | |
Lista de opções |
Campo | B7I_TIPPOR |
Tipo | Caracter |
Tamanho | 1 |
Decimal | 0 |
Título | Tipo Portal |
Descrição | Tipo do Portal |
Usado | Sim |
Obrigatório | Sim |
Browse | Sim |
Contexto | Real |
Propriedade | Alterar |
Help | Tipo do portal |
Inicializador do campo | |
Lista de opções | 1=Prestador;2=Beneficiário |
Campo | B7I_CODPOR |
Tipo | Caracter |
Tamanho | 6 |
Decimal | 0 |
Título | Código portal |
Descrição | Código do portal |
Usado | Sim |
Obrigatório | Sim |
Browse | Não |
Contexto | Real |
Propriedade | Visualizar |
Help | Código do portal |
Inicializador do campo | |
Lista de opções |
Campo | B7I_DATCRI |
Tipo | Data |
Tamanho | 8 |
Decimal | 0 |
Título | Data criação |
Descrição | Data de criação do registro |
Usado | Sim |
Obrigatório | Sim |
Browse | Não |
Contexto | Real |
Propriedade | Visualizar |
Help | Data de criação do registro |
Inicializador do campo | dDatabase |
Lista de opções |
B7J – Permissões de acesso
Índice | Chave |
01 | B7J_FILIAL+B7J_CODPER+B7J_CODMNU+B7I_PERACE |
Campo | B7J_FILIAL |
Tipo | Caracter |
Tamanho | 2 |
Decimal | 0 |
Título | Filial |
Descrição | Filial do Sistema |
Usado | Sim |
Obrigatório | Sim |
Browse | Sim |
Contexto | Real |
Propriedade | Alterar |
Help | Filial do Sistema |
Inicializador do campo | |
Lista de opções |
Campo | B7I_CODPER |
Tipo | Caracter |
Tamanho | 6 |
Decimal | 0 |
Título | Cod Perfil |
Descrição | Código do perfil |
Usado | Sim |
Obrigatório | Sim |
Browse | Sim |
Contexto | Real |
Propriedade | Alterar |
Help | Código do perfil |
Inicializador do campo | |
Lista de opções |
Campo | B7I_CODMNU |
Tipo | Caracter |
Tamanho | 6 |
Decimal | 0 |
Título | Cod Menu |
Descrição | Código do menu |
Usado | Sim |
Obrigatório | Sim |
Browse | Sim |
Contexto | Real |
Propriedade | Visualizar |
Help | Código do menu |
Inicializador do campo | |
Lista de opções |
Campo | B7I_DESMNU |
Tipo | Caracter |
Tamanho | 40 |
Decimal | 0 |
Título | Desc. Menu |
Descrição | Descrição do Menu |
Usado | Sim |
Obrigatório | Não |
Browse | Sim |
Contexto | Virtual |
Propriedade | Visualizar |
Help | Descrição do menu |
Inicializador do campo | IF(INCLUI,"",POSICIONE("AI8",1,XFILIAL("AI8")+B7I->B7I_CODPOR+B7J->B7J_CODMNU,"AI8_TEXTO")) |
Inicializador Browse | POSICIONE("AI8",1,XFILIAL("AI8")+B7I->B7I_CODPOR+B7J->B7J_CODMNU,"AI8_TEXTO") |
Lista de opções |
Campo | B7J_PERACE |
Tipo | Caracter |
Tamanho | 1 |
Decimal | 0 |
Título | Perm. Acess |
Descrição | Permite Acesso? |
Usado | Sim |
Obrigatório | Sim |
Browse | Sim |
Contexto | Real |
Propriedade | Alterar |
Help | Indica se para esse perfil, o menu é liberado ou não. |
Inicializador do campo | "1" |
Lista de opções | 1=Acesso Liberado;2=Acesso Negado |
(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 |
B7H – Histórico de alteração de permissões de acesso
Índice | Chave |
01 | B7H_FILIAL+B7H_CODPER+B7H_CODUSR |
Campo | B7H_FILIAL |
Tipo | Caracter |
Tamanho | 2 |
Decimal | 0 |
Título | Filial |
Descrição | Filial do Sistema |
Usado | Sim |
Obrigatório | Sim |
Browse | Sim |
Contexto | Real |
Propriedade | Alterar |
Help | Filial do Sistema |
Inicializador do campo | |
Lista de opções |
Campo | B7H_DATALT |
Tipo | Data |
Tamanho | 8 |
Decimal | 0 |
Título | Dt. Alt. |
Descrição | Data de alteração |
Usado | Sim |
Obrigatório | Sim |
Browse | Sim |
Contexto | Real |
Propriedade | Visualizar |
Help | Data de alteração |
Inicializador do campo | |
Lista de opções |
Campo | B7H_HORALT |
Tipo | Caracter |
Tamanho | 4 |
Decimal | 0 |
Título | Hr. Alt. |
Descrição | Hora de alteração |
Usado | Sim |
Obrigatório | Sim |
Browse | Sim |
Contexto | Real |
Propriedade | Visualizar |
Help | Hora de alteração |
Picture | @R 99:99 |
Inicializador do campo | |
Lista de opções |
Campo | B7H_CODPER |
Tipo | Caracter |
Tamanho | 6 |
Decimal | 0 |
Título | Cod Perf. |
Descrição | Código do perfil |
Usado | Sim |
Obrigatório | Sim |
Browse | Sim |
Contexto | Real |
Propriedade | Visualizar |
Help | Código do Perfil |
Inicializador do campo | |
Lista de opções |
Campo | B7H_DESPER |
Tipo | Caracter |
Tamanho | 50 |
Decimal | 0 |
Título | Desc. Perfil |
Descrição | Descrição do Perfil de Acesso |
Usado | Sim |
Obrigatório | Sim |
Browse | Sim |
Contexto | Real |
Propriedade | Visualizar |
Help | Descrição do Perfil de Acesso |
Inicializador do campo | |
Lista de opções |
Campo | B7H_TIPOPE |
Tipo | Caracter |
Tamanho | 1 |
Decimal | 0 |
Título | Tipo Ope. |
Descrição | Tipo de operação |
Usado | Sim |
Obrigatório | Sim |
Browse | Sim |
Contexto | Real |
Propriedade | Visualizar |
Help | Tipo de operação |
Inicializador do campo | |
Lista de opções | 3=Inclusão;4=Alteração;5=Exclusão |
Consulta Padrão
Consulta: BSWB7I
Descrição | Perfis de Acesso |
Tipo | Consulta Padrão |
Tabela | B7I |
Índice | 1 |
Campo | B7I_CODSEQ |
Retorno | B7I->B7I_CODSEQ |
(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
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|