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 | Plano de Saúde - SIGAPLS |
Segmento Executor | Saúde | ||
Projeto | M_SAU_PLS002 | IRM |
|
Requisito |
| Subtarefa |
|
Release de Entrega Planejada | 12.1.8 | Réplica | Não |
País | ( x ) Brasil ( ) Argentina ( ) Mexico ( ) Chile ( ) Paraguai ( ) Equador ( ) USA ( ) Colombia ( ) Outro _____________. |
Objetivo
O objetivo desta especificação é detalhar sobre melhorias técnicas que serão feitas no cadastro de Layout Genérico (PLSCADLAY) para torná-lo mais versátil e mais flexível em possíveis cadastros que venham a ser criados.
Definição da Regra de Negócio
- Criar uma tabela para salvar a estrutura do layout, nela, será possível inserir grupos e subgrupos de campos, onde deverá ser possível mesclar campos e componentes de diferentes tabelas em um grupo.
- O alias da tabela será BBR (para ver os campos que essa tabela terá, consulte a parte de dicionário de dados desta especificação)
- Essa tabela será gravada com o componente DbTree, e a troca de nível entre os componentes será feita com botões que serão setas.
- Setas para cima e para baixo - Apenas movimentarão os itens para cima e para baixo.
- Setas para esquerda e para direita - Alterarão o nível do item.
- Para desenvolver a Tree consulte o fonte PLSA444.PRW, função PL444TREE, consulte também o seguinte link: http://tdn.totvs.com/x/VoRc
Para usar a Tree, deve ser importado no fonte a biblioteca DbTree.ch
Segue um exemplo da Tree com MVC, utilizando as tabelas do layout genérico:Bloco de código theme Eclipse language delphi title Exemplo de DbTree linenumbers true collapse true User Function MinhaTree() Local i := 0 Local j := 0 B90->(DbSetOrder(2)) B7C->(DbSetOrder(2)) B91->(DbSetOrder(1)) DEFINE DIALOG oDlg TITLE "Layout Genérico" FROM 180,180 TO 550,700 PIXEL // Cria a Tree oTree := DbTree():New(0,0,160,260,oDlg,,,.T.) // Insere itens oTree:AddItem("Layout Generico","001", "FOLDER12" ,"FOLDER13",,,1) If oTree:TreeSeek("001") If B7C->(MsSeek(xFilial("B7C")+"0003") ) i := 2 While !B7C->(EOF()) .AND. xFilial("B7C")+"0003" == B7C->(B7C_FILIAL+B7C_SEQB90) j := IIF(i == 2, 2,1) oTree:AddItem(B7C->B7C_DESCRI,StrZero (i,3), "FOLDER12","FOLDER13",,,j) If oTree:TreeSeek(StrZero (i,3)) i++ If B91->(MsSeek(xFilial("B91")+"0003"+B7C->B7C_ORDEM ) ) While !B91->(EOF()) .AND. xFilial("B91")+"0003"+B7C->B7C_ORDEM ==; B91->(B91_FILIAL+B91_SEQUEN+B91_GRUPO) oTree:AddItem(B91->B91_CAMPO,StrZero (i,3), "FOLDER12","FOLDER13",,,2) i++ B91->(DbSkip()) EndDo EndIf endif B7C->(DbSkip()) EndDo EndIf EndIf oTree:TreeSeek("001") // Retorna ao primeiro nível // Indica o término da contrução da Tree oTree:EndTree() ACTIVATE DIALOG oDlg CENTERED Return
O fonte WSPLCADWEB.PRX, que é o WebService que monta e faz a gravação genérica do Layout Genérico no portal, terá que considerar a tabela BBR para montar os campos na tela, porém a estrutura que ele cria o layout deve ser mantida, mas os componentes na tela devem estar como se apresentam na Tree.
Deverá ser criado nas tabelas B7C e B91 os campos B7C_CUSTOM e B91_CUSTOM respectivamente para o usuário, quando alterar uma propriedade do layout genérico, indicar que é uma alteração customizada. Com isso, quando o Wizard rodar para carregar os layouts, não vai sobrepor os registros que possuírem esses campos com valor .T..
- O campo B91_TIPO é um campo que tem o X3_CBOX preenchido com algumas opções (C=Texto;M=Memo;G=Combo;N=Numerico;D=Data;S=Sequencial;P=Combo Pesquisa), nele, deverá ser acrescentada mais uma opção: R=Radio Button, essa opção, como o próprio nome já diz, será para acrescentar o componente RadioButton no layout genérico. Suas opções serão passadas da mesma maneira que os campos dos tipos Combo e Combo Pesquisa, e a forma de carregar as opções dinamicamente, também será da mesma forma, com a função #PLSCBOXGEN no campo B91_CBOX.
- Os únicos lugares que deverão ter um tratamento especial para o Radio Button será no WSPLCADWEB, no mesmo momento onde são criados os combos da página, serão criados os RadioButtons.
Rotina | Tipo de Operação | Opção de Menu | Regras de Negócio |
PLSCADLAY | Alteração | Miscelânea -> Genérico -> Layout Genérico Web | - |
PLSA444 | Envolvida | Miscelânea -> A.n.s.-> Terminologias TISS | 1 |
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
- SE2 – Cadastro de Contas a Pagar
- FI9 – Controle de Emissão de DARF>.
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 |
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|