MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   como guardar una URL y me aparesca en FB03 (foro/showthread.php?t=39381)

j3sus 15/10/10 17:54:41

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 19:41:11

Como guardar una URL y me aparesca en FB03
 
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,

j3sus 18/10/10 23:13:15

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.

j3sus 18/10/10 23:15:15

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.


Husos Horarios son GMT. La hora en este momento es 22:22:02.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web