O Debuger realmente não funcionou em muitos casos que precisei.
Já tentou usar um Try Catch pra retornar o erro na conversa a cada ciclo?
@Guilherme_Miyamura esse problema está relacionado às condições de saída em algum ponto do seu fluxo e não com a ação (requisição) em si. Isso significa que o Builder entendeu que, em algum momento, há a chance de o usuário ficar em loop. Geralmente acontece quando um bloco não espera entradas de usuário.
Tente dar uma conferida nas condições de saída e veja se isso pode de fato acontecer.
Coloquei um try catch no script todo e na minha função porém não retornou nenhuma mensagem em nenhum dos casos
O problema é que a validação do Builder não leva em conta os resultados que podem levar a outros caminhos, como por exemplo uma requisição ou script.
Ele parece só olhar para o caminho de ligação dos blocos.
Isso impede que a gente crie ciclos entre blocos, pra reutilizá-los e também pra deixar mais organizado o fluxo.
Seria melhor ser somente uma mensagem de aviso, não impeditiva, pois a validação nunca vai saber o que virá nas respostas de requisições ou scripts por exemplo.
Isso acontece muito comigo também…nem o Try Catch funciona…lamentável
Tem algum problema sério nesse Script do Builder pra bugar até mesmo o Try Catch kkkkk
@Jhoni_Desb manda essa sugestão lá no BLiP Ideas 😉
Vamos lá, vou tentar explicar o fluxo para entender a situação.
tenho o seguinte fluxo:
No SetDeal tenho um script que recebe um Array de ids, eu pego o primeiro item desse array e uso esse dado pra fazer a requisição http pra minha API, na condição de saída desse bloco tenho essas situações (se o isSuccess retornar false ele vai pra outro bloco que é o FailSetDeal):
Caso a requisição tenha funcionado, ele manda para o bloco VerifySetDeal, nesse bloco existe um script que remove do array o item selecionado no bloco SetDeal para que o mesmo item não seja chamado 2 vezes na chamada HTTP.
A condição de saída desse bloco é a seguinte:
É nesse momento que o loop irá acontecer, enquanto existirem itens no array, o bloco SetDeal com a chamada HTTP deve ser executado.
Na teoria isso resolveria meu problema, porém não consigo testar pois o Builder não deixa eu publicar o fluxo.
Se puder me ajudar a resolver essa questão de alguma outra maneira que não estou pensando, eu agradeceria.
Não sei se eu entendi…
Mas não precisa fazer a requisição toda vez.
Faz uma só vez, armazena numa variável e trabalha ela…
Senão terá dados repetidos sempre em toda requisição, exceto os que excluiu, ou decidiu não pedir.
Me parece bem redundante essa manipulação de dados, além de custosa em termos performáticos.
acredito que eu que não expliquei direito, mas a API só aceita um id por requisição, ela não aceita um array de ids. Portanto preciso fazer essa requisição para cada id dentro do array, não tem como fazer só uma vez
Entendi…
Nada performático esse método deles…
Enquanto isso, já sugeri essa melhoria de ignorar o loop lá no BLiP ideias.
Sim… em ultimo caso seria pedir pra eles alterarem os parametros de entrada da API, porém é sempre uma dor de cabeça pedir para alterarem a API, por isso estou tentando resolver essa questão do meu lado primeiro.
@BrunoC consegue me auxiliar nesse caso pelo exemplo que passei?