PDA

Ver la Versión Completa : BADI, BTS o EXIT posterior a la creación de documento FI (FB01)


Gaunt
15/10/13, 08:04:48
Buenos días, chicos.

Estoy intentando arrastrar un texto estándar desde SD a la creación del documento contable. Para ello necesito el documento FI, pero no encuentro BTE, BADI o Exit en la que ya tenga el número de documento FI. Tampoco en las sustituciones o validaciones.

¿Podríais ayudarme?

He localizado que el proceso pasa por las BTEs 1120, 1130, 1150 y 1170, pero en ninguno de ellos tiene aún el documento correcto, en el campo bseg-belnr tiene el documento de SD.

eltorete93
16/10/13, 12:24:52
Hola Gaunt:

Yo hice una cosa parecida hace mucho tiempo pero me acuerdo que teniamos clases de texto y usabamos bkpf-xblnr.

DATA: lv_name TYPE thead-tdname,
lt_line TYPE STANDARD TABLE OF tline,
lw_line TYPE tline.

lv_name = bkpf-xblnr.

CALL FUNCTION 'READ_TEXT'
EXPORTING
id = 'Z001'
language = sy-langu
name = lv_name
object = 'VBBK'
TABLES
lines = lt_line[]
EXCEPTIONS
id = 1
language = 2
name = 3
not_found = 4
object = 5
reference_check = 6
wrong_access_to_archive = 7
OTHERS = 8.

IF sy-subrc EQ 0.
READ TABLE lt_line INTO lw_line INDEX 1.
* Por si trae caracteres tipicos en documentos sd
REPLACE ALL OCCURRENCES OF '<(>' IN lw_line-tdline WITH space.
REPLACE ALL OCCURRENCES OF '<)>' IN lw_line-tdline WITH space.
p_sgtxt = lw_line-tdline.
ENDIF.

ENDFORM.

Te dejo el código por si te sirve de algo. En alguna bte de las que nombras deben tener campos de cabecera con xblnr.

Gaunt
16/10/13, 12:55:00
Si, recuperar el texto de SD sabía, lo que no sabía era como insertárselo al documento de Fi, pues no encontraba BTE que tuviera el belnr relleno con el doc FI.

Al final conseguí hacerlo en la BTE 1050. Allí ya está rellena correctamente la BSEG, por lo que pude hacer el SAVE_TEXT con el doc correcto.

Comprobado y funcionando.

Gracias en cualquier caso, eltorete93.

Juancar0077
05/06/19, 11:23:02
Si, recuperar el texto de SD sabía, lo que no sabía era como insertárselo al documento de Fi, pues no encontraba BTE que tuviera el belnr relleno con el doc FI.

Al final conseguí hacerlo en la BTE 1050. Allí ya está rellena correctamente la BSEG, por lo que pude hacer el SAVE_TEXT con el doc correcto.

Comprobado y funcionando.

Gracias en cualquier caso, eltorete93.

Hola Gaunt, puedes explicar cómo hiciste para que te parara? Rellenaste algún campo en especial en la FB01?