PDA

Ver la Versión Completa : Función SO_DOCUMENT_REPOSITORY_MANAGER para enviar por correo mails con archivos


jordiC77
12/02/09, 10:52:30
Hola!!

Estoy intentando enviar correos con archivos anexados con la función SO_DOCUMENT_REPOSITORY_MANAGER. He encontrado un ejemplo, pero lo que me pasa es que va bien, pero se me para en la pantalla de enviar. No sé si os habéis encontrado con este problema y lo habéis solucionado. ¡¡Ya no sé qué más mirar ni qué más hacer, de verdad!! :confused: :confused: ¡¡Desesperación absoluta!! :eek: :mad: :eek: :mad:

El código que tengo es:

data method1 like sy-ucomm.
data g_user like soudnamei1.
data g_user_data like soudatai1.
data g_owner like soud-usrnam.
data g_receipients like soos1 occurs 0 with header line.
data g_document like sood4 .
data g_header like sood2.
data g_folmam like sofm2.
data g_objcnt like soli occurs 0 with header line.
data g_objhead like soli occurs 0 with header line.
data g_objpara like selc occurs 0 with header line.
data g_objparb like soop1 occurs 0 with header line.
data g_attachments like sood5 occurs 0 with header line.
data g_references like soxrl occurs 0 with header line.

data g_authority like sofa-usracc.
data g_ref_document like sood4.
data g_new_parent like soodk.
data: begin of g_files occurs 10 ,
text(4096) type c,
end of g_files.

data : fold_number(12) type c,
fold_yr(2) type c,
fold_type(3) type c.

parameters ws_file(4096) type c default 'c:\debugger.txt'.
* Can me any file fromyour pc ....either xls or word or ppt etc ...
g_user-sapname = sy-uname.
call function 'SO_USER_READ_API1'
exporting
user = g_user
* PREPARE_FOR_FOLDER_ACCESS = ' '
importing
user_data = g_user_data
* EXCEPTIONS
* USER_NOT_EXIST = 1
* PARAMETER_ERROR = 2
* X_ERROR = 3
* OTHERS = 4
.
if sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.

fold_type = g_user_data-outboxfol+0(3).
fold_yr = g_user_data-outboxfol+3(2).
fold_number = g_user_data-outboxfol+5(12).
clear g_files.


refresh : g_objcnt,
g_objhead,
g_objpara,
g_objparb,
g_receipients,
g_attachments,
g_references,
g_files.

method1 = 'SAVE'.
g_document-foltp = fold_type.
g_document-folyr = fold_yr.
g_document-folno = fold_number.
g_document-objtp = g_user_data-object_typ.
g_document-objdes = 'Titulo'.
g_document-folrg = 'O'.
g_document-objlen = '0'.
g_document-file_ext = 'TXT'.

g_header-objdes = 'Titulo'.

call function 'SO_DOCUMENT_REPOSITORY_MANAGER'
exporting
method = method1
office_user = sy-uname
ref_document = g_ref_document
new_parent = g_new_parent
importing
authority = g_authority
tables
objcont = g_objcnt
objhead = g_objhead
objpara = g_objpara
objparb = g_objparb
recipients = g_receipients
attachments = g_attachments
references = g_references
files = g_files
changing
document = g_document
header_data = g_header
* FOLMEM_DATA =
* RECEIVE_DATA =
.

************************************************************************

* File from the pc to send...
method1 = 'ATTCREATEFROMPC'.

g_files-text = 'C:\importacio J-01127.xls'.
append g_files.

g_files-text = 'C:\debugger.txt'.
append g_files.

call function 'SO_DOCUMENT_REPOSITORY_MANAGER'
exporting
method = method1
office_user = g_owner
ref_document = g_ref_document
new_parent = g_new_parent
importing
authority = g_authority
tables
objcont = g_objcnt
objhead = g_objhead
objpara = g_objpara
objparb = g_objparb
recipients = g_receipients
attachments = g_attachments
references = g_references
files = g_files
changing
document = g_document
header_data = g_header.


************************************************************************

method1 = 'SEND'.

g_receipients-recnam = 'U-'.
g_receipients-recesc = 'U'.
g_receipients-sndex = 'X'.
g_receipients-sndart = 'INT'.
g_receipients-sndpri = 1.
g_receipients-RECEXTNAM = 'jordi.casanovas-angelet@upcnet.es'.
append g_receipients.


call function 'SO_DOCUMENT_REPOSITORY_MANAGER'
exporting
method = method1
office_user = g_owner
ref_document = g_ref_document
new_parent = g_new_parent
importing
authority = g_authority
tables
objcont = g_objcnt
objhead = g_objhead
objpara = g_objpara
objparb = g_objparb
recipients = g_receipients
attachments = g_attachments
references = g_references
files = g_files
changing
document = g_document
header_data = g_header.

Me puede alguien hechar una mano??!!? Le estaré eternamente agradecido!!

Muchas gracias por todo,
Jordi.