Manejo de Advertencias en el Compilado

Microsoft Dynamics GP
He visto muchas veces que los programadores de Dexterity no toman en cuenta las advertencias en el compilado. Si se tiene un código y se compila, el IDE revisa la sintaxis y genera un reporte de errores y advertencias si es que existen. Si se tienen errores, el compilador no deja guardar el código, pero si se tienen advertencias simplemente se pueden ignorar. Una muy muy muy mala práctica!!!

Las advertencias típicas son tipos:

Manejo de strings dentro del código.
Manejo de casting de datos.
Cómo manejar estas advertencias?


pragma(disable warning LiteralStringUsed);
local string sTexto;
sTexto="Hola Mundo";
pragma(enable warning LiteralStringUsed);

Todo texto que se encuentre entre la desabilitación del LiteralStringUsed y su habilitación será ignorada por el compilador.

La otra advertencia es el casting. Muchas veces se asignan valores de un tipo de dato a otro. Cuando no se indica literalmente el casting de tipo de datos el compilador genera la advertencia. Para evitar esto se debe hacer el casting de datos:


pragma(disable warning LiteralStringUsed);
local long lValorGrande;
local integer iValorPequeno;
local string sValorEnTexto;
iValorPequeno=1;
lValorGrande=long(iValorPequeno);
sValorEnTexto="2";
iValorPequeno=integer(value(sValorEnTexto));
pragma(enable warning LiteralStringUsed);

Leave a Reply