Есть ли способ преобразовать оператор Apex Select в строку

У меня все наборы разрешений обновлены правильно, так как я могу жестко закодировать строку Test, где находится оператор select, но когда я ввожу оператор select, мой чат-бот немедленно закрывается. Может кто-нибудь быстро взглянуть? Я пытаюсь проверить, могу ли я взять адрес электронной почты, выполнить поиск объекта контакта и вернуть appDecision (настраиваемое поле)

public with Sharing class GetAdmissionStatus {
public class DecisionOutput {  
  
    @InvocableVariable( required=true )  
    public String aDecision;  
}  
  
public class DecisionInput {  
  
    @InvocableVariable( required=true )  
    public String applyEmail;  
      
}  

@InvocableMethod(label='Get Admission Status')  
public static List < DecisionOutput > GetAdmissionStatus( List < DecisionInput > listDecisionInputs ) {  
  
    List < DecisionOutput > objOutputs = new List < DecisionOutput >();  
    DecisionOutput objOutput = new DecisionOutput();  
    Set < String > strapplyEmails = new Set < String >();  
    for ( DecisionInput objDecisionInput : listDecisionInputs )  
        strapplyEmails.add( objDecisionInput.applyEmail );  
    objOutput.aDecision = [ SELECT AppDecision__c FROM Contact WHERE Email IN: strapplyEmails LIMIT 1].AppDecision__c;  
    objOutputs.add( objOutput );   
    return objOutputs;  
  
}  

}

1 ответ

Вопрос непонятный. У вас есть запрос в [скобках], и вы хотите увидеть его текстовую версию? Попробуйте с

String q = Database.getQueryLocator([SELECT Id FROM Account LIMIT 5]).getQuery();
System.debug(q);

Если вы хотите преобразовать результаты запроса в строку, это может помочь

String x = JSON.serializePretty([SELECT Id FROM Account LIMIT 5]);
// you can do JSON.serialize() too
System.debug(x);

Если бот закрывается, высока вероятность возникновения исключения. Попробуйте поиграть с ботом с открытой DeveloperConsole, посмотрите, не вылетит ли что-нибудь.

И дали ли вы "пользователю-боту" разрешение на использование этого класса вершины, контактного объекта и полей? Найдите в https://developer.salesforce.com/docs/atlas.en-us.bot_cookbook.meta/bot_cookbook/bot_cookbook_call_apex_action.htm "набор разрешений"

Другие вопросы по тегам