Ver Mensaje Individual
  #4  
Viejo 09/09/08, 18:32:35
FranCone FranCone is offline
Junior Member
 
Fecha de Ingreso: abr 2006
Localización: León Guanajuato
Mensajes: 4
Puede Servir...

Te comento que recientemente yo tuve problemas con dicha función, y a final de cuentas pude resolverlo de acuerdo a lo que yo estaba manejando dentro de mi programa. Debido a que yo necesitaba insertar/actualizar los textos, dependiendo del momento de ejecución del programa, tuve que optar por la funcion CREATE_TEXT y SAVE_TEXT, dependiendo de lo requerido. Para esto, utilizaba de inicio la función READ_TEXT, para comprobar la existencia del texto, y entonces si determinar si iba a crear o insertar el texto en cuestión. Posteriormente aplicaba el commit, y por ultimo, tuve q poner un wait, ya que por alguna razón, y debido a que estaba dentro de un ciclo para barrer las posiciones de mi material, no "alcanzaba" a actualizarse mi texto en cada pasada, y en la siguiente pasada eliminaba lo escrito previamente (aparte el wait del commit, no me funcionó :S). Te incluyo parte de mi codigo, esperando que te sirva de algo.

v_name = 'TEXTOPOSICION' aqui iria tu texto a buscar
v_texto = 'TEXTO A ESCRIBIR'

ti_header-tdname = v_name.
ti_header-tdid = 'B01'.
ti_header-tdspras = sy-langu.
ti_header-tdobject = 'EBAN'.
ti_header-mandt = sy-mandt.

call function 'READ_TEXT'
exporting
client = sy-mandt
id = 'B01'
language = sy-langu
name = v_name
object = 'EBAN'
tables
lines = ti_lines
exceptions
not_found = 4.

ti_lines-tdformat = '*'.
ti_lines-tdline = v_texto.
append ti_lines to ti_lines.

if sy-subrc eq 4.

call function 'CREATE_TEXT'
exporting
fid = 'B01'
flanguage = sy-langu
fname = v_name
fobject = 'EBAN'
save_direct = 'X'
tables
flines = ti_lines
exceptions
no_init = 1
no_save = 2
others = 3.

else.

call function 'SAVE_TEXT'
exporting
client = sy-mandt
header = ti_header
insert = ' '
savemode_direct = 'X'
tables
lines = ti_lines
exceptions
id = 1
language = 2
name = 3
object = 4
others = 5.

endif.

call function 'BAPI_TRANSACTION_COMMIT'
exporting
wait = 'X'.

* Obligamos a que espere un segundo, y libere objetos
call function 'DEQUEUE_ALL'.
wait up to 1 seconds.
Responder Con Cita