You need to sign in to do that
Don't have an account?
EdCode
apex trigger - delete File - ContentDocumentLink
Hi Stars,
I am trying to implement an apex trigger the detects if a File is deleted (so as to, in another apex class, verify if the Parent Object Case has any remaining children Files attached to it or not and consequently edit a boolean field on Case).
I got the solution to work smoothly when the File is added (trigger.isInsert) but that trigger does not work when having to spot/detect when a file is deleted.
I am doing manual tests with Classic.
Salesforce's article (https://help.salesforce.com/articleView?id=000312746&type=1&mode=1) states that, for a trigger to be able to detect when a File is deleted from Classic, the trigger must be on the object ContentDocumentLink (not ContentDocument).
However, in spite of the above statement on Salesforce's article, when manually deleting a File (attached to a Case) from the Service Console, the trigger on ContentDocumentLink is not being triggered (I can see that with a System.debut method).
Here is my code:
Thank you very much.
I am trying to implement an apex trigger the detects if a File is deleted (so as to, in another apex class, verify if the Parent Object Case has any remaining children Files attached to it or not and consequently edit a boolean field on Case).
I got the solution to work smoothly when the File is added (trigger.isInsert) but that trigger does not work when having to spot/detect when a file is deleted.
I am doing manual tests with Classic.
Salesforce's article (https://help.salesforce.com/articleView?id=000312746&type=1&mode=1) states that, for a trigger to be able to detect when a File is deleted from Classic, the trigger must be on the object ContentDocumentLink (not ContentDocument).
However, in spite of the above statement on Salesforce's article, when manually deleting a File (attached to a Case) from the Service Console, the trigger on ContentDocumentLink is not being triggered (I can see that with a System.debut method).
Here is my code:
trigger ContentDocumentLinkTrigger on ContentDocumentLink (after insert, after delete) { System.debug('FROM ContentDocumentLinkTrigger: Entered the trigger'); Set<Id> ContentDocumentLinkIds = new Set<Id>(); Set<Id> parentCasesIds = new Set<Id>(); //---> INSERTING FILE if(trigger.isInsert || trigger.isUndelete){ System.debug('FROM ContentDocumentLinkTrigger - triggerNew if isINSERT or isUNDELETE'); if(trigger.isAfter){ System.debug('FROM ContentDocumentLinkTrigger - triggerNew if isAFTER'); for(ContentDocumentLink cdl : trigger.new){ ContentDocumentLinkIds.add(cdl.Id); } } CaseChildren.retrieveCaseFromContentDocumentLinkTrue(ContentDocumentLinkIds); } //---> DELETING FILE if(trigger.isDelete){ System.debug('FROM ContentDocumentTrigger - Entered isDelete'); if(trigger.isAfter){ System.debug('FROM ContentDocumentTrigger - Entered isAfter'); } } }Could you possibly help me find out WHY is this trigger not triggering when deleting a File (associated to a Parent Case) from the Service Console in Classic?
Thank you very much.