Created
May 17, 2018 23:45
-
-
Save rruhlen/7e1258b4346b2a47bfc052bd8a598d8d to your computer and use it in GitHub Desktop.
Batch delete articles and topics via dev console.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public with sharing class BatchDeleteArticles implements Database.batchable<SObject>,Database.allowscallouts,Database.Stateful{ | |
private String configId; | |
public BatchDeleteArticles (String configId) { | |
this.configId = configId; | |
} | |
public BatchDeleteArticles () { | |
} | |
public Iterable<SObject> start(Database.batchableContext batchableContext) { | |
String kbObject = 'knowledge__kav'; //MigrationHelper.getKnowledgeObject(configId); | |
List<SObject> dral = Database.query('select id, KnowledgeArticleId, publishstatus from ' + kbObject + ' where publishstatus = \'Draft\''); | |
List<SObject> onal = Database.query('select id, KnowledgeArticleId, publishstatus from ' + kbObject + ' where publishstatus = \'Online\''); | |
List<SObject> al = new List<SObject>(); | |
al.addall(dral); | |
al.addall(onal); | |
return al; | |
} | |
public void execute(Database.BatchableContext batchableContext, List<SObject> al) { | |
List<SObject> dral = new List<SObject>(); | |
List<SObject> onal = new List<SObject>(); | |
for (SObject a:al){ | |
if ((String)a.get('PublishStatus') == 'Draft'){ | |
KbManagement.PublishingService.deleteDraftArticle((String)a.get('KnowledgeArticleId')); | |
} | |
if ((String)a.get('PublishStatus') == 'Online'){ | |
KbManagement.PublishingService.archiveOnlineArticle((String)a.get('KnowledgeArticleId'),null); | |
KbManagement.PublishingService.deleteArchivedArticle((String)a.get('KnowledgeArticleId')); | |
} | |
} | |
} | |
public void finish(Database.BatchableContext bc) { | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment