#1
|
|||
|
|||
Cómo convertir un INTEGER a CHAR?
hola necesitaria convertir un numero entero a su correspondiente caracter ascii.
ej : tengo una variable entera con el 45 y lo quiero convertir a su correspondiente valor Acii que es '-' ( guion del medio ) probe con este codigo pero me tira un error al compilar . "The length of "X" in bytes must be a multiple of the size of a Unicode " data : i type i value 45. data : x type x. field-symbols : <fc> type c. move i to x. assign x to <fc> casting type c. move <fc> to c. write c. |
#2
|
|||
|
|||
Hola!!
una vez encontre esto por la red y me lo guarde por si alguna vez lo necesitaba. La verdad que no lo he probado,pero por si te sirve de ayuda FUNCTION Z_CHARACTER_TO_ASCII_CODE. *"---------------------------------------------------------------------- *"*"Interfase local *" IMPORTING *" REFERENCE(FI_CHARACTER) TYPE C *" EXPORTING *" REFERENCE(FE_ASCII_CODE_DEC) TYPE I *" REFERENCE(FE_ASCII_CODE_HEX) TYPE C *"---------------------------------------------------------------------- field-symbols <FS> type x. *Have to use CASTING here to purposely force SAP to convert the *character to an equivalent HEX value (using ASCII chart). *Note that CASTING feature is not available prior release 4.6 assign fi_character(1) to <FS> casting. *The type of the destination field will cause SAP to determine which *type (Decimal/Hexadecimal) of ASCII code should be converted: * X -> I gives Dec value * X -> C gives Hex value fe_ascii_code_dec = <FS>. fe_ascii_code_hex = <FS>. ENDFUNCTION. |
#3
|
|||
|
|||
Gracias Ana .... modifique esta linea data : x(16) type x. y me funciono
REPORT ztest_alg . DATA : varbartextin(18) TYPE c, largo TYPE i. varbartextin = '34' . *saca espacios en blanco *SHIFT varbartextin LEFT DELETING LEADING space . largo = varbartextin+0(2) . largo = largo + 33 . data: c(16) type c. data : i type i . i = largo. data : x(16) type x. field-symbols : <fc> type c. move i to x. assign x to <fc> casting type c. move <fc> to c. write c+15(1). BREAK-POINT. |
#4
|
|||
|
|||
Para de chamuyar luissssssssssssssssss!!!!
|
#5
|
|||
|
|||
no funciona
eso os funciona verdaderamente??? lo estoy probando y no funciona...
|
#6
|
|||
|
|||
Sí funciona:
Saludos |
#7
|
|||
|
|||
Convertir CHAR a ASCII en ECC 60 ?
Estimados:
Yo tenía una función Z tal cual comentaron en este "Tema", y funcionaba perfecto en Version 4.7 Migramos a ECC 60 y dejó de funcionar. Por ejemplo la letra "A" que tiene el valor decimal '65', con esta nueva versión la misma función me devuelve el valor decimal '16.640' Alguien tiene el mismo problema ?, Tiene algo que ver "UNICODE" ?.. o "CODEPAGE" ? ya que tuve otro tipos de problemas tambien similares, cosas que antes funcionaban y ahora no. (con la nueva version) Ss |
#8
|
|||
|
|||
Problema en conv CHAR a ASCII decimal Resuelto
Estimados:
Sigo sin entender por que dejó de funcionar, pero por si le sucede a alguien mas, la manera que lo resolví es tomar la conversion en Hexadecimal y luego convertirla de hexa a ascii decimal. Ss |
Herramientas | Buscar en Tema |
Desplegado | |
|
|