Salesforce 方法不存在或签名数据库不正确。executeBatch
我正在寻求帮助,找出这不起作用的原因 我不得不在一个项目中更改APEX类名。除了一个错误外,我修正了所有的错误Salesforce 方法不存在或签名数据库不正确。executeBatch,salesforce,Salesforce,我正在寻求帮助,找出这不起作用的原因 我不得不在一个项目中更改APEX类名。除了一个错误外,我修正了所有的错误 Error: Compile Error: Method does not exist or incorrect signature: void executeBatch(OriginalOpportunityAdSourceBatch, Integer) from the type Database at line 38 column 18 我不理解这个错误,因为唯一改变的是类名
Error: Compile Error: Method does not exist or incorrect signature: void executeBatch(OriginalOpportunityAdSourceBatch, Integer) from the type Database at line 38 column 18
我不理解这个错误,因为唯一改变的是类名
带误差函数
public PageReference runAllOpps(){
Database.executeBatch(new OriginalOpportunityAdSourceBatch(),batchSize);
PageReference pr = new PageReference('/'+opp.id);
pr.setRedirect(true);
return pr;
}
它正在呼叫的班级
global class OriginalOpportunityAdSourceBatch {
global Integer successCount = 0;
global Integer errorCount = 0;
global String errors = '';
global Database.QueryLocator start(Database.BatchableContext bc) {
return Database.getQueryLocator(
'Select id, AdSourceOriginalBucket__c, Ad_Source__c, isClosed, isWon from Opportunity WHERE IsClosed = TRUE AND IsWon = TRUE'
);
}
global void execute(Database.BatchableContext bc, List<Opportunity> scope){
List<Database.SaveResult> srs = Database.update(OriginalOpportunityActions.ProcessAdSource(scope),false);
for(Database.SaveResult sr:srs) {
if(sr.isSuccess()) {
successCount++;
}
else {
errorCount++;
errors += 'Opportunity Failed to Update. Record ID: ' + sr.getId();
for(Database.Error er: sr.getErrors()) {
errors += er.message;
}
errors += '<br/>';
}
}
}
global void finish(Database.BatchableContext bc){
String emailBody = 'Successful Updates: ' + successCount + ' Error Count: ' + errorCount;
if(errors!='') {
emailBody += ' -- ' + errors;
}
Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
mail.setToAddresses(new String[]{UserInfo.getUserEmail()});
mail.setReplyTo(UserInfo.getUserEmail());
mail.setSubject('Batch Original Opportunity Update Completed');
mail.setHTMLBody(emailBody);
system.debug('emailBody -- ' + emailBody);
if(!Test.isRunningTest()){Messaging.sendEmail(new List<Messaging.SingleEmailmessage>{mail});}
}
}
任何帮助都将不胜感激。您创建的类有start/execute/finish方法,但您可以随时更改它们。你需要向Salesforce保证他们会一直在那里 您忘记将Implements Database.Batchables添加到类声明中。修复它,然后应该编译使用该类的代码