MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 31/03/08, 14:05:59
goyleo goyleo is offline
Senior Member
 
Fecha de Ingreso: sep 2007
Mensajes: 102
de String a Packet

Buenos Dias gente, neceitaria ayuda con el siguiente caso, tengo un string y necesitaria pasarlo a un valor paket.
mi String contiene el siguiente valor 1.200,00
El valor packet tiene el siguiente formato : 00.00 (donde el punto representa a las comas)

si uso la sentencia Pack me arroja un DUMP!!!

muchas gracias.
Responder Con Cita
  #2  
Viejo 31/03/08, 14:11:09
Avatar de robert_milan
robert_milan robert_milan is offline
Senior Member
 
Fecha de Ingreso: jun 2006
Localización: Mexico, DF
Mensajes: 315
yo te recomiendo que primero hagas un tratamiento del string, primero:

DO.
replace '.' with space into string1.
check sy-subrc NE 0.
condense string1 no-gaps.
EXIT.
ENDDO.


despues cambias la coma por el punto.
remplace ',' with '.' into string1.

con esto ya lo puedes pasar a la variable tipo P.

espero te sirva saludos...
__________________
Un Huevon No Inútil


Solo di lo que piensas, a la mejor tienes la mejor respuesta....

Si alguien ya lo hizo, copialo y cambiale las variables total es un codigo nuevo.....

Si SAP lo hace se puede hacer, no me pidas hacer algo que SAP no ha hecho.....

Consultor FI jr/ABAP Sr.
Responder Con Cita
  #3  
Viejo 31/03/08, 14:23:18
vickxo vickxo is offline
Senior Member
 
Fecha de Ingreso: nov 2006
Localización: Madrid, España
Mensajes: 118
Es cierto...

Lo que dice el robert es cierto, el tema esta en que al momento de hacer el packet no es posible interpretar el numero como tal, por lo que antes de hacer cualquier operacion necesitas quitar las comas de tu cadena.
Revisa como esta representado un numero en tu sistema, si separa los decimales con punto, deberas quitar las comas de tu cadena, si separa los decimales con coma, seran los puntos los que deberas quitar.
Use esta seccion para corroborar, para tratar la cadena lo que sugiere robert es para mi gusto lo ideal.

DATA: c_field(7) TYPE c VALUE '1200.05',
p_field TYPE p DECIMALS 2.

PACK c_field TO p_field.

WRITE: p_field.
__________________
el tema esta en hacer la pregunta correcta...
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 17:48:11.


www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web