• Ashish Chaudhari 56
  • NEWBIE
  • 0 Points
  • Member since 2021

  • Chatter
    Feed
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 0
    Questions
  • 1
    Replies
Can someone help- i need to rewrite the below trigger, with the same effects, but with remove all SOQL queries from inside the for loop:

trigger CdlUpdateDischarge on ContentDocumentLink (after insert) {
    Set <string> setlinkedid = new set<string>();
    for (ContentDocumentLink cd : trigger.new){
            setlinkedid.add(cd.linkedentityid);
        List<Discharge__c> disList = [select id from discharge__c where id=:setlinkedid];
        List<contentdocumentlink> cdl = [SELECT ContentDocumentId
                                     FROM ContentDocumentLink 
                                     WHERE LinkedEntityId in (select id from discharge__c where id=:setlinkedid)];
        try{
        if (cdl.size() > 0 && cdl.size() < 2){
            for (Discharge__c dis : disList){
            dis.Referrals_Status__c = 'Documents Uploaded';
            }
            update disList;
        }    
        }catch(exception e){
            system.debug(e);
        }
        
    }
    
}