Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: Migration of unmigrated content due to installation of a new plugin

...

Linha de Produto:

Microsiga Protheus

Segmento:

Recursos Humanos

Módulo:

SIGAGPE - Gestão de Pessoal

Função:

  • GPECONV
  • AJSXGPE
  • AJSXAPD
  • AJSXAPT
  • AJSXCSA
  • AJSXGPE
  • AJSXORG
  • AJSXPON
  • AJSXRSP
  • AJSXTCF
  • AJSXVD

Situação/Requisito:

Devido ao alto número de bugs com regra de uso não permitido de leitura/atribuição a SX3, apontado pela análise de código do Sonarqube, os trechos de código responsáveis por essas alterações foram ajustados de acordo com o padrãoapontados pelo Sonarqube, violando a regra "CA2004 : Uso não permitido do Metadados - SX3", foram realizados ajustes para seguir o padrão.

A regra avalia as tentativas de manipulação da tabela do metadados. Ao contrário de outras regras de violação do dicionário de dados, o SX3 teve usa estrutura alterada e a gravação indevida de algumas propriedades da tabela pode causar prejuízos ao bom funcionamento do sistema. Em futuras versões do produto o alias SX3 será aberto e fechado conforme a demanda, sendo obrigatório o uso das API's padrões para evitar perda de desempenho.

Solução/Implementação:

As partes de atribuição usando Reclock foram substituídas pela função EngSX113Para a correção, foi necessário alterar a lógica do programa para utilizar as API padrões de leitura do metadados e remover o uso de qualquer API de manipulção do metadados.

Exemplo:

If SX3->(dbseek("Q3_DESCCC" ))
RecLock("SX3",.F.)
SX3->X3_RELACAO := 'IF(Inclui,"",fDesc("CTT",SQ3->Q3_CC,"CTT_DESC01"))'
SX3->X3_WHEN := ''
SX3->X3_CBOX := ''
SX3->X3_F3 := ''
SX3->(msUnlock())
EndIf

Trocado por:

Aadd ( aDados, { { 'Q3_DESCCC' }, { { 'X3_RELACAO', 'IF(Inclui,"",fDesc("CTT",SQ3->Q3_CC,"CTT_DESC01"))' }, { 'X3_WHEN', '' }, { 'X3_CBOX', '' }, { 'X3_F3', '' } } } )
EngSX3117(aDados)

...