Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.


CONTEÚDO

  1. Visão Geral
  2. Exemplo de utilização
  3. Tela XXX
    1. Outras Ações / Ações relacionadas
  4. Rotina Atual
  5. Nova tela de cadastro de Corpo Clínico e premissas
  6. Alterações e ProtótiposTela XXXPrincipais Campos e Parâmetros
  7. Tabelas utilizadas


01. VISÃO

...

GERAL 
Âncora
VIS
VIS

      A presente especificação visa detalhar as regras e mudanças sobre o desmembramento da tela de Corpo Clínico, que hoje fica no cadastro da RDA (PLSA360), na ação do botão Outras Ações / Complemento. 

...

      Com o desmembramento Corpo clínico de dentro da rotina de Complemento da RDA, o processo se tornará mais prático, pois não será necessário acessar a rotina, que está carregada de abas e informações que não são pertinentes ao cadastro, além de utilizar o MVC, garantindo velocidade ao processo. 


02. Rotina

...

atual 
Âncora
ATUAL
ATUAL

Para acessar o cadastro de Corpo Clínico do Prestador, é necessário acessar o seguinte caminho: Atualizações / Rede de Atendimento / Rede de Atendimento - RDA. O sistema irá abrir todos os cadastro de prestadores no sistema (tabela BAU). Selecionar o prestador desejado no browse a na sequência, clicar no botão Outras Ações / Complemento

O sistema irá abrir o cadastro completo da RDA, com várias abas e informações. No nosso caso, será necessário acessar a aba Especialidades. O sistema irá exibir as especialidades cadastradas para o prestador e na parte inferior, temos diversas abas, sendo que a aba que será desmembrada desse cadastro será a de Corpo Clínico. Ao clicar nessa aba, temos mais abas pertinentes a esse cadastro, que é de RDA e Procedimentos.

 
Figura 1

Note que ao mudar a especialidade no grid acima, os itens exibidos no Corpo Clínico mudam, pois o Corpo Clínico e suas sub-abas são associadas a especialidade.

03. TELA XXXXX

Outras Ações / Ações relacionadas

...

Contudo, note a quantidade de abas e informações que não são necessárias para atualizar o cadastro de Corpo Clínico, que são exibidas na tela. Além disso, essa tela utiliza a classe TPLSBrw (fonte PLSBRW.PRW)para todos os grids, que é uma classe criada pelo time do PLS, não possuindo suporte oficial pelo setor de tecnologia da empresa, além de carregar todos os dados em memória, ocasionando extrema lentidão na abertura e navegação na telas, caso esses grids contenham vários registros. 

Por isso, para utilizar as tecnologias oficiais da empresa e melhorar a usabilidade e velocidade, essa tela de Corpo Clínico será desmembrada e refeita em MVC, conforme detalhes nos próximos itens dessa especificação.


03. Nova tela de cadastro de Corpo Clínico e premissas 
Âncora
NEW
NEW

Conforme visto nos outros tópicos, o acesso ao cadastro de Corpo Clínico passa por vários menus e submenus, além de apresentar lentidão na tela, devido ao uso da classe própria. Desta forma, no desmembramento da aba de Corpo Clínico, será necessário observar as seguintes premissas abaixo, para o desenvolvimento da nova rotina:

  • A nova tela deve ser desenvolvida em MVC;
  • Todas as validações existentes na tela antiga devem ser revistas e caso pertinentes, mantidas na nova tela;
  • Criar um menu especifico no Outras Ações do cadastro de Prestador, que irá abrir essa nova rotina;
  • Após criação da nova tela, retirar dos fontes envolvidos (PLSA360, PLSA365 e outros) a referência da aba antiga e qualquer código envolvido, para diminuir a quantidade de linhas desses fontes e centralizar tudo na nova rotina.

É de suma importância que a tela seja feita em MVC, garantindo o suporte oficial pelo time de tecnologia, além de garantir que todas as validações existentes sejam revistas e feitas na nova tela, para garantir a gravação correta e funcionamento das demais rotinas envolvidas, que utilizam desses cadastros, visando garantir uma melhor usabilidade e maior performance no uso da rotina.

No tópico de alterações, será descrito o que deve ser feito, bem como demais observações importantes no processo.

Aviso
titleATENÇÃO

Mesmo se tratando de especificação, no decorrer do desenvolvimento, poderá ser encontrado outros pontos não mencionados aqui, visto que se trata de um rotina antiga, que pode possuir diversas implicações em várias partes do sistema. 


04. Alterações e Protótipos 
Âncora
ALTER
ALTER

Abaixo, iremos definir os passos básicos, que devem ser seguidos para realizar as alterações e a criação da nova tela:

  1. O acesso a nova rotina será pelo caminho existente hoje, ou seja: Atualizações / Rede de Atendimento / Rede de Atendimento - RDA.
  2. Ao abrir o browser com o cadastro dos prestadores, incluir uma nova opção no botão Outras Ações da tela, que será chamado Especialidades x Cadastros relacionados. Esse item deve chamar a nova tela.
    Image Added
    Figura 2

  3. A nova tela deverá exibir, de forma obrigatória, um form com o cabeçalho básico da RDA, exibindo o código, CPF/CNPJ e nome da RDA, um grid com os locais de atendimento da RDA selecionada, e de acordo com o local selecionado, deve atualizar o grid especialidades atreladas ao local. E ao clicar na especialidade, deve exibir as informações pertinentes, que são a de corpo clínico e suas sub-abas (RDA's e Procedimentos).
    1. Ou seja, a tela será dinâmica, pois de acordo com o local selecionado, deve filtrar as especialidades vinculadas, e ao selecionar a especialidade, deve filtrar as informações da aba de Corpo Clinico. E de acordo com o item posicionado na aba de Corpo Clínico, deve filtrar os procedimentos relacionados ao profissional.
    2. Na prática, o funcionamento é igual ao que ocorre hoje, sendo a diferença que está em um menu a parte e a tela se beneficiará da tecnologia MVC, tornando a performance mais rápida.
    3. Abaixo, uma tabela com os relacionamentos entre tabelas:

      RelacionamentosChave

      Prestador (BAU) para Locais de Atendimento (BB8)

      { "BB8_FILIAL", "BAU_FILIAL" } , { "BB8_CODIGO", "BAU_CODIGO" }, { "BB8_CODINT", PlsIntPad() } 

      Utilizar na chave de relacionamento o campo BB8_CODINT, que pode ser obtido via função PlsIntPad()
      Atenção: Devido a um inicializador padrão na tabela BB8, é necessário criar uma variável do tipo Private, com o nome cCodInt, que deve conter o código da Operadora                            

      Locais de Atendimento (BB8) para Especialidades (BAX)

      { "BAX_FILIAL", "BB8_FILIAL" }, { "BAX_CODIGO", "BB8_CODIGO" }, { "BAX_CODINT", "BB8_CODINT" },{ "BAX_CODLOC", "BB8_CODLOC" } 

      Especialidades (BAX) para Corpo Clínico (BC1)

      { "BC1_FILIAL", "BAX_FILIAL" }, { "BC1_CODIGO", "BAX_CODIGO" }, { "BC1_CODINT", "BAX_CODINT" },{ "BC1_CODLOC", "BAX_CODLOC" }, { "BC1_CODESP", "BAX_CODESP" },  { "BC1_CODSUB", "BAX_CODSUB" } 

      Corpo Clínico (BC1) para Corpo Clínico Valor Especial (BE6)

      { "BE6_FILIAL", "BC1_FILIAL" }, { "BE6_CODIGO", "BC1_CODIGO" }, { "BE6_CODINT", "BC1_CODINT" },{ "BE6_CODLOC", "BC1_CODLOC" }, { "BE6_CODESP", "BC1_CODESP" },  { "BE6_CODSUB", "BC1_CODSUB"},  { "BE6_CODPRF", "BC1_CODPRF" }



  4. Abaixo, um tabela que exemplifica como deve ficar a tela, componentes MVC e tamanho sugestionados para o desenvolvimento:

    Dados TelaCaracterísticas MVC
    Dados Básico da RDA - ALIAS: BAUForm MVC ( AddField )
    • Na View, criar HorizontalBox de tamanho 10
    • Somente leitura

    Locais de Atendimento - ALIAS: BB8

    (relacionado a BAU selecionada)

    Especialidades  - ALIAS: BAX

    (relacionado ao local selecionado)

    Dois grids MVC ( AddGrid )

    • Na View, criar HorizontalBox de tamanho 40
    • Nessa linha horizontal, teremos duas caixas verticais VerticalBox, cada uma de tamanho 50 (meio a meio).
    • Somente leitura
    Folder Corpo Clínico
    • Dois subfolders:
      • RDA - ALIAS: BC1
      • Procedimentos - ALIAS: BE6
        (relacionado a especialidade selecionada)

    Folders ( CreateFolder e AddSheet)

    • Criar um folder chamado de Corpo Clínico
    • Dentro desse folder, criar mais dois subfolders - RDA e Procedimento.
    • Cada um desses subfolders terão seu grid relacionado.



  5. Abaixo, um exemplo de como a tela deve ficar no final do desenvolvimento, além de colocar o alias de cada tabela envolvida, de acordo com a tabela acima:
    Image Added
    Figura 3 

  6. No exemplo acima, o form com os dados básicos da RDA e os grid de locais de atendimento e especialidades já estão em MVC. A parte inferior é apenas uma projeção do visual atual, que deverá ser convertido para o MVC.
  7. Importante colocar em cada grid MVC o título do grid e os componentes GRIDFILTER e GRIDSEEK, para facilitar a busca dos dados nos grids para o usuário. Abaixo, os componentes citados:

    Image Added

    Image Added

    Título do Grid - EnableTitleViewFiltro de pesquisa padrão e personalizado do grid - GRIDFILTER e GRIDSEEK

    Note que no exemplo da figura 3, nos grids de local e especialidade, temos o uso desses componentes. Deverá ser replicado para os grids das tabelas BC1 e BE6, conforme exemplo abaixo:Image Added


  8. Após o desenvolvimento da tela e confirmação que os dados estão sendo gravados corretamente, realizar a limpeza no fonte PLSA360 e PLSA365, realizando a limpeza desses fontes, retirando qualquer menção dos grids antigos e funções que não são mais necessárias, devido a criação do novo fonte.
  9. Após as etapas acima, a automação da nova rotina, bem como realizar testes diversos na rotina de Cadastro de Prestadores, devido a limpeza efetuada.


05. TABELAS UTILIZADAS 
Âncora
TAB
TAB

  • BAU - Redes de Atendimento
  • BB8 - Locais de Rede Atendimento
  • BAX - Especialidades do Local
  • BC1 - Corpo Clinico da Rede
  • BE6 - Corpo Clínico Valor Especial

04. TELA XXXXX

Principais Campos e Parâmetros

...

Card documentos
InformacaoUse esse box para destacar informações relevantes e/ou de destaque.
TituloIMPORTANTE!

...


HTML
<!-- esconder o menu --> 


<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}
</style>