Anexo email

54 views
Skip to first unread message

mheydi

unread,
Nov 17, 2010, 12:55:37 PM11/17/10
to Dynamics AX BR
Ola pessoal, alguem poderia me ajudar a anexar um documento qualquer
no email do ax automaticamente.
Enviar email automatico consegui, mas não consigo anexar.
Achei um script na net , mas não entra no mapiEx.mapiInitialised(),
ele sempre fica como false, tem alguma coisa de diferente?

void clicked()
{
MapiEx
mapiEx;
MapiExMail
mapiExMail;
boolean
mapiInitialised;
COM
outlook;
COM item;
COM
outlookNameSpace;
COM
folder;
COM
attachments;
str
storeId;
str
entryId;
#smmMSOutlook2002ObjectModelConstants
#define.outlookapplication("outlook.application")
#define.mapi("mapi")
// #define.htmlText('Hi There')
#define.htmlText('<html><body>Hi There</body></html>')
str user;
int teste;
;
breakpoint;
super();

outlook = new COM (#outlookapplication);
outlookNameSpace = outlook.getNameSpace(#mapi);
outlookNameSpace.logon();

folder = outlookNameSpace.getDefaultFolder(#olFolderInbox);
item = outlook.createItem(#olMailItem);
item.save();
storeId = folder.storeId();

mapiEx = new MapiEx();

if(mapiEx && mapiEx.mapiInitialised())
{
mapiInitialised = true;
if (!mapiEx.logon("","",1) || !
mapiEx.openMessageStore(storeId))
{
mapiInitialised = false;
mapiEx.logout();
mapiEx.finalize();
}

//To send mail in HTML format
item.bodyFormat(#olFormatHTML);
item.htmlBody(#htmlText);

//To send mail in plain text format
//item.body('Hi There');

item.subject('Teste email');

//----Attachements-------------------
attachments = item.attachments();
attachments.add('C:\\log.txt', 1, 1, 'log.txt');


item.saveSentMessageFolder(outlookNameSpace.getDefaultFolder(#olFolderSentMail));
item.save();
entryId = item.entryId();

mapiExMail = new mapiExMail();
mapiExMail = mapiEx.getMailFromEntryId(entryId);

if (!mapiExMail)
{
mapiInitialised = false;
mapiEx.logout();
mapiEx.finalize();
}
}

if(item)
{
if (mapiInitialised && mapiExMail)
{
//TO
mapiExMail.addRecipient('mhe...@ramo.com.br', "", #olTo);
//CC
mapiExMail.addRecipient('mhe...@ramo.com.br',"",#olCC);
//BCC
mapiExMail.addRecipient('mhe...@ramo.com.br',"",#olBCC);

try
{
mapiExMail.save();
mapiExMail.close();
mapiExMail.finalize();
item =
outlookNameSpace.getItemFromID(strupr(entryId));

//This will display the mail item
//item.display();

//This will directly send the mail without poping the
mail window
item.send();
}
catch
{
if (mapiInitialised)
{
mapiEx.logout();
mapiEx.finalize();
}

// An error occured sending mail from outlook.
throw error("@SYS97460");
}
}
}
}


Grato
Marcelo

Gustavo Bagno

unread,
Nov 18, 2010, 5:57:30 AM11/18/10
to dynami...@googlegroups.com
Se eu fosse você, ao invés de usar classes do .NET, usaria a SysMailer do AX mesmo.
Lá você pode anexar arquivos, enviar cópias... enfim...completo.

Além do mais, no próprio HELP do AX existem samples de código.

Abraço.


--
Você está recebendo esta mensagem porque se inscreveu no grupo "Dynamics AX BR" dos Grupos do Google.
Para postar neste grupo, envie um e-mail para dynami...@googlegroups.com.
Para cancelar a inscrição nesse grupo, envie um e-mail para dynamicsaxbr...@googlegroups.com.
Para obter mais opções, visite esse grupo em http://groups.google.com/group/dynamicsaxbr?hl=pt-BR.


Marcelo Heydi

unread,
Nov 18, 2010, 6:01:42 AM11/18/10
to dynami...@googlegroups.com

Ola Gustavo

 

Obrigado pela retorno, eu usei essa classe mesmo, consegui ontem mesmo.

 

Valeu pela ajuda.

 

Marcelo Heydi

Desenvolvimento | mhe...@ramo.com.br

 

São Paulo [55 11] 3214 2278 | Atlanta 404 486 1181

Revendas: Belém | Brasília | Goiânia | Rio de Janeiro

 

Descrição: Descrição: cid:image004.jpg@01CB55AA.C9806FB0Descrição: Descrição: cid:image006.jpg@01CB55AA.C9806FB0

image001.jpg
image002.jpg
Reply all
Reply to author
Forward
0 new messages