You need to sign in to do that
Don't have an account?
Lukesh Karmore
problem with Messaging.emailFileAttachment below code
trigger sendEmailToContactWhenfileIsCreated on ContentDocumentLink (after insert) {
set<id> conDocId=new set<id>();
for(contentDocumentLink cond:Trigger.new){
if(cond.linkedEntityId!=null ){
conDocId.add(cond.linkedEntityId);
}
}
list<Messaging.SingleEmailMessage> emailList = new list<Messaging.SingleEmailMessage>();
list<contact> conlist=[select id ,email from contact where id in:conDocId];
for(contentDocumentLink cond:Trigger.new){
for(contact c:conlist){
contentversion cv=[select title,versionData from contentversion where id=:cond.contentdocumentId ];
Messaging.SingleEmailMessage semail = new Messaging.SingleEmailMessage();
list<string> toaddress=new list<string>();
toaddress.add(c.Email);
semail.setToaddresses(toaddress);
semail.setsubject('Email Attachment');
semail.setPlaintextbody('This is first email attachment');
semail.settargetobjectId(c.id);
emailList.add(semail);
Messaging.EmailFileAttachment efa=new Messaging.EmailFileAttachment();
efa.setFilename(cv.Title[0]);
efa.setbody(cv.versionData[0]);
efa.setFileattachment(new Messaging.EmailFileAttachment[]{efa});
}
}
Messaging.sendEmail(emailList);
}
I am getting error in above bold line , how to setFilename &setbody Help here Thank You.
set<id> conDocId=new set<id>();
for(contentDocumentLink cond:Trigger.new){
if(cond.linkedEntityId!=null ){
conDocId.add(cond.linkedEntityId);
}
}
list<Messaging.SingleEmailMessage> emailList = new list<Messaging.SingleEmailMessage>();
list<contact> conlist=[select id ,email from contact where id in:conDocId];
for(contentDocumentLink cond:Trigger.new){
for(contact c:conlist){
contentversion cv=[select title,versionData from contentversion where id=:cond.contentdocumentId ];
Messaging.SingleEmailMessage semail = new Messaging.SingleEmailMessage();
list<string> toaddress=new list<string>();
toaddress.add(c.Email);
semail.setToaddresses(toaddress);
semail.setsubject('Email Attachment');
semail.setPlaintextbody('This is first email attachment');
semail.settargetobjectId(c.id);
emailList.add(semail);
Messaging.EmailFileAttachment efa=new Messaging.EmailFileAttachment();
efa.setFilename(cv.Title[0]);
efa.setbody(cv.versionData[0]);
efa.setFileattachment(new Messaging.EmailFileAttachment[]{efa});
}
}
Messaging.sendEmail(emailList);
}
I am getting error in above bold line , how to setFilename &setbody Help here Thank You.
Your code have small mistake, i rectitfied the mistake please see the below code,
you are calling the array is error, see below code how to call the array elements
efa.setFilename(cv[0].Title);
efa.setbody(cv[0].versionData);
trigger sendEmailToContactWhenfileIsCreated on ContentDocumentLink (after insert) {
set<id> conDocId=new set<id>();
for(contentDocumentLink cond:Trigger.new){
if(cond.linkedEntityId!=null ){
conDocId.add(cond.linkedEntityId);
}
}
list<Messaging.SingleEmailMessage> emailList = new list<Messaging.SingleEmailMessage>();
list<contact> conlist=[select id ,email from contact where id in:conDocId];
for(contentDocumentLink cond:Trigger.new){
for(contact c:conlist){
contentversion cv=[select title,versionData from contentversion where id=:cond.contentdocumentId ];
Messaging.SingleEmailMessage semail = new Messaging.SingleEmailMessage();
list<string> toaddress=new list<string>();
toaddress.add(c.Email);
semail.setToaddresses(toaddress);
semail.setsubject('Email Attachment');
semail.setPlaintextbody('This is first email attachment');
semail.settargetobjectId(c.id);
emailList.add(semail);
Messaging.EmailFileAttachment efa=new Messaging.EmailFileAttachment();
efa.setFilename(cv[0].Title);
efa.setbody(cv[0].versionData);
efa.setFileattachment(new Messaging.EmailFileAttachment[]{efa});
}
}
Messaging.sendEmail(emailList);
}
Thanks
try the below change.
Thanks,
Maharajan.C