03.09.2010, 19:11
|
#1
|
Участник
|
AX 2009: Игнорируется аттачмент - CDO.Message
Проблема: не отсылается аттачмент, когда используем SysEmailBatch, при этом не выдаётся никакой ошибки. Аттачмент небольшой - обычный файл (при задании неправильного имени файла, выдается ошибка о том, что не удается найти файл). Причем, используя SysEmailBatch, сам имэйл отсылается корректно, но без аттачмента. В чем может быть проблема, кто-нибудь сталкивался с похожей?
(smmOutlookEmail отсылает аттачмент без проблем, но этот метод не имеет требуемой нам функциональности).
Используемый код:
X++: static void Job3(Args _args)
{
SysEmailBatch mailer;
InteropPermission perm = new InteropPermission( InteropKind::ComInterop );
smmOutlookEmail out = new smmOutLookEmail();
;
// [B]Outlook - this works but is interactive (unusable for a batch process) and lacks some options[/B]
if (out.createMailItem())
{
out.addEMailRecipient([EMAIL="'test2@mail.com'"]'test2@mail.com'[/EMAIL]);
out.addSubject('Test mail');
out.isHTML(false);
out.addBodyText('Hi There');
out.addSubject( 'test attachment' );
out.addFileAsAttachment('\\\\networkshare\\document\\crmFiles\\1G4.JPG');
out.sendEMail(smmSaveCopyOfEmail::No);
info( 'sent' );
}
// [B]sysEmailBatch using CDO.Message - this works (no error) but does not send the attachment[/B]
perm.assert();
mailer = new sysEmailBatch();
mailer.parmEmailAddr( [EMAIL="'test2@mail.com'"]'test2@mail.com'[/EMAIL] );
mailer.parmSenderAddr( [EMAIL="'test4@mail.com'"]'test4@mail.com'[/EMAIL] );
mailer.parmSendername( 'dwc' );
mailer.parmPriority( emailPriority::Normal );
mailer.parmSubject( 'will this email contain an attachment?' );
mailer.parmMessageBody( 'a boquet 4 u' );
mailer.mailer().attachments().add( '\\\\networkshare\\document\\crmFiles\\1G4.JPG' );
mailer.run();
}
|
|