Histórico da Página
Composition Setup |
---|
import.css=/download/attachments/327912/newLayout.css |
Portuguese | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
ArredondamentoAbrangência
No Protheus, pode haver diferença de arredondamento em algumas operações numéricas. Isso ocorre devido a diferenças no armazenamento de variáveis numéricas nos diversos processadores. Diferença esta, inclusive, presente no Advpl, mesmo antes do surgimento do Protheus. Para evitar esses problemas de arredondamento, utilize a função 'Round', principalmente antes de realizar uma comparação, e antes de utilizar a função 'Int'. Desse modo, assegura-se que o resultado será correto independentemente do processador / plataforma. Exemplos: 1. If (Valor/30) = 50 // pode ser falso ou inválido If Round(Valor/30, 0) = 50 // correto 2. M->EE8_QTDEM1:= Int (M->EE8_SLDINI/M->EE8_QE) // pode ser falso ou inválido M->EE8_QTDEM1:= Int (Round(M->EE8_SLDINI/M->EE8_QE, 10)) // correto
|