通过Axapta发送电子邮件

时间:2009-02-23 23:15:46

标签: axapta

我设法让我的Axapta 3.0通过printjobSettings类发送电子邮件。但是,似乎没有任何地方可以为我的电子邮件创建正文。目前我可以发送带有附件的电子邮件,但我想要包含一些文字,以便为收件人提供附件的上下文。

我该如何做到这一点?

1 个答案:

答案 0 :(得分:4)

类printJobSettings有一个方法mailSubject,用于设置生成的电子邮件的主题,但没有设置消息正文的方法。 printJobSettings是一个内核类,所以你不能修改它。

要实际发送电子邮件,内核会将printJobSettings对象传递给Info.ReportSendMail方法,您可以修改该方法。因此,作为一种解决方法,将主题和正文包装在主题中,然后在ReportSendMail中解压缩。

在您的报告中:

printJobSettings.mailSubject(msgSubject + '|' + msgBody);

在Info.ReportSendMail中:

subjectAndBody=printJobSettings.mailSubject();
delimiterPos=strFind(subjectAndBody,'|',1,strlen(subjectAndBody));
if(delimiterPos>0)
{
    msgSubject=subStr(subjectAndBody,1,delimiterPos-1);
    msgBody=subStr(subjectAndBody,delimiterPos+1,strlen(subjectAndBody)-delimiterPos);
}
else
{
    msgSubject=subjectAndBody;
    msgBody='Axapta Report';
}