Progress - simple duda con una cadena

 
Vista:

simple duda con una cadena

Publicado por ANTONIO JOB (7 intervenciones) el 22/08/2002 20:54:22
es algo muy simple tal vez pero mucho agradeceria su ayuda

DEF VAR dia AS DECIMAL NO-UNDO.
DEF VAR recdia AS CHARACTER 'X(5)'. NO-UNDO.

dia = 5.12.
recdia = STRING(dia).

DISPLAY SUBSTRING(recdia . 3. 2 ).

LA SALIDA ES 32 ESE VALOR LO RECIBO COMO CADENA COMO LO RETORNO DE NUEVO A UNA CADENA NUMERICA.

HAY ALGUNA SOLUCION

MUCHO AGRADECERE SU APOYO
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:simple duda con una cadena

Publicado por Ferrer (115 intervenciones) el 04/09/2002 21:04:59
Una cadena para convertirla en decimal o integer solo tienes que colocar integer(cadena) o decimal(cadena) estas funciones manejan el no-error. para que puedas capturar el error en tal caso que no se pueda convertir.

Un Ejemplo sencillo:

DEFINE VARIABLE Cadena AS CHARACTER NO-UNDO.
DEFINE VARIABLE entero AS INTEGER NO-UNDO.

cadena = "Placa 356".

ASSIGN
entero = INTEGER(SUBSTRING(cadena,7,3)) NO-ERROR.

IF ERROR-STATUS:ERROR AND ERROR-STATUS:NUM-MESSAGES > 0 THEN
DO:
MESSAGE "Ha ocurrido un error" SKIP
"Error Numero: " ERROR-STATUS:NUM-MESSAGES
VIEW-AS ALERT-BOX INFO BUTTONS OK.
END.
ELSE
DO:
MESSAGE cadena entero
VIEW-AS ALERT-BOX INFO BUTTONS OK.
END.

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar