Ver la Versión Completa : como guardar una URL y me aparesca en FB03
Hola compañeros tengo la siguiente duda y espero alguien me la puedan contestar.
como puedo guardar una URL y verla en la lista de anexos en la transacción FB03.
todo esto mediante un programa, sin tener que ingresar y meterla manualmente en la FB03 y sin realizar un call transaction..
hay alguna funcion que me pueda servir?
o en que tablA se guardan los anexos de la FB03?
saluds y gracias =)
Tonijua
15/10/10, 18:41:11
Mira, se que tienes que utilizar estas funciones...
'SO_OBJECT_INSERT'
'BINARY_RELATION_CREATE'
Primero deber crear el objeto y luego ligarlo al doc.. una vez creamos un programa para ligar URL y PDF a Doc contables..
Por ahí va la cosa.. Déjame un correo y te pego un código para que lo mires,
hola tonijua muchas gracias..
lo hice con el siguiente codigo
DATA: lv_folderid TYPE sofdk,
ls_object TYPE borident,
l_url_id TYPE so_url,
ls_objcont TYPE soli,
lt_objcont TYPE STANDARD TABLE OF soli,
l_obj_data TYPE sood1,
lv_document_title TYPE sood-objdes,
l_obj_id TYPE soodk,
lt_objhead TYPE STANDARD TABLE OF soli,
ls_document_id TYPE sofmk,
ls_rel_doc TYPE borident,
ls_ep_url TYPE borident-objkey,
lv_ip type syhost,
lv_id type string.
CONCATENATE p_soc
p_doc
p_eje
INTO ls_object-objkey.
ls_object-objtype = 'BKPF'.
CALL FUNCTION 'SO_FOLDER_ROOT_ID_GET'
EXPORTING
* OWNER = ' '
region = 'B'
IMPORTING
folder_id = lv_folderid
EXCEPTIONS
OTHERS = 1.
.
IF sy-subrc <> 0.
CLEAR: lv_folderid.
ENDIF.
WHILE NOT l_url_id IS INITIAL.
CONCATENATE '&KEY&' l_url_id(250) INTO ls_objcont.
APPEND ls_objcont TO lt_objcont.
SHIFT l_url_id LEFT BY 250 PLACES.
ENDWHILE.
l_obj_data-objsns = 'O'.
l_obj_data-objla = sy-langu.
l_obj_data-objdes = lv_document_title.
CALL FUNCTION 'SO_OBJECT_INSERT'
EXPORTING
folder_id = lv_folderid
object_type = 'URL'
object_hd_change = l_obj_data
IMPORTING
object_id = l_obj_id
TABLES
objhead = lt_objhead
objcont = lt_objcont
EXCEPTIONS
active_user_not_exist = 35
folder_not_exist = 6
object_type_not_exist = 17
owner_not_exist = 22
parameter_error = 23
OTHERS = 1000.
aaa perdon me falto una parte jeje hey te va
CONCATENATE p_soc
p_doc
p_eje
INTO ls_object-objkey.
ls_object-objtype = 'BKPF'.
CALL FUNCTION 'SO_FOLDER_ROOT_ID_GET'
EXPORTING
* OWNER = ' '
region = 'B'
IMPORTING
folder_id = lv_folderid
EXCEPTIONS
OTHERS = 1.
.
IF sy-subrc <> 0.
CLEAR: lv_folderid.
ENDIF.
WHILE NOT l_url_id IS INITIAL.
CONCATENATE '&KEY&' l_url_id(250) INTO ls_objcont.
APPEND ls_objcont TO lt_objcont.
SHIFT l_url_id LEFT BY 250 PLACES.
ENDWHILE.
l_obj_data-objsns = 'O'.
l_obj_data-objla = sy-langu.
l_obj_data-objdes = lv_document_title.
CALL FUNCTION 'SO_OBJECT_INSERT'
EXPORTING
folder_id = lv_folderid
object_type = 'URL'
object_hd_change = l_obj_data
IMPORTING
object_id = l_obj_id
TABLES
objhead = lt_objhead
objcont = lt_objcont
EXCEPTIONS
active_user_not_exist = 35
folder_not_exist = 6
object_type_not_exist = 17
owner_not_exist = 22
parameter_error = 23
OTHERS = 1000.
IF sy-subrc = 0.
ls_document_id-foltp = lv_folderid-foltp.
ls_document_id-folyr = lv_folderid-folyr.
ls_document_id-folno = lv_folderid-folno.
ls_document_id-doctp = l_obj_id-objtp.
ls_document_id-docyr = l_obj_id-objyr.
ls_document_id-docno = l_obj_id-objno.
ENDIF.
IF NOT ls_object-objkey IS INITIAL.
IF NOT ls_document_id IS INITIAL.
CLEAR ls_rel_doc.
ls_rel_doc-objkey = ls_document_id.
ls_rel_doc-objtype = 'MESSAGE'.
CALL FUNCTION 'BINARY_RELATION_CREATE'
EXPORTING
obj_rolea = ls_object
obj_roleb = ls_rel_doc
relationtype = 'URL'
EXCEPTIONS
OTHERS = 1.
COMMIT WORK.
www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web