#1
|
|||
|
|||
remplazar '.' en un tipo quan
Hola necesito remplazar '.' por ',' en un dato de tipo quan.
Uso el replace pero no puedo dado que es para tipo char. Alguien sabria como podria hacerlo. Un saludo. |
#2
|
|||
|
|||
Se la substituición és de QUAN para CHAR. És solo utilizar el comando "WRITE".
Ejemplo: WRITE v_quan TO v_char. espero que ayude! |
#3
|
|||
|
|||
El caso que yo tengo esto
var1 tipo quan (13,3) var2 tipo int1 (3) move var1 to var2. El caso esque si var1 es 1,123 no da dump y va bien, pero si es 1.123 me da dump. Entonces no se como hacer para que sea ',' pero con replace no puedo. Lo que me dices no puedo ya que que es un INT1 y seguiria con la coma. |
#4
|
||||
|
||||
Hola Tate ... primero q nada la configuracion de tu usuario esta predeterminado para usar la coma como separador de miles, ahora lo que necesariamente se tiene que hacer es:
1. Crear un tipo char para pasar esa cantidad 2. Usar la BAPI BAPI_USER_GET_DETAIL para saber la configuracion de usuario y ver si esta usando el '.' o ',' como separador de miles, eso lo ves en el campo DEFAULTS-DCPFM 3. Si es . no realizar REPLACE sobre la variable de tipo CHAR, y si lo es realizar el REPLACE con la , 4. Una vez que este modificado el valor de tipo char con la cantidad puedes realizar el pase a la variable de tipo QUAN Espero te ayude
__________________
David Carballido Córdova |
#5
|
|||
|
|||
Escribelo hacia una variable tipo char con un write (write var_quan to var_char) sólo con eso, ya lo pasa con coma, despues lo devuelves a la var_quan. O bien, carga el dato inicialmente en un char, aplicas el REPLACE y luego lo mueves hacia el tipo quan. |
#6
|
|||
|
|||
DavidXD_XD ese campo me viene en blanco.
No habria otra manera de poder cambiar el . por la , es lo q peta. |
#7
|
|||
|
|||
esto es lo que realizo y no compila
data var(17) TYPE c. ** wa_materiales-cantidad. ES quant 13 con 3 decimales write wa_materiales-cantidad to var. REPLACE '.' WITH ',' INTO var . "wa_materiales-cantidad. CONDENSE var NO-GAPS. WRITE var to wa_materiales-cantidad. ERROR QUE ME DA AL COMPLIAR <--"WA_MATERIALES-CANTIDAD" must be a character-type field (data type C, N, D, or T) . "INTERFACE". by "INTERFACE". by "INTERFACE". "INTERFACE". by "INTERFACE". by "INTERFACE". |
#8
|
||||
|
||||
Pero ahi la variable de wa_materiales-cantidad ya tiene un valor
write wa_materiales-cantidad to var. La idea es q lo tengas inicialmente en un valor de tipo var, y tbm por lo que veo lo estas llenando en un proceso de UPLOAD o de interfaces ... como inicialmente se esta llenando esa variable???
__________________
David Carballido Córdova |
#9
|
|||
|
|||
es una funcion, que se le pasa la cantidad.
y cuando le iguala al int1 es cuando peta. lo paso a var, que es de char, y cambio el punto por la coma, pero luego, ya no puedo pasar var al campo original cantidad, o al que quiero igualar que es de tipo int1 |
Herramientas | Buscar en Tema |
Desplegado | |
|
|