Histórico da Página
CONTEÚDO
- Visão Geral
- Exemplo de utilização
- Tela XXX
- Outras Ações / Ações relacionadas
- Outras Ações / Ações relacionadas
- Rotina Atual
- Nova tela de cadastro de Corpo Clínico e premissas
- Alterações e ProtótiposTela XXXPrincipais Campos e Parâmetros
- Tabelas utilizadas
01. VISÃO
...
GERAL Âncora VIS VIS
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.
Essa separação visa melhorar a usabilidade das telas de cadastro de Prestadores, que hoje contêm vários itens agrupados em diversas abas e caminho, que atrapalha no uso pelos usuários, bem como utilizar as novas tecnologias da Totvs - no caso, o MVC - para utilizar as tecnologias fomentadas pelo frame, para garantir estabilidade, escalabilidade e ganho de performance, pois a tela atual, quando carregada com muito registros, demora para exibir os resultados ao usuário e torna a navegação lenta.
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
...
Para acessa
03. TELA XXXXX
Outras Ações / Ações relacionadas
...
atual Âncora ATUAL ATUAL
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.
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
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 | ||
---|---|---|
| ||
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
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:
- O acesso a nova rotina será pelo caminho existente hoje, ou seja: Atualizações / Rede de Atendimento / Rede de Atendimento - RDA.
- 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.
Figura 2 - 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).
- 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.
- 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.
Abaixo, uma tabela com os relacionamentos entre tabelas:
Relacionamentos Chave 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 OperadoraLocais 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" }
Abaixo, um tabela que exemplifica como deve ficar a tela, componentes MVC e tamanho sugestionados para o desenvolvimento:
Dados Tela Características MVC Dados Básico da RDA - ALIAS: BAU Form 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.
- 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:
Figura 3 - 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.
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:
Título do Grid - EnableTitleView Filtro 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:
- 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.
- 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
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 | ||||
---|---|---|---|---|
|
...
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> |