Sending mail based on values in report
hi ,
i have i requirement like sending mails to user if the values in the report exceeds some threshold.
and user should be able to configure these mail settinigs. can any just tell me wether it is possible or not.
thanks and regards
siva ganesh
Hi siva ganesh,
If you are on version 3.0 or greater then it would be possible to do something with dynamic recipients in a publication. You would write your main report to return the data with no conditions on it.
You would then write a report which returns a list of users who have past there threashold value. The publication would use this report to determine who should receive the report. To do this you would have to write a little app to get the users threashold into the reporting database.
Failing that you would have to write something using the SDK
Regards
Alan
Similar Messages
-
Sending mails based on hierarchy by using Oracle Alerts
Hi All,
From past five days i am facing problem in Oarcle Alerts that my requirement is i need to send mails based on hierarchy people by uisng oracle alert.
In this need to send the mail only the different Hierarchy head person only and i need to do this by using alert only
Can any one please suggest me for this.
Any help is greatly appreciated.
Thanks
AnushkaHi,
i have sql statement Now my problem is how to run 'Sql Statement Script' from Alerts, can you please suggest me on this .I believe this is explained in "Oracle Alert" manual.
Applications Releases 11i and 12
http://www.oracle.com/technology/documentation/applications.html
Thanks,
Hussein -
Sending Mail from Oracle forms or reports
Hi
I have to send mail from forms or reports . Is there any way or builtin to do this.
If anybody have experience in this please give the
detailed example on this.
Regards
ArunLook at http://www.oracle.com/technology/sample_code/tech/pl_sql/htdocs/maildemo_sql.txt
It creates a package in the database for sending mail.
If you want to send mail from the local machine using Outlook, you'll have to use OLE, but it's not something I've tried. -
Company LOGO , Send Mail to return value, Portals Link
Hello Friends
We are in the process of designing a workflow to, amongst other things, send an email notifications to employees informing them thet their Pay statements can be viewed via portals (My ESS). Within the email we need to ask the employee if he/she wants to be reminded in 24 hours with another email.
I am wondering if in the past you have sucessfuly:
- Put a company logo in email being sent with the Send_Mail task thru workflow
- Used SEND MAIL too send a link to portals ?
- Allowed to employee to click on "Remind me later" in the email and update the workflow to send a
follow up email in 24 hours.
Example of email is as per below:
######LOGO#######
You have received an e-mail delivery from XXXXXXXXXXXX that your Payroll statement is ready for viewing in ESS.
To log in to ESS, go to LINK
Click on the Remind me button to receive a reminder in approximately 24 hours
Remind me later!
Any input / suggestions you can provide to the above will be well received, thanks
ShaliniHi,
In Workitem you can bring the Logo, But in the email you can send as attachment only.
Refer the Below link for bring the logo in the workitem
[Logo link|logo in Workitem; -- See the 3rd Reply.
Regards,
Surjith -
Word document/mail merge with values from Reports
Hi All gurus
Using apex 4.1.1 , linux , 11gr2
Basically I have requirement to generate a Word doc (letter to a Word mail merge) from a button/navigation link pressed on Apex page which will gather data from the report and fill in values in appropriate place in Word doc.
Is this even possible with Apex with/o BI Publisher
I have Fop installed and tested , PDF works great but excel and RTF is not reading the encoding on attachment download.
Any help gratefully appreciated as always !
PS I am aware of new PDF feature in 4.2.2 but upgrade is just not the scope right now.
ThanksHi, Tony:
I am working with Hunk09 on this problem. I checked the demos of this PL/SQL lib, it looks powerful, yet we need a short time solution considering our schedule, as our request is just to insert some values into a static RTF document so user can print letters in batch by clicking link and downloading RTF file. I noticed our legacy system is using owa_util.mime_header following with htp.p to produce file, does APEx support this still? Also you have any hint about providing download link in APEX?
Thanks.
Sam
Edited by: lxiscas on May 8, 2013 2:59 PM -
Sending mail based on condtion using smartform
Hi friends,
I have header data and item data...in the below way..
header data
vbeln = 1000
item data
posnr recipient materail no quanity amount
10 1000 abc 100 10000
20 2000 pqr 100 5000
n n n n n
Now the for a particular recpient the data may go to next page ie: several pages.. if the item data for the same recipient is same then it should not display the header data in the 2nd page but it should only print the item data.
now based on the recipient changes i should print agian the header data and then the item data from the next page.
and also as the recipient is changing the mail should go to another person ie: all the related recipients mail will be send to one person and others to some other person
ie: recipient 1000 --- person1
recipient 2000 --- person2
like that.
how can i do..? can any one suggest me
Regards
KumarHi..
I implemented similar one just a month back. But, I am not sure I can explain it completely or not... but there are few steps.
There are two solutions actually.. I am giving the simplest one...
Step 1 : Create just one page (Even header data will be within MAIN page)
Step 2 : Build an internal table combining header and item data.
Vbeln item material recipient
1000 10 mmm 10001
1000 20 nnn 10002
and so on
SORT itab by recipient.
Step 3 : Use loop Node to loop thru' itab
Use on change functionality (Copy current WA to Temp. WA to check the recipient change.. and all that code to be
implemented) For each New recipient, set flag 'X'. Also change the Page (Use command Node to start the new page) - Do not forget to tick 'Not on First Page' in conditions tab.
Display header Text/Block/Template with condition Flag = 'X'. And Item table without any condition.
The second solution is requirement specific... Let me know whether this works... If not, i'll give you the other
- Audy. (Email is in my business card, you can use that) -
How to create job to run daily based on form values entered and send mail.
Hi,
In DB we have 3 columns: creation_date, name, approved_or_not. Default for approved_or_not is 'No'.
In the application form page suppose I fill in sysdate for creation_date and leave default for approved_or_not and click [create] button.
Now a job should run everyday and check for where (approved_or_not='No' & creation_date = 'sysdate - 1') and send mail to the person in 'name' field mentioning: 'Approval pending. click on link <some_link> for details on approval'.
Could anyone give me pointers to example on such job? (Working on APEX 3.0)
Thanks,
Priyankacreate a DBMS JOB
check out this forum link.
dbms_job -
How to Convert Report into Excel Sheet when Sending Mail.
Dear Friends,
i want to send mail to HOD of Product with an Excel Sheet .
i want to send Pending Issue details to HOD in Excel Sheet attachment .
here i have pending issue report now i need to send it in Excel Sheet attachment .
i have table where i have manage Product ID and HOD OF PRODUCT.
CREATE TABLE "MAP_USER_PRODUCT_DTL"
( "ID" NUMBER NOT NULL ENABLE,
"PRODUCT_ID"NUMBER,
"USER_ID" VARCHAR2(5) NOT NULL ENABLE,
"HOD_PROD" VARCHAR2(100)========================================Value is Y OR N IF HOD then Y else N
CONSTRAINT "MAP_USER_PRODUCT_DTL_PK" PRIMARY KEY ("ID") ENABLE
/i have one more table where all complete issue detail insert.
CREATE TABLE "CRM_ISSUE_PROBLEM"
( "ID" NUMBER,
"SUBJECT" VARCHAR2(255) NOT NULL ENABLE,
"CLIENT_ID" NUMBER,
"ASSIGNED_TO_ID" VARCHAR2(100),
"ASSIGNED_ON" DATE,
"DESCRIPTION" VARCHAR2(4000),
"PRODUCT_ID" NUMBER NOT NULL ENABLE,
"STATUS_ID" NUMBER NOT NULL ENABLE,
CONSTRAINT "CRM_ISSUE_PROBLEM_PK" PRIMARY KEY ("ID") ENABLE
Here STATUS_ID is Like Pending ISsue,Open Issue and Close Issue .i want to send mail to HOD with Pending Issue Report convert into Excel Sheet and send to HOD?
How can i do this.
Thanks
Edited by: Vedant on Oct 12, 2011 12:36 AM
Edited by: Vedant on Oct 12, 2011 2:22 AMHello Vedant,
Would it suffice if you send a CSV file?
If yes, then see following code.. run the code under APEX > Home > SQL Workshop > SQL Commands
DECLARE
ln_id NUMBER;
lc_clob CLOB;
lb_blob BLOB;
li_in PLS_INTEGER := 1;
li_out PLS_INTEGER := 1;
li_lang PLS_INTEGER := 0;
li_warning PLS_INTEGER := 0;
lv_mail_rcpts VARCHAR2(2000) := '[email protected]';
lv_mail_from VARCHAR2(100) := '[email protected]';
lv_clmn_separator VARCHAR2(1) := ',';
BEGIN
-- Build file content as CLOB
-- Replace with your query
FOR i IN (select object_id A, object_name B, object_type C, status D, temporary E, generated F, secondary G,namespace H from user_objects where rownum < 10)
LOOP
IF lc_clob IS NULL THEN
lc_clob := i.A||lv_clmn_separator||i.B||lv_clmn_separator||i.C||lv_clmn_separator||i.D||lv_clmn_separator||i.E||lv_clmn_separator||i.F||lv_clmn_separator||i.G||lv_clmn_separator||i.H;
ELSE
lc_clob := lc_clob||CHR(10)||i.A||lv_clmn_separator||i.B||lv_clmn_separator||i.C||lv_clmn_separator||i.D||lv_clmn_separator||i.E||lv_clmn_separator||i.F||lv_clmn_separator||i.G||lv_clmn_separator||i.H;
END IF;
END LOOP;
-- Convert CLOB to BLOB
DBMS_LOB.CREATETEMPORARY(lb_blob,TRUE);
DBMS_LOB.convertToBlob(lb_blob,lc_clob,DBMS_LOB.LOBMAXSIZE,li_in,li_out,DBMS_LOB.DEFAULT_CSID,li_lang,li_warning);
-- Send mail
ln_id:= APEX_MAIL.SEND(
p_to => lv_mail_rcpts,
p_from => lv_mail_from,
p_subj => 'Subject Goes here',
p_body => 'Body goes here'
-- add CSV file as attachment
APEX_MAIL.ADD_ATTACHMENT
p_mail_id => ln_id,
p_attachment => lb_blob,
p_filename => 'filename.csv',
p_mime_type => 'application/csv'
-- push mail queue
APEX_MAIL.PUSH_QUEUE;
-- empty temporary space
DBMS_LOB.FREETEMPORARY ( lob_loc => lb_blob);
COMMIT;
END;Regards,
Hari -
How to send mail through report??
hi experts....
i want to create a report to send an email to department representative when pending PO is created.
can some1 tell me how is it possible to send an email through report?
thanks..Refer the following programs:
<b>Mail sent without attachment:</b>
REPORT Z34332_MAIL.
* Check the mail in T-code SBWP
* To check the send mail status T-Code SOST
data: it_packing_list type table of SOPCKLSTI1,
wa_packing-list like line of it_packing_list,
it_receivers type table of SOMLRECI1,
wa_receivers like line of it_receivers,
it_mailbody type table of SOLISTI1,
wa_mailbody like line of it_mailbody.
data: la_doc type SODOCCHGI1.
* mail header
la_doc-OBJ_DESCR = 'HI'.
* Describe the body of the message
CLEAR wa_packing-list.
REFRESH it_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_mara LINES wa_packing-list-body_num.
wa_packing-list-body_num = 1.
wa_packing-list-doc_type = 'RAW'.
APPEND wa_packing-list to it_packing_list.
* Add the recipients email address
CLEAR wa_receivers.
REFRESH it_receivers.
wa_receivers-receiver = 'PCSDEVL'.
wa_receivers-rec_type = 'U'.
wa_receivers-com_type = 'INT'.
wa_receivers-notif_del = 'X'.
wa_receivers-notif_ndel = 'X'.
APPEND wa_receivers to it_receivers.
* Mail Body
CLEAR wa_mailbody.
REFRESH it_mailbody.
wa_mailbody-line = 'How are you.'.
APPEND wa_mailbody to it_mailbody.
CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
EXPORTING
document_data = la_doc
PUT_IN_OUTBOX = 'X'
* SENDER_ADDRESS = SY-UNAME
* SENDER_ADDRESS_TYPE = 'B'
COMMIT_WORK = 'X'
* IMPORTING
* SENT_TO_ALL =
* NEW_OBJECT_ID =
* SENDER_ID =
tables
packing_list = it_packing_list
* OBJECT_HEADER =
* CONTENTS_BIN =
CONTENTS_TXT = it_mailbody
* CONTENTS_HEX =
* OBJECT_PARA =
* OBJECT_PARB =
receivers = it_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 <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
<b>
mail with attachment:</b>
REPORT Z34332_MAIL_WITH_ATTACHMENT1.
types: begin of t_mara,
matnr type mara-matnr,
matkl type mara-matkl,
mtart type mara-mtart,
meins type mara-meins,
end of t_mara.
data: gt_mara type table of t_mara,
wa_mara like line of gt_mara,
it_packing_list type table of SOPCKLSTI1,
wa_packing_list like line of it_packing_list,
it_receivers type table of SOMLRECI1,
wa_receivers like line of it_receivers,
it_mailbody type table of SOLISTI1,
wa_mailbody like line of it_mailbody,
it_attachment type table of SOLISTI1,
wa_attachment like line of it_attachment.
data: la_doc type SODOCCHGI1.
constants:
con_tab type c value cl_abap_char_utilities=>HORIZONTAL_TAB,
con_cret type c value cl_abap_char_utilities=>CR_LF.
* get material
select matnr matkl mtart meins
into table gt_mara
from mara
up to 25 rows.
* Populate the subject/generic message attributes
la_doc-obj_langu = sy-langu.
la_doc-obj_descr = 'Material Details' . "Mail Header
la_doc-sensitivty = 'F'.
la_doc-doc_size = 1.
* Add the recipients email address
CLEAR wa_receivers.
REFRESH it_receivers.
wa_receivers-receiver = 'PCSDEVL'.
wa_receivers-rec_type = 'U'.
wa_receivers-com_type = 'INT'.
wa_receivers-notif_del = 'X'.
wa_receivers-notif_ndel = 'X'.
APPEND wa_receivers to it_receivers.
* Mail Body
CLEAR wa_mailbody.
REFRESH it_mailbody.
wa_mailbody-line = 'Please find the attachment'.
APPEND wa_mailbody to it_mailbody.
* Mail attachmwnt
CLEAR wa_attachment.
REFRESH it_attachment.
CONCATENATE 'MATNR' 'MATKL' 'MTART' 'MEINS'
INTO wa_attachment SEPARATED BY con_tab.
CONCATENATE con_cret wa_attachment INTO wa_attachment.
APPEND wa_attachment to it_attachment.
LOOP AT gt_mara INTO wa_mara.
CONCATENATE wa_mara-matnr wa_mara-matkl
wa_mara-mtart wa_mara-meins
INTO wa_attachment SEPARATED BY con_tab.
CONCATENATE con_cret wa_attachment INTO wa_attachment.
APPEND wa_attachment to it_attachment.
ENDLOOP.
* Describe the body of the message
CLEAR wa_packing_list.
REFRESH it_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.
wa_packing_list-body_num = 1.
wa_packing_list-doc_type = 'RAW'.
APPEND wa_packing_list to it_packing_list.
* Create attachment notification
wa_packing_list-transf_bin = 'X'.
wa_packing_list-head_start = 1.
wa_packing_list-head_num = 1.
wa_packing_list-body_start = 1.
DESCRIBE TABLE it_attachment LINES wa_packing_list-body_num.
wa_packing_list-doc_type = 'XLS'. " To word attachment change this as 'DOC'
wa_packing_list-obj_descr = ' '.
concatenate wa_packing_list-doc_type 'file' into wa_packing_list-OBJ_DESCR
separated by space.
wa_packing_list-doc_size = wa_packing_list-body_num * 255.
APPEND wa_packing_list to it_packing_list.
CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
EXPORTING
document_data = la_doc
PUT_IN_OUTBOX = 'X'
* SENDER_ADDRESS = SY-UNAME
* SENDER_ADDRESS_TYPE = 'B'
COMMIT_WORK = 'X'
* IMPORTING
* SENT_TO_ALL =
* NEW_OBJECT_ID =
* SENDER_ID =
tables
packing_list = it_packing_list
* OBJECT_HEADER =
CONTENTS_BIN = it_attachment
CONTENTS_TXT = it_mailbody
* CONTENTS_HEX =
* OBJECT_PARA =
* OBJECT_PARB =
receivers = it_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 <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif. -
Send mail as follow-up action in reporting agent
I need to send a mail with the exceptions flaoting from a query. I tried to use the follow-up action of 'send mail' in the reporting agent. that didnt work because in our SAP we're not using the exchange connector and mails cannot be sent in the regular way.
I have an external command of sending mail.
Does anyone has a way of solving this problem, meaning, using my external command of sending mail in order to send the mail with the exceptions (this command works just fine in process chains, for example, for notification of process progress)
Thank You,
Yoav.Hello Nili,
I think you can edit content and Subject etc.
http://help.sap.com/saphelp_nw2004s/helpdata/en/21/35783b82ee5d31e10000000a114084/content.htm
Hope this helps.
San. -
SQL Server Reporting Services Subscriptions - Failure sending mail
Hello All,
I am having a problem with using subscriptions to send my reporting services report by email.
Getting the following error:
Failure sending mail: The message could not be sent to the SMTP server. The transport error code was 0x800ccc6d. The server response was 552 Error: message too large
While browsing for other reports in the report manager(reports created by others staffs), i could find that these reports were sent by email successfully.
So not understanding why mine has a problem. logically it could be that the report is too big?
Anybody has a solution or suggestion?
Thanking you in advanceHi LenitaS,
For first question, we can check the item "IncludeLink" to embed the link in the mail. Or, embed the link the manually by putting a link in the "Comment" field. The URL should be a standard URL Access:
http://<reportserver>/reprotserver?/reportpath&rc:format=<format>
For the second question, you are right. We can follow these setps to work around the issue:
1.Create a file shared subscription, save the export to a shared folder.
2.Create a E-Mail delivery subscription, embed the file's path in the mail. We can set the file's path in "Comment" field of the E-Mail delivery. The path should be someone like this:
\\<sharedfolder>\<export report>
In this case, the exported report's name cannot be dynamic.
If there is anything unclear, please feel free to ask.
Thanks,
Jin ChenJin Chen - MSFT -
Hi All,
I added the mailserver part in the rwbuilder.conf file.This is how it looks
<pluginParam name="mailServer">smtp.xxx.com</pluginParam>
The smtp server of our company is working fine.
Now when i am sending mail frm report builder i am getting the error.
Pls tell me .....
Do i have to configure any other file?
Should the smtp server be running in my local machine?WHAT IS THE SOLUTION ...FOR THIS PROBLEM?
Please someone give me some guidance..
regards,
ashokHi,
Pls give some idea ......
your reply will be greatly appreciated.
regards,
ashok -
Reporting Subscriptions Failing - "Failure Sending Mail". Must be something obvious!
I've spent the last few hours on this and cannot for the life of me figure what it is that I have overlooked. I have created a report email subscription, nothing particularly fancy. It is always failing on:
Failure sending mail: The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.7.1 Client was not authenticated
The setup:
SCCM 2012 R2
SQL Server 2012 (on the SCCM server)
Exchange 2010
SCCM - Email Notification Component is configured correctly. The SMTP test works and I also receive alerts when one of my SCEP rules are triggered. All good.
SQL Management Studio - DataBase Mail is configured; sending a test e-mail works. Using Basic Authentication with a network account specified.
Exchange 2010 has a Receiver Connector created to relay e-mails from the SCCM Server.
Reporting Services Configuration Manager - Email Section has been completed.
Can anyone point me in the right direction?Hi Garth,
Thanks for the response. I was under the impression that CM12 uses SSRS (and thus the SQL Mail configuration) to send out the Subscription Reports, if that is definitely not the case I can eliminate that part from my configuration all together.
So, to clarify:
CM12 Alerts have always been working fine - no issue here and I understand this is a different kettle of fish to SSRS.
<cite class="ipb" style="padding:0px 10px 8px;border-width:0px 2px 2px;border-left-style:solid;border-left-color:#989898;border-bottom-style:solid;border-bottom-color:#e5e5e5;border-right-style:solid;border-right-color:#e5e5e5;font-weight:bold;font-style:normal;overflow-x:auto;margin:-1px
-12px 8px;width:1299px;display:block;-webkit-user-select:none;background:-webkit-gradient(linear, 0% 0%, 0% 100%, from(rgb(246, 246, 246)), to(rgb(229, 229, 229)));">Quote</cite>Why do you think that SSRS can send test message, where did you do this action?
I actioned the "Send Test E-mail" option when you right-click on the Database Mail option within SQL2012. However, as you pointed out already, if this has absolutely
nothing to do with the Subscription Reports configuration, then this is no longer relevant. If anything it just proves that e-mails can be sent via the Exchange server (using basic authentication).
Now, I guess, I just need to figure what within SSRS Configuration Manager is missing, my trouble is that there isn't any detailed settings I can configure
and Exchange logs doesn't indicate anything that isn't already reported by SCCM:
2014-06-25T14:09:14.168Z,Exchange\SCCM01 - Subscription Reports Receiver,08D15B57A7508DA3,21,10.2.2.202:25,10.2.2.213:63905,>,530 5.7.1 Client was not authenticated, -
Passing value of multi line container element to send mail step?
Hi ,
I am using send mail step type to send mail . in this mail i want to send data of multi line container element but it is writing only one line item even though my container element is holding tow line items. so how to process all line items of multi container element in a mail. please suggest me......
do i need to use loop until step ?
Thanks,
RahulHi Chindanand ,
i tried with the same now but in the mail it is not showing me any value instead it si giving me <po_items > not found.
po_items is the name of my multiline container element and i am simply using these po_item in mail.
please tell me what to do......as its urgent.....
Thanks,
Rahul -
Can i make report to send mail .
hi
i want to send an automatic mail to respective person before two days of the issue date as a warning message or any thing. I want to make it through a SAP program is it possible? if yes then give me one example or suggest me .
please .
thanks in advanced.Try using the following code.
*& Report ZEMAIL1_G
REPORT ZEMAIL1_G.
DATA: form_name TYPE RS38L_FNAM.
DATA: wa_ctrlop TYPE ssfctrlop,
wa_outopt TYPE ssfcompop.
DATA: t_otfdata TYPE ssfcrescl,
t_pdf_tab LIKE tline OCCURS 0 WITH HEADER LINE.
DATA: t_otf TYPE itcoo OCCURS 0 WITH HEADER LINE.
DATA: w_filesize TYPE i.
DATA: w_bin_filesize TYPE i.
DATA: fname1 TYPE string.
**********internal tables for email details ******88
DATA:
i_receivers TYPE TABLE OF somlreci1 WITH HEADER LINE,
i_record LIKE solisti1 OCCURS 0 WITH HEADER LINE,
Objects to send mail.
i_objpack LIKE sopcklsti1 OCCURS 0 WITH HEADER LINE,
i_objtxt LIKE solisti1 OCCURS 0 WITH HEADER LINE,
i_objbin LIKE solisti1 OCCURS 0 WITH HEADER LINE,
i_reclist LIKE somlreci1 OCCURS 0 WITH HEADER LINE,
Work Area declarations
w_objhead TYPE soli_tab,
w_doc_chng typE sodocchgi1,
w_data TYPE sodocchgi1,
w_buffer TYPE string,"To convert from 132 to 255
Variables declarations
v_len_out LIKE sood-objlen,
v_len_in LIKE sood-objlen,
v_len_outn TYPE i,
v_lines_txt TYPE i,
v_lines_bin TYPE i.
SELECTION-SCREEN: BEGIN OF BLOCK b1 WITH FRAME.
PARAMETERS :p_name type RS38L_FNAM default 'zpdf_g', "form name
p_email type somlreci1-receiver. "email address
SELECTION-SCREEN: END OF BLOCK b1.
PARAMETER: p_date LIKE sy-datum.
PARAMETER: p_rea TYPE char255.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = p_name
IMPORTING
fm_name = form_name
EXCEPTIONS
no_form = 1
no_function_module = 2
OTHERS = 3
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
wa_ctrlop-getotf = 'X'.
wa_ctrlop-no_dialog = 'X'.
wa_outopt-tdnoprev = 'X'.
CALL FUNCTION form_name
EXPORTING
CONTROL_PARAMETERS = wa_ctrlop
OUTPUT_OPTIONS = wa_outopt
USER_SETTINGS = 'X'
MYDATE = p_date
REASON = p_rea
IMPORTING
JOB_OUTPUT_INFO = t_otfdata
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
t_otf[] = t_otfdata-otfdata[].
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
format = 'PDF'
max_linewidth = 132
ARCHIVE_INDEX = ' '
IMPORTING
bin_filesize = v_len_in
TABLES
otf = t_otf
lines = t_pdf_tab
EXCEPTIONS
err_max_linewidth = 1
err_format = 2
err_conv_not_possible = 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.
Convert PDF from 132 to 255.
LOOP AT t_pdf_tab.
Replacing space by ~
TRANSLATE t_pdf_tab USING ' ~'.
CONCATENATE w_buffer t_pdf_tab INTO w_buffer.
ENDLOOP.
Replacing ~ by space
TRANSLATE w_buffer USING '~ '.
DO.
i_record = w_buffer.
Appending 255 characters as a record
APPEND i_record.
SHIFT w_buffer LEFT BY 255 PLACES.
IF w_buffer IS INITIAL.
EXIT.
ENDIF.
ENDDO.
Refresh: i_reclist,
i_objtxt,
i_objbin,
i_objpack.
clear w_objhead.
Object with PDF.
i_objbin[] = i_record[].
DESCRIBE TABLE i_objbin LINES v_lines_bin.
Object with main text of the mail.
i_objtxt = 'Find attached the output of the smart form.'.
APPEND i_objtxt.
*i_objtxt = 'Regards,'.
*APPEND i_objtxt.
*i_objtxt = 'Geeta'.
*APPEND i_objtxt.
DESCRIBE TABLE i_objtxt LINES v_lines_txt.
read table i_objtxt index v_lines_txt.
Document information.
w_doc_chng-obj_name = 'Smartform'.
w_doc_chng-expiry_dat = sy-datum + 10.
w_doc_chng-obj_descr = 'Smart form output'.
w_doc_chng-sensitivty = 'F'. "Functional object
w_doc_chng-doc_size = v_lines_txt * 255.
Pack to main body as RAW.
Obj. to be transported not in binary form
CLEAR i_objpack-transf_bin.
Start line of object header in transport packet
i_objpack-head_start = 1.
Number of lines of an object header in object packet
i_objpack-head_num = 0.
Start line of object contents in an object packet
i_objpack-body_start = 1.
Number of lines of the object contents in an object packet
i_objpack-body_num = v_lines_txt.
Code for document class
i_objpack-doc_type = 'RAW'.
APPEND i_objpack.
Packing as PDF.
i_objpack-transf_bin = 'X'.
i_objpack-head_start = 1.
i_objpack-head_num = 0.
i_objpack-body_start = 1.
*CONCATENATE 'Smartform_output' '.pdf'
*INTO i_objpack-obj_descr.
*APPEND i_objpack.
describe table i_objbin lines v_lines_bin.
read table i_objbin index v_lines_bin.
i_objpack-doc_size = v_lines_bin * 255.
i_objpack-body_num = v_lines_bin.
i_objpack-doc_type = 'PDF'.
i_objpack-obj_name = 'Smartform'.
i_objpack-obj_descr = 'test'.
append i_objpack.
Document information.
CLEAR i_reclist.
e-mail receivers.
i_reclist-receiver = p_email.
*i_reclist-express = 'X'.
i_reclist-rec_type = 'U'. "Internet address
APPEND i_reclist.
Sending mail.
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = w_doc_chng
put_in_outbox = 'X'
TABLES
packing_list = i_objpack
object_header = w_objhead
contents_bin = i_objbin
contents_txt = i_objtxt
receivers = i_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.
CASE SY-SUBRC.
WHEN 0.
WRITE: / 'Result of the send process:'.
LOOP AT i_reclist.
WRITE: / i_reclist-RECEIVER(48), ':'.
IF i_reclist-RETRN_CODE = 0.
WRITE 'sent successfully'.
ELSE.
WRITE 'not sent'.
ENDIF.
ENDLOOP.
WHEN 1.
WRITE: / 'no authorization to send to the specified number of recipients!'.
WHEN 2.
WRITE: / 'document could not be sent to any of the recipients!'.
WHEN 4.
WRITE: / 'no authorization to send !'.
WHEN OTHERS.
WRITE: / 'error occurred during sending !'.
endcase.
Maybe you are looking for
-
How to Assign "NO Access" persmissions to "Everyone" in file sharing.
I'd like for everyone on the network to authenticate before mounting a volume. "Everyone" can't be assigned "No Access" nor can "Everyone" be deleted. How do I force authentication for "Everyone"?
-
How to increase the length of a columnin existing publication item
We need to urgently increase the length of three columns in one of the tables that is sent offline as a publication item. I have searched everywhere to see if there is a procedure to see this. I only found process to add/drop columns but not modify t
-
Dialog Module and List Processing.
Hi All, I am having a program in which after processing I get a basic list. Using PF-STATUS of the basic list a dialog module is called using 'CALL SCREEN' which accepts date and has exectue and cancel buttons on it. What do I do to so that user whe
-
I would like to know how you can insert content with augmented reality. Which service / software offers the creation of html content with augmented reality?
-
Nokia 6234 - Selective voice tags?
Hi guys, Can somebody please advise. Just got the new 6234 - Love it. Only one feature annoys me. All the contacts in the address book are automatically associated with a pre-generated voice tag. As I have 247 contacts, the success ratio in the phone