Skip to main content
5 of 7
edited title
Deployment Failure
  • 4.9k
  • 16
  • 89
  • 190

Copying attachments from object to object

I have a custom object called Server_Order__c used in my customer portal which is then mirrored to my Opportunities, I would like to also copy over attachments to the relavent Opportunity.

How the attachment can be linked to the right Opportunity is by getting the Opportunity__c value from Service_Orders__c object.

Edit: Due to the way SF works, attachment are uploaded to their own object and justhave reference the parent object which means the record is not updated. What I would like to know is how can I have any attachments uploaded to my Service Order object, they should be also copied to the relevant Opportunity. The mirrored opportunity (ID) is referenced in my Service Order as Opportunity__c.

Here is my apex trigger as of now, but it does not seem to work.

trigger CopyAttachmentstoOpps on Attachment (after insert) {

    List<Attachment> insertAttList = new List<Attachment>();
    
    for (Attachment att:Trigger.new) {           
        String parentIdString = String.valueof(att.parentId);
        Service_Order__c oppId = [SELECT Opportunity__c FROM Service_Order__c WHERE ID = :att.parentId];
        system.debug('The ID is' + oppId);
        
        Attachment b = att.clone();
        b.parentid = parentIdString;
        insertAttList.add(b);                 
    }            
}
Deployment Failure
  • 4.9k
  • 16
  • 89
  • 190