32 lines
2.5 KiB
OpenEdge ABL
32 lines
2.5 KiB
OpenEdge ABL
global with sharing class BatchtodeletelogsNew implements Database.Batchable<Sobject>,Database.Stateful{
|
|
global Database.QueryLocator start (Database.BatchableContext bc){
|
|
string query= '';
|
|
String querys = 'Select '+CheckAccessibility.isAccessible('HIC_ShopifySync__Chunk_Size__c,id,HIC_ShopifySync__AccountContactBatchCompleted__c, name,HIC_ShopifySync__Inventory_Location__c,HIC_ShopifySync__ProductVariantBatchCompleted__c, HIC_ShopifySync__Enable_Draft_Order__c,HIC_ShopifySync__Collection__c, HIC_ShopifySync__how_many_days_keep_logs__c,HIC_ShopifySync__OrderBatchCompleted__c, HIC_ShopifySync__Default_Field_Mapping__c,HIC_ShopifySync__Specify_Close_Date__c, HIC_ShopifySync__Default_Account__c,HIC_ShopifySync__InventoryBatchCompleted__c, HIC_ShopifySync__Shopify_URL__c, HIC_ShopifySync__API_Key__c, HIC_ShopifySync__Private_Key_Password__c, HIC_ShopifySync__Opportunity__c, HIC_ShopifySync__Order__c, HIC_ShopifySync__Opportunity_Line_Item__c, HIC_ShopifySync__Order_Line_Item__c, HIC_ShopifySync__Order_Fulfillment__c, HIC_ShopifySync__Person_Account__c,, HIC_ShopifySync__Account_Contact__c, ','HIC_ShopifySync__HIC_Configuration__c')+' from HIC_ShopifySync__HIC_Configuration__c limit 1';
|
|
list<HIC_ShopifySync__HIC_Configuration__c> listOfConfiguration = new list<HIC_ShopifySync__HIC_Configuration__c>();
|
|
listOfConfiguration = Database.query(querys);
|
|
query = 'Select '+CheckAccessibility.isAccessible('id','HIC_ShopifySync__shopify_log__c')+' from HIC_ShopifySync__shopify_log__c';
|
|
|
|
if(!listOfConfiguration.isEmpty() && listOfConfiguration[0].HIC_ShopifySync__how_many_days_keep_logs__c != null){
|
|
query += ' where ' +CheckAccessibility.isAccessible('CreatedDate','HIC_ShopifySync__shopify_log__c')+'<LAST_N_DAYS:'+listOfConfiguration[0].HIC_ShopifySync__how_many_days_keep_logs__c;
|
|
}
|
|
query += ' WITH SECURITY_ENFORCED';
|
|
system.debug('query>>'+query);
|
|
|
|
return Database.getQueryLocator(query);
|
|
}
|
|
global void execute(Database.BatchableContext bc ,list<Sobject> scope){
|
|
|
|
try{
|
|
if(!scope.isEmpty()){
|
|
if(CheckAccessibility.isDeletable('HIC_ShopifySync__shopify_log__c'))
|
|
Database.delete(scope,false);
|
|
}
|
|
}catch(exception e){
|
|
system.debug('getting errors when deleting logs');
|
|
}
|
|
|
|
}
|
|
global void finish(Database.BatchableContext bc){
|
|
system.debug('Delete logs successfully');
|
|
}
|
|
} |