Email with buttons in it

Hi
I have a requirement to send an Email from webdynpro application on action of submit button, and the email should contain two buttons APPROVE & REJECT.
This email is sent to the approver, depending on button selection the email is triggered back to the reciepient.
I'm able to send mails but with no buttons.
Could any one give me inputs on this.
regards
ambicasony

Hello Ambika,
This link will give you idea on sending and receiving emails with attachment.
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/cacb9a7d-0c01-0010-1281-be4962c9ab3e
on Receiving end; you have to call the email sending code again but the receiver will be different this time. That you can get from the 12th page of the document.
Regards
   Vinod V
Edited by: Vinod V on Apr 17, 2008 6:32 PM

Similar Messages

  • Help with making an Email Submit button on a form!

    Im making a form using livecycle for the first time.
    Im trying to put on it a email submit button - i used email submit field and made the button. Then in the Objects Palette, in the box that says email address i put in the email address that i want it to be sent to. I then tried to email the form, and i received an email, but the attachment was just a bunch of codes, not the form. I want the email to come through with the PDF form.
    I searched on help and this is what i found:
    3.
    In the Control Type area, select Submit. Data will be submitted according to the settings in the Submit tab.
    4.
    Click the Submit tab and type the URL protocol in the Submit to URL box.
    To
    Use this URL protocol
    Example
    Submit the package to an ftp site
    ftp
    ftp://ftp.gnu.org/gnu/GPL
    Submit the package to a web server
    http
    http://myserver/cgi-bin/
    Submit the package to a secure web server
    https
    https://myserver/cgi-bin/
    Submit the package to an email address
    mailto
    mailto:[email protected]
    5.
    Select PDF from the Submit As list.
    I cant find where to change these options - can someone help?
    Thanks!

    Hi,
    The issue is that if the form is not Reader Enabled, then users with Reader cannot submit the form as a PDF.
    They can submit it as an XML file and then you would re-import this back into the form on receipt. It is an extra step, but it does have the advantage that the data being submitted as an XML file is very small.
    If you really need/want the form to be submitted as a PDF AND your users have Reader, then the form will have to be Reader Enabled.
    There are two options:
    Reader Enable using Acrobat Standard (version 9) or Acrobat Professional (version 8). This will give certain rights, like the ability for users with Reader to save the form and for the form to be submitted as a PDF. However there are licensing restrictions, see EULA.
    The other option is to Reader Enable the form using LiveCycle Reader Extensions ES2. This is a server product, which entails additional cost and a cost to Reader Enable each form. It is intended for processing large volumes of forms/large volumes of data.
    There is a summary here:
    http://assure.ly/gYyYc2
    So there are a couple of options.
    Form NOT Reader Enabled:
    Users cannot save the data they input.
    Data must be submitted as an XML file and processed on receipt.
    Form IS Reader Enabled:
    Users can save the data they input.
    Data can be submitted as a PDF (or XML file).
    Hope that helps,
    Niall
    Assure Dynamics

  • Email submit button doesn't work with Thunderbird

    I created a LiveCycle (v8.2.1) form with the email submit button. Works fine if the sender is using Outlook. If their using Thunderbird, it does not. I installed Thunderbird on my system (normally I use Outlook) and set Control Panel/Internet Options/Programs email to use Mozilla Thunderbird as the email program. When I click the Email button on my LiveCycle PDF form, I get a message telling me: Select an Email Client. The "Desktop Email Application" radio button is checked and that should be fine; the explanation for this button indicates that it should be checked "if you currently use an email application such as Microsoft Outlook Express, Microsoft Outlook, Eudora, or Mail.". I leave that checked, since I am using an email application and click OK. After 20-30 seconds, I get a message with the title bar: Microsoft Office Outlook "A program is trying to access e-mail address information stored in Outlook..." Allow|Deny|Help. I click Deny. After a minute or so, an Outlook "New" email window appears with the appropriate information from my LiveCycle PDF form. Right content, wrong email client. Since Thunderbird is my "default" email application, where is LiveCycle coming up with Outlook? What do my customers do who don't use Outlook?
    I hope someone has a good solution.
    Thanks.

    When you click the submit button, do you get a window that has the title "Select Email Client"and has the options of "Desktop Email Application" and "Internet Email"? If not, does anything at all happen?
    Note that Mac users must have Acrobat or Reader installed and be viewing the PDF in Acrobat or Reader for it to work. Many (most?) Mac users have the Preview Application as their default PDF viewer, and it does not support many interactive features such as form submissions. Although some third-party PDF viewers for Windows support form submissions, many do not.
    For those that do not use PDF viewers that support form submissions, they will have to manually attach the document to an email message.

  • Sending email with HTML report through a button

    Hi,
    I've noticed in APEX 4 there is a default option (through Action Menu -> Download Formats: email) to send an email with report in HTML format...
    may I know how to accomplish it using a Button... seems like APEX is using javascript:gReport.email.show(); function to accomplish it but I don't know how to implement it...
    Please advice
    Thanks in advance

    qwe12654 wrote:
    GokhanAtil,
    I've posted a sample on APEX.ORACLE.COM... LOGIN DETAILS ARE SAME AS ABOVE...
    ON the page now I have both the SQL based report and interactive report...
    On the top right you may see 2 icons.. one for downloading report in PDF (using SQL Report as the source) and the second for sending email (using interactive report, similar logic as what you've recommended)...
    Is there a way I may be able to send report via email, using SQL report as the source (rather than interactive report)...?
    You can always use APEX_MAIL to send emails.
    http://download.oracle.com/docs/cd/E10513_01/doc/apirefs.310/e12855/apex_mail.htm
    or the alternative option would be:
    to convert all my SQL reports into interactive, would require a bit of efforts (I'll go with it if the above option is not available)... but would need to know how to download INTERACTIVE reports in PDF, excel and CSV formats using a button ... similar logic to what you've done for sending emails
    Thanks again for all your assistanceIt's very easy to make buttons for downloading the interactive reports in HTML, CSV or PDF.
    I have created a PDF button and put the link:
    http://apex.oracle.com/pls/apex/f?p=40418:11:1316531694094700:PDF
    "1316531694094700" is the value of p_instance. You can find it from HTML codes of your page:
    <input type="hidden" name="p_instance" value="1316531694094700" id="pInstance">
    You can change PDF to CSV or HTMLD (so your visitor download the report in CSV or HTML)
    Best Regards,
    Gokhan
    If this question is answered, please mark appropriate posts as correct/helpful and the thread as closed. Thanks

  • While in email today, the computer began flashing. I had to turn off with button. When I turned it back on, I got the apple icon and the moving loading wheel. It would turn for about 60 seconds and then stop. I turned off again. I now have a black screen.

    while in email today, the computer began flashing. I had to turn off with button. When I turned it back on, I got the apple icon and the moving loading wheel. It would turn for about 60 seconds and then stop. I turned off again. I now have a black screen.

    Hi wiesenruth,
    If you are having issues starting up or booting your computer, you may find the following articles helpful:
    Troubleshooting: My computer won't turn on
    http://support.apple.com/kb/TS1367
    Mac OS X: Gray screen appears during startup
    http://support.apple.com/kb/ts2570
    Regards,
    - Brenden

  • Custom actions - can we send email with VC button?

    Hi all,
    I wonder if there is a way to create custom actions for button in VC so that we can use to send an email with predefined content and some fields from a table? Will appreciate any idea reply real quick.
    Thanks very much,
    Tien.

    Hi,
    Currently you cannot trigger a background mail sending from VC. However, you can use the "hyperlink" system action on the button, and create a mailto: link.
    This way the default mail editor will open up when clicking this button.
    You can use dynamic expressions to build dynamic Recipient/Subject/Body to this mail message that will automatically be created for the user when clicking this button, and then the user can edit the mail message and send it.
    Some more info about mailto - http://www.ianr.unl.edu/internet/mailto.html

  • EMail Submit button with mailto: based on form data

    Based on form data, I would like to have an email button that sends mail to the email address identified in the email field. Obviously this can change, how would one go about programming a button to send to email based on field data?
    Thx...
    /cw

    Hi Chris,
    Yes this can be easily done. I gathered the following solutions from various threads and so I am not claiming any originality here...
    Set up a textfield "Email", with a tooltip telling users to separate email addresses with a ";".
    Next set up a regular button with the following Javascript in the click event:
    var email = xfa.resolveNode("form1.#subform.Email").rawValue;
    var subject = "Specify your subject line here"
    event.target.submitForm({cURL:"mailto: "+ email +"?subject=" + subject +"&body=You can also input some standard text to appear in the body of the email.",cSubmitAs:"PDF",cCharset:"utf-8"});
    You might want to put an if statement that if the "Email" textfield is blank/null that an app.alert comes up informing the user to input at least one email address.
    We took it a stage further on one of our forms. We set up three checkboxes with people's names who are regularly sent the form (nod and cc1 and cc2) and then a textfield "additional" for additional addresses.
    Each checkbox had an associated Textfield (EM1_email, cc1_email, and cc2_email) that were invisible. Each checkbox had similar Javascript in the mouse up event:
    if (this.rawValue == 0) {
    EM1_email.rawValue = null;
    else {
    EM1_email.rawValue = "[email protected];";
    Then we set up another invisible textfield (Email) which had the following Formcalc in the calculate event:
    if (nod.rawValue == 0 & cc1.rawValue == 0 & cc2.rawValue == 0) then
    $ = null
    else
    $ = Concat(EM1_email, cc1_email, cc2_email, additional)
    endif
    This basically pulled the email addresses from the ticked checkboxes and the additional user inputted email addresses into one text field. From there the regular button with the script above send the email. This speeded up the process for regular reciptents.
    If you search the forum for topics such as cURL:"mailto: you should see lots of other examples.
    Good luck,
    Niall

  • Problem with Email Submit Button in  Interactive Form

    Hi All,
    I am using EMail Submit Button in InteractiveForm.
    At run time when i click on this button then it is sending this pdf file in the form of .xml file at given Email address but i want to send pdf format only.
    Can anyone help me how to solve the issue.
    Thanks & Regards
    Dinesh Kumar

    Hi,
    Try doing the following
    try using the simple 'Button'. In the button's object properties, in the tab named 'field', select 'Control Type: submit'.
    Then, in the 'submit' tab in the object properties, choose PDF in the 'submit format' dropdown field.
    In the 'submit to URL field' type:
    mailto:nameataddress.com?subject=mySubject&body=Done
    You may need to adjust the e-mail address, subject and body text.
    Regards
    Ayyapparaj

  • Customise the email submit button with custom email, cc, bcc, subject and body - almost working!!

    Hi
    I have been working on trying to customise the email submit button to custom entry email address, cc, bcc, subject etc etc
    You can use the pre-submit function on the email button
    I am using the following code:
    this.event__click.resolveNode("#submit").format = formatlist.rawValue;
    this.event__click.resolveNode("#submit").target = "mailto:"+customemail.rawValue+"?subject="+subject.rawValue+"&cc="+cc.rawValue+"&bcc="+bcc.rawValue+"&body="+body.rawValue;
    THis is picking up values from a dropdown and a series of text boxes the values of each area.
    This works beautifully except for the subject area. For some reason teh subject area copies the entire srting from the subject onwards, all other areas (cc & bcc & body) all only copy the value assigned to its function.
    Any thoughts
    Feels like a bug in the coding but it may also be intentional.
    Thanks

    I believe that there was a bug logged for this issue, here is a workaround.
    Add a regular button to the form used to execute the EmailSubmit button  (you can make the EmailSubmit button invisible)
    On the click event of the "newly added" regular button add your script
    NameOfEmailSubmitButton.event__click.resolveNode("#submit").target = "mailto:"+customemail.rawValue+"?subject="+subject.rawValue+"&cc="+cc.rawValue+"&bcc="+bcc.rawValue+"&body="+body.rawValue;
    NameOfEmailSubmitButton.execEvent("click");

  • 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>

  • I want to have users submit the form in PDF format but it doesn't work using the email submit button

    Hi all,
    I have a form that I want to be returned to a specific email address as a PDF File. This is so that reservations people can open the pdf, and extract the information from it. Keeping it as a PDF will allow them to easily read and use the form.
    When I use the "Add and Email Submit button" approach, as outlined in the "How to" area, everything works fine, except that the format of the submitted file is in xml, not Pdf which is what I need it in.
    I then tried adding a Button to the document from the Library, and set it's "Control Type" to "Submit". This provided me with the submit sub-tab, where I set the "Submit Format" to PDF. In the "Submit to Url", I entered the following - "mailto:[email protected]" (without the quotes)
    The first approach works, but is not in the PDF format that I need (I believe).
    The second approach keeps giving the following error when one selects the submit button - "This operation is not permitted".
    We use Lotus Notes (yes, I know...not my favorite either, and it may be the problem here).
    Any help that might be provided is greatly appreciated!!
    Rob

    Thanks, but, using the "free" version of Reader, there is no opportunity to open nor import the xml data - the menu options do not exist - there is no import listed.
    If we try to open the xml file directly, then we get an error - something to the effect of "unsupported file type, or the file is corrupted".
    I just noticed in my Pro version that there is the command File ->Form Data ->Import Data to Form... command. Is this what you are referring to?
    What do you recommend? Perhaps the easiest thing to do would be to purchase a few copies of Acrobat Pro for the reservations people to use? I was hoping that the free version of reader would do it, but perhaps not?
    Thanks again,
    Rob

  • I'm not able to send emails with mail.ru. Receiving and reading is not a problem. When I create a email with mail.ru its not possible to send it although its stored in my mail.ru account as "still to be send". What can it be??

    I'm not able to send emails with mail.ru. Receiving is not a problem. Creating a mail is also not a problem and the mail will be stored at mail.ru as still to be send, only problem is its not possible to send. I noticed the buttons for sending change colour when used but they don't perform. What it is?

    Don't know what changed, but all of a sudden able to send emails by mail.ru ...... sorry for bothering.

  • When I compose an email in either gmail or yahoo, the cursor lags behind for about 2 seconds. This does not happen when I compose an email with Safari or Chrome. I am using a Mac with Firefox version 3.6.3. Any idea why this happens?

    When I compose an email in either gmail or yahoo, the cursor lags behind for about 2 seconds. This does not happen when I compose an email with Safari or Chrome. I am using a Mac with Firefox version 3.6.3. Any idea why this happens?
    == This happened ==
    Every time Firefox opened

    try
    The Reset Firefox feature can fix many issues by restoring Firefox to its factory default state while saving your essential information.
    Note: ''This will cause you to lose any Extensions, Open websites, and some Preferences.''
    To Reset Firefox do the following:
    #Go to Firefox > Help > Troubleshooting Information.
    #Click the "Reset Firefox" button.
    #Firefox will close and reset. After Firefox is done, it will show a window with the information that is imported. Click Finish.
    #Firefox will open with all factory defaults applied.
    Further information can be found in the [[Reset Firefox – easily fix most problems]] article.
    Did this fix your problems? Please report back to us!
    Thank you.

  • How to send an Email with content at the end of a Quiz?

    Hello,
    i have three Questions about the navigation function "sending an Email" at the end of an Test or Quiz, and i haven´t found any answers in the forum yet.
    An Information at the beginning:
    I want to use the Test without any other System, for example Moodle. It will be directly reachable with a link on a homepage.
    1) Is it possible, to send an Email with answers of the User as the content in the email, and if it´s possible, how?
    2) If it´s not possible, could i precast a Text in the email? Until now, there is only an empty Outlook-Window with the Emailadress.
    3) Is it possible, to send an Email without Outlook, so a User can use it only web-based, for example with gmx, webmail etc...
    Thank you for helping me
    Zholmar
    (German)
    Hallo,
    ich habe drei Fragen zum Versand im Rahmen der Navigationsfunktion von "Email versenden", dies soll am Ende von Test bzw. Quizanwendungen geschehen und habe im Forum leider keine entsprechende Antwort bisher gefunden.
    Zur Information:
    Der Test soll nicht in ein anderes System (z.B. Moodle) eingebettet werden, sondern lediglich per Link auf einer Homepage erreichbar sein.
    1) Ich würde gerne am Ende meines Tests eine Email versenden lassen, welche die Antworten des vorangegangenen Tests enthält, ist das möglich und wenn ja wie?
    2) Falls das nicht möglich ist, besteht die Möglichkeit, einen vorgefertigten Text + Betreff in der Email zu generieren? Derzeit öffnet sich lediglich ein Outlook Fenster bei erreichen der Folie, in welcher lediglich die angegebene Emailadresse eingetragen ist. In dieser Email soll wenn möglichst bereits ein Text integriert sein, so dass der Teilnehmer lediglich noch Angaben ergänzen muss.
    3) Ist der Email Versand auch ohne Outlook möglich? Kann die Funktion also auch rein Webbasiert erfolgen?
    Vielen Dank für die Hilfe
    Zholmar

    Sooo, which method are you wanting to use?
    Earlier I outlined the steps for the close project at end.
    If you are wanting to use the JavaScript solution, you insert a button. Then in the action, you tell the button to execute JavaScript. Then you click the Script Window button and enter the window.close(); code.
    Cheers... Rick

  • ADOBE LiveCycle Designer 8 - EMAIL SUBMIT BUTTON DOES NOT WORK

    I created a new form in Adobe LiveCycle Designer 8, but the email submit button, nor a regular button assigned with a 'submit' function will do anything. It should initiate a new Outlook email but it does not. My default programs are set correctly (default email program and the default "mailto" program are set to Outlook). This document was created not only with ALC8, but on a Windows Vista PC with MS Office 2007. I ran a test to see if it would work on a WinXP SP2 machine with Office 2003 and it still did not work.
    Can anyone help?

    Alan
    Though not an expert, I've created a few forms with the Submit by Email button. If you've already done this then sorry for asking, but did you go through the Acrobat Distribution (Forms>Distribute Forms)process after creating the form in LC8? As far as I can tell the email submit button doesn't work without this stage.
    This confirms the email submission address, then sets up a dataset to be saved in a location of your choice.
    filename_dataset_0001.pdf
    then a file type that can be edited, saved and submitted by Reader users:
    filename_pub_0001.pdf
    You can save this to your intranet server or email direct to the recipient.
    When the submit button is then used you receive a copy of the whole form which on opening will prompt you to add it to the dataset. Receiving and adding multiple forms to the data set is straightforward. You will see them all listed in the viewer above the form itself. From here you can also then select and export the data to Excel via xml or as a csv file.
    Note that any changes you make to the form should be to the original document and the distribution process repeated, otherwise the functionality of the form will be affected.
    That's about the limit of my knowledge I'm afraid, therefore if you have already tried this and are still having problems then hopefully someone else can help out.
    Regards

Maybe you are looking for

  • HP laserjet 400 mfp and Laserjet 200 mfp

    I have 2 printers HP Laserjet 200 mfp and HP Laserjet 400 MFP. I tried HP phone support. I checked each printer on 2 diffent networks to make sure it was not my setup. When I try and setup both printers with Web Services they both say unable to conne

  • Problem in app store!

    when I want to download something from the app store, they say to me ''billing Info'' and when I enter to that, they say enter your security code but they say your code is wrong but I'm sure that my code is right? so anyone can help me please!

  • Can not fine symbol... class SwingWorker is not working...

    Hi , my code is like this. I am using netbeans ide 5.5. package concurrency; import java.util.List; import java.util.Random; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import java.awt.GridBagLayout; import java.awt.GridB

  • Error DATA_OFFSET_LENGTH_TOO_LARGE into include: LPA_INFTY_LOGF02

    Hi guys, I'm new as abap consultant and yesterday i got an error when executing a programm which calls standard function HR_INFOTYPE_LOG_GET_DETAIL and this function calls a include LPA_INFTY_LOGF02. My problem is: It shows me an error on field "HLP_

  • Plugin-container cause OS to pause and its annoying

    I have windows 7 on Dell d620, I have seen my browser pause regularly as the plugin-container eats CPU cycles as seen in process explorer. IE9 does not do this and it is annoying. I have been on Firefox since version 1 and the 3.x upgrade that introd