Send activity to multiple approver in workflow

hi experts,
i have multiple approver at same level and have multiple leves say e.g. I have 3 levels of approval process and at each level there can be more than one approvers (same activity should go to more than one users).
and activity should be complete only when all approvers take action on that.
I had created a rule so that activity is going to multiple users for approval but the problem is when any one user takes some action on it, the activity is disappearing from all users inbox.
points will be rewarded for useful ans.
thanks.

hi,
thanks for reply.
this is exactly what i wanted.
but i have little problem in this case.
i have created a multiline container element of type SWP_INITIA , and assign 2 User id's in initial value, and assign it in Miscellaneous.
here the activity is going in second user's inbox for two times,
insted of going into each user's inbox.
please help to reslove this issue.
thanks.

Similar Messages

  • GL Journal approval- Send notification to multiple approver

    Hello
    I want to send GL journal approval notification to multiple approver, once any of the approver approves the journal it should be removed from worklist of all approver. How can we acheive this?
    Pls help
    Thanks
    Avalon

    Hi
    What i am sure of is that you can have specific groups for your journal approval and each of the groups can have specific approvers.
    When i say the above line, i mean that you can have groups like Treasury, Finance and Payroll and each of them have their desiganated approvers.
    Then the level of journal preparer who can also fall to a specific group.
    Once the journal preparer belonging to a specific group prepares a journal, it will route to the journal approver belonging to the specific group.
    I am not sure about whether you can create approval groups and also if you send the journal for approver to multiple approver, than how the other approver will come to know that the journal is approved or rejected or whether has the other person taken any action - it will create dependencies between the 2 person and hence might create confusion.
    So i am not sure about the resolution for your question.
    But if the approach suggested by me matches your requirement, i can forward you the document which contains the step you need to do to achieve the functionality,
    Hope this helps.
    Thanks and Regards
    Manish Jain

  • How to send mail to multiple users in workflow

    Hi
    I have created a workflow for vendor details.
    after filling all the vendor details the mail should be sent to all managers
    involved in workflow.Can anyone tell me how to assign this task of sending mails to all users in organizational unit.

    hi
    user 1 has mailbox open when the work item arrives, then to user 2 it will apprear to be already read.
    Try using a logical AND in the definition of the responsibilites, so that when only both user 1 and user 2 (assuming that there can be two users) read their emails the work item is regarded as complete
    also check with the following link..
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/c6456e89-0a01-0010-0189-a7961fe42034
    reward if useful
    regards
    dinesh

  • How to retrieve comments from one OfficeTask activity and use them in another OfficeTask activity for Multi level Approval sequential Workflow

    I'm designing a sequential site workflow using Visual Studio 2010 for Project Server 2010. In my case, I have following 6 stages in the workflow:
    1. InitialProposal Stage
    2. Approval Stage1 -- Needs approval from Approver Project Security Group Members1
    3. Rejection Stage
    4. Approval Stage2 -- Needs approval from Approver Project Security Group Members 2
    5. Execution Stage
    6. Completed Stage
    Requirement is workflow should move to Approval stage2 from Approval stage1  if approved by all members of Approver Project Security Group1and it should move to Rejection Stage even if a single member rejects it.
    Workflow should move from Approval Stage2 to Execution Stage if approved by all members of Approver Project Security Group2 and it should move back to Approval Stage1 on rejection by a single member of the group.
    I'm using inbuilt PSWApproval content type and OfficeTask activity for creating approval task for the group members at both stages.
    On task rejected in Approval stage2, task will be assigned again to Approval Stage1 and I want to show comments given by members of Approver Project Security Group2 to the members of Approver Project Security Group1 with this assigned task
    but I'm not able to retrieve comments from officeTask activity.
    My question is where exactly these comments are saved? how can we retrieve them and use them in another officetask activity? If this is not possible then what is the possible solution for meeting above mentioned business requirement?

    Hi Paul,
    Thanks for your suggestion.
    By comments field I'm assuming OfficeTask.Comments field. Problem is, this field is always null. I tried accessing this field in CheckExitCondition activity as well as in OnTaskCompleted but in both the cases, it was null only(I wrote comments while approving
    the task).
    I used a code activity within OnTaskCompleted activity and following code for accessing Comments and Description fields:
    public string officeComments;
            public string officeDescription;
            private void TaskCOmplete(object sender, EventArgs e)
                CodeActivity Sender = (CodeActivity)sender;
                Microsoft.Office.Workflow.Actions.OfficeTask ofctask1 = ((CompositeActivity)Sender.Parent).Parent as Microsoft.Office.Workflow.Actions.OfficeTask;
                officeComments = ofctask1.Comments;
                officeDescription = ofctask1.Description;          
    Please tell me if I'm doing anything wrong here, I'm very new to Workflows. Also, do I need to set any specific property of officeTask for retriving comments?
    Thank you

  • Approval Workflow: "Send By Email for Approval" not available in Comments Menu

    Im using Acrobat 9 Pro (9.4.1) but still have Acrobat 8 Pro (8.2.5) installed as well. I'm attempting to initiate an approval workflow utilizing the approval stamps but I'm not finding the "Send by Email for Approval" option under the Comments Menu or under the Comments button in the Task bar in either version of Acrobat Pro.
    Not sure what I'm missing on this end, either in the install of either version or if I, myself, am just not getting this process. The Review process is great and works as it should but I'd like to incorporate the approval process as well if possible in to our internal workflow.
    Thanks.

    Approval workflows are available in Traditional Chinese, Simplified Chinese, Japanese, and Korean only. Refer to http://help.adobe.com/en_US/Acrobat/8.0/Professional/help.html?content=WS62EA03B6-4B99-457 c-8A3C-06FDB463E293.html

  • How to send emails to Multiple Users from a Single People Picker lookup field using Sharepoint designer workflow

    Hi All,
    I am working with SharePoint 2013 designer workflow. we are using office 365.
    Our requirement to send email to multiple users, get the user groups from lookup list people and groups column.
    But SP designer sending emails to the first user alone.
    Please guide me to proceed.
    Advance Thanks.
    Regards
    Jenkins NS
    Thanks and Regards Jenkins

    finally I got a solution
     Identified a workaround to solve the issue using SharePoint designer.
    Step 1
    Create a lookup list Example department
    Columns
    Title (by default) – Single line of text
    Users – Person or Group
    Emails – Multiple lines of text
    hidden the Emails column (go to content type and set the column as hidden)
    Create a SharePoint designer Workflow
    Start Workflow automatically when an item is created
    Also Start Workflow automatically when an item is changed
    Workflow Stage 1
    Set Emails to current Item: Users
    The workflow will get all users email ids and add in the Emails column delimiter as semicolon.
    Step 2
    Create a custom list to get the email ids and send email
    Create a lookup column ex: analysis and refer department list, Allow multiple values
    Then Create a SharePoint designer workflow
    full details workflow steps please follow below
    URL
    http://jenkinsblogs.com/2015/04/30/how-to-send-emails-to-multiple-users-from-lookup-list-people-picker-field-using-sharepoint-designer-workflow/
    Thanks and Regards Jenkins

  • How to send notifications to multiple person with same role and with result

    How to send notifications to multiple people with resultout as approve/reject?
    We are looping the notification by attaching a cursor query to find the different emp nos to send for approval.
    I cannot associate a role because these emp nos are sub-set of a role which I have created and i am getting thru the cursor query.
    For FYI notification there is no problem, but for approval notification, I am not unable to send approval notifications to all the people.It stops at the first person in the loop.Pls suggest alternate way. Thanks in advance.

    Manju,
    I would use the cursor to populate the API for creating an ad-hoc role within the workflow process as a function. Then set your notification performer as the ad-hoc role.
    Here is an example function:
    create or replace procedure sample_emp_fill(itemtype in varchar2,
    itemkey in varchar2,
    actid in number,
    funcmode in varchar2,
    resultout in out varchar2) as
    cursor get_name is
    select ename from scott.emp where mgr = 7839 and empno != 7566;
    role_name varchar2(50);
    names varchar2(500);
    begin
    if (funcmode = 'RUN') then
    role_name := 'ad_hoc_role_'|| itemkey;
    for row in get_name loop
    names := names || row.ename || ' ';
    end loop;
    WF_DIRECTORY.CreateAdHocRole( role_name=>role_name,
    role_display_name=>role_name,
    language=>'AMERICAN',
    territory=>'AMERICA',
    role_description=>role_name,
    notification_preference=>'QUERY',
    role_users=>names,
    email_address=>' ',
    fax=>'',
    status=>'ACTIVE',
    expiration_date=>'');
    resultout := wf_engine.eng_completed||':'||wf_engine.eng_null;
    return;
    end if;
    end;

  • Error while sending notificaiton to multiple users

    I created an adhoc role like:
    declare
    l_role_name varchar2(150):='TO_ROLE';
    l_role_display_name varchar2(50):='TO_ROLE';
    l_users := l_1_user||' '||l_2_user;
    l_1_ruser and l_2_user are of fnd_user%user_name type..and they get the user names from fnd_user using a cursor variable.Both l_1_ruser and l_2_user are already having assigned to various roles.
    But for my present scenario i am creating an adhoc role and assigning both l_1_user and l_2_user who are residing in wf_local_roles.
    WF_DIRECTORY.CreateAdHocRole (
    role_name => l_role_name,
    role_display_name =>l_role_display_name,
    email_address => null,
    notification_preference => 'MAILHTML'
    WF_DIRECTORY.AddUsersToAdHocRole (
    role_name => 'TO_ROLE',
    role_users => l_users
    when using the above I am getting:
    Failed Activity Test_NOTIFICATION3
    Activity Type Function
    Error Name -6500
    Error Message ORA-06500: PL/SQL: storage error ORA-04030: out of process memory when trying to allocate 16328 bytes (koh-kghu call ,pmucalm coll)
    Error Stack Wf_Directory.AddUsersToAdHocRole(SEND_TO_ROLE, " ") ........
    any suggestions...
    Edited by: user8612301 on Aug 31, 2011 2:03 PM

    Hi
    I am facing same error. I am using standard workflow API to create and assign a role functionality for sending notification to Multiple users.
    Error Message = ORA-06500: PL/SQL: storage error
    ORA-04030: out of process memory when trying to allocate 16328 bytes (koh-kghu call ,pmucalm coll)
    Error Stack =
    Wf_Directory.AddUsersToAdHocRole
    I would appreciate that if know what could be the issue.
    Thanks

  • Send Emails to Multiple Users ?

    Hi,
    I am working on the requirement where I need to create workflow in which I am sending email to multiple users. I have receiver list in a 'Z' Table. So I have to fetch those users from the 'Z' table on some conditions and send emails to them. I am send email to single user mentioned statically in Receipent box but I need to find the receivers dynamically and not able to send email to multiple users.
    Please help me in this.
    Thanks,
    Ketan

    Hi Ketan,
    First af all create one MULTILINE container in your workflow say LT_EMAIL. its type should be SOXNA-FULLNAME.
    Then thorugh some activity step, fill all the recepient's email addresses in workflow container LT_EMAIL. Then create one activity step type to send an email using SENDRASKDESCRIPTION method of business object SELFITEM. in the ADDRESSSTRING pass the multiple container LT_EMAIL and in TYPEID pass 'U'.
    refere below link for BO programming in sap workflow Useful SAP Business Object Type programming macros.
    Regards,
    Ibrahim

  • How I can auto approve pending workflow process, once month end proces

    I have created workflow process for timesheet approval.
    I want to auto approve all pending timesheet (i.e (default notification timeout is 7 days) notification send to approver, but still not approved) in Oracle workflow Process, when Month end process started
    Month end process will initiate a flag in pending timesheet header table with process started

    I am not sure if I understand your requirements completely.
    1) If your requirement is that all the pending timsheets have to be approved by month-end (not really when month-end process starts) then set the Timeout of the notification to Absolute Time of end of that month... so that by the end of the month the background engine will pick it up.
    You may design the approval notification within a Sub-process with RESULT attribute of Approve / Reject. Design a Timeout transition for the Notification Activity within the sub-process that will go to an END activity that has Approve result. Thus once the notification times out, the sub-process will complete with result APPROVED.
    2) One other way is to respond to OPEN notifications using APIs.
    WF_NOTIFICATION.SetAttrText(nid, 'RESPOND', 'APPROVED');
    WF_NOTIFICATION.Respond(nid);
    You should have queried up all OPEN notifications for Timesheet approval and do this in a loop... which could be time-consuming sometimes.
    Thanks

  • Question regarding sending email to multiple recipients

    Hi All,
    I am creating a workflow that will send an email notification everytime a new campaign is created. I've learned that R16 is capable of sending emails to multiple recipients, the only concern I have is I can't find any doumentation on how to do it. It is stated in the R16 Administrator Preview Guide that you can select 'Specific Email Address' and enter multiple email addresses directly, I tried to enter multiple email addresses separated by comma - [email protected],[email protected],[email protected] as an example, but it doesn't work and prompts me to enter a valid email address. Could anybody guide me on how to enter multiple email addresses once the 'Specific Email Address' is selected or how to do it in the expression builder to define the expression that will define the list of emails. I know that using group email addresses can be used as an alternative to this requirement but I hope theirs a way to do this with workflows.
    Thanks,
    Wayne

    According to the R16 Admin preview guide;-
    "Send Email to Multiple Recipients
    Expression Builder is now linked to the email address text field that is presented when the Specific Email Address
    option is selected. Workflow administrators can enter multiple email addresses directly, or click the "fx" icon
    beside the field, and use Expression Builder to define expressions that evaluate to one or more email addresses.
    The benefit of this feature is that emails can be stored on any text field in the base record and multiple emails can
    be sent using one workflow action. "
    But how that works exactly is not clear, I have tried commas, semi-colons, spaces, apostrophes, doublequotes, to separate and try to establish the correct syntax without luck.
    Bob - Perhaps you can do some digging and find out the correct syntax for multiple addresses?

  • On OnPremise, Sending email to multiple recipients doesn't work with SendEmail method

    Hi,
    We are creating a site collection on OnPremise from App by using Sharepoint Client API's (16 version).
    After creation of site collection, we are sending an email to all site collection administrators. But we found that email is being sent to the only first person mentioned in the "To" list. For sending email we are using following method "Microsoft.SharePoint.Client.Utilities.Utility.SendEmail()".
    We tried different scenarios by passing alternately domain username and email address.
    Here are the findings for the different scenarios for the "To" field:
    1) "domain\user1; domain\user1" => sends email to first user
    2) "[email protected]; [email protected]" => sends email to both emails (at least shows in inbox To field, two occurances of email)
    3) "domain\user1; domain\user2" => sends email to first user
    4) "[email protected]; [email protected]" => sends email to first user
    Here is the code we are using:
                    EmailProperties properties = new EmailProperties();
                    properties.To = to.ToList();
                    if (cc != null)
                        properties.CC = cc;
                    properties.Subject = subject;
                    properties.Body = body;
                    Utility.SendEmail(context, properties);
                    context.ExecuteQuery();
    Please let us know what is going wrong here.
    Thanks in advance for your valuable inputs.
    Br,
    Shriram
    Shri07

    According to the R16 Admin preview guide;-
    "Send Email to Multiple Recipients
    Expression Builder is now linked to the email address text field that is presented when the Specific Email Address
    option is selected. Workflow administrators can enter multiple email addresses directly, or click the "fx" icon
    beside the field, and use Expression Builder to define expressions that evaluate to one or more email addresses.
    The benefit of this feature is that emails can be stored on any text field in the base record and multiple emails can
    be sent using one workflow action. "
    But how that works exactly is not clear, I have tried commas, semi-colons, spaces, apostrophes, doublequotes, to separate and try to establish the correct syntax without luck.
    Bob - Perhaps you can do some digging and find out the correct syntax for multiple addresses?

  • Sending mail with multiple attachments

    hi.I wrote a code to send mail.but i need to send mail with multiple attachments.here is the code i wrote.what should i do to send the mail with multiple attachments.if i run this code iam able to send mails but not attachments.please help me
    <%@ page import="javax.mail.*,javax.mail.internet.*,java.util.Date,java.io.*,java.net.InetAddress,java.sql.*,java.util.Properties,java.net.*,javax.sql.*,javax.activation.*,java.util.*,java.text.*" %>
    <%@ page import="java.io.*,java.sql.*,java.net.*,java.util.*,java.text.*" %>
    <%
         String Attachfiles1="";
         String Attachfiles2="";
    String Attachfiles3="";
    if("Send".equalsIgnoreCase("send"))
              try
         String subject="",from="",url = null,to="";
         String mailhost = "our local host";
         Properties props = System.getProperties();
         String msg_txt="";
         String strStatus="";
    // byte[] bin=.....;
    //Adds Attechment:
    Multipart multipart = new MimeMultipart();
    BodyPart messageBodyPart = new MimeBodyPart();
    messageBodyPart.setText("Here are my attachments");
    multipart.addBodyPart(messageBodyPart);
    messageBodyPart = new MimeBodyPart();
    //first attachment
    DataSource source = new FileDataSource("C:\\img1.jpg");
    messageBodyPart.setDataHandler(new DataHandler(source));
    messageBodyPart.setFileName("C:\\Telnor1.jpg");
    multipart.addBodyPart(messageBodyPart);
    //Second attachment
    DataSource source2 = new FileDataSource("C:\\img2.jpg");
    messageBodyPart.setDataHandler(new DataHandler(source2));
    messageBodyPart.setFileName("C:\\Telnor2.jpg");
    multipart.addBodyPart(messageBodyPart);
    //etc...
    message.setContent(multipart);
    Transport.send( message );
    String mailer = "MyMailerProgram";
    to=request.getParameter("to");
    from=request.getParameter("from");
    subject=request.getParameter("subject");
    msg_txt=request.getParameter("message");
    props.put("mail.smtp.host", mailhost);
    Session mailsession = Session.getDefaultInstance(props, null);
    Message message = new MimeMessage(mailsession);
    message.setFrom(new InternetAddress(from));
    message.setRecipients(Message.RecipientType.TO,InternetAddress.parse(to, false));
    message.setSubject(subject);
    message.setHeader("X-Mailer", mailer);
    message.setSentDate(new Date());
    message.setText(msg_txt);
    BodyPart messageBodyPart = new MimeBodyPart();
    BodyPart messageBodyPart2 = new MimeBodyPart();
    Multipart multipart = new MimeMultipart(); // to add many part to your messge
    messageBodyPart = new MimeBodyPart();
    javax.activation.DataSource source = new javax.activation.FileDataSource("path of the file");
    messageBodyPart.setDataHandler(new DataHandler(source));
    messageBodyPart.setFileName("file_name");
    messageBodyPart2.setText("message"); // set the txt message
    multipart.addBodyPart(messageBodyPart);
    multipart.addBodyPart(messageBodyPart2);
    Transport.send(message);
    out.println("Message Sent");
    catch (Exception e)
    e.printStackTrace();
    if("Attachfiles".equalsIgnoreCase("attachfiles"))
    Attachfiles1=request.getParameter("fieldname1");
    Attachfiles2=request.getParameter("fieldname2");
    Attachfiles3=request.getParameter("fieldname3");
    %>
    <html>
    <body>
    <div class="frame">
         <form action="Composemail.jsp" method="post">
              <b>SelectPosition:</b> <select name="cars" >
    <option value="ABAP">ABAP
    <option value="saab">Saab
    <option value="fiat">Fiat
    <option value="audi">Audi
    </select><br><br>
    <table border="1" cellpadding="2" cellspacing="2">
    <tr><th>Name</th>
    <th>EmailId</th>
    <th>ContactNumber</th>
    <th>Position</th>
    </tr>
    <tr>
    <td>
    </td>
    </tr>
    </table><br>
    <b>SelectUser :</b><select name="cars">
    <option value="Administrator">Administrator
    <option value="saab">Saab
    <option value="fiat">Fiat
    <option value="audi">Audi
    </select>
    <br>
    <b>To :</b>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<input type="text" name="to" size="72"><br>
    <b>From :</b>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<input type="text" name="from" size="72"><br>
    <b>Subject :</b>&nbsp&nbsp&nbsp<input type="text" name="subject" size="72"><br>
    <%=Attachfiles1%><br><%=Attachfiles2%><br><%=Attachfiles3%><br><br>
    <b>Message:</b><br>
    &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<textarea rows="10" cols="50" name="message">
    </textarea> <br><br>
    <b>AttachedFile:</b>&nbsp<input type="file" name="fieldname1" value="filename" size="50"><br><br>
    <b>AttachedFile:</b>&nbsp<input type="file" name="fieldname2" value="filename" size="50"><br><br>
    <b>AttachedFile:</b>&nbsp<input type="file" name="fieldname3" value="filename" size="50"><br><br>
    &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<input type="submit" name="attachfiles" value="Attachfiles">
    <center>
    <input type="submit" name="send" value="Send" >
    </center>
    </form>
    </div>
    </body>
    </html>

    Create a separate MimeBodyPart object for each attachment, rather than reusing
    the same one over and over.

  • How to send mails to multiple recipents using SO_DOCUMENT_SEND_API

    Hi ,
    I am using the FM "SO_DOCUMENT_SEND_API".
    I am able to send an Excel sheet as attachement, but my requirement is to send multiple mails to the corresponding persons. I tried using coma, colan, semi colan as the separator in the import parameter SENDER_ADDRESS for two different mail id's but it was not useful.
    I need to send mails to multiple recipens using the same FM. (keeping one person in to list and two of the persons in CC.)
    can any on throw some light on this. 
    Thanks
    rewards will be great.....................................

    Hi,
    The code below demonstrates how to send an email to an external email address([email protected]),
    where the data is stored within a .xls attachment.
    Instead of the statement, <b>PARAMETERS: p_email   TYPE somlreci1-receiver
                                      DEFAULT '[email protected]'.</b>,
      use select-options & give the e-mail addresses that you want.
    *& Report  ZEMAIL_ATTACH                                               *
    *& Example of sending external email via SAPCONNECT                    *
    REPORT  ZEMAIL_ATTACH                   .
    TABLES: ekko.
    PARAMETERS: p_email   TYPE somlreci1-receiver
                                      DEFAULT '[email protected]'.
    TYPES: BEGIN OF t_ekpo,
      ebeln TYPE ekpo-ebeln,
      ebelp TYPE ekpo-ebelp,
      aedat TYPE ekpo-aedat,
      matnr TYPE ekpo-matnr,
    END OF t_ekpo.
    DATA: it_ekpo TYPE STANDARD TABLE OF t_ekpo INITIAL SIZE 0,
          wa_ekpo TYPE t_ekpo.
    TYPES: BEGIN OF t_charekpo,
      ebeln(10) TYPE c,
      ebelp(5)  TYPE c,
      aedat(8)  TYPE c,
      matnr(18) TYPE c,
    END OF t_charekpo.
    DATA: wa_charekpo TYPE t_charekpo.
    DATA:   it_message TYPE STANDARD TABLE OF solisti1 INITIAL SIZE 0
                    WITH HEADER LINE.
    DATA:   it_attach TYPE STANDARD TABLE OF solisti1 INITIAL SIZE 0
                    WITH HEADER LINE.
    DATA:   t_packing_list LIKE sopcklsti1 OCCURS 0 WITH HEADER LINE,
            t_contents LIKE solisti1 OCCURS 0 WITH HEADER LINE,
            t_receivers LIKE somlreci1 OCCURS 0 WITH HEADER LINE,
            t_attachment LIKE solisti1 OCCURS 0 WITH HEADER LINE,
            t_object_header LIKE solisti1 OCCURS 0 WITH HEADER LINE,
            w_cnt TYPE i,
            w_sent_all(1) TYPE c,
            w_doc_data LIKE sodocchgi1,
            gd_error    TYPE sy-subrc,
            gd_reciever TYPE sy-subrc.
    *START_OF_SELECTION
    START-OF-SELECTION.
      Retrieve sample data from table ekpo
      PERFORM data_retrieval.
      Populate table with detaisl to be entered into .xls file
      PERFORM build_xls_data_table.
    *END-OF-SELECTION
    END-OF-SELECTION.
    Populate message body text
      perform populate_email_message_body.
    Send file by email as .xls speadsheet
      PERFORM send_file_as_email_attachment
                                   tables it_message
                                          it_attach
                                    using p_email
                                          'Example .xls documnet attachment'
                                          'XLS'
                                          'filename'
                                 changing gd_error
                                          gd_reciever.
      Instructs mail send program for SAPCONNECT to send email(rsconn01)
      PERFORM initiate_mail_execute_program.
    *&      Form  DATA_RETRIEVAL
          Retrieve data form EKPO table and populate itab it_ekko
    FORM data_retrieval.
      SELECT ebeln ebelp aedat matnr
       UP TO 10 ROWS
        FROM ekpo
        INTO TABLE it_ekpo.
    ENDFORM.                    " DATA_RETRIEVAL
    *&      Form  BUILD_XLS_DATA_TABLE
          Build data table for .xls document
    FORM build_xls_data_table.
      CONSTANTS: con_cret TYPE x VALUE '0D',  "OK for non Unicode
                 con_tab TYPE x VALUE '09'.   "OK for non Unicode
    *If you have Unicode check active in program attributes thnen you will
    *need to declare constants as follows
    *class cl_abap_char_utilities definition load.
    *constants:
       con_tab  type c value cl_abap_char_utilities=>HORIZONTAL_TAB,
       con_cret type c value cl_abap_char_utilities=>CR_LF.
      CONCATENATE 'EBELN' 'EBELP' 'AEDAT' 'MATNR'
             INTO it_attach SEPARATED BY con_tab.
      CONCATENATE con_cret it_attach  INTO it_attach.
      APPEND  it_attach.
      LOOP AT it_ekpo INTO wa_charekpo.
        CONCATENATE wa_charekpo-ebeln wa_charekpo-ebelp
                    wa_charekpo-aedat wa_charekpo-matnr
               INTO it_attach SEPARATED BY con_tab.
        CONCATENATE con_cret it_attach  INTO it_attach.
        APPEND  it_attach.
      ENDLOOP.
    ENDFORM.                    " BUILD_XLS_DATA_TABLE
    *&      Form  SEND_FILE_AS_EMAIL_ATTACHMENT
          Send email
    FORM send_file_as_email_attachment tables pit_message
                                              pit_attach
                                        using p_email
                                              p_mtitle
                                              p_format
                                              p_filename
                                              p_attdescription
                                              p_sender_address
                                              p_sender_addres_type
                                     changing p_error
                                              p_reciever.
      DATA: ld_error    TYPE sy-subrc,
            ld_reciever TYPE sy-subrc,
            ld_mtitle LIKE sodocchgi1-obj_descr,
            ld_email LIKE  somlreci1-receiver,
            ld_format TYPE  so_obj_tp ,
            ld_attdescription TYPE  so_obj_nam ,
            ld_attfilename TYPE  so_obj_des ,
            ld_sender_address LIKE  soextreci1-receiver,
            ld_sender_address_type LIKE  soextreci1-adr_typ,
            ld_receiver LIKE  sy-subrc.
      ld_email   = p_email.
      ld_mtitle = p_mtitle.
      ld_format              = p_format.
      ld_attdescription      = p_attdescription.
      ld_attfilename         = p_filename.
      ld_sender_address      = p_sender_address.
      ld_sender_address_type = p_sender_addres_type.
    Fill the document data.
      w_doc_data-doc_size = 1.
    Populate the subject/generic message attributes
      w_doc_data-obj_langu = sy-langu.
      w_doc_data-obj_name  = 'SAPRPT'.
      w_doc_data-obj_descr = ld_mtitle .
      w_doc_data-sensitivty = 'F'.
    Fill the document data and get size of attachment
      CLEAR w_doc_data.
      READ TABLE it_attach INDEX w_cnt.
      w_doc_data-doc_size =
         ( w_cnt - 1 ) * 255 + STRLEN( it_attach ).
      w_doc_data-obj_langu  = sy-langu.
      w_doc_data-obj_name   = 'SAPRPT'.
      w_doc_data-obj_descr  = ld_mtitle.
      w_doc_data-sensitivty = 'F'.
      CLEAR t_attachment.
      REFRESH t_attachment.
      t_attachment[] = pit_attach[].
    Describe the body of the message
      CLEAR t_packing_list.
      REFRESH t_packing_list.
      t_packing_list-transf_bin = space.
      t_packing_list-head_start = 1.
      t_packing_list-head_num = 0.
      t_packing_list-body_start = 1.
      DESCRIBE TABLE it_message LINES t_packing_list-body_num.
      t_packing_list-doc_type = 'RAW'.
      APPEND t_packing_list.
    Create attachment notification
      t_packing_list-transf_bin = 'X'.
      t_packing_list-head_start = 1.
      t_packing_list-head_num   = 1.
      t_packing_list-body_start = 1.
      DESCRIBE TABLE t_attachment LINES t_packing_list-body_num.
      t_packing_list-doc_type   =  ld_format.
      t_packing_list-obj_descr  =  ld_attdescription.
      t_packing_list-obj_name   =  ld_attfilename.
      t_packing_list-doc_size   =  t_packing_list-body_num * 255.
      APPEND t_packing_list.
    Add the recipients email address
      CLEAR t_receivers.
      REFRESH t_receivers.
      t_receivers-receiver = ld_email.
      t_receivers-rec_type = 'U'.
      t_receivers-com_type = 'INT'.
      t_receivers-notif_del = 'X'.
      t_receivers-notif_ndel = 'X'.
      APPEND t_receivers.
      CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
           EXPORTING
                document_data              = w_doc_data
                put_in_outbox              = 'X'
                sender_address             = ld_sender_address
                sender_address_type        = ld_sender_address_type
                commit_work                = 'X'
           IMPORTING
                sent_to_all                = w_sent_all
           TABLES
                packing_list               = t_packing_list
                contents_bin               = t_attachment
                contents_txt               = it_message
                receivers                  = t_receivers
           EXCEPTIONS
                too_many_receivers         = 1
                document_not_sent          = 2
                document_type_not_exist    = 3
                operation_no_authorization = 4
                parameter_error            = 5
                x_error                    = 6
                enqueue_error              = 7
                OTHERS                     = 8.
    Populate zerror return code
      ld_error = sy-subrc.
    Populate zreceiver return code
      LOOP AT t_receivers.
        ld_receiver = t_receivers-retrn_code.
      ENDLOOP.
    ENDFORM.
    *&      Form  INITIATE_MAIL_EXECUTE_PROGRAM
          Instructs mail send program for SAPCONNECT to send email.
    FORM initiate_mail_execute_program.
      WAIT UP TO 2 SECONDS.
      SUBMIT rsconn01 WITH mode = 'INT'
                    WITH output = 'X'
                    AND RETURN.
    ENDFORM.                    " INITIATE_MAIL_EXECUTE_PROGRAM
    *&      Form  POPULATE_EMAIL_MESSAGE_BODY
           Populate message body text
    form populate_email_message_body.
      REFRESH it_message.
      it_message = 'Please find attached a list test ekpo records'.
      APPEND it_message.
    endform.                    " POPULATE_EMAIL_MESSAGE_BODY
    Hope this helps.
    Reward if helpful.
    Regards,
    Sipra

  • How to create a new role : Need to send notifications to multiple users.

    Hi All,
    I have a requirement where in I need to send notifications to multiple users
    and no. of users in the list is not fixed.i.e. this builds up dynamically.
    Kindly let me know how do I achieve this.
    Also wanted to know where form the Workflow roles get created i.e. who inserts data into wf_roles and wf_user_roles tables. Is there any UI to create roles and associate users with them.
    Thanks,

    Hi,
    Yes - by default all responsibilities are defined as roles in the Workflow directory. You just need to identify the role that corresponds to the responsibility (look at ORIG_SYSTEM and ORIG_SYSTEM_ID columns, IIRC) and then send the notification to the role.
    HTH,
    Matt
    WorkflowFAQ.com - the ONLY independent resource for Oracle Workflow development
    Alpha review chapters from my book "Developing With Oracle Workflow" are available via my website http://www.workflowfaq.com
    Have you read the blog at http://thoughts.workflowfaq.com ?
    WorkflowFAQ support forum: http://forum.workflowfaq.com

Maybe you are looking for

  • Error while running a job in Data services

    We are using Data services BO XI R3 tool. We have created datastore for Oracle database  8i using Microsoft ODBC DSN. This is the source datastore. When job is to pull the data from source to 10g target, we get the below error in log file: 25219     

  • Error while creating adaptive RFC model

    Dear All, I am trying to create Adaptive RFC model by  which i can fetch data from R/3 trough BAPI and display on the webDynpro UI. I am getting error Exception: org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.ExceptionInInitializ

  • Open pdf in mobile browser (share point 2013)

    hello, I need to Open pdf  in mobile  browser (share point 2013).i tried browser handling type in  permissive mode. but i couldn't view the pdf when i access through mobile browser. is there any work around to do this .? any help would be appreciated

  • Erasing something in a clip

    I have FCE2. I recorded a scene and "printed" the date on the tape. It is part of the scene. When I edit this clip, I want to remove the date. There are several colors behind the date. How can I remove the date such as erasing it and leaving the surr

  • Can I Delete Foreign Languages

    Can I delete foreign languages after installation? If so, how? Objective is to free up disk space. Thanks.