• Mubeen
  • NEWBIE
  • 0 Points
  • Member since 2012

  • Chatter
    Feed
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 0
    Questions
  • 1
    Replies

Hi,

I am trying this code from the VF page, testing with hardcoded value, however it gives this error?

Does anyone know why.

What do i change to make it insert record?

 

Thanks

 

 

Visualforce Error
 

 

Class.escalationcd.getcaseemailmessage: line 41, column 1

 

 

public class escalationcd {
private final Case casenow;

public escalationcd(ApexPages.StandardController controller) {
this.casenow = (Case)controller.getRecord();
//String cid = casenow.id;

}

Public void getcaseemailmessage(){
List<Case> mescal = new List<Case>([Select Id,attach_casenumber__c from Case where Id = '500d0000003CkW4']);

map<Id,Id> oldnewCaseIdmap =new map<Id,Id>();
Map<Id, EmailMessage> emailMessageMap = new Map<Id, EmailMessage>{};
Attachment[] insertAttList = new list <Attachment>();
Attachment[] attList = new list <Attachment>();
list<Case> caseemlist=new list<Case>();

for(Case cs:mescal) {
if(cs.attach_casenumber__c!=null) {
oldnewCaseIdmap.put(cs.id,cs.attach_casenumber__c);
}
}

if(oldnewCaseIdmap.size()!=0) {
//get list of emails from old/current case
caseemlist=[Select (Select ParentId,fromaddress,fromname,subject,textbody,htmlbody,toaddress,ccaddress,status,messagedate From EmailMessages) 
From Case where Id in:oldnewCaseIdmap.keySet()];
}

for(Case c:caseemlist) {
for(EmailMessage em:c.EmailMessages) {
Emailmessage message = new Emailmessage (fromname = em.fromname,subject = em.subject,textbody = em.textbody,htmlbody = em.htmlbody,toaddress = em.toaddress,
fromaddress = em.fromaddress,ccaddress = em.ccaddress,status = em.status,messagedate = em.messagedate,ParentId=oldnewCaseIdmap.get(c.id));
//emlisttoinsert.add(message);
emailMessageMap.put(em.Id, message); 
}
}

if(emailMessageMap.values().size()>0) {
insert emailMessageMap.values();

attList = [select Id, Name, Body, ParentId from Attachment where ParentId in :emailMessageMap.keySet()];

for (Attachment a : attList) {
EmailMessage em = emailMessageMap.get(a.ParentId);
Attachment att = new Attachment(Name = a.Name, Body = a.Body, ParentId = em.Id);
insertAttList.add(att);
}
}

if(insertAttList.size() > 0) {
insert insertAttList;

}

}