Ajuste sonarqube e SX3

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ão.

Solução/Implementação:

As partes de atribuição usando Reclock foram substituídas pela função EngSX113.

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)