+ Start a Discussion
Arthur Almeida 12Arthur Almeida 12 

Different results executing in Anonymous Window and in Einstein Bot

I have this class:
public class Class {    
    public class HandleInput {        
        public String idAsset;    
    public class HandleOutput {        
        public String status;    

    public static List<HandleOutput> find(List<HandleInput> inputParameters){        
        String idAsset = inputParameters.get(0).idAsset;                
        String status = [SELECT Status FROM Asset WHERE id =: idAsset];

        List<HandleOutPut> outPuts = new List<HandleOutput>();        

        HandleOutput outPut = new HandleOutput();        
        outPut.statusPreAutorizacao = status;        
        return outPuts;    

When I execute this class in the anonymous window, the result is Success, but when the Einstein Bot executes the class, it gives an error:
System.QueryException: List has no rows for assignment to SObject

When I execute in the anonymous window, I execute this script:
Class.HandleInput handleInput = new Class.HandleInput();
handleInput.idAsset = X;

List<Class.HandleInput> inputParameters = new List<Class.HandleInput>();

List<Class.HandleOutput> outputs = Class.find(inputParameters);

Why the result is different from executing in anonymous and in Einstein Bot?
Best Answer chosen by Arthur Almeida 12
Arthur Almeida 12Arthur Almeida 12

I solved my problem add the "without sharing" keyword to my class.