Uso de API em LOOP À SER AVALIADO

No meu fonte, o code analysis acusou este erro do título em algumas linhas:


IF Type("aoDet["+cValToChar(nx)+"]:_Prod:_xPed") <> "U" .And. Type("aoDet["+cValToChar(nx)+"]:_Prod:_xPed:TEXT") <> "U" .And. Type("aoDet["+cValToChar(nx)+"]:_Prod:_nItemPed") <> "U" .And. Type("aoDet["+cValToChar(nx)+"]:_Prod:_nItemPed:TEXT") <> "U"


If Type("aoDet["+Ltrim(str(nx))+"]:_Prod:_NCM") == "U"


If Type("aoDet["+Ltrim(str(nx))+"]:_Prod:_cEAN") <> "U"


If Type("aoDet["+Ltrim(str(nx))+"]:_Prod:_NCM") == "U"


If Type("aoDet["+Ltrim(str(nx))+"]:_Prod:_CEAN") == "U"

Alguém sabe o que pode ser? Agradeço!!

1 curtida

Olá,

Você está usando a função Type dentro de um laço, como for ou while, logo Code Analysis vai entender que esse código poderia ser melhorado e o Type ser feito fora do loop.

Porém, analisando o seu código, você tem variáveis dentro do Type, então para cada execução, o seu valor será diferente, nesses casos, não existe uma ação de correção, pois o Type dentro do laço faz sentido, é um caso de falso positivo, logo deve ser apenas marcado como concluído com um comentário explicativo.

1 curtida