Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1627
  • Last Modified:

Sending MAPI email with PERL in ClearQuest

Here's what I am using for my code, I want to be able to add multiple people on the TO: line CC: line and resolve them:  Please help!

  $myvar = "Resolved Name";
   use Win32::OLE;
   my $mapisession = Win32::OLE->new("MAPI.Session")
        or die "Failed to create a new MAPI Session!";

        # Logon to server
   my $res = $mapisession->Logon("OUTLOOK");
        die "Could not log on to exchange server!" if ($res);
   # Create a new message
   my $msg = $mapisession->Outbox->Messages->Add();
   # Add the recipient and resolve the address
       my $recipient = $msg->Recipients->Add();
        $recipient->{Name} = $myvar;
        $recipient->Resolve();
        # Add your text
        $msg->{Subject} = "Fat Client Test";
        $msg->{Text} = qq/
                Email test ....
                will this work?
                        Signed
                        Fred and Barney
                /;
        # Send the email
        $msg->Update();
        $msg->Send(0, 0, 0);
        # Log off
        $mapisession->Logoff();
0
mschwade
Asked:
mschwade
  • 3
  • 2
1 Solution
 
Adam314Commented:
Try:
my $recipient2 = $msg->Recipients->Add();
$recipient2->{Name} = $myvar2;
$recipient2->Resolve();
... and so on for more recipients

0
 
mschwadeAuthor Commented:
Thank you that worked, but is there anyway to make the 2nd recpient show up on the CC line?

Thanks!
0
 
mschwadeAuthor Commented:
Adam,

I tried this, but didn't work..

      $rcount = 1;
      foreach $user_name (@users) {
      recipientobj = "recipient$rcount";
      my $recpientobj = $msg->Recipients->Add();
      $recipientobj->{Name} = $user_name;
      $recipientobj->Resolve();
      $rcount = $rcount+1;
      }
0
 
Adam314Commented:
According to this: http://msdn2.microsoft.com/en-us/library/ms528129.aspx
you need to set the type to 2 for cc.  I'm not sure how to do that, but try this:
    my $recipient2 = $msg->Recipients->Add($myvar2, undef, 2);
    $recipient2->Resolve();

To add from an array
foreach my $uname (@users) {
    my $recip = $msg->Recipients->Add();
    $recip->{Name} = $uname;
    $recip->Resolve();
}

0
 
mschwadeAuthor Commented:
I figured out the CC by the code below.. But Adam, remember in adding from an array, the my $recip still needs to be different each time through the loop or it doesn't work, for example my $recip, my $recip2, etc..

my $recipient2 = $msg->Recipients->Add();
$recipient2->{Name} = $uname;
$recipient2->{Type}=1;
$recipient->Resolve();
0

Featured Post

[Webinar On Demand] Database Backup and Recovery

Does your company store data on premises, off site, in the cloud, or a combination of these? If you answered “yes”, you need a data backup recovery plan that fits each and every platform. Watch now as as Percona teaches us how to build agile data backup recovery plan.

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now