Ajuste sonarqube e SX3
Linha de Produto: | Microsiga Protheus |
Segmento: | Recursos Humanos |
Módulo: | SIGAGPE - Gestão de Pessoal |
Função: |
|
Situação/Requisito: | Devido ao alto número de bugs apontados 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: | Para 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" )) Trocado por: Aadd ( aDados, { { 'Q3_DESCCC' }, { { 'X3_RELACAO', 'IF(Inclui,"",fDesc("CTT",SQ3->Q3_CC,"CTT_DESC01"))' }, { 'X3_WHEN', '' }, { 'X3_CBOX', '' }, { 'X3_F3', '' } } } ) |