PDA

Ver la Versión Completa : Cojer solo 2 decimales


dulanblade
19/10/09, 17:07:06
Buenas tardes, necesito saber si existe una funcion la cual pasandole un importe por ejemplo 18'77777778 me devuelva ese importe pero solo con 2 decimales?? es decir, 18'77, porque me estoy volviendo loco y no encuentro nada, haciendo codigo imposible y con funciones no he encontrado ninguna.

Ese importe en ocasiones sera entero y en otras decimal (es el resultado de una division). La variable la declaro de tipo i y luego la vuelco en una de tipo char para asi poder enviarle bien el bacth input.

Gracias de antemano.

hrosas
19/10/09, 17:46:04
ya intentaste grabar ese numero en un tipo dec con 2 decimales?


otra forma es si lo pasaras a tipo char has un concatenate variable+0(4) into variable

con eso obtendrias tu variable en un char no se si me explico

dulanblade
19/10/09, 18:04:59
A tipo dec no intente, a ver si mañana en el curro me deja, a ver me explico un poco mejor.

Estoy creando un programa el cual crea solicitudes de anticipos (IT 45) , con lo cual tengo un campo de importe el cual es de tipo P0045-DLART (esto es Tipo Curr 13, 2 decimales) y un campo resultado del mismo tipo, el resultado es el importe entre el campo numero de meses.

Ejemplo: Importe 700
Meses 9
Resultado 77, 77777778

Yo solo desearia guardar dos decimales (como es el tipo Curr) porque al crear batch input sino me falla como es normal.

Lo paso de tipo i a tipo char como variable auxiliar porque sino al batch input van datos vacios (debido a que los tipo i se alinean a la derecha y no coje datos).

Saludos

Edd_401
19/10/09, 19:13:12
Usa La Funcion 'round' . . . . .


Utiliza Tipo P O F . . . . .

O Puedes Utilizar 'fltp_char_conversion'

dulanblade
20/10/09, 07:09:45
Gracias a todos, al final lo he conseguido creando otra variable auxiliar de tipo p decimals 2.

Saludos;)