BSP email with option (YES/NO) or (ACCEPT/REJECT)

Is it possible to send email from BSP with option for YES OR NO.
I have to send a mail to employee for confirmation i.e YES/NO and want to read the confirmation too.
Can someone help me out it that.

Hi Manisha,
As mentioned by me above,here the form is a attachment and the user is required to download to fill it and click yes/no button. Here is some sample code which sends a form to be filled by user and as he clicks on submit, the mail is sent back to me.
You just modify the code to have click buttons for yes and no and use the code.
<html>
<head>
<title>Enter the title of your HTML document here</title>
</head>
<body>
<form name="input_form"><pre>
Name: <input name="username" type="text">
Comment: <input name="comment" type="text">
</pre></form>
<script>
function update_message_body ()
var username = document . input_form . username . value;
var comment = document . input_form . comment . value;
var txt="<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n"
txt=txt+"<candidate_details>\n"
txt=txt+"<name>" + username + "</name>\n"
txt=txt+"<comment>" + comment + "</comment>\n"
txt=txt+"</candidate_details>\n";
document . proxy_form . message_body . value = txt;
return true;
</script>
<form name ="proxy_form"
method ="post"
enctype ="multipart/form-data"
action ="mailto:[email protected]?subject=Form Data"
onSubmit="return update_message_body ();">
<input type=hidden name="message_body">
<input type=submit value="send mail">
</form>
</body>
</html>
You need to move all this code to an internal table. Attach it to mail and send mail.
Hope this will help you.
Regards,
Pragya

Similar Messages

  • I have Windows 7, Microsoft Outlook and PSE 13. I have used the "Share photos as embedded images" feature frequently, but today when I went to use it, it wasn't there, only the option to send email with files attached. How do I get back the ability to sen

    I have Windows 7, Microsoft Outlook and PSE 13. I have used the "Share photos as embedded images" feature frequently, but today when I went to use it, it wasn't there, only the option to send email with files attached. How do I get back the ability to send emails with photos embedded. I like adding the frames and backgrounds and I think it's easier for recipients to look at the photos. Thanks for any suggestions of things to try.
    Gail

    I had a similar problem in that my wife's iphone 5 could not send pics with imessage.  Had to set the settings to default to SMS or whatever.  After laboring many hours on the web I coincidentally was on the phone with the internet people to question my internet speed.  They changed the router channel, which is something that I am capable of doing myself.  After that, the pics go over imessage.  My own Iphone didn't have the problem.  We are both latest IOS 7.0.6.

  • I received an email with a video attachment in wmv format. I want to saved it on my iPhone 4S but it doesn't give the option of saving the video attachment. How will I saved the video attachment?

    I received an email with a video attachment in wmv format. I want to saved it on my iPhone 4S but it doesn't give the option of saving the video attachment. How will I saved the video attachment?

    Even so, there is no way to "save" a file anyway. The only way to keep it is to keep the email with it attached. Someone correct me if I'm wrong but I don't believe there is a way to add a video this way into the Videos app.

  • HT4168 Why can't apple's Pages be programmed to export only iTunes acceptable ePub files, suggesting corrections with options?

    Why can't apple's Pages be programmed to export only iTunes acceptable ePub files, suggesting corrections with options?

    You can ask Apple to do that via
    http://www.apple.com/feedback
    Do you find the guidance given in
    http://support.apple.com/kb/HT4168
    misleading in some way?

  • My yahoo email account is not accepting emails with picture attachments. The Internet provider says it is yahoo. Yahoo had nothing to offer.  Do I have to adjust settings on the iPad?

    My yahoo account is not accepting emails with picture attachments. Other wifi features are working. Other iPad and iPhone devises using this wireless router are accepting photo attachments. How do I have to configure my ipad2 to accept photo attachments on it?

    This did not help, thanks for the suggestion but my settings match this description on both devices and no result.

  • Send Email with Attachment in BSP?

    Hello,
         I have trouble about sending Email in BSP .
         I don't know how to <b>Send Email with attachment in BSP</b> . Please give me some advice .
        Thank you very much!

    Here is a sample application..
    <b>Layout</b>
    <%@page language="abap" %>
    <%@extension name="htmlb" prefix="htmlb" %>
    <htmlb:content design="design2003" >
      <htmlb:page title="Send Mail with Attachment " >
        <htmlb:form id           = "form1"
                    encodingType = "multipart/form-data" >
          <htmlb:label for  = "MAILTO"
                       text = "Mail to" />
          <htmlb:inputField id    = "MAILTO"
                            size  = "20"
                            value = "<%= mail_to %>"
                            type  = "string" />
          <htmlb:fileUpload id          = "myUpload"
                            onUpload    = "HandleUpload"
                            upload_text = "Attach"
                            size        = "90" />
        </htmlb:form>
      </htmlb:page>
    </htmlb:content>
    <b>Page attributes:</b>
    mail_to     TYPE     ADR6-SMTP_ADDR     E-Mail Address
    <b> Event handler OnInputprocessing..</b>
    DATA: fileUpload TYPE REF TO CL_HTMLB_FILEUPLOAD,
          file_content TYPE XSTRING,
          file_length TYPE STRING,
          file_mime_type TYPE STRING,
          file_name TYPE STRING.
    fileUpload ?= CL_HTMLB_MANAGER=>GET_DATA(
                           request = request
                           id      = 'myUpload'
                           name    = 'fileUpload' ).
    if fileUpload is not INITIAL.
      file_name      = fileUpload->file_name.
      file_mime_type = fileUpload->file_content_type.
      file_length    = fileUpload->file_length.
      file_content   = fileUpload->file_content.
      mail_to = request->get_form_field( `MAILTO` ).
    * Send mail part..
      CLASS cl_bcs DEFINITION LOAD.
      DATA:
            lo_send_request TYPE REF TO cl_bcs VALUE IS INITIAL.
      lo_send_request = cl_bcs=>create_persistent( ).
    * Message body and subject
      DATA:
            lt_message_body TYPE bcsy_text VALUE IS INITIAL,
            lt_att_content_hex type solix_tab,
            lo_document TYPE REF TO cl_document_bcs VALUE IS INITIAL.
      APPEND 'Dear Vendor,' TO lt_message_body.
      append ' ' to lt_message_body.
      APPEND 'Please find the attached report.'
      TO lt_message_body.
      append ' ' to lt_message_body.
      APPEND 'Thank You,' TO lt_message_body.
      lo_document = cl_document_bcs=>create_document(
      i_type = 'RAW'
      i_text = lt_message_body
      i_subject = 'Visit report' ).
      data: data_tab type solix_tab,
      p_data type XSTRING.
    * Pass the data of the document we have uploaded..
      p_data = file_content.
      call function 'SCMS_XSTRING_TO_BINARY'
        EXPORTING
          buffer     = p_data
        TABLES
          binary_tab = data_tab.
      DATA: lx_document_bcs TYPE REF TO cx_document_bcs VALUE IS INITIAL.
      TRY.
          lo_document->add_attachment(
          EXPORTING
          i_attachment_type = 'PDF'
          i_attachment_subject = 'Visit Report'
          i_att_content_hex = data_tab ).
        CATCH cx_document_bcs INTO lx_document_bcs.
      ENDTRY.
    * Add attachment
    * Pass the document to send request
      lo_send_request->set_document( lo_document ).
    * Create sender
      DATA:
      lo_sender TYPE REF TO if_sender_bcs VALUE IS INITIAL,
      l_send type ADR6-SMTP_ADDR value '[email protected]'.
    * Set sender
      l_send = mail_to.
      lo_sender = cl_cam_address_bcs=>create_internet_address( l_send ).
      lo_send_request->set_sender(
      EXPORTING
      i_sender = lo_sender ).
    * Create recipient
      DATA:
      lo_recipient TYPE REF TO if_recipient_bcs VALUE IS INITIAL.
      lo_recipient = cl_sapuser_bcs=>create( sy-uname ).
    ** Set recipient
      lo_send_request->add_recipient(
      EXPORTING
      i_recipient = lo_recipient
      i_express = 'X' ).
      lo_send_request->add_recipient(
      EXPORTING
      i_recipient = lo_recipient
      i_express = 'X' ).
    * Send email
      DATA: lv_sent_to_all(1) TYPE c VALUE IS INITIAL.
      lo_send_request->send(
      EXPORTING
      i_with_error_screen = 'X'
      RECEIVING
      result = lv_sent_to_all ).
      COMMIT WORK.
    endif.
    Hope this will be helpful.
    Raja T

  • CRM ONLINE 2013: On Approval Of Quotation, Run Report, Generate PDF and Send an Email With PDF as attachment

    Hi,
    I am using CRM ONLINE 2013.
    How to automate below process?
    1. On Approval Of Quotation, Run Report.
    2. Generate PDF.
    3. Send an Email With PDF as attachment.
    As i have gone through many forums for this topic, but creating a plugin code for generating Report PDF is not possible in CRM ONLINE.
    So, What is the alternate way to do this..?
    Thanks.

    This is my entire code mentioned below:-
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title></title>
        <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script>
        <script type="text/javascript">
            if (typeof (SDK) == "undefined")
            { SDK = { __namespace: true }; }
            SDK.JScriptRESTDataOperations = {
                _context: function () {
                    if (typeof GetGlobalContext != "undefined")
                    { return GetGlobalContext(); }
                    else {
                        if (typeof Xrm != "undefined") {
                            return Xrm.Page.context;
                        else { return new Error("Context is not available."); }
                _getServerUrl: function () {
                    var serverUrl = this._context().getServerUrl()
                    if (serverUrl.match(/\/$/)) {
                        serverUrl = serverUrl.substring(0, serverUrl.length - 1);
                    return serverUrl;
                _ODataPath: function () {
                    return this._getServerUrl() + "/XRMServices/2011/OrganizationData.svc/";
                _errorHandler: function (req) {
                    return new Error("Error : " +
      req.status + ": " +
      req.statusText + ": " +
      JSON.parse(req.responseText).error.message.value);
                _dateReviver: function (key, value) {
                    var a;
                    if (typeof value === 'string') {
                        a = /Date\(([-+]?\d+)\)/.exec(value);
                        if (a) {
                            return new Date(parseInt(value.replace("/Date(", "").replace(")/", ""), 10));
                    return value;
                Create: function (object, type, successCallback, errorCallback) {
                    var req = new XMLHttpRequest();
                    req.open("POST", this._ODataPath() + type + "Set", true);
                    req.setRequestHeader("Accept", "application/json");
                    req.setRequestHeader("Content-Type", "application/json; charset=utf-8");
                    req.onreadystatechange = function () {
                        if (this.readyState == 4 /* complete */) {
                            if (this.status == 201) {
                                successCallback(JSON.parse(this.responseText, SDK.JScriptRESTDataOperations._dateReviver).d);
                            else {
                                errorCallback(SDK.JScriptRESTDataOperations._errorHandler(this));
                    req.send(JSON.stringify(object));
                Retrieve: function (id, type, successCallback, errorCallback) {
                    var req = new XMLHttpRequest();
                    req.open("GET", this._ODataPath() + type + "Set(guid'" + id + "')", true);
                    req.setRequestHeader("Accept", "application/json");
                    req.setRequestHeader("Content-Type", "application/json; charset=utf-8");
                    req.onreadystatechange = function () {
                        if (this.readyState == 4 /* complete */) {
                            if (this.status == 200) {
                                successCallback(JSON.parse(this.responseText, SDK.JScriptRESTDataOperations._dateReviver).d);
                            else {
                                errorCallback(SDK.JScriptRESTDataOperations._errorHandler(this));
                    req.send();
                Update: function (id, object, type, successCallback, errorCallback) {
                    var req = new XMLHttpRequest();
                    req.open("POST", this._ODataPath() + type + "Set(guid'" + id + "')", true);
                    req.setRequestHeader("Accept", "application/json");
                    req.setRequestHeader("Content-Type", "application/json; charset=utf-8");
                    req.setRequestHeader("X-HTTP-Method", "MERGE");
                    req.onreadystatechange = function () {
                        if (this.readyState == 4 /* complete */) {
                            if (this.status == 204 || this.status == 1223) {
                                successCallback();
                            else {
                                errorCallback(SDK.JScriptRESTDataOperations._errorHandler(this));
                    req.send(JSON.stringify(object));
                Delete: function (id, type, successCallback, errorCallback) {
                    var req = new XMLHttpRequest();
                    req.open("POST", this._ODataPath() + type + "Set(guid'" + id + "')", true);
                    req.setRequestHeader("Accept", "application/json");
                    req.setRequestHeader("Content-Type", "application/json; charset=utf-8");
                    req.setRequestHeader("X-HTTP-Method", "DELETE");
                    req.onreadystatechange = function () {
                        if (this.readyState == 4 /* complete */) {
                            if (this.status == 204 || this.status == 1223) {
                                successCallback();
                            else {
                                errorCallback(SDK.JScriptRESTDataOperations._errorHandler(this));
                    req.send();
                RetrieveMultiple: function (type, filter, successCallback, errorCallback) {
                    if (filter != null) {
                        filter = "?" + filter;
                    else { filter = ""; }
                    var req = new XMLHttpRequest();
                    req.open("GET", this._ODataPath() + type + "Set" + filter, true);
                    req.setRequestHeader("Accept", "application/json");
                    req.setRequestHeader("Content-Type", "application/json; charset=utf-8");
                    req.onreadystatechange = function () {
                        if (this.readyState == 4 /* complete */) {
                            if (this.status == 200) {
                                successCallback(JSON.parse(this.responseText, SDK.JScriptRESTDataOperations._dateReviver).d.results);
                            else {
                                errorCallback(SDK.JScriptRESTDataOperations._errorHandler(this));
                    req.send();
                __namespace: true
        </script>
        <script type="text/javascript">
            //Create Email and link it with Order as Regarding field
            var Xrm;
            var email = new Object();
            var ownerID = "";
            var CustomerId = "";
            if (window.opener) { Xrm = window.opener.Xrm; }
            else if (window.parent) { Xrm = window.parent.Xrm; }
            //Get ownerid who send email of quotation to customer
            function GetOwnerID() {
                var owner = Xrm.Page.getAttribute("ownerid").getValue();
                ownerID = owner[0].id;
                var ownerName = owner[0].name;
                var entityType = owner[0].entityType;
                GetToEmailGUID();
            //Get customerid who receive email of quotation from owner
            function GetToEmailGUID() {
                var Customer = Xrm.Page.getAttribute('customerid').getValue();
                CustomerId = Customer[0].id;
                var CustomerName = Customer[0].name;
                var entityType = Customer[0].entityType;
                //if CustomerId is type of "Account" then get Primary Contact id of that account
                if (entityType == "account") {
                    var contact = Xrm.Page.getAttribute("customerid").getValue();
                    if (contact === null) return;
                    var serverUrl = Xrm.Page.context.getClientUrl();
                    var oDataSelect = serverUrl + "/XRMServices/2011/OrganizationData.svc/AccountSet(guid'" + contact[0].id + "')?$select=PrimaryContactId";
                    var req = new XMLHttpRequest();
                    req.open("GET", oDataSelect, false);
                    req.setRequestHeader("Accept", "application/json");
                    req.setRequestHeader("Content-Type", "application/json;charset=utf-8");
                    req.onreadystatechange = function () {
                        if (req.readyState === 4) {
                            if (req.status === 200) {
                                var retrieved = JSON.parse(req.responseText).d;
                                CustomerId = retrieved.PrimaryContactId.Id;
                            else {
                                alert(this.statusText);
                    req.send();
            function CreateEmail() {
                GetOwnerID();
                email.Subject = "Email with Report Attachment";
                //Set The current order as the Regarding object
                email.RegardingObjectId = {
                    Id: Xrm.Page.data.entity.getId(),    //Get the current entity Id , here OrderId
                    LogicalName: Xrm.Page.data.entity.getEntityName()//Get the current entity name, here it will be “salesOrder”
                //Create Email Activity
                SDK.JScriptRESTDataOperations.Create(email, "Email", EmailCallBack, function (error) { alert(error.message); });
            // Email Call Back function
            function EmailCallBack(result) {
                email = result; // Set the email to result to use it later in email attachment for retrieving activity Id
                var activityPartyFrom = new Object();
                // Set the From party of the ActivityParty to relate an entity with Email From field
                activityPartyFrom.PartyId = {
                    Id: CustomerId, //"79EBDD26-FDBE-E311-8986-D89D6765B238",  // id of entity you want to associate this activity with.        
                    LogicalName: "contact"
                // Set the "activity" of the ActivityParty
                activityPartyFrom.ActivityId = {
                    Id: result.ActivityId,
                    LogicalName: "email"
                // Now set the participation type that describes the role of the party on the activity).
                activityPartyFrom.ParticipationTypeMask = { Value: 2 }; // 2 means ToRecipients
                // Create the from ActivityParty for the email
                SDK.JScriptRESTDataOperations.Create(activityPartyFrom, "ActivityParty", ActivityPartyFromCallBack, function (error) { alert(error.message); });
                var activityPartyTo = new Object();
                // Set the From party of the ActivityParty to relate an entity with Email From field
                activityPartyTo.PartyId = {
                    Id: ownerID, //"79EBDD26-FDBE-E311-8986-D89D6765B238",  // id of entity you want to associate this activity with.        
                    LogicalName: "systemuser"
                // Set the "activity" of the ActivityParty  
                activityPartyTo.ActivityId = {
                    Id: result.ActivityId,
                    LogicalName: "email"
                // Now set the participation type that describes the role of the party on the activity).    
                activityPartyTo.ParticipationTypeMask = { Value: 1 }; // 1 means Sender
                // Create the from ActivityParty
                SDK.JScriptRESTDataOperations.Create(activityPartyTo, "ActivityParty", ActivityPartyToCallBack, function (error) { alert(error.message); });
            //ActivityParty From Callback
            function ActivityPartyFromCallBack(result) {
            //ActivityParty To Callback
            function ActivityPartyToCallBack(result) {
                GetReportId('ABM_Infotech_SalesQuote');
            //Create attachment for the created email
            function CreateEmailAttachment() {
                //get reporting session and use the params to convert a report in PDF
                var params = getReportingSession();
                //Email attachment parameters
                var activitymimeattachment = Object();
                activitymimeattachment.ObjectId = Object();
                activitymimeattachment.ObjectId.LogicalName = "email";
                activitymimeattachment.ObjectId.Id = email.ActivityId;
                activitymimeattachment.ObjectTypeCode = "email",
                    activitymimeattachment.Subject = "File Attachment";
                activitymimeattachment.Body = encodePdf(params);
                activitymimeattachment.FileName = "Report1.pdf";
                activitymimeattachment.MimeType = "application/pdf";
                //Attachment call
                SDK.JScriptRESTDataOperations.Create(activitymimeattachment, "ActivityMimeAttachment", ActivityMimeAttachmentCallBack, function (error) { alert(error.message); });
            //ActivityMimeAttachment CallBack function
            function ActivityMimeAttachmentCallBack(result) {
                var features = "location=no,menubar=no,status=no,toolbar=no,resizable=yes";
                var width = "800px";
                var height = "600px";
                window.open(Xrm.Page.context.getServerUrl() + "main.aspx?etc=" + 4202 + "&pagetype=entityrecord&id=" + email.ActivityId, "_blank", features);
                // To open window which works in outlook and IE both
                //openStdWin(Xrm.Page.context.getServerUrl() + "main.aspx?etc=" + 4202 + "&pagetype=entityrecord&id=" + email.ActivityId, "_blank", width,
    height, features);
            //This method will get the reportId based on a report name that will be used in            getReportingSession() function
            function GetReportId(reportName) {
                var oDataSetName = "ReportSet";
                var columns = "ReportId";
                var filter = "Name eq '" + reportName + "'";
                retrieveMultiple(oDataSetName, columns, filter, onSuccess);
            function retrieveMultiple(odataSetName, select, filter, successCallback) {
                var serverUrl = Xrm.Page.context.getServerUrl();
                var ODATA_ENDPOINT = "/XRMServices/2011/OrganizationData.svc";
                var odataUri = serverUrl + ODATA_ENDPOINT + "/" + odataSetName + "?";
                if (select) {
                    odataUri += "$select=" + select + "&";
                if (filter) {
                    odataUri += "$filter=" + filter;
                $.ajax({
                    type: "GET",
                    contentType: "application/json; charset=utf-8",
                    datatype: "json",
                    url: odataUri,
                    beforeSend: function (XMLHttpRequest) {
                        XMLHttpRequest.setRequestHeader("Accept", "application/json");
                    success: function (data) {
                        if (successCallback) {
                            if (data && data.d && data.d.results) {
                                successCallback(data.d.results);
                            else if (data && data.d) {
                                successCallback(data.d);
                            else {
                                successCallback(data);
                    error: function (XmlHttpRequest, errorThrown) {
                        if (XmlHttpRequest && XmlHttpRequest.responseText) {
                            alert("Error while retrieval ; Error – " + XmlHttpRequest.responseText);
            function onSuccess(data) {
                reportId = data[0].ReportId.replace('{', ").replace('}', ");
                CreateEmailAttachment(); // Create Email Attachment
            //Gets the report contents
            function getReportingSession() {
                var pth = Xrm.Page.context.getServerUrl() + "/CRMReports/rsviewer/reportviewer.aspx";
                var retrieveEntityReq = new XMLHttpRequest();
                var Id = Xrm.Page.data.entity.getId();
                var quotationGUID = Id.replace('{', ""); //set this to selected quotation GUID
                quotationGUID = quotationGUID.replace('}', "");
                var reportName = "ABM_Infotech_SalesQuote"; //set this to the report you are trying to download
                var reportID = "751089AA-74B8-E211-B52F-D8D3855B253B"; //set this to the guid of the report you are trying to download
                var rptPathString = ""; //set this to the CRMF_Filtered parameter
                var strParameterXML = "<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'><entity name='quote'><all-attributes /><filter type='and'><condition
    attribute='quoteid' operator='eq' uitype='quote' value='" + quotationGUID + "' /> </filter></entity></fetch>";
                retrieveEntityReq.open("POST", pth, false);
                retrieveEntityReq.setRequestHeader("Accept", "*/*");
                retrieveEntityReq.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
                rptPathString = "id=%7B" + reportID + "%7D&uniquename=" + Xrm.Page.context.getOrgUniqueName() + "&iscustomreport=true&reportnameonsrs=&reportName="
    +
                                reportName + "&isScheduledReport=false&p:ABMFilteredQuote=" + strParameterXML;
                //remove the part starting from &p:salesorderid if your report has no parameters
                retrieveEntityReq.send(rptPathString);
                var x = retrieveEntityReq.responseText.indexOf("ReportSession=");
                var ret = new Array();
                ret[0] = retrieveEntityReq.responseText.substr(x + 14, retrieveEntityReq.responseText.indexOf("&", x) - x - 14); //the session id
                x = retrieveEntityReq.responseText.indexOf("ControlID=");
                ret[1] = retrieveEntityReq.responseText.substr(x + 10, retrieveEntityReq.responseText.indexOf("&", x) - x - 10); //the control id
                return ret;
            var bdy = new Array();
            var bdyLen = 0;
            function concat2Bdy(x) {
                bdy[bdyLen] = x;
                bdyLen++;
            function encodePdf(params) {
                bdy = new Array();
                bdyLen = 0;
                var retrieveEntityReq = new XMLHttpRequest();
                var pth = Xrm.Page.context.getServerUrl() + "/Reserved.ReportViewerWebControl.axd?ReportSession=" + params[0] +
                "&Culture=1033&CultureOverrides=True&UICulture=1033&UICultureOverrides=True&ReportStack=1&ControlID=" + params[1] +
                "&OpType=Export&FileName=Public&ContentDisposition=OnlyHtmlInline&Format=PDF";
                retrieveEntityReq.open("GET", pth, false);
                retrieveEntityReq.setRequestHeader("Accept", "*/*");
                retrieveEntityReq.send();
                BinaryToArray(retrieveEntityReq.responseBody);
                return encode64(bdy);
            var StringMaker = function () {
                this.parts = [];
                this.length = 0;
                this.append = function (s) {
                    this.parts.push(s);
                    this.length += s.length;
                this.prepend = function (s) {
                    this.parts.unshift(s);
                    this.length += s.length;
                this.toString = function () {
                    return this.parts.join('');
            var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
            function encode64(input) {
                var output = new StringMaker();
                var chr1, chr2, chr3;
                var enc1, enc2, enc3, enc4;
                var i = 0;
                while (i < input.length) {
                    chr1 = input[i++];
                    chr2 = input[i++];
                    chr3 = input[i++];
                    enc1 = chr1 >> 2;
                    enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
                    enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
                    enc4 = chr3 & 63;
                    if (isNaN(chr2)) {
                        enc3 = enc4 = 64;
                    } else if (isNaN(chr3)) {
                        enc4 = 64;
                    output.append(keyStr.charAt(enc1) + keyStr.charAt(enc2) + keyStr.charAt(enc3) + keyStr.charAt(enc4));
                return output.toString();
        </script>
        <script type="text/vbscript">
        Function BinaryToArray(Binary)
               Dim i
               ReDim byteArray(LenB(Binary))
               For i = 1 To LenB(Binary)
                     byteArray(i-1) = AscB(MidB(Binary, i, 1))
                     concat2Bdy(AscB(MidB(Binary, i, 1)))
             Next
              BinaryToArray = byteArray
       End Function     
        </script>
    </head>
    <body>
        <input type="button" onclick="CreateEmail();" value="Attach Report" />
    </body>
    </html>

  • Email with attachments QPAC: setting "From" using process data doesn't work

    Hi,
    I trying to set the "From" in the Email with attachments QPAC from a process variable, let's call it "mailagent", which is of type xs:string.
    So I use a set value QPAC, which sets the "mailagent" variable to "[email protected]". The workflow then continous with the Email QPAC.
    Which stalls and throws the following exception:
    javax.mail.MessagingException: 501 Syntax error, parameters in command "MAIL FROM:<{$/process_data/@mailagent$}>" unrecognized or missing
    Hrm. I thought, I had already used the Email QPAC this way.
    Is there some kind of magic to apply to the Email with attachments QPAC in order for it to accept process data in the "From"?
    Steve

    Yes, I'm sure, it worked for us to. But it obviously no longer does.
    Yes, "mailagent" definitely is a variable of type string, though it's of type
    xs:string. I'm no longer able to create variables, which don't feature the
    xs namespace. Which is quite confusing as I've got absolutely no idea, what the
    xs is used for.
    We are using LiveCycle Workflow 7.2.1, the Email QPAC is 7.0.2. Is this the latest version?
    Steve

  • Apparently when I send to a Group of Contacts they can all see every email address and this is not acceptable how do I avoid that

    I need to send to a group of about 50 parents. Their addresses are held in a Group of Contacts. I highlight the group name to distribute a message to all of them and what I am being told is that they can then all see every email address. This is not acceptable as many do not want their email address being made public in this way. Surely this should not happen or at least there should be a way to avoid it.

    re: and I quote "they can then all see every email address. This is not acceptable "
    I showed you the basic method of sending a group as Bcc - which is what you initially asked for.
    As you now specify that not only do you want to know how to use Bcc but every email needs to be personalised - not just distributing a message to all of them, then I would agree with Matt and advise you use Mail Merge. This creates separate emails - not a bulk email to several recipients, so using a TO field will only send to that person - other people will not see other email addresses.
    Matt has offered the link.
    Here is some more info regarding Mail Merge.
    '''How to install Add-ons:'''
    download the .xpi file to your computer eg: desktop or downloads folder.
    In Thunderbird
    'Tools' > 'Add-ons' OR 'Menu Icon' > 'Add-ons'
    click on the gear wheel icon and select 'Install addon from file'
    see first image below as aid.
    locate the file you downloaded and click on 'Open'
    You may need to restart Thunderbird.
    Mail Merge will appear in the list.
    see second image below.
    '''How to set up a Template emails for Mail Merge:'''
    Create a Template email, which contains the 'personalised' sections.
    see example - third image below.
    I set the Subject as 'Mail Merge' so it is easily identifiable.
    Save it as a Template email.
    It will get stored in the 'Templates' folder. If you do not see a Templates folder, this is auto created when you create the first email and store as template.
    '''When you want to use Mail Merge.'''
    Select the Template folder.
    Select the 'Mail Merge' template
    either double click on the email in the list or right click on email and select 'Edit as new message'
    you can then change the Subject and compose or edit the message - but do not change the sections in the curly brackets - the point of saving this as a template saves you from typing it each time.
    'File ' > 'Mail Merge' (see third image)
    This will open a new small window
    see the fourth image below.
    I would suggest you use 'Send Later' option . this will put all the emails in your Outbox, but it does allow you to check the email is correct - or do spot checks. Then you can choose to send them all in one go.
    Right click on 'Outbox' folder and select 'Send unsent messages'.
    Hope this info helps you.
    As you are new to Thunderbird, you may or maynot have managed to locate all your toolbars.
    The fifth image shows you how to enable all toolbars to make life much easier.
    In addition some very useful info on maintaining a healthy Thunderbird and all about compacting- what it does and why it is important.
    * http://kb.mozillazine.org/Keep_it_working_-_Thunderbird
    * http://kb.mozillazine.org/Compacting_folders

  • I have a new ipad 2.  The mail program  refuses to send forwarded emails because the recipient "doesn't accept relays."  My desktop and Blackberry forward emails to those recipients  without difficulty.  Help.

    I have a new ipad 2.  The mail program  refuses to send forwarded emails because the recipient "doesn't accept relays."  My desktop and Blackberry forward emails to those recipients  without difficulty.  Help.

    I suspect that you are using the Forwarding option within Workgroup Manager, and this works outside of the postfix alias scheme. I think you should just set those users you are forwarding to, to normal mail users, and put their forwarding rules ALSO in the alias file, so you would have:
    MAILER-DAEMON: postmaster
    postmaster: alex,yong
    alex: [email protected]
    That should do it. You really have to commit to either using Workgroup Manager or Postfix in their entirety. They don't really work too nicely in conjunction with each other.

  • How can i send Email with attacment in pdf/xls with pass word protect

    Hi
    Can i send Email with attachment in pdf/xls with password protect in oracle apps .Here we want monthly stmt to send the customer with pdf/Xls with
    password protect.Is it possible if yes how
    Thanks

    One option is to convert the report to XML Publisher (which you might have already done as you are asking PDF/XLS), then look into the links below:
    http://blogs.oracle.com/xmlpublisher/2007/09/11/
    http://blogs.oracle.com/xmlpublisher/2010/02/securing_burst_output_document.html
    http://blogs.oracle.com/xmlpublisher/2007/06/merge_and_secure_pdfs.html

  • CDONTS: Send Email with Summary of Items

    Thanks for looking at this.
    I want to do is send an email message to the site
    administrator whenever a customer registers product serial numbers.
    The email would have the customers name, address, etc at the top
    and then a table of product serial numbers below. Their could be
    one or 50 individual rows. So it many ways, it is like a receipt
    one would receive after making a purchase from an store online.
    While formatting and sending the message isn't' the problem,
    the summary section has me puzzled. How do I send my recordset
    content in the form of a table to the email message? I can easily
    create a recordset that grabs the customer's info and the products
    purchased but how do I create the equivalent of the repeating
    regions in the email message?
    I'm sure I'm not using the correct terminology to describe
    what I want so please accept my apologies if I have confused.
    Any feedback would be appreciated.

    Hi Echo Train,
    I would still look at using a Workflow for this. Easiest option to setup and maintain, and
    you can still enter an email (or multiple emails) on demand.
    For the List Workflow click on Initiation Parameters and add one with
    Field name of Email for example.
    Description (something like): "Please enter the email(s) you wish to send the list item information. Separate each email with a semi colon ;"
    Information type: Single line of text
    Default value: leave it blank
    Next add a Send an Email action with the following settings:
    To: Select from existing Users and Groups > Workflow Lookup for a User...
    > Data source: Workflow Variables and Parameters
    > Field from source: Parameter: Email
    > Return field as: As String
    Then setup your Subject and Body using the Fields from the Current List Item
    Save the Workflow then go back into the Workflow settings and ensure that: Allow this workflow to be manually started is the only option selected.
    Publish the workflow and your users should now be able to click on the Workflow with the ability to enter one or more emails.
    There are other options apart from using a Workflow such as setting up an Action with some ECMA script, but much more difficult to create and maintain, which in this instance I would still opt for the Workflow solution.

  • Can I send an email with a meeting or flight schedule to ical and have it sync?

    can I send an email with a meeting or flight schedule to ical and have it sync?

    Hello Fernando,
    Yes, you can send mail  for success and failure of process chain
    1. Select particular node in which you want to get mail.
    2.Right click select create message.
    3. It will show 3 options  for Success , Error, and For both. check what you want.
    4. It will ask for Process variants.
    5. Select Create variants. It will ask process variants name and Long description.
    6. Now it will show maintain recipient List. Select this give emailid of your.
    7. Save it.
    In Email you will get Data Target name, Process  Chain name  and request no. and description  for error message .
    Mail  will be like this(this mail is for process chain when it has failed)u2014
    Process Activate XXXXXXXX Of Type Activate ODS Object Data Has
    Status Ended with errors (Process Chain YYYYYYYYYY)
    Log for This Process:                                                                                Request REQU_4GO3ZZZZZZZZZZZZZZZ in ODS XXXXXXXX must have
    QM status green before it
                                                                                    Activation of data records from ODS object XXXXXXXX
    terminated
    Log of Respective Background Job:
    Job started
                                                                                    Step 001 started (program RSPROCESS, variant &0000000276751,
    user ID WWWWW)
    Request REQU_4GO3ZZZZZZZZZZZZZZZ in ODS XXXXXXXX  must have QM
    status green before it is activated Activation of data records
    from ODS object XXXXXXXX terminated
    Request REQU_4GO3ZZZZZZZZZZZZZZZin ODS XXXXXXXX  must have QM
    status green before it is activated Activation of data records
    from ODS object XXXXXXXX terminated.
    Thanks
    Abha

  • Blackberry email accept/reject contextmenu

    Hi,
    I'm looking for a way for a Blackberry user to be able to respond to his emails by a contextmenu by either Accepting or Rejecting the mail.
    The response should go back to a particular email address with the yes/no in the subject.
    Any help would be greatly appreciated.
    Thanks in advance !

    If you mean you [email protected] address the answer is no.  You could always forward messages from your phone to another email account that you can access on your PC.

  • HP LASERJET CP1525nw print error when printing online Gmail emails with Google Chrome

    HP LASERJET CP1525nw print error when printing online Gmail emails with Google Chrome. Extra large font sizes and weird formatting issues only when printing emails from Gmail within Chrome. No problems when printing the same email from Gmail+Internet Exolorer or Thunderbird. Using the IE Tab extension in Chrome prints the email correctly but the style of Gmail's message window is completely weird ie: formatting bar is spread out vertically instead of horizontally. I believe it is clear that this is an application specific issue between the HP LASERJET CP1525nw printer and Google Chrome + Gmail. This printing scenario does not occur when printing anything else or when printing via another printer. I would appreciate receiving any suggestions to solve this issue.
    OS: Windows 7 Ultimate x64
    Browser: Google Chrome 15
    HP Print driver: HP Universal Print Driver for Windows PCL6 v5.4.0
    Printer is connected by WiFi to 4 computers

    Hi AbZu, 
    You need to contact Google Chromes technical support as this is only an issue with Chrome. You have indicated that the printer functions correctly everywhere else. Check out the link below for Google Chrome technical support. Let me know if you need additional assistance?
    http://support.google.com/chrome/?hl=en
    I am an HP employee.
    Say Thanks by clicking the Kudos Star in the post that helped you.
    Please mark the post that solves your problem as "Accepted Solution"

Maybe you are looking for