MRP Exception report to send to SAP inbox
Hello friends,
The MRP exception report comes to my outlook and these reports are huge in size. I want them to go to my SAP inbox instead of outlook. I have changed the communication method of my user setting from "INT E-MAIL" to "E-Mail" but it didn't solve the problem.
Could you please help me?
Thanks,
Rana
Hi Amit,
The issue is, when the MRP exception reports are generated, the reports come to my outlook. I want these reports to go directly to my SAP inbox without any manual intervention and I also do not want them to come to my MS outlook.
This works for other users and after doing a comparision with their user setting, I changed my communication method to 'E-Mail' but this didn't help me.
I think I could make myself clear. Please help me out if you have the solution.
Thanks again,
Rana.
Similar Messages
-
Hi All,
In MRP Exception report R S Date (Requrided sotck date), R D Date (Required Delivery date) are
picking form MDO4
C S Date (current Stock date) from Purchase order
I wnat to know form where C D Date (Current Delivery Date) is picking
Any suggestions will be greatly appreciated.
Best Regards,
Kapil.Hi,
The delivery date is picked based on the production lead time.
Regards,
V. Suresh -
EWA report: didnt send to SAP!!! Help Please
Hi experts,
All of my servers generated EWA reports, but it did not sent to SAP. I have the checked mark to send to SAP.... It was working fine. one of my team members, he deleted all the jobs and scheduled em again.... which perticular job do I need to schedule to send to SAP? I thought this is the job that needs be schedulled >>> "SEND_SYSTEM_RELATIONSHIP_TO_SUPP". this job is working fine. Other than that, I dont understand why it didnt send to SAP?
Please help.
Thanks in advanced!!
I will post points for sure!!Hi Afi,
Kindly note the sequence of steps to be done for EWA generation.
1. Setup of the Server, database and system in transaction SMSY.
2. Generating the RFC's for the System and ensuring that the trusted
RFC works.
3. Adding the system to a logical component and assigning the logical
component to a Solution Landscape created in DSWP.
3. Setting up of EWA from the Solution Settings from the operations
setup in DSWP.
4. Configuring the SDCC / SDCCN on the satellite system (see note Note 763561 ) and adding the Solution Manager RFC to the SDCC settings.
5. Refreshing of sessions via the SDCCN transaction on the Satellite
system. This can be automated via the Auto session Manager Report.
6. Processing of the session and sending the collected data to Solution
manager.
7. Processing the collected data in the Solution Manager System and
generating the EWA Report.
if helpful reward points are appreciated -
Sending ALV output to the SAP Inbox.
Hi
I'm using SAP report <b>sendlist_bcs</b> for sending report output to the SAP inbox but attachment is not getting delivered.
Can anybody help to resolve the issue...
My report is:
*& Report ZTTEST_SAGAR
REPORT ZTTEST_SAGAR.
*& Report SENDLIST_BCS
*& Sample report from note 190669 for sending lists via SAPconnect
*& using the BCS interface
*& Note:
*& 1. Set a commit work statement after the sending
*& 2. Give binary data of type x not type c to send module, i.e.
*& use structure solix instead of soli and give it to tables
*& parameter contents_hex instead of contents_bin
*& Do this by filling contents_hex directly from the module
*& table_compress. In case of reading the data from spool, convert
*& to solix using so_solitab_to_solixtab
*& 3. Don't calculate document size. It is done internally
*report sendlist_bcs no standard page heading message-id so.
selection-screen begin of block mode with frame title text-001.
parameters: submit radiobutton group mode default 'X'.
parameters: write radiobutton group mode .
parameters: spool radiobutton group mode.
selection-screen end of block mode.
global data
data g_list_content type solix_tab.
data g_text_content type soli_tab.
data sysid(10) TYPE C.
*---- start-of-selection -
start-of-selection.
perform create_text_content changing g_text_content.
perform create_list_content changing g_list_content.
perform send using g_text_content
g_list_content.
a commit work has to be set somewhere after the sending!
commit work.
Form routines *
*& Form create_list_content
form create_list_content changing list_content type solix_tab.
1st possibility - use "submit <report> exporting list to memory"
if submit = 'X'.
perform use_submit changing list_content.
endif.
2nd possibility - create a new list within this report.
if write = 'X'.
perform write_a_list changing list_content.
endif.
3rd possibility - get list from spool
if spool = 'X'.
perform get_list_from_spool changing list_content.
endif.
endform. "create_list_content
*& Form create_text_content
form create_text_content changing text_content type soli_tab.
append 'This is the first line' to text_content. "#EC NOTEXT
append 'This is the second line' to text_content. "#EC NOTEXT
convert the content from RAW to TXT
call function 'SO_RAW_TO_RTF'
tables
objcont_old = text_content
objcont_new = text_content
exceptions
others = 0.
endform. "create_text_content
*& Form SEND
form send using text_content type soli_tab
list_content type solix_tab.
data send_request type ref to cl_bcs.
data text type bcsy_text.
data document type ref to cl_document_bcs.
data recipient type ref to if_recipient_bcs.
data bcs_exception type ref to cx_bcs.
data sent_to_all type os_boolean.
try.
create the send request
send_request = cl_bcs=>create_persistent( ).
create the document with attachments
main document
append 'Hi,' to text.
append 'attached you will find the list.' to text.
document = cl_document_bcs=>create_document(
i_type = 'RAW'
i_text = text
i_subject = 'ABAPlist' ).
add text attachment to document
document->add_attachment( i_attachment_type = 'TXT'
i_attachment_subject = text-002
i_att_content_text = text_content ).
add list attachment to document
document->add_attachment( i_attachment_type = 'ALI'
i_attachment_subject = text-003
i_att_content_hex = list_content ).
add document to send request
send_request->set_document( document ).
sysid = sy-sysid.
data : uname type ad_uname.
uname = 'USTZZSKAZI'.
create recipient and add to send request
recipient = cl_cam_address_bcs=>CREATE_RML_ADDRESS( i_syst = sysid
i_client = sy-mandt
i_username = uname ).
send_request->add_recipient( i_recipient = recipient ).
send
sent_to_all = send_request->send( i_with_error_screen = 'X' ).
if sent_to_all = 'X'.
message s022.
endif.
catch cx_bcs into bcs_exception.
message e865 with bcs_exception->error_type.
endtry.
endform. "send
*& Form USE_SUBMIT
form use_submit changing contents_hex type solix_tab.
data listobject type table of abaplist.
get the list object by calling the list in another report
F1 on submit gives more information
submit balvsd03 exporting list to memory and return.
import the list from memory and store it in table listobject
call function 'LIST_FROM_MEMORY'
tables
listobject = listobject
exceptions
not_found = 1
others = 2.
if sy-subrc <> 0.
message e105 with 'LIST_FROM_MEMORY'.
endif.
free memory
call function 'LIST_FREE_MEMORY'
tables
listobject = listobject
exceptions
others = 1.
if sy-subrc <> 0.
message e105 with 'LIST_FREE_MEMORY'.
endif.
it's always necessary to compress the table.
SAPconnect will decompress it
call function 'TABLE_COMPRESS' "#EC *
tables
in = listobject
out = contents_hex
exceptions
compress_error = 1
others = 2.
if sy-subrc <> 0.
message e105 with 'TABLE_COMPRESS'.
endif.
endform. " USE_SUBMIT
*& Form WRITE_A_LIST
form write_a_list changing contents_hex type solix_tab.
data listobject type table of abaplist.
perform write_list.
Save the list and store table listobject
call function 'SAVE_LIST'
exporting
list_index = sy-lsind
tables
listobject = listobject
exceptions
list_index_invalid = 1.
if sy-subrc = 1.
message e105 with 'SAVE_LIST'.
endif.
It's always necessary to compress the table
SAPconnect will decompress it
call function 'TABLE_COMPRESS' "#EC *
tables
in = listobject
out = contents_hex
exceptions
compress_error = 1
others = 2.
if sy-subrc <> 0.
message e105 with 'TABLE_COMPRESS'.
endif.
endform. " WRITE_A_LIST
*& Form GET_LIST_FROM_SPOOL
form get_list_from_spool changing contents_hex type solix_tab.
data spool_number type rspoid.
data contents_bin type soli_tab.
data print_parameters type pri_params.
data valid type c.
write a list into spool
call function 'GET_PRINT_PARAMETERS'
importing
out_parameters = print_parameters
valid = valid
exceptions
archive_info_not_found = 1
invalid_print_params = 2
invalid_archive_params = 3
others = 4.
if sy-subrc <> 0.
message e105 with 'GET_PRINT_PARAMETERS'.
elseif valid is initial.
return.
endif.
new-page print on parameters print_parameters no dialog.
perform write_list.
new-page print off.
spool_number = sy-spono.
you can also send OTF documents from spool with this function
module. The importing parameter real_type gives you the doc type
that you have to give to the send interface. The parameter is not
used here
call function 'RSPO_RETURN_SPOOLJOB'
exporting
rqident = spool_number
tables
buffer = contents_bin
exceptions
no_such_job = 1
job_contains_no_data = 2
selection_empty = 3
no_permission = 4
can_not_access = 5
read_error = 6
type_no_match = 7
others = 8.
if sy-subrc <> 0.
message e105 with 'RSPO_RETURN_SPOOLJOB'.
endif.
convert to hex table
call function 'SO_SOLITAB_TO_SOLIXTAB'
exporting
ip_solitab = contents_bin
importing
ep_solixtab = contents_hex.
endform. " GET_LIST_FROM_SPOOL
*& Form WRITE_LIST
form write_list.
data lt_scarr type table of scarr.
data carr type scarr.
select * from scarr into table lt_scarr.
format color = 1.
uline at /1(46).
write: / sy-vline,
'CARRID', 10 sy-vline,
'CARRNAME', 35 sy-vline,
'CURRCODE', 46 sy-vline.
format color = 2.
uline at /1(46).
loop at lt_scarr into carr.
write: / sy-vline,
carr-carrid, 10 sy-vline,
carr-carrname, 35 sy-vline,
carr-currcode, 46 sy-vline.
endloop.
uline at /1(46).
new-line.
endform. " WRITE_LIST
Thanks,
sagarhi Sagar
'SO_NEW_DOCUMENT_ATT_SEND_API1' function module for that.
Example::::
Data Declaration
data pdf like tline occurs 0.
data : objbin like solisti1 occurs 0 with header line.
Data: docdata like sodocchgi1,
objpack like sopcklsti1 occurs 1 with header line,
objhead like solisti1 occurs 1 with header line,
objtxt like solisti1 occurs 10 with header line,
objbin like solisti1 occurs 10 with header line,
objhex like solix occurs 10 with header line,
reclist type table of SOMLRECI1 with header line.
Data: listobject like abaplist occurs 1 with header line.
data : objhex2 like objhex occurs 0 with header line.
Data: tab_lines type i,
doc_size type i,
att_type like SOODK-OBJTP.
data: ls_drao like drao occurs 0,
i_data like drao-orblk occurs 0,
ls_doc_file like dms_doc_file,
ls_draw like draw.
data: begin of i_data occurs 0,
orbkl like drao-orbkl,
orblk like drao-orblk,
end of i_data.
data: w_data like i_data,
w_data2 type drao-orbkl,
wa_drao type drao.
DATA: t_error(1) type c.
DATA: t_return like BAPIRET2.
*ls_draw-mandt = '200'.
ls_draw-dokar = 'GPO'.
ls_draw-doknr = 'Z10'.
ls_draw-dokvr = '00'.
ls_draw-doktl = '000'.
ls_draw-dttrg = 'SAP-SYSTEM'.
ls_draw-dAPPL = 'DOC'.
ls_doc_file-fileno = '1'.
ls_doc_file-dttrg = 'SAP-SYSTEM'.
*Debug the cv03n transaction to see how the FMs are used
CALL FUNCTION 'CV120_DOC_CHECKOUT_TO_TABLE'
EXPORTING
PS_COUT_DEF =
ps_doc_file = ls_doc_file
ps_draw = LS_DRAW
tables
PT_DRAZ =
ptx_content = ls_drao
PTX_DRAOZ =
EXCEPTIONS
ERROR = 1
OTHERS = 2
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
loop at ls_drao into wa_drao.
move: wa_drao-orblk to w_data-orblk.
append w_data to i_data.
endloop.
OBJPACK-HEAD_START = 1.
DESCRIBE TABLE i_data LINES TAB_LINES.
CALL FUNCTION 'ZOUTPUT_X_TABLESIZE_CHG'
EXPORTING
IV_APPEND = ' '
IV_BYTE_MODE = 'X'
IV_STRING =
IV_XSTRING =
IMPORTING
EV_SIZE =
EV_LINES =
EV_STRING =
EV_XSTRING =
TABLES
IT_DATA = i_data
ET_DATA = objhex
EXCEPTIONS
NOENTRIES = 1
OTHERS = 2
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
loop at objhex.
move-corresponding objhex to objhex2.
append objhex2.
endloop.
docdata-obj_name = 'TEST_ALI'.
docdata-obj_descr = 'Test including ALI/HTML Attachment'.
Main Text
objtxt = 'Test Document.'.
append objtxt.
objtxt = 'You will find an ALI/HTML attachment '.
append objtxt.
objtxt = 'Have a nice day.'.
append objtxt.
Write Packing List (Main)
describe table objtxt lines tab_lines.
read table objtxt index tab_lines.
docdata-doc_size = ( tab_lines - 1 ) * 255 + strlen( objtxt ).
clear objpack-transf_bin.
objpack-head_start = 1.
objpack-head_num = 0.
objpack-body_start = 1.
objpack-body_num = tab_lines.
objpack-doc_type = 'TXT'.
append objpack.
Create Message Attachment
Write Packing List (Attachment)
att_type = 'PDF'.
describe table objhex lines tab_lines.
read table objhex index tab_lines.
objpack-doc_size = ( tab_lines ) * 255 ."+ strlen( i_data ).
objpack-transf_bin = 'X'.
objpack-head_start = 1.
objpack-head_num = 0.
objpack-body_start = 1.
objpack-body_num = tab_lines.
objpack-doc_type = att_type.
objpack-obj_name = 'ATTACHMENT1'.
objpack-obj_descr = 'Attached Document1'.
append objpack.
Second attachment
loop at objhex.
move-corresponding objhex to objhex2.
append objhex2.
endloop.
*att_type = 'DOC'.
*describe table objhex lines tab_lines.
*read table objhex index tab_lines.
*objpack-doc_size = ( tab_lines ) * 255 ."+ strlen( i_data ).
*objpack-transf_bin = 'X'.
*objpack-head_start = 1.
*objpack-head_num = 0.
*objpack-body_start = 1.
*objpack-body_num = tab_lines.
*objpack-doc_type = att_type.
*objpack-obj_name = 'ATTACHMENT2'.
*objpack-obj_descr = 'Attached Document2'.
*append objpack.
Third attachment
*loop at objhex.
move-corresponding objhex to objhex2.
append objhex2.
*endloop.
*att_type = 'PDF'.
*describe table objhex lines tab_lines.
*read table objhex index tab_lines.
*objpack-doc_size = ( tab_lines ) * 255 ."+ strlen( i_data ).
*objpack-transf_bin = 'X'.
*objpack-head_start = 1.
*objpack-head_num = 0.
*objpack-body_start = 1.
*objpack-body_num = tab_lines.
*objpack-doc_type = att_type.
*objpack-obj_name = 'ATTACHMENT3'.
*objpack-obj_descr = 'Attached Document3'.
*append objpack.
Create receiver list
data: reclist1 type sadrfd .
reclist1-rec_fax = '650-467-2890'.
reclist1-REC_STATE = 'US'.
append reclist1.
*read table reclist1 index 1.
move reclist1(30) to reclist-receiver(30).
move reclist1346(3) to reclist-receiver346(3).
*reclist-receiver = reclist1."'US16503457900'.
*move reclist1-rec_fax to reclist-receiver.
*reclist-receiver = 'US16502796630'. "'+1 (16502796999)'.
reclist-REC_type = 'F'.
*reclist-country = 'US'.
*reclist-COM_TYPE = 'TELFAX'.
*reclist-fax = 'US1650-279-6630'.
append reclist.
*reclist-receiver = sy-uname. "<-- change internal user
*reclist-rec_type = 'B'.
*append reclist.
Send Message
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = docdata
PUT_IN_OUTBOX = 'X'
COMMIT_WORK = 'X' "used from rel.6.10
IMPORTING
SENT_TO_ALL =
NEW_OBJECT_ID =
tables
packing_list = objpack
OBJECT_HEADER = objhead
CONTENTS_BIN = objbin
CONTENTS_TXT = objtxt
CONTENTS_HEX = objhex
OBJECT_PARA =
OBJECT_PARB =
receivers = reclist
EXCEPTIONS
TOO_MANY_RECEIVERS = 1
DOCUMENT_NOT_SENT = 2
DOCUMENT_TYPE_NOT_EXIST = 3
OPERATION_NO_AUTHORIZATION = 4
PARAMETER_ERROR = 5
X_ERROR = 6
ENQUEUE_ERROR = 7
OTHERS = 8
IF sy-subrc <> 0.
message ID 'SO' TYPE 'S' NUMBER '023'
with docdata-obj_name.
ENDIF.
**Please reward suitable points***
With Regards
Navin Khedikar -
Hello,
Could any body tell me how to attach a report output to a mail which need to be send to SAP Inbox.
The report is ALV report. Is there any Function Module to do so.
Regards,
Satyaemail to SAP Inbox
Send mail to User's SAP Inbox also
RECLIST-RECEIVER = IT_ZMMTACCUID-ACCTUSRID.
RECLIST-REC_TYPE = 'B'.
APPEND RECLIST.
CLEAR RECLIST.
SEND THE DOCUMENT BY CALLING THE SAPOFFICE API1 MODULE FOR SENDING
DOCUMENTS WITH ATTACHMENTS
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
DOCUMENT_DATA = DOC_CHNG
PUT_IN_OUTBOX = 'X'
IMPORTING
SENT_TO_ALL = SENT_TO_ALL
NEW_OBJECT_ID =
TABLES
PACKING_LIST = OBJPACK
OBJECT_HEADER = OBJHEAD
CONTENTS_BIN = OBJBIN
CONTENTS_TXT = OBJTXT
RECEIVERS = RECLIST
EXCEPTIONS
TOO_MANY_RECEIVERS = 1
DOCUMENT_NOT_SENT = 2
DOCUMENT_TYPE_NOT_EXIST = 3
OPERATION_NO_AUTHORIZATION = 4
PARAMETER_ERROR = 5
X_ERROR = 6
ENQUEUE_ERROR = 7
OTHERS = 8.
following options are available for field
RECLIST-REC_TYPE
Name
P Private distribution list
C Shared distribution list
O SAPoffice user
B SAP user
U Internet address
X X.400 address
R SAP user in another SAP System
A External address
F Fax number
D X.500 Address
L Telex number
H Organizational unit/position
J SAP object
G Organization object/ID
Regards
amole -
Problem to send a mail of notify to SAP Inbox instead Outlook Inbox
Hi all,
I have a customer that it's already done an upgrade to SAP_HR 4.7 and SAP_BASIS 6.20.
I haven't modify the old Workflow and I use the standard task to send the mail of notify in order to leave request.
I'm using the method SENDTASKDESCRIPTION of object SELFITEM with type address U and the mail address (external).
But the mails aren't sending to Outlook, they are sending to SAP Inbox.
So the employee see the mail into the ESS portal instead to see the mail in Outlook.
Could you suggest me if the problem is in the task of workflow, or in SCOT or in mail server, please?
Are there a new functionality in SAP in order to search the user linked with the mail address?
Thanks in advance for any suggestion.
Best Regards
Luca MoschioniHi Luca, i have the same problem, did you found any solution to this?
thanks you. -
Problem while opening PDF in SAP Inbox
I am trying to read the spool from SAP background job and sending to SAP inbox.
PDF is not opening in th eSAP Inbox...
Reading from spool using FM
CALL FUNCTION 'RSPO_RETURN_SPOOLJOB'
EXPORTING
rqident = w_spool_no
DESIRED_TYPE = 'RAW'
TABLES
buffer = w_contents
Converting into Hexadecimal format
IF w_contents IS NOT INITIAL.
CALL FUNCTION 'SO_SOLITAB_TO_SOLIXTAB'
EXPORTING
ip_solitab = w_contents
IMPORTING
ep_solixtab = w_contents_hex.
ENDIF.
Sending mail to SAP inbox using
I am using FM SO_NEW_DOCUMENT_ATT_SEND_API1No reply.
-
Hi,
I have a problem of the mail sending from SAP inbox to external email id. The text which Iam entering in the mail is converted into pdf format and being sent as an attachment. we are using the version 46C. Please let me know on this.
Thanks!
Sreenivaswhat is the issue ?
u dont want PDF ? then chek ur settings in SCOT.
in SCOT -->double click on STMP nore >internet>here u will get converion format settings
Regards
Prabhu -
Hi all,
I am using the following code to send the mail to SAP inbox,
DATA : it_reclist TYPE TABLE OF somlreci1,
wa_reclist TYPE somlreci1.
DATA : wa_docdata TYPE sodocchgi1.
DATA : it_message TYPE TABLE OF solisti1,
wa_message TYPE solisti1,
it_attach TYPE TABLE OF sopcklsti1.
LOOP AT it_super_uid INTO wa_super_uid.
wa_reclist-receiver = wa_super_uid-usid.
wa_reclist-rec_type = 'B'.
APPEND wa_reclist TO it_reclist.
ENDLOOP.
wa_docdata-obj_langu = sy-langu.
wa_docdata-obj_name = text-005.
wa_docdata-obj_descr = text-006.
wa_docdata-sensitivty = 'F'.
wa_message-line = text-007.
APPEND wa_message TO it_message.
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = wa_docdata
put_in_outbox = 'X'
COMMIT_WORK = ' '
IMPORTING
SENT_TO_ALL =
NEW_OBJECT_ID =
TABLES
packing_list = it_attach
OBJECT_HEADER =
CONTENTS_BIN =
CONTENTS_TXT =
CONTENTS_HEX =
OBJECT_PARA =
OBJECT_PARB =
receivers = it_reclist
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
IF sy-subrc = 0.
MESSAGE text-008 TYPE 'S'.
ENDIF.
Still i am not able to send the mail , its giving me exception 5. Please let me know how could i modify the code.
Thanx,
Girish.HI,
The code below demonstrates how to send an SAP mail to a users inbox (SBWP)
: Report ZSAPTALK :
: Author SAPdev.co.uk :
: Description : :
: Send mail message to SAP mail inbox. :
: Please visit www.sapdev.co.uk for further info :
REPORT ZSAPMAIL NO STANDARD PAGE HEADING.
TABLES: DRAD,
QINF,
DRAW,
SOUC,
SOFD,
DRAP.
DATA: P_RETURN_CODE LIKE SY-SUBRC.
data: d_username LIKE DRAP-PRNAM.
mail declarations
DATA : BEGIN OF NEW_OBJECT_ID. " the newly created email object
INCLUDE STRUCTURE SOODK.
DATA : END OF NEW_OBJECT_ID.
DATA : BEGIN OF FOLDER_ID. " the folder id of the outbox
INCLUDE STRUCTURE SOODK.
DATA : END OF FOLDER_ID.
DATA : BEGIN OF REC_TAB OCCURS 5. " the table which will contain the
INCLUDE STRUCTURE SOOS1. " information on the destination
DATA : END OF REC_TAB.
DATA : BEGIN OF OBJECT_HD_CHANGE. " the table which contains the
INCLUDE STRUCTURE SOOD1. " info for the object we will be
DATA : END OF OBJECT_HD_CHANGE. " creating
DATA : OBJECT_TYPE LIKE SOOD-OBJTP. " the type of object
DATA : BEGIN OF OBJHEAD OCCURS 5. " the header of the object
INCLUDE STRUCTURE SOLI.
DATA : END OF OBJHEAD.
DATA : BEGIN OF OBJCONT OCCURS 0. " the contents of the object
INCLUDE STRUCTURE SOLI. " i.e. the text etc
DATA : END OF OBJCONT.
DATA : BEGIN OF OBJPARA OCCURS 5. " formatting options
INCLUDE STRUCTURE SELC.
DATA : END OF OBJPARA.
DATA : BEGIN OF OBJPARB OCCURS 5. " formatting options
INCLUDE STRUCTURE SOOP1.
DATA : END OF OBJPARB.
DATA : BEGIN OF T_MAIL_TEXT OCCURS 0, "Message table for messages to
STRING(255), "user via mailbox
END OF T_MAIL_TEXT.
Parameter: p_uname like sy-uname.
**START-OF-SELECTION
START-OF-SELECTION.
d_username = p_uname.
PERFORM POPULATE_EMAIL_TEXT.
PERFORM SETUP_TRX_AND_RTX_MAILBOXES USING P_RETURN_CODE.
PERFORM CREATE_AND_SEND_MAIL_OBJECT.
FORM POPULATE_EMAIL_TEXT *
Inserts text for email message *
FORM POPULATE_EMAIL_TEXT.
CLEAR T_MAIL_TEXT-STRING. "puts a blank line in
APPEND T_MAIL_TEXT.
APPEND T_MAIL_TEXT.
adds failed list on to end of success list.
T_MAIL_TEXT-STRING = 'Test email message line 1'.
APPEND T_MAIL_TEXT.
T_MAIL_TEXT-STRING = 'Test email message line 1'.
APPEND T_MAIL_TEXT.
CLEAR T_MAIL_TEXT-STRING. "puts a blank line in
APPEND T_MAIL_TEXT.
T_MAIL_TEXT-STRING = 'Header1 Header2 Header3'.
APPEND T_MAIL_TEXT.
T_MAIL_TEXT-STRING = '----
APPEND T_MAIL_TEXT.
ENDFORM.
*& Form SETUP_TRX_&_RTX_MAILBOXES
Ensure that the mailboxes of the sender (INTMGR) are set up OK
FORM SETUP_TRX_AND_RTX_MAILBOXES USING P_RETURN_CODE.
get the user no of the sender in order to add the mail to the
user name's outbox for future reference
SELECT SINGLE * FROM SOUC
WHERE SAPNAM = SY-UNAME. "SAP name of a SAPoffice user
IF SY-SUBRC NE 0.
"Error finding the SAPoffice user info for the user
MESSAGE E064(ZR53) WITH SY-UNAME.
P_RETURN_CODE = 1.
EXIT.
ENDIF.
*Get the outbox No for the sender from the user No where the folder
" type is an outbox
SELECT * FROM SOFD WHERE OWNTP = SOUC-USRTP "Owner type from ID
AND OWNYR = SOUC-USRYR "Owner year from the ID
AND OWNNO = SOUC-USRNO "Owner number from the I
AND FOLRG = 'O'."Output box
ENDSELECT.
IF SY-SUBRC NE 0.
" Error getting folder information for the user
MESSAGE E065(ZR53) WITH SY-UNAME.
P_RETURN_CODE = 1.
EXIT.
ENDIF.
ENDFORM. " SETUP_TRX_&_RTX_MAILBOXES
*& Form CREATE_AND_SEND_MAIL_OBJECT
FORM CREATE_AND_SEND_MAIL_OBJECT.
FOLDER_ID-OBJTP = SOFD-FOLTP. " the folder type ( usually FOL )
FOLDER_ID-OBJYR = SOFD-FOLYR. " the folder year ( usually 22 )
FOLDER_ID-OBJNO = SOFD-FOLNO. " the folder no.
OBJECT_TYPE = 'RAW'. " the type of object being added
build up the object information for creating the object
OBJECT_HD_CHANGE-OBJLA = SY-LANGU. " the language of the email
OBJECT_HD_CHANGE-OBJNAM = 'PS to DM Interface'. " the object name
mail subject 'Mass Linking of QA, pass/fail'
MOVE TEXT-002 TO OBJECT_HD_CHANGE-OBJDES.
OBJECT_HD_CHANGE-DLDAT = SY-DATUM. " the date of the email
OBJECT_HD_CHANGE-DLTIM = SY-UZEIT. " the time of the email
OBJECT_HD_CHANGE-OBJPRI = '1'. " the priority ( highest )
OBJECT_HD_CHANGE-OBJSNS = 'F'. " the object sensitivity
F is functional, C - company sensitive
object_hd_change-skips = ' '. " Skip first screen
object_hd_change-acnam = 'SM35'. " Batch imput transaction
object_hd_change-vmtyp = 'T'. " Transaction type
add the text lines into the contents of the email
CLEAR OBJCONT.
REFRESH OBJCONT.
free objcont. " added this to delete the mail contents records
LOOP AT T_MAIL_TEXT.
OBJCONT-LINE = T_MAIL_TEXT-STRING.
APPEND OBJCONT.
ENDLOOP.
CLEAR OBJCONT.
build up the table of receivers for the email
REC_TAB-RCDAT = SY-DATUM. " the date to send the email
REC_TAB-RCTIM = SY-UZEIT. " the time to send the email
the SAP username of the person who will receive the email
REC_TAB-RECNAM = D_USERNAME.
the user type of the person who will send the email ( USR )
REC_TAB-SNDTP = SOUC-USRTP.
the user year of the person who will send the email ( 22 )
REC_TAB-SNDYR = SOUC-USRYR.
the user number of the person who will send the email
REC_TAB-SNDNO = SOUC-USRNO.
the sap username of the person who will send the email
REC_TAB-SNDNAM = SY-UNAME.
get the user info for the receiver of the document
SELECT SINGLE * FROM SOUC WHERE SAPNAM = D_USERNAME.
IF SY-SUBRC NE 0.
WRITE : / TEXT-001, D_USERNAME. "usnam.
EXIT.
ENDIF.
the user number of the person who will receive the email ( USR )
REC_TAB-RECNO = SOUC-USRNO.
the user type of the person who will receive the email ( USR )
REC_TAB-RECTP = SOUC-USRTP.
the user year of the person who will receive the email ( USR )
REC_TAB-RECYR = SOUC-USRYR.
the priority of the email ( highest )
REC_TAB-SNDPRI = '1'.
check for delivery on the email
REC_TAB-DELIVER = 'X'.
send express so recipient knows there is a problem
REC_TAB-SNDEX = 'X'.
check for a return receipt
REC_TAB-READ = 'X'.
the sap username of the person receiving the email
REC_TAB-ADR_NAME = D_USERNAME. "usnam.
add this receiver to the internal table
APPEND REC_TAB.
CLEAR REC_TAB.
call the function to create the object in the outbox of the sender
CALL FUNCTION 'SO_OBJECT_INSERT'
EXPORTING
FOLDER_ID = FOLDER_ID
OBJECT_HD_CHANGE = OBJECT_HD_CHANGE
OBJECT_TYPE = OBJECT_TYPE
OWNER = SY-UNAME
IMPORTING
OBJECT_ID = NEW_OBJECT_ID
TABLES
OBJCONT = OBJCONT
OBJHEAD = OBJHEAD
OBJPARA = OBJPARA
OBJPARB = OBJPARB
EXCEPTIONS
ACTIVE_USER_NOT_EXIST = 1
COMMUNICATION_FAILURE = 2
COMPONENT_NOT_AVAILABLE = 3
DL_NAME_EXIST = 4
FOLDER_NOT_EXIST = 5
FOLDER_NO_AUTHORIZATION = 6
OBJECT_TYPE_NOT_EXIST = 7
OPERATION_NO_AUTHORIZATION = 8
OWNER_NOT_EXIST = 9
PARAMETER_ERROR = 10
SUBSTITUTE_NOT_ACTIVE = 11
SUBSTITUTE_NOT_DEFINED = 12
SYSTEM_FAILURE = 13
X_ERROR = 14
OTHERS = 15.
IF SY-SUBRC NE 0.
MESSAGE A063(ZR53) WITH SY-SUBRC.
EXIT.
ENDIF.
call the function to send the already created email to the receivers
CALL FUNCTION 'SO_OBJECT_SEND'
EXPORTING
FOLDER_ID = FOLDER_ID
OBJECT_ID = NEW_OBJECT_ID
OUTBOX_FLAG = 'X'
OWNER = SY-UNAME
TABLES
RECEIVERS = REC_TAB
EXCEPTIONS
ACTIVE_USER_NOT_EXIST = 1
COMMUNICATION_FAILURE = 2
COMPONENT_NOT_AVAILABLE = 3
FOLDER_NOT_EXIST = 4
FOLDER_NO_AUTHORIZATION = 5
FORWARDER_NOT_EXIST = 6
NOTE_NOT_EXIST = 7
OBJECT_NOT_EXIST = 8
OBJECT_NOT_SENT = 9
OBJECT_NO_AUTHORIZATION = 10
OBJECT_TYPE_NOT_EXIST = 11
OPERATION_NO_AUTHORIZATION = 12
OWNER_NOT_EXIST = 13
PARAMETER_ERROR = 14
SUBSTITUTE_NOT_ACTIVE = 15
SUBSTITUTE_NOT_DEFINED = 16
SYSTEM_FAILURE = 17
TOO_MUCH_RECEIVERS = 18
USER_NOT_EXIST = 19
X_ERROR = 20
OTHERS = 21.
IF SY-SUBRC EQ 0.
MESSAGE I035(ZR53) WITH NEW_OBJECT_ID D_USERNAME. "usnam.
ELSE.
MESSAGE I036(ZR53) WITH D_USERNAME." sy-subrc.
ENDIF.
ENDFORM. " CREATE_AND_SEND_MAIL_OBJECT
Hope this helps.
Reward if helpful.
Regards,
Sipra -
Simple code to send ALV display as XLS attachment to SAP inbox
Hi All,
Simple code to send ALV display as XLS attachment to SAP inbox.
Also i need to send only 200 records per attachement. So in this case i need send multiple attachment per mail
Thanks,
LokeshThe following code is used to send the internal table which u pass fo the ALV display to be send as excel sheet attachment
Internal table is it_attach[]
ld_email = po_email.
ld_mtitle = 'Email From Z377_EMAIL_XLS'.
ld_format = 'XLS'.
ld_attdescription = 'filename'.
ld_attfilename = 'Allot'.
ld_sender_address = ' '.
ld_sender_address_type = ' '.
* Fill the document data.
w_doc_data-doc_size = 1.
* Populate the subject/generic message attributes
w_doc_data-obj_langu = sy-langu.
w_doc_data-obj_name = 'SAPRPT'.
w_doc_data-obj_descr = ld_mtitle .
w_doc_data-sensitivty = 'F'.
* Fill the document data and get size of attachment
CLEAR w_doc_data.
READ TABLE it_attach INDEX w_cnt.
w_doc_data-doc_size =
( w_cnt - 1 ) * 255 + STRLEN( it_attach ).
w_doc_data-obj_langu = sy-langu.
w_doc_data-obj_name = 'SAPRPT'.
w_doc_data-obj_descr = ld_mtitle.
w_doc_data-sensitivty = 'F'.
CLEAR t_attachment.
REFRESH t_attachment.
t_attachment[] = it_attach[].
* Describe the body of the message
CLEAR t_packing_list.
REFRESH t_packing_list.
t_packing_list-transf_bin = space.
t_packing_list-head_start = 1.
t_packing_list-head_num = 0.
t_packing_list-body_start = 1.
DESCRIBE TABLE li_content LINES t_packing_list-body_num.
t_packing_list-doc_type = 'RAW'.
APPEND t_packing_list.
* Create attachment notification
t_packing_list-transf_bin = 'X'.
t_packing_list-head_start = 1.
t_packing_list-head_num = 1.
t_packing_list-body_start = 1.
DESCRIBE TABLE t_attachment LINES t_packing_list-body_num.
t_packing_list-doc_type = ld_format.
t_packing_list-obj_descr = ld_attdescription.
t_packing_list-obj_name = ld_attfilename.
t_packing_list-doc_size = t_packing_list-body_num * 255.
APPEND t_packing_list.
* Add the recipients email address
CLEAR t_receivers.
REFRESH t_receivers.
t_receivers-receiver = ld_email.
t_receivers-rec_type = 'U'.
t_receivers-com_type = 'INT'.
t_receivers-notif_del = 'X'.
t_receivers-notif_ndel = 'X'.
APPEND t_receivers.
CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
EXPORTING
document_data = w_doc_data
put_in_outbox = 'X'
sender_address = ld_sender_address
sender_address_type = ld_sender_address_type
commit_work = 'X'
*IMPORTING
*sent_to_all = w_sent_all
TABLES
packing_list = t_packing_list
contents_bin = t_attachment
contents_txt = li_content
receivers = t_receivers
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8. -
Small issue in sending mail to sap-inbox via classes
Hi All,
I am working in sending SAP mail to sap-inbox via classes..
Which i am able to work out..But got some minor struck off where when i am sending the mail from sap-report
it is sucesfully reaching the user ....
Issue is In the sap-inbox mail it is not only showing the
Created: Sender user name
it is also showing the Changed :Sender name only
How to restrict the changed should not display ...
Waiting for your response....
*Creates persistent send request
TRY.
L_SEND_REQUEST = CL_BCS=>CREATE_PERSISTENT( ).
* Creating Document
L_DOCUMENT_SAS = CL_DOCUMENT_BCS=>CREATE_DOCUMENT(
I_TYPE = 'HTM'
I_TEXT = I_CONTENT[]
I_SUBJECT = 'Automated HRIS (SAP) Report' ).
*PERFORM PREPARE_ATTACHMENT.
* Adding Attachment
CALL METHOD L_DOCUMENT_SAS->ADD_ATTACHMENT
EXPORTING
I_ATTACHMENT_TYPE = C_EXT
* I_ATTACHMENT_SIZE = L_SIZE
I_ATTACHMENT_SUBJECT = 'Hr Details r.xls'
I_ATT_CONTENT_HEX = L_XML_TABLE. "i_attach.
* I_ATT_CONTENT_TEXT = l_XML_TABLE.
Sas
Edited by: saslove sap on Oct 22, 2009 7:05 AM
Edited by: saslove sap on Oct 22, 2009 7:07 AMcontd...
* document to send request
CALL METHOD L_SEND_REQUEST->SET_DOCUMENT( L_DOCUMENT_SAS ).
DATA:LR_SENDER TYPE REF TO IF_SENDER_BCS,
LR_SEND TYPE REF TO CL_BCS.
* Preparing the sender object
* LR_SENDER = CL_CAM_ADDRESS_BCS=>CREATE_INTERNET_ADDRESS( sy-uname ).
DATA: L1_UNAME TYPE SY-UNAME.
L1_UNAME = SY-UNAME.
LR_SENDER = CL_SAPUSER_BCS=>CREATE( L1_UNAME ).
* Setting the sender
CALL METHOD L_SEND_REQUEST->SET_SENDER
EXPORTING
I_SENDER = LR_SENDER.
* E-Mail
LOOP AT P_EADDR.
TRANSLATE P_EADDR-LOW TO UPPER CASE.
L_RECIPIENT = CL_SAPUSER_BCS=>( P_EADDR-LOW ).
CALL METHOD L_SEND_REQUEST->ADD_RECIPIENT
EXPORTING
I_RECIPIENT = L_RECIPIENT
I_EXPRESS = 'X'
I_COPY = ' '
I_BLIND_COPY = ' '
I_NO_FORWARD = ' '.
IF SY-SUBRC EQ 0.
WRITE:/'** SUCCESS: Email Sent to', P_EADDR-LOW COLOR COL_NORMAL.
ELSE.
WRITE:/'** ERROR: Failed to send Email to',P_EADDR-LOW COLOR COL_NEGATIVE .
ENDIF.
ENDLOOP.
*Trigger E-Mail immediately
L_SEND_REQUEST->SET_SEND_IMMEDIATELY( ' ' ).
CALL METHOD L_SEND_REQUEST->SEND( ).
COMMIT WORK.
CATCH CX_DOCUMENT_BCS INTO L_BCS_EXCEPTION.
CATCH CX_SEND_REQ_BCS INTO L_SEND_EXCEPTION.
CATCH CX_ADDRESS_BCS INTO L_ADDR_EXCEPTION.
ENDTRY.
Edited by: saslove sap on Oct 22, 2009 9:02 AM -
Mail sending - how to restrict from SAP inbox,
I am passing my internal table gt_message in the below FM code .
It is working fine.
1). HOWEVER I AM GETTING MAIL TO MY SAP INBOX.
*My functional consultant don't want this.*
How can I send only to mail id with out saving SAP mail.
2).
I am not able to send mails to other mails ids other than our outlook. We need to send mail to our customer.
How to do this . Please help / or just below coding is sufficient to send mail to external mailis like our customers ?
FORM send_email_message.
wa_doc_data-doc_size = 1.
wa_doc_data-obj_langu = sy-langu.
wa_doc_data-obj_name = 'SAPRPT'.
wa_doc_data-obj_descr = text-017. " 'Results of EDI 869 and 870'. " psubject.
wa_doc_data-sensitivty = 'F'.
CLEAR wa_packing_list.
REFRESH gt_packing_list.
wa_packing_list-transf_bin = space.
wa_packing_list-head_start = 1.
wa_packing_list-head_num = 0.
wa_packing_list-body_start = 1.
DESCRIBE TABLE gt_message LINES wa_packing_list-body_num.
wa_packing_list-doc_type = 'RAW'.
APPEND wa_packing_list TO gt_packing_list.
wa_receivers-receiver = 'mahesh.bagel at the rate cadi.com'.
wa_receivers-rec_type = 'U'.
wa_receivers-express = ' '.
wa_receivers-com_type = 'INT'.
wa_receivers-notif_del = 'X'.
wa_receivers-notif_ndel = 'X'.
APPEND wa_receivers TO gt_receivers.
CLEAR wa_receivers.
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = wa_doc_data
put_in_outbox = 'X'
IMPORTING
sent_to_all = v_sent_all
TABLES
packing_list = gt_packing_list
contents_txt = gt_message
receivers = gt_receivers
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8.
IF sy-subrc EQ 0.
COMMIT WORK.
ENDIF.
v_error = sy-subrc.
LOOP AT gt_receivers INTO wa_receivers.
ENDLOOP.
ENDFORM. " SEND_EMAIL_MESSAGE
Edited by: Sam Kumar on Oct 9, 2008 9:40 PMIn your call don't pass put_in_outbox = 'X'.
Don't pass the Transmission Medium in the Receiver
Like:
wa_receivers-receiver = 'mahesh.bagel at the rate cadi.com'.
wa_receivers-rec_type = 'U'.
wa_receivers-notif_del = 'X'.
wa_receivers-notif_ndel = 'X'.
APPEND wa_receivers TO gt_receivers.
CLEAR wa_receivers.
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = wa_doc_data
put_in_outbox = space " <<
IMPORTING
sent_to_all = v_sent_all
TABLES
packing_list = gt_packing_list
contents_txt = gt_message
receivers = gt_receivers
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8.
IF sy-subrc EQ 0.
COMMIT WORK.
ENDIF.
Regards,
Naimesh Patel
Edited by: Naimesh Patel on Oct 9, 2008 4:54 PM -
Send Workitem from Sap inbox to outlook
Hi all,
Any one please explain how to send workitems in sap inbox to outlook.
What all configurations are needed?
Thanks in advanceFirst you need to be able to send an e-mail from SAP Business Workplace to your e-mail address. If that's not in place you need to configure the e-mail connector or whatever it is called. Basis people should be able to help you with that. It not only involves setting up SCOT to transmit messages with address type INT, you also need to have jobs running on your application server to pass on the SMTP messages.
Once that is working you can start thinking about e-mail notifications for workflow. If you have transaction code SWNCONFIG in your system, you should use the extended notifcations that you configure there - that is SAP's recommendation. In order to use it it seems you must have SAP Web AS running.
The other alternative (unless you are on a release < R/3 4.6C) is the report RSWUWFML2.
For assistance setting up any of these three, please post your specific questions.
In both cases you need to have a sender address defined for the user that executes the report, any user sending e-mail must have an e-mail address in the user record. -
SAP Inbox: Send Transaction code link to the SAP Inbox
Hi,
I have a requirement, which is as follows.
I need mail to be sent to the SAP Inbox every morning.
In the body, there should be a link. When the user double-click's on the link, a transaction code should be executed in the background, thus bringing the user to the screen showing a report.
Is this possible and if so, how can it be done?
All help will be rewarded and greatly appreciated.
Thank You,
JohnWhat he want to Say is that this request can easily be done with the help of a workflow, so you need to consult your workflow consultant.
Check this link to know more -
http://web.mit.edu/sapr3/docs/webdocs/purchpay/ppAPRnotify.html#inbox
For without workflow check this -
workflow sending notification to sap inbox.
Regards,
Amit -
Issue in sending mail to SAP Inbox from Workflow
Hi All,
I need to send the mail to the creator of the document about the user decision. If i am executing the workflow through the event ( ouput type) , the workflow processing in SWIA is complete but the mail is not sent in the SAP Inbox. But If i try to manually execute the workflow, mail is sent to the SAP Inbox.
I've used WF_INITIAITOR in the Expression. I need to send the mail not to the approver but to the creator of the workflow.
Thanks,
NehaHi,
the event is also triggered from my Id but in that case I do not recieve any e-mail. None of the users recieve the e-mail in the SAP Inbox for the mail step after the decision.
In workflow Log the last step shows the details as
name of the manager and the workflow background for mail sent step as shown below
Sumit Vij Background work item created 10.01.2012 12:08:43
Sumit Vij Execution started automatically 10.01.2012 12:08:43
Workflow Hintergrund Work item processing complete 10.01.2012 12:08:44
Thanks
Maybe you are looking for
-
Hello, I recently purchased my Mac late last December, and within the past week and a half, I have noted a substantial amount of overall slowness. It's slow to boot up, slow when I am surfing the internet, and when I run my usual applications. Can an
-
Activate GOS toolbar in WAM04 transaction
Hi Experts, Can you tell me how can we activate the Generic Object Services toolbar for transaction WAM04 (disposal documents) in EHS Waste Management? Or write a functional specification for that? Thanks
-
Want to integrate multiple adf applications in one adf application
Hi, I am using jdeveloper 10.1.3.3 I had developed 3 independent adf applications.now i want to create one application above all 3 applications,such that once a person log in can access all three application according to its role. please help.Thanks
-
Purchase Order Error. PLANT
Hi experts, when i am creating Purchase Order system asking me to enter PLANT.. i am maintaining materials in the xyz plant . but system is triggering the plant also i am maintaining . info records, sourse list in the same plant... but when i ca
-
How do you load an LVM file in Matlab? I used the code: load test.lvm; But it returns this error message "??? Error using ==> load Number of columns on line 10 of ASCII file ......test.lvm must be the same as previous lines. Error in ==> PlotM at 1 l