发送邮件功能的实现
选择已经保存到本地的文件,再发送邮件(代码仅实现发送邮件功能)
DATA method1 LIKE sy-ucomm.
| IvrR@5MEJ0DATA g_user LIKE soudnamei1.ITPUB个人空间4B5|-{WL
DATA g_user_data LIKE soudatai1.ITPUB个人空间G9HY5@1Gd)|
DATA g_owner LIKE soud-usrnam.
cV)y)bqm x0DATA g_receipients LIKE soos1 OCCURS 0 WITH HEADER LINE.
Re,`` u
t+Xs~(pv&f%C0DATA g_document LIKE sood4 .
3VX/X c4`iua0DATA g_header LIKE sood2.ITPUB个人空间1WyTd\
j]
DATA g_folmam LIKE sofm2.ITPUB个人空间g3H~BmC-{
DATA g_objcnt LIKE soli OCCURS 0 WITH HEADER LINE.ITPUB个人空间;`$w5@9YS
DATA g_objhead LIKE soli OCCURS 0 WITH HEADER LINE.ITPUB个人空间jw:^Lsx:j^
DATA g_objpara LIKE selc OCCURS 0 WITH HEADER LINE.ITPUB个人空间d$f7G;EQ0Js!Y
DATA g_objparb LIKE soop1 OCCURS 0 WITH HEADER LINE.ITPUB个人空间-Q)YF)u4c
DATA g_attachments LIKE sood5 OCCURS 0 WITH HEADER LINE.
]Wc!T!qNT0DATA g_references LIKE soxrl OCCURS 0 WITH HEADER LINE.ITPUB个人空间inH`\p`J;|Wgc
DATA g_authority LIKE sofa-usracc.
LFw%OqO0T0DATA g_ref_document LIKE sood4.
)A5G#A&W
EXE0DATA g_new_parent LIKE soodk.ITPUB个人空间
@/d q&~5?N6\
DATA: BEGIN OF g_files OCCURS 10 ,ITPUB个人空间"pk?&Ky;w!J6@.z^2N
text(4096) TYPE c,
i*T`)}`!o$~x*l*\0 END OF g_files.
DATA : fold_number(12) TYPE c,ITPUB个人空间5f8`6BTWwE
fold_yr(2) TYPE c,ITPUB个人空间Y(wBHT8v}0~_L6N-n
fold_type(3) TYPE c.
*PARAMETERS ws_file(4096) TYPE c DEFAULT 'c:\AAA.xls'.ITPUB个人空间&\V^n ^{`(|6DX
PARAMETERS: ws_file LIKE rlgrap-filename.
g_user-sapname = sy-uname.
CALL FUNCTION 'SO_USER_READ_API1'
5mVBd?y:u+h0 EXPORTING
6L-D'q_J9l0 user = g_userITPUB个人空间9H5j_x8dr
IMPORTING
eO+z
h}l:V0 user_data = g_user_data
i5A#hy|~D0 EXCEPTIONSITPUB个人空间a7y
D"V%KSaq!~
user_not_exist = 1
:T!s8Nz,Ic
mC.G$l}}X0 parameter_error = 2
0w1g-^D
m.N0GO0 x_error = 3
C
xXX S,b0 OTHERS = 4.
IF sy-subrc <> 0.ITPUB个人空间JX9a[]:cN"r"]/yH
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgnoITPUB个人空间Ff-l8\+nc
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
a?x'S.\l0l0ENDIF.
fold_type = g_user_data-outboxfol+0(3).ITPUB个人空间*L-Zls2G*i'\
fold_yr = g_user_data-outboxfol+3(2).
u3sdx;s0QV4O0fold_number = g_user_data-outboxfol+5(12).
%i3rbb5nWX+iD(u,M!W0CLEAR g_files.
REFRESH : g_objcnt,
)Jw9NE0xnV0 g_objhead,
U8m'Tgd!}T0 g_objpara,
~{ D!ls0In;F4P0 g_objparb,
*n7?8QA{%C0 g_receipients,ITPUB个人空间a\@Z
z
g_attachments,ITPUB个人空间#a*S%n4v%k8f*AD
g_references,ITPUB个人空间$vot3iW?c#L
g_files.
method1 = 'SAVE'.
aUh P]S8cv3Sj0g_document-foltp = fold_type.
j}k\:u0g_document-folyr = fold_yr.
6A4o*j kz0g_document-folno = fold_number.ITPUB个人空间HXb uh7B
Vq"z
g_document-objtp = g_user_data-object_typ.ITPUB个人空间Q[/\&W)N$_|
_
*g_document-OBJYR = '27'.
zqx2?u3i0*g_document-OBJNO = '000000002365'.
;?z9W6Wc7q0*g_document-OBJNAM = 'MESSAGE'.ITPUB个人空间0E.a
JWG
g_document-objdes = 'sap-img.com testing by program'.
\6_l2SP7}H0g_document-folrg = 'O'.ITPUB个人空间czx4~n-L,O
*g_document-okcode = 'CHNG'.
{:a&_3~E#\'J0g_document-objlen = '0'.ITPUB个人空间S"fhl [I_!P
g_document-file_ext = 'TXT'.
g_header-objdes = 'WDN Report'.ITPUB个人空间4Rq9H2`\
g_header-file_ext = 'XLS'.
CALL FUNCTION 'SO_DOCUMENT_REPOSITORY_MANAGER'ITPUB个人空间_3p W|!f'[)M1M
EXPORTINGITPUB个人空间 T-F!j-d_6M
method = method1ITPUB个人空间O
N0l
`MT:U
office_user = sy-unameITPUB个人空间M2G`+TX
ref_document = g_ref_document
n@9B*z5FPDT0 new_parent = g_new_parentITPUB个人空间#|+A
a"W1r`
IMPORTINGITPUB个人空间4pH8j4GU_4g.f0f
e
authority = g_authority
J(\$@k`9DG0 TABLES
)D9B'q0}-j\(a$P8o0 objcont = g_objcntITPUB个人空间O)R2l0g"I
e
objhead = g_objheadITPUB个人空间y4o9t t:d#hx ^i
objpara = g_objpara
2jd O`9HAQsz0 objparb = g_objparb
?M,_P7hb0 recipients = g_receipients
.^Y a B'LlR6L0 attachments = g_attachmentsITPUB个人空间Kq8ak1y
I2cq
references = g_references
J+_Q4p yJ$X0 files = g_filesITPUB个人空间@$OxMX$d@g@x
CHANGINGITPUB个人空间5g)w9Q$~O
d
document = g_document
]8XIH;j s0oU*WQ#o0 header_data = g_header.
* File from the pc to send...ITPUB个人空间1|0^7a
U|5P'u
method1 = 'ATTCREATEFROMPC'.
g_files-text = ws_file.
4]*]4} [],AD0APPEND g_files.
CALL FUNCTION 'SO_DOCUMENT_REPOSITORY_MANAGER'
%k.T:t!k~rq.a{Ar0 EXPORTING
(d;e|8rg?p0 method = method1
,`Ypf#sj~V,n4Dx0 office_user = g_owner
W1c%NE4W1m[?0 ref_document = g_ref_document
G5s&Tb*aIF0 new_parent = g_new_parent
a`7v7}$v U1O/hP b{0 IMPORTINGITPUB个人空间'Je$]2yI&[T
authority = g_authority
[0{;X3@4T*X1t0 TABLES
5D5L ~ON1D_0 objcont = g_objcntITPUB个人空间pu G;M/? {~|
objhead = g_objhead
.}2T4y(g$rK^6w7e"vk0 objpara = g_objparaITPUB个人空间8K#`2F!uO9~AN
objparb = g_objparbITPUB个人空间Ys)z3QF!A
recipients = g_receipientsITPUB个人空间1_rr+u6p'R|
attachments = g_attachmentsITPUB个人空间4^ W5m"cl7V@
references = g_referencesITPUB个人空间,|$|1Pq%J5cwRe$T q
files = g_files
/P1Rf)z5BbkoHa0 CHANGING
(W$kN4I Ha
rN0 document = g_document
mJ3| ^}x0 header_data = g_header.
ITPUB个人空间Cv'x"{%q,Q
*Send the mail..ITPUB个人空间(h}M5Wy-x3PN
method1 = 'SEND'.
g_receipients-recnam = 'BAITZ'.ITPUB个人空间y(ry)X?$n1?-O
*g_receipients-recesc = 'B'.
jI;Sfg1n e7L0g_receipients-sndex = 'X'.ITPUB个人空间:~Z1D"S?aR/s
*g_receipients-att_fix ='X' .
x5B U{W6D0kZ0APPEND g_receipients.
*g_receipients-recnam = 'ZHENGLL'.ITPUB个人空间9L2l?2uQ%G~ n
**g_receipients-recesc = 'B'.
jh usAp(E3_v0*g_receipients-sndex = 'X'.ITPUB个人空间k'd+E&H7v
*g_receipients-att_fix ='X' .
6~8V4bdn0*APPEND g_receipients.
CALL FUNCTION 'SO_DOCUMENT_REPOSITORY_MANAGER'
sS+Ff0Ma0 EXPORTING
6eb[7v[]A0 method = method1
k'm z7xca0 office_user = g_ownerITPUB个人空间9g#Gc+G%abck8HX
ref_document = g_ref_documentITPUB个人空间!|!P
A$Q2u _Q
new_parent = g_new_parent
Li;kk:zL;D%jEd/yx s0 IMPORTINGITPUB个人空间e.V s9A$Bx
authority = g_authorityITPUB个人空间4Xk.~A/j5@)N
TABLESITPUB个人空间k$c:M)@,z$P;LZ
objcont = g_objcnt
eQJN)G'q"lmf0 objhead = g_objheadITPUB个人空间!o2J3KK4?9e
objpara = g_objparaITPUB个人空间:Q{M MJF
objparb = g_objparb
:FCOr-FC0 recipients = g_receipientsITPUB个人空间J)N}wzTT7U@
attachments = g_attachments
p.\CDEtw)b,GA0 references = g_references
x"d$X"F'} M0 files = g_files
7STD/I(W-~&AV0 CHANGINGITPUB个人空间|'u2H&o%DX)e
document = g_documentITPUB个人空间f(p9NlfgH"Q
header_data = g_header.