Database.getQueryLocator返回错误的数据

时间:2018-12-13 21:51:33

标签: salesforce

我对Database.getQueryLocator()返回的结果感到非常困惑。

global Database.QueryLocator start(Database.BatchableContext BC) {
    string query = 'Select Label, Batch_Name__c, SObject_Name__c, External_system__c from Batch_Upload_Config__mdt where Is_Active__c = true';
    System.debug(query);
    return Database.getQueryLocator(query);
}

在查询编辑器中,我输入了准确的查询并确实获得了正确的数据。但是,在运行批处理时,它不返回“ Is_Active__c = true”的记录,而是返回“ Is_Active__c = false”的记录。

任何指针将不胜感激。

1 个答案:

答案 0 :(得分:0)

看起来与自定义元数据类型的查询有关。当我更改为使用自定义对象时,可以使用Database.getQueryLocator()获得正确的结果。