【问题标题】:Custom Label value not working in SOQL Query自定义标签值在 SOQL 查询中不起作用
【发布时间】:2022-01-08 10:34:56
【问题描述】:

我正在尝试在 SOQL 查询中使用自定义标签值。查询不接受自定义标签值。它是预期的数字。

整数 num_days = Integer.valueOf(System.Label.Num_of_Days); 选择 id, name FROM contact WHERE LastModifiedDate >= LAST_N_DAYS :num_days

谢谢, 阿尼尔库马尔

【问题讨论】:

    标签: salesforce soql


    【解决方案1】:

    您正在使用的“常量”的完整语法中已经有一个分号:LAST_N_DAYS:7 等。整个内容必须是编译时已知的文本,而不仅仅是 : 之前的部分

    这甚至不会编译,用 1 或 2 个分号。

    Integer x = 7;
    List<Account> accs = [SELECT Id FROM Account WHERE CreatedDate = LAST_N_DAYS:x];
    System.debug(accs);
    

    您需要使用动态 SOQL 或使用自定义标签来构造日期变量

    String x = '7';
    List<Account> accs = Database.query('SELECT Id FROM Account WHERE CreatedDate = LAST_N_DAYS:' + x);
    System.debug(accs);
    
    DateTime cutoff = System.today().addDays(- Integer.valueOf(x));
    System.debug(cutoff);
    System.debug([SELECT Id FROM Account WHERE CreatedDate <= TODAY AND CreatedDate >= :cutoff]);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-23
      • 2013-09-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多