Histórico da Página
Dados Gerais | |
Módulo: | |
Issue: | |
Descrição: | |
Data | |
Analistas |
Descrição Funcional
Devido a rotina Cadastro Trabalhador (TAFA421.PRW), apresentar o cadastro dos eventos 2200 (Com Vínculo) e 2300 (Sem Vinculo), como também os eventos de alteração 2205 (Alteração Cadastral), 2206 (Alteração Contratual) e 2306 (Alteração Contratual), foi levantado a necessidade (pelo cliente) de consultar os registros para verificar as alterações entre um e outro.
Na rotina do histórico de alteração (Fonte: TAFEXTEMP.PRW e função: xNewHisAlt()) será incluído um novo botão "Comparar Registros" cuja funcionalidade seja apresentar as diferenças de um registro para outro.
A comparação será feita apenas por 2 registros, e as colunas que apresentarão somente as divergências serão nomeadas como Campos, Evento Posicionado e Evento Comparado.
Obs.: Desenvolver de forma componentizada, para facilitar a entrada de novos eventos.
Detalhamento da Solução
Pré-condição: Registros no histórico do trabalhador.
Pós-condição: Comparar os registros diferentes.
Seq. | Nome da Atividade | Descrição do Desenvolvimento | |
1 | Histórico de Alteração | Na tela do histórico de alteração da rotina de cadastro do trabalhador, desenvolver a criação de um novo botão chamado "Comparar Registros". Ao posicionar em um registro e clicar no botão "Comparar Registros", seguir sequência 2. | |
2 | Comparar Registros | Desenvolver a tela de comparar registro (conforme protótipo 3.1 página 3), no qual exibirá nos primeiros campos CPF, Nome, Evento e Data Alteração do registro posicionado anteriormente. Existirá um segundo campo de CPF que permitirá que através de uma consulta especifica selecione o próximo registro a ser comparado, gatilhando os demais campos de Nome, Evento e data de alteração. O único campo editável será do CPF a ser comparado, os demais serão apenas para consulta. O gatilho apenas executará quando selecionar um registro pela consulta especifica. Obs.: Caso o registro posicionado seja do evento 2205, somente será possível a exibição dos registros 2200 e 2205 na consulta especifica. | |
3 | Processar | Desenvolver o processamento que realizará a comparação dos campos que estão diferentes e serão armazenados para serem apresentados após finalização do processamento de comparação. Seguir sequência 4. Para facilitar o processamento de comparação dos registros. Acompanhar tópico 7 - Complemento técnico (Página 7). | |
4 | Exibição das diferenças | Após finalização do processamento e realizado o refresh, na tela de comparar registros, será exibido na grid apenas os campos diferentes e os dados subsequentes. | |
5 | Filtrar | Desenvolver a tela de Filtrar, permitindo a consulta ser pelo nome do campo e/ou conteúdo, deixando a pesquisa ser de forma parcial ou completa (conforme protótipo 3.3 página 4). |
Protótipo
Apresentação funcionalidade do protótipo.
https://balsamiq.cloud/sn7q7qg/p2yhc0x/r45F8?f=N4IgUiBcAMA0IDkpxAYWfAMhkAhHAsjgFo4DSUA2gLoC%2BQA%3D
- Tela 1 – Comparar Registros
Figura 1. Imagem meramente ilustrativa – Comparar Registros.
- Tela 2 – Consulta Especifica
Figura 2. Imagem meramente ilustrativa – tela consulta especifica.
- Tela 3 – Filtrar
Figura 3. Imagem meramente ilustrativa – tela filtrar.
Regras de Negócios
Seq. | Regras/Formulas |
1. | A comparação é feita somente com dois registros |
2. | Na Grid será apresentado apenas os campos e conteúdos diferentes de um registro para outro |
3. | Para registros do evento 2200 só poderá ser comparado com os eventos 2200, 2205 e 2206 |
4. | Para registros do evento 2205 só poderá ser comparado com os eventos 2200 e 2205 (com vínculo), |
5. | Para registros do evento 2206 só poderá ser comparado com os eventos 2200 e 2206 |
6. | Para registros do evento 2300 só poderá ser comparado com os eventos 2300, 2205 e 2306 |
7. | Para registros do evento 2306 só poderá ser comparado com os eventos 2300 e 2306 |
8. | Necessário o registro posicionado e o comparado estarem preenchidos para realizar o processo de comparação, caso não esteja preenchido, será exibido a mensagem de alerta "Necessário informar o registro a ser comparado! ". |
9. | Será permitido realizar o filtro de forma parcial ou completa. |
Tabelas Relacionadas
S2200 – C9V, C9Y, CUP, CRQ, T3L, T80, T90
S2205 – T1U, T3T
S2206 – T1V, T3U, T79, T91
S2300 – C9V, T2F, CUU
S2306 – T0F
S2200
C9V | Dados do Trabalhador |
C9Y | Cadastro de Dependentes |
CUP | Cadastro Inicial do Vínculo |
CQR | Cadastro de horário contratual |
T3L | Trabalhador Substituído |
T80 | Filiação Sindical do Trabalhador |
T90 | Observações do contrato de trabalho |
S2205
T1U | Alteração de Dados Cadastrais |
T3T | Cadastro de Dependentes |
S2206
T1V | Alteração Contrato Trabalhador |
T3U | Cadastro de Horário Contratual |
T79 | Filiação Sindical Trabalhador |
T91 | Observações Contrato Trabalho |
S2300
C9V | Dados do Trabalhador |
T2F | Cadastro de Dependentes |
CUU | Informação TSV |
S2306
T0F | Alteração Informação TSV |
Plano de Testes
Cenário | Descrição do Cenário (Teste Integrado) | Resultado Esperado | ||||||
01 | No histórico de alterações, posicionar em um registro e clicar no botão Comparar Registros. | Será exibida a tela de comparar registros com as informações de ID, Evento e Data evento do registro posicionado. | ||||||
02 | Na tela Comparar Registros, caso o registro posicionado seja do evento 2200 e clicar na consulta especifica do campo ID Comparado. | Será exibido a consulta especifica com os registros dos eventos 2200 (exceto o posicionado), 2205 e 2206. | ||||||
03 | Na tela Comparar Registros, caso o registro posicionado seja do evento 2205 e clicar na consulta especifica do campo ID Comparado. | Será exibido a consulta especifica com os registros dos eventos 2205 (exceto o posicionado), 2200 ou 2300 (caso seja de um trabalhador sem vínculo). | ||||||
04 | Na tela Comparar Registros, caso o registro posicionado seja do evento 2206 e clicar na consulta especifica do campo ID Comparado. | Será exibido a consulta especifica com os registros dos eventos 2206 (exceto o posicionado) e 2200. | ||||||
05 | Na tela Comparar Registros, caso o registro posicionado seja do evento 2300 e clicar na consulta especifica do campo ID Comparado. | Será exibido a consulta especifica com os registros dos eventos 2300 (exceto o posicionado), 2206 e 2205 (caso seja de um trabalhador sem vínculo). | ||||||
06 | Na tela Comparar Registros, caso o registro posicionado seja do evento 2306 e clicar na consulta especifica do campo ID Comparado. | Será exibido a consulta especifica com os registros dos eventos 2306 (exceto o posicionado), 2300. | ||||||
07 | Na tela Comparar Registros e clicar no botão fechar. | A tela comparar registros será fechada e retornará para a tela do histórico de alterações. | ||||||
08 | Na tela Comparar Registros ao clicar no botão Processar, sem informar o conteúdo comparado. | Será exibido mensagem de alerta "Necessário informar o registro a ser comparado! ". Não permitindo processar. | ||||||
09 | Na tela Comparar Registros, caso o registro Posicionado e Comparado estejam preenchidos e clicar no botão Processar. | Permitirá processamento de comparação, em seguida após refresh exibirá na Grid as diferenças apresentando Campo, Conteúdo Posicionado e Conteúdo Comparado. | ||||||
10 | Na tela Comparar Registros, após apresentação das diferenças dos registros na Grid, ao clicar no botão Filtrar
| Será exibida a tela de filtrar, permitindo que a consulta dos registros da grid sejam feitas de forma parcial ou completa. Consultando pelo nome do campo e conteúdo do campo. | ||||||
11 | Na tela Filtrar, após preenchimento e clicar no botão OK. | Retornará para tela Comparar Registros e posicionará no registro pesquisado. |
Complemento Técnico
Para facilitar no processo de comparação dos eventos, será necessário desenvolver um cadastro de comparação de\para em MVC com o conceito de tabelas autocontidas, no qual armazenará as tabelas e campos respectivos de comparações possíveis dos eventos informados no cabeçalho do cadastro.
A nova tela conterá o modelo dividido em Cabeçalho(Pai), Grid Tabelas(Filho), Grid Campos(Netos).
Obs.: A equipe ficará responsável por popular o cadastro com as possibilidades de comparação da rotina dos eventos do trabalhador.
Imagem Meramente Ilustrativa da tela de De\Para. Sendo:
Fluxo – Processar
- Criar Função principal para o processamento, informando os parâmetros posicionados anteriormente. (Tela do Comparador de Registros)
- Criar uma função secundaria que buscará os dados do cadastro de\para e retornará o conteúdo (HashMap ou Array)*.
- Query para buscar as informações do layout De\Para.
- Quebra (HashMap ou Array)* dos campos da grid (Grid Campos)
- Varrer estrutura para montagem dos JOIN’s
- Construção da Query com o resultado do join + where referente aos parâmetros. (Tela do Comparador de Registros)
- Apresentação dos campos que tiveram o conteúdo alterado, demonstrado pela query. (Objeto utilizado na montagem da Grid da tela do comparador de registros)*.
*Fica a critério do desenvolvedor.