#1
|
|||
|
|||
quitar almohadilla en un texto
Hola a todos,
Tenmos el siguiente problema: En el campo de la BSEG SGTXT tenemos el texto de la siguiente forma (no se da en todos los casos) CAMAPAÑA DE PUBLICIDAD ## MES DE ABRIL. Lo que queremos remplazar es ## por espacio, ya que las almohadillas en el fichero de la AL11 lo toma como salto de linea. Lo hemos probado todo para quitarlo pero no nos reconoce el campo. Alguien me puede echar una mano. Muchas gracias de antemano, Un saludo: |
#2
|
|||
|
|||
Hola!
Esto que es? un formulario? |
#3
|
|||
|
|||
No entendi bien que es lo que hacen.
me imagino que leen registros de la bseg para despues formar un archivo en algun directorio de la AL11 y lo hacen primero llenado una tabla interna. pues lo que se me ocurre es recorrer la tabla antes de hacer el fichero y hacer esta modificacion: loop at it-bseg into wa_bseg. REPLACE '#' WITH SPACE INTO wa_bseg-SGTXT. modify it_bseg from wa_bseg endloop. esto es lo que me imagino ojala y puedas explicarlo mejor. Saludos!!. |
#4
|
|||
|
|||
Como dice pancho6102, esa sería una opción, ahora si está mal de que se registre así, podrías hacer una validación al momento de la contabilización.
Saludos! |
#5
|
|||
|
|||
Hola buenos días,
Perdon por la tardanza, voy a intentar explicarlo mejor. El problema esque tenemos esque subimos al servidor (AL11) con todos las posiciones de la bseg. Hay posiciones que en el texto se encuentra la # lo reconoce como salto de linea, un intro. Estamos probando de todo y no lo reconoce. Como el replace que indicais más arriba, leer toda la cadena de caracteres etc... A ver si a alguien se le ocurre alguna otra cosa. Un saludo y muchas gracias de antemano |
#6
|
||||
|
||||
Hola intenta resolverlo con esta instrucción: DATA: v_bseg_descr TYPE string, lv_simbol TYPE c value CL_ABAP_CHAR_UTILITIES=>HORIZONTAL_TAB. v_bseg_descr = bseg-sgtxt. "Es tu cadena con tu simbolo '#' REPLACE ALL OCCURRENCES OF lv_simbol IN v_bseg_descr WITH space."replac CONDENSE v_bseg_descr. Nos cuentas si te sirvió, AP.
__________________
Saludos Cordiales, Alfredo Pastor Avendaño SAP - Consultant HCM |
#7
|
|||
|
|||
Al final hemos encontrado esto y funciona.
DATA: lv_ctab(1) TYPE c. DATA: lv_fin(1) TYPE c. FIELD-SYMBOLS <f_hex> TYPE x. ASSIGN lv_ctab TO <f_hex> CASTING. <f_hex> ='0A'. ASSIGN lv_fin TO <f_hex> CASTING. <f_hex> ='0D'. REPLACE ALL OCCURRENCES OF lv_ctab IN ls_tabla-sgtxt WITH ' '. REPLACE ALL OCCURRENCES OF lv_fin IN ls_tabla-sgtxt WITH ' '. Un saludo y muchas gracais |
Herramientas | Buscar en Tema |
Desplegado | |
|
|