I have a custom object called Server_Order__c used in my customer portal which is mirrored to the Opportunities object, as well as mirroring the data I would also like to mirror any attachments that are uploaded.

A 'Service Order' object is a child of Opportunities object, each record contains a Opportunity__c foriegn key.

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);                 
        }            
    }

**EDIT**<br>
My initial code has a trigger on Service Order updates, however the way Salesforce works when an attachment is uploaded it is stored in a child object hence no updates are made to the parent. I have modified my code accordingly but I am still unable to get it to work.