E aí automatizador tudo beleza bom seja novamente bem-vindo a mais um vídeo aqui do canal da aoti um dos melhores canais para você aprender a automação de tarefas principalmente envolvendo aí o ntn tá se você não é inscrito né eu sempre estou fazendo aqui o apelo no início do vídeo para você já se inscrever tá para poder apoiar aí o nosso trabalho e não deixa de dar like no vídeo tá porque uma vez você dando like No vídeo você tá nos ajudando a propagar mais ainda esse vídeo no YouTube tá tem muitas pessoas assim como
você e também tem algumas dificuldades dúvidas né Com relação aí automações no NN e que precisa saber da existência desse vídeo tá então deixa um like aí para poder apoiar o nosso trabalho tá bom ah e não se esqueça de ativar os sininhos porque assim que sair novos vídeos você já vai estar sendo notificado beleza bom eh para você que tá aqui pela primeira vez no canal não me conhece meu nome é Hugo tá eu sou eh consultou em automação de marketing aqui pela Auto e estou com essa missão aí né de ajudar milhares de
milhares de usuários de ntn a conseguir construir automações melhores né E para isso é necessário entender muito bem da ferramenta tá E começamos já com esse propósito Né desde lá do curso para iniciante né Você pode conferir aí no nosso canal tem a Playlist tá de vários cursos aí para para iniciante também temos cursos lá na udem tá e a partir de então Eh lançamos um último vídeo né que é sobre eh o editor de expressões do ntn né onde você vai aprender ali a base né ou seja como funciona a estrutura de dados ali
do ntn para que você possa conseguir né Eh desenvolver suas automações né quem não domina ali o editor de expressão de expressões do NN dificilmente vai conseguir desenvolver alguma coisa tá então se você não assistiu já acessa aí a lista dos nossos vídeos e confere esse vídeo primeiro Tá bom depois que você assistir esse vídeo aí sim faz mais sentido você assistir esse aqui onde nós vamos estar explorando né sobre as funções as principais funções de JavaScript para você fazer a manipulação aí de dados Tá bom então aqui focando aqui no nosso ntn né e
eu vou fazer o seguinte eu vou adicionar aqui é um node set tá aliás antes do node 7 eu vou já colocar aqui um data Store PR gente poder ter uma massa de dados aqui para poder aplicar Essas funções tá Vou botar aqui para retornar todos mesmos e vamos precisar tá em seguida vamos colocar aqui o node 7 Tá onde Vamos criar aqui uma constante qualquer tá botar aqui botar o nome de const mesmo de constante tá aí vou deixar aqui string mesmo deixa eu rodar aqui meu workflow Ok já para ele poder gerar aqui
o output E aí já vou referenciar aqui o ID tá poderar aqui o ID confundir muito Eu já vou habilitar aqui a opção no input Fields né para ele poder exibir apenas eh exibir apenas a constante né aqui do do node set né para não puxar o output do node anterior beleza bom E aí a primeira função tá que é muito utilizada né que é essencial aí nas suas automações é você contabilizar a quantidade de caracteres né Às vezes você tem uma automação Ah tá lembrando que nesse vídeo aqui a gente não vai somente ensinar
como funciona eh as principais funções aí do JavaScript Mas vamos já exemplificar né Eh situações que você precise usar elas tá então isso vai ajudar também a você ter uma clareza aí maior com relação a isso tá eh então por exemplo a parte do Len né que vai ser a nossa primeira função Inclusive eu já deixei até um um bloco aqui separado ó O lenf que é esse aqui primeiro tá ele vai servir para você contabilizar a sua string tá então por exemplo vamos dizer vou até colocar aqui um if né colocar aqui um if
vamos dizer que eu fosse verificar a quantidade de caracteres do né para saber se ele segue um padrão então eu eu eu filtrar aqui somente os leads que tem um ID válido e para ser ID válido um dos um dos critérios é ele ter sei lá oito caracteres tá Seria o tamanho padrão dele ele não pode ter nem seis e não pode ter nem nem nove tá então como eu faria por exemplo eu já vou colocar aqui o valor tá na verdade tem que ser bem que teria que ser Number não vou deixar como string
mesmo tá então vou botar aqui ó o tem que ser igual a 8 tá E aí se eu maximizar aqui deixa eu cancelar aqui tá E aí por exemplo eu der um ponto e colar a função né bem que eu já tem ponto aqui ó mas aí se você quiser você pode também escrever na mão tá então como é que aplica uma função aqui na no seu campo né no no seu valor aqui no seu dado né você depois do nome do campo você dá um ponto escreve Len tá E aí ele vai retornar esse
aqui tá se não me engano os dois Acho que são função não se bem que um é propriedade tá e o outro é considerado função Ok os dois vão funcionar Tá então tanto faz Se você usar como propriedade ou função ele vai funcionar Tá mas vamos usar como função porque é o foco aqui desse vídeo beleza e aí olha só que interessante ele retornou para mim oito ou seja ele quis dizer o seguinte ó se bem que aqui deixa eu ver ele não tá interpretando como como string né bem que era para ele aceitar é
porque acho que ele reconhece como como número né como informo aqui mas tudo bem eu vou fazer o seguinte aqui eu vou colocar eu vou forçar para ele se tornar número tá Inclusive essa função aqui nós vamos ver depois beleza ó oito será que ainda assim ele não vai funcionar Ah tá é que eu já tenho que colocar como número Ah tá agora já não deu mais erro tá Então olha só que interessante isso aqui eh o critério é ser igual a 8 tá que é o padrão ali da quantidade de caractéres do id E
aí de Fato né se eu executar aqui ó ele vai dar true tá Por quê Porque correspondeu aquele critério Beleza então eu tive que usar Len para poder saber a quantidade de caractéres daquela minha string né Eh e saber se tem aquela determinada quantidade tá Porém quando você usa número aqui no IF você tem que colocar a condição aqui do tipo Number tá então às vezes você vai ter que converter essa tua string em inteiro tá E essa conversão eu fiz aqui dessa forma assim tá usando essa outra função aqui chamada parent tá E aí
dentro do parent né seria assim ó né par eu coloquei essa expressão aqui né que seria o meu campo constante com a função l Beleza Ok então esse é a primeira função né que é bastante utilizada aí nas automações a segunda é a substring e o Slice tá isso aqui é para você poder pegar determinados trechos ali de uma string tá então por exemplo e às vezes é muito utilizado por exemplo quando a gente fala de números né número por exemplo de WhatsApp número de telefone então por exemplo se eu tenho aqui WhatsApp né E
aí aqui eu já posso em vez de colocar dos dados do data Store já vou colocar um valor fixo mesmo tá Vou colocar aqui por exemplo aqui ó mais 55 21 né Aí vou colocar aqui 9 8 7 6 54 3 2 1 tá o número aqui fío beleza e aí vou executar aqui ó deixa eu até pausar aqui e eu vou executar aqui tá ó retornou bem que nem precisava disso aqui eu posso até pausar executar de novo beleza então beleza ó retornou aqui o número de WhatsApp tá eh e aí por exemplo se
eu chegar aqui com um outro node set certo eu poderia usar aqui mesmo no IF tá tá que é mais para poder exemplificar né deixa como string mesmo apagar aqui Beleza então eu vou vamos fazer o seguinte vamos Apagar tudo aqui vamos botar aqui na mão tá inclusive isso aqui a gente fala também no vídeo anterior de como você montar né uma referência de dados aqui na mão nem precisa depender muito aqui do editor né de você clicar e arrastar e soltar aqui você mesmo vai ter essa capacitação de você mesmo desenvolver ali as expressões
Tá então não deixe de assistir E o vídeo anterior inclusive ele deve aparecer assim que chegar ao final desse vídeo vai ter um card ali para você acessar esse vídeo tá bom que é dominando o editor de expressões do ntn tá então vou botar aqui agora o campo que é wpp tá então você pode reparar que ele retornou aqui para mim o número de WhatsApp tá E aí como é que funcionaria esse substring né se a gente chegar aqui ó eu vou até evitar copiar e colar até para mesmo incentivar você digitar tá PR gente
não ficar só no copia e cola Então vamos lá primeiro substring tá substring como é que funciona o substring ele vai precisar de dua dois parâmetros Aqui tá o primeiro que é o índice que você quer inicializar a contagem tá eh e o segundo parâmetro é a contagem de caractéres que você quer extrair daquele string beleza e aí no vídeo anterior sobre expressões né Eh de dois expressões do NN eu informei que quando a gente se trata de índice né ali da da string sempre começa com zero tá caso você não é programador nunca foi
da área de programação esteja ciente que na programação nunca começa contando com um é sempre contando com zero então é 0 1 2 3 Ok o zero sempre vai ser o primeiro item o um sempre vai ser o segundo e assim por diante tá então e aqui no substring eu vou botar o seguinte ó eu quero que comece do zer tá que que seria o zero aqui no número é o meu sinal de mais certo ele é o primeiro caracter se eu coloco aqui 1 ele ia começar aqui do C tá ó você vê que
ele acabou até eliminando aqui o sinal de mais beleza mas claro não é esse objetivo aqui mas só para te mostrar então se eu botar aqui ó quero que comece do zero tá E aí eu dou vírgula E aí eu vou dizer quantos teses eu quero extrair começando a partir do sinal de mais se eu coloco por exemplo dois tá ele vai pegar o próprio sinal de mais que é o primeiro caractere e o primeiro cinco né do DDI então aqui ó contabiliza dois caracteres tá então ele começou do zero e pegou dois caracteres Deu
para entender se eu coloco aqui três ele vai pegar o mais 55 Por quê ele começou do índice zero e pegou Ao Total três caracteres tá se eu coloco aqui cinco ele vai pegar o DDI e vai pegar o DDD também ok por começou do índice zero e pegou cinco caracteres ao total da minha string tá bom e o outro comando a outra função melhor dizendo E tem um propósito parecido é o Slice tá que significa dividir né e o slce também é uma forma de extrair ali substring tá sendo que de uma forma mais
prática então por exemplo o SL se eu chego aqui e coloco CCO por exemplo cinco não vamos botar três tá o slce é como se fosse um oposto é é como ele extraísse a partir do índice que você informou tá então se eu coloquei três significa que ele vai retornar tudo aquilo que começa a partir do índice TRS tá então Lembra que eu falei que aqui que começa é é aqui começa do do índice zero né então se eu contar aqui ó 1 2 3 4 5 não na verdade foi três né que eu botei
lá então z0 ó 1 2 3 calma aí 0 1 2 3 É isso mesmo então se eu botar três aqui ó então ele começou a partir do do índice TR tá deixa eu ver se é isso mesmo calma aí ó ó 0 1 2 3 exatamente então o dois aqui do DDD ele é o índice três então se eu colocar três né ele começa a contar a partir do DDD e aí pega todo o número tá então se você por exemplo Ah eu só quero pegar o DDD com o número você colocaria aqui TR
tá Ah quero pegar e o DDI com DDD e o númer sem o sinal de mais você colocaria um ok por porque o sinal do mais já é o índice zero então ele vai rejeitar o zero e vai começar a contar a partir do índice um tá e uma outra outra forma de parâmetro aqui do SL também seria o sinal negativo né que aí ele faria o contrário ou seja ele começaria a pegar de trás PR frente aqui ele pega de frente para trás Ok mas se você botar um sinal negativo por exemplo se eu
colocar aqui ó men-1 tá repare que é como ele pegasse aqui o último caractere tá tipo começando a contar do um né então se eu botar por exemplo dois é como ele pegasse os dois últimos caracteres ah coloquei cinco ele pega os os cinco últimos caracteres né às vezes né Tem certas automações que você precisa sei lá eh ah só só pega os quatro últimos números do WhatsApp às vezes até para poder validar né o cadastro al do usuário você pode usar o Slice para isso né se você colocar lá ah só quero que retorne
os quatr últimos números do WhatsApp ó ele vai retornar aqui tá bom então é para isso que serve o slce tá bom próximo comando aliás próxima função split tá o split também é uma outra função interessante e muito utilizada muito utilizada Principalmente quando você e precisa né criar ali um Array e com base ali uma string que tenha um delimitador Tá eu vou dar um exemplo aqui para ficar mais claro por exemplo ã vamos dizer eu vou botar aqui até mesmo do do Edit tá bom primeiro eu vou fazer um exemplo com o nome né
por exemplo uma coisa que acontece muito e às vezes você vai captar os dados do Lead né em algum site seu alguma página Land page E aí às vezes você pede o nome lá e o usuário Ele tem muita mania de colocar o nome completo n você pede só o primeiro nome mas ele acaba colocando o nome completo e E aí às vezes você não quer salvar e deixa até acho que até melhor colocar aqui uma outra constante tá quer dizer um outro set E aí às vezes você não quer salvar o nome completo em
um único campo né Às vezes você tem dois Campos um pro nome e outro para sobrenome sendo que às vezes Sei lá o usuário coloca lá o nome incompleto né E aí você não consegue ter essa divisão Porém você pode fazer essa divisão a nível de ntn né fazendo esse tratamento aqui usando o split E aí como é que o split funciona por exemplo eh eu executei aqui ó repar que ele retornou o nome né E aí eu posso colocar por exemplo aqui eh duas variáveis né duas constantes nome e sobrenome tá E aí como
é que vai funcionar né eu vou já vou arrastar aqui porque fica mais fácil já o mapeamento tá eh você pode arrastar os dois aqui tá e fazer essa devida formatação com a função split então se eu chegar aqui e por exemplo dar um ponto split Tá eu vou maximizar aqui para ficar mais fácil a visualização ISS aqui é a constante nome tá E aí como é que eu faria para poder extrair somente o primeiro nome usando o split né se eu usar o comando split né E passar um determinado parâmetro aqui né que vai
ser o delimitador ele vai conseguir dividir a minha string em múltiplos índices tá então se eu for considerar aqui um delimitador no nome por exemplo ó Hugo Perez Tá o que que faria a divisão deles o espaço concorda tá escrito assim ó Hugo espaço Perez tá então o espaço ele acaba sendo um delimitador por exemplo se aqui tivesse Hugo vírgula perz qual seria o delimitador vírgula então se eu usar ali o o o vírgula como parâmetro do split ele dividiria essa string em dois índices o Hugo e o PES ou seja o que vem antes
da vírgula e o que vem depois da vírgula nesse caso aqui vai ser espaço tá então se eu chegar aqui no split e usar o espaço como delimitador olha só que interessante ele pegou a minha string que é o nome completo né e transformou em Array tá e criou dois índices para ele para esse array o primeiro nome aqui e o sobrenome aqui tá E aí se eu quiser pegar apenas o primeiro nome eu coloco aqui ó o índice tá então se eu coloquei zero Lembra que eu falei que na programação Tudo começa a partir
de zero então se eu coloco zero aqui ele pega o índice zero que é o quê o primeiro nome tá se eu coloco um ele pega o sobr nôm ok então aqui ó são dois índices ok é o índice zer e o índice 1 ok não é 1 e 2 é 0 e 1 Beleza então como aqui é a constante do primeiro nome eu vou pegar o índice zero tá aí Posso copiar aqui aproveitar ess essa mesma expressão volta aqui pro sobrenome ó col aqui porém aqui eu jogo 1 tá então ó retornou o sobrenome
Beleza então por meio do euia eu conseguiria fazer isso n fazer essa divisão aqui da string associando cada partezinha ali que foi extraída em uma constante outra coisa també queia fazer no split n como eu já te dei um sper n ex dier que aqui fosse uma lista de nomes fosse ass hug Beatriz e Jorge um exemplo tá ó repare que são vários nomes dividido por quê Por vírgula tá então eu poderia vir aqui ó vou apagar esse aqui tá E e aí aqui eu poderia até colocar nome n nomes e aqui eu colocaria split
E qual é o delimitador vírgula n coloco entre aspas e p vírgula olha só que legal ele cri uma rei né de nomes aqui ó V inclusive né se eu fosse aqui usar depois Um item list por exemplo quer dizer agora é split out né agora não tem mais o item list né o pessoal lá do n resolveu colocar os comandos do itemlist como um node independente tá E aí se eu chegar e colocar aqui por exemplo na verdade deixa eu rodar aqui novamente vou rodar tá dando algum erro aqui ó eu tenho aqui nomes
tá então por exemplo se eu chegar aqui colocar nomes e rodar certo ah tá é porque aqui ó eu tenho que selecionar a rei tá Então deixa eu copiar essa expressão não basta só você usar o Split para ele colocar em Array aqui no seu formato de D você tem que colocar a rei tá porque senão o set acaba forçando ser string por mais que aqui ele esteja transformando né e em Array né tá vendo ó mas se você deixar aqui como string ele vai forçar aquele arrei ser string Então não vai funcionar então tive
que colocar aqui como arrei tá E aí ó vou executar E aí olha só que legal isso aqui ó criou uma lista de nomes tá então você vê que por meio do split eu consegui criar uma rei de nomes né com uma string ali que estava padronizada né ou seja os nomes separados por vírgula ou seja existia um delimitador Consegui criar uma Rei com base nesse delimitador usando o split né E usei agora o o node split Out para poder criar a lista de nomes tá então é para isso que serve o split beleza próxima
função vamos lá tem bastante função ainda aqui para explorar vamos tentar agilizar um pouquinho mais aqui a outra bem utilizada é o replace tá replace para que ele vai servir por exemplo voltando aqui por exemplo eu vou eu vou usar já na comparação mesmo tá Vou botar aqui vou voltar com o WhatsApp mesmo tá e vou botar um número aqui qualquer Ok votei um número aqui qualquer bom vou processar Ok beleza e aí é o seguinte eh deixa eu tirar aqui essa função perfeito copiar aqui esse valor por exemplo vamos dizer eu gostaria de saber
se o número que está vindo né do node anterior eh se o WhatsApp é correspondente a esse WhatsApp aqui tá vamos dizer que eu estivesse fazendo essa comparação é claro que eh vai dar felse por quê Porque o WhatsApp que está vindo do node anterior ele tem um sinal do mais tá vendo ó então se eu executar isso aqui ele vai dar falso Óbvio Opá ó ele vai dar falso Ok porque não é a mesma coisa beleza mas ele daria verdadeiro se de fato eu removesse esse sinal demais aqui tá e você pode fazer essa
remoção e de forma automatizada aqui no NN pela função replace tá então se eu abrir aqui e por exemplo ir aqui e digitar replace tá eu tenho que colocar dois parâmetros aqui tá Qual é o caracter que eu quero substituir E pelo que eu quero substituir ele tá então se eu coloco aqui primeiro parâmetro que eu quero substituir o sinal do mais por vazio Ele simplesmente ó vai remover o sinal do mais porque substituir o mais pelo vazio Deu para entender se eu coloco aqui por exemplo eh sustenido então ele substituiria o sinal do mais
por sustenido tá então é para isso que serve o replace tá um ponto a observar aqui é que existe um uma função parecida chamado replace out Tá qual é a diferença do replace para o replace al o replace ele serve quando você quer substituir e um caracter com base em uma ocorrência então por exemplo você concorda que eh o sinal do mais ele tem uma ocorrência só ou seja ele só aparece uma vez tá é claro que dificilmente né vai acontecer de do número ter um outro sinal Dea sei lá assim no final por exemplo
pode acontecer de ter né Por algum erro ali de formatação de dados né da aplicação que você tá integrando mas a diferença seria basicamente essa por exemplo se eu processar aqui ó se eu colocar só replace Eu acredito que ele só vai substituir o o primeiro sinal do mais certo que é a primeira recorrência ó exatamente então eu pedi para ele substituir o sinal do mais por vazio porém ele só fez isso no primeiro sinal de mais porque o replacer ele só substitui a primeira ocorrência tá se você quer substituir todos os sinais de mais
ali da sua string né aí de fato você teria que usar replace A então quando eu uso a olha só que legal ele também tira os demais sinais demais seja da segunda terceira quarta quinta ocorrência em diante beleza próxima função two string tá isso aqui é muito importante também tá principalmente a galera aí que faz automação e de WhatsApp que acontece eh da mesma forma aqui do sinal de mais né Por exemplo Às vezes você usa ali uma API de WhatsApp ã que o número não pode ter sinal demais né é uma API que só
tem que ter número do DDD o dd número DDD DDD e o número tá E aí a às vezes tua planilha ali né algum sistema que alimenta sua planilha sua base de dados coloca os números com sinais demais às vezes você mesmo quando vai captar ali o WhatsApp do cliente você acaba captando com o sinal do mais porque é uma configuração do formulário tá da mesma forma que o replace ele vai te ajudar nesse sentido a tirar o sinal do mais pro número ser um número ali válido né vezes acontece também uma divergência de forma
muito Sutil que muitos usuários não percebem por exemplo voltando aqui pro nosso set tá por exemplo se eu colocar aqui Number por exemplo colocar aqui ó 55 claro vamos dizer que eu não não vai colocar aqui caracter especial tá então vou botar só o DDI o número o DDD né e o número ok perfeito e aí eu vou fazer o seguinte aqui acho que até o melhor melhor criar um um outro node set ISS aqui eu vou até botar WhatsApp string tá esse aqui pode ser WhatsApp Number então o que que acontece com muitos usuários
tá que fazem automação aí de WhatsApp e às vezes ele vai referenciar um número de WhatsApp ali no end Point da api né para poder disparar um texto uma imagem e aí às vezes ele chega por exemplo vamos dizer que esse aqui é o campo Number né do do WhatsApp eu vou até colocar aqui ó Number que geralmente o campo para você apontar ali o número do WhatsApp numa API de WhatsApp é Number tá então às vezes por exemplo ele vai referenciar o Number aqui ele vem aqui ó né joga aqui ó referência aparentemente tá
tudo ok ó DDD DD DDI DDD e o número né porém quando ele vai executar eh às vezes dá o erro e aí por que dá o erro Justamente por isso porque se a gente for olhar aqui ó a gente fala isso também no vídeo sobre editor de expressão tá quando você vem aqui por exemplo na aba Jone tá você bate o olha aqui e consegue identificar o tipo de dados tá Por exemplo quando é ah o valor aqui na cor verde e sem aspas significa que é número ou seja ele não é uma string
Ok para ser string Ele deveria ser lilaz tá com aspas ok assim como você vem aqui em esquema se você ver que o ícone é um sustenido uma tralha você já entende que aquele dado ali é do tipo Number é um número não não é uma string para ser uma string ele tem que ter um ícone de a né uma letra A que significa string tá E aí se você for tentar passar o número do Whatsapp como Number para a ap de WhatsApp é óbvio que vai dar erro porque as ap de WhatsApp elas esam
string por mais que seja um número ali de WhatsApp aqu número tem que estar no formato string E aí é onde entra a função true string string é para forçar aquele valor que é Number né em string então se eu colocar aqui ó ponto true string Pronto ele transformou Esse meu número aqui Number em uma string tá então por exemplo se eu chegar aqui e rodar novamente a automação olha só que interessante ó de um lado né ele está como Number tá vendo ó Number e do outro lado né esse esse meu esse meu set
aqui né Posso até deixa eu rodar de novo aqui que aí ele pega de um e pega do outro pronto ó olha só que interessante desse lado aqui o número de WhatsApp tá como Number tá vendo ó verde e sem aspas ok já desse lado aqui ele está como string tá ou seja lilá com aspas ok então é esse tipo de dado aqui que vai funcionar na P de WhatsApp o seu WhatsApp ele tem que estar como string tá isso ocorre muito quando por exemplo Às vezes você usa ali o Google sheets né uma planilha
online às vezes você coloca o número ali do WhatsApp mas a planilha acaba expondo essas informações né aqui pro seu ntn com o número no formato Number né Às vezes a planilha ela não interpreta ali como uma string quando você coloca tudo número ela interpreta como Number tá então isso acontece muito quando você está fazendo uma automação de WhatsApp usando aí a a base de dados através de uma planilha tá bom beleza bom que que você tá achando aí desse vídeo está gostando já deixou o like aí para poder nos apoiar tem alguma dúvida se
tiver pode postar aí nos comentários que a gente também vai esclarecendo tá bom continuando aqui próxima função in tá oint né já seria aí oposto né se a gente tem eh uma um valor aqui que é string a gente quer voltar a ser número né a gente tem que usar esse tá um exemplo bem claro dele quer ver por exemplo deixa eu apagar vou apagar tudo aqui por exemplo vamos dizer que eu tenho aqui vou botar aqui vou botar aqui um número qualquer Vou botar aqui três tá ó três sendo que eu vou botar string
tá ó três e aqui eu vou botar num tá de número aqui eu vou botar um outro set também tá e eu posso botar e soma aqui da constante de soma Tá bom o que acontece Claro aqui eu eu colocaria Number né porque eu quero que ele gera aqui o o total né ali da soma e certamente é um número ok então eu tô colocando aqui como Number tá E aí o que que acontece por exemplo se eu chegar aqui né ó aqui a soma ele acabou retornando zero porque está vazio tá mas por exemplo
se eu chegar aqui e colocar esse esse número aqui né que vem do meu outro outro set né E por exemplo eu tentar fazer aqui um cálculo matemático ó o que que vai acontecer repare que pelo fato desse número aqui por mais que seja um número tá eu coloquei ali A constante igual a 3 né mas por ser uma string o sinal de mais ele vai concatenar o valor que eu informei aqui então então a ideia seria o seguinte se eu coloquei lá três e botei mais um se de fato esse num aqui fosse Number
ele iria somar ia dar 4 e não 31 né Por quê Porque ele pegou o TR que é string não reconheceu esse mais aqui como somar né sim como concatenar e acabou concatenando o um né O um aqui também passou a ser considerado como uma string e não como um número mesmo tá por isso que retornou 31 Tá mas o jogo já muda se eu usar essa função aqui ó que é o two e string Ah não perdão tu int ó tu int E aí olha só o que acontece de fato ele já passa a
considerar o número como Number mesmo tá tá E aí esse mais Acaba virando um mais de soma juntamente com o número que eu informei também não vai ser reconhecido como número como string sim como número e aí ele acaba fazendo a soma Tá bom então o trint é para você forçar ali a conversão de uma string a se tornar um número é Claro que isso aqui não daria certo se a tua string fosse uma palavra né somente com letras ali tá isso aqui faz mais sentido quando você tem ali um valor numérico né mas que
ele está como string tá e você precisa transformar ele em número Talvez para fazer alguma operação matemática beleza próxima função vamos lá trim tá o trim ele serve para poder tirar espaços da sua string tá é muito comum também os usuários terem erros no IF tá Quando Às vezes eles falam assim eh Poxa eu tô passando ali o mesmo valor ali para fazer a comparação mas ainda assim ele tá dando falso por quê né porque mu das vezes por mais que o valor seja idêntico Às vezes tem ali um espaço do lado direito ou do
lado esquerdo da string e isso faz com que dê problema no seu if ele não vai fazer a comparação ali corretamente tá então por exemplo voltando aqui para o vamos botar aqui por ex Vamos botar agora nome tá ex nome dearing vou deixar Hugo belza E aí Claro aqui na condição meu if vamos dizer que eu espero o valor seja ig a Hugo deixa eu só rodar aqui para ele poder gerar o output e eu referenciar ó nome Hugo Beleza então Eh repare que a princípio aqui tem que dar true tem que dar verdadeiro Concorda
porque ó os valores são idênticos ó Hugo e aqui em cima Hugo tá sendo que se eu acontecer o caso do seu valor al ter algum espaço por exemplo vamos dizer que tem um espaço aqui na frente ó de um espaço aqui tá ó vou rodar ele vai dar falso tá sendo que se você olhar aqui né a olho nu você vai ver que não tem diferença né tá aqui ó o Hugo e tá aqui o Hugo né Só se eu selecionar aqui que talvez deve dar um espaço ó ó lá tá vendo um espaço
bem Sutil às vezes não dá nem para perceber ó às vezes é é imperceptível tá E aí o usuário não consegue entender ele pensa Poxa eu acho que é bug aqui do no IF tem algum bug no meu ntn ele não consegue entender o por tá dando falso por qu porque às vezes tem espaço tá E aí para você lidar com esses espaços invisíveis né imperceptíveis né Você pode usar essa função aqui chamado trm tá que ela garante a remoção dos espaços tanto do lado esquerdo quanto do lado direito da sua string tá então você
coloca aqui trim tá ó e aí ó repare agora que ele tirou o espaço tá vendo ó se eu não coloco o ó tá vendo que tem um espaço aqui ó ó tá vendo ó espaço aqui ó se eu coloco o trim ele já tira o espaço lá viu e aí se eu rodar essa automação Agora sim vai dar beleza bom Ficou claro então o o por usar o Twin né quando usar em que situação próxima função bom a penúltima aqui tá que é o join tá e o join ele é muito útil quando você
precisa ah enviar uma lista de coisas eh para um e-mail para um WhatsApp sendo que no ntn essa lista Ela não é uma lista de string não é uma lista de texto é uma lista de Jon que é diferente de uma lista de texto por exemplo eu vou agora habilitar Deixa eu tirar esse if aqui tá vou habilitar esse meu data Store aqui e aí vou pedir para ele retornar todos todos os usuários aqui né de teste então por exemplo vou executar aqui ó executei tá eh acabi aqui ó beleza retornou aqui né E aí
eu posso botar aqui por exemplo nomes né E aqui eu posso por exemplo pegar aqui ó nome [Música] né e ele vai colocar aqui o nome tá ó na verdade deixa eu jogar para cá seria mais propício eu agregar aqui tá eh depois aqui da da minha lista de nomes tá então como você pode ver aqui ó tá aqui eu tenho cinco itens tá então é uma lista de nomes né mas que eles não estão no formato de texto não é uma lista formato formato formato de texto é uma lista ali em formato Jon tá
vendo ó primeiro item da lista segundo item da lista tá E aí você não vai mandar nesse formato para um cliente né vamos dizer que aqui fosse uma lista de sei lá de de bolos né Você não vai mandar a lista de bolos nesse formato aqui Jon né esse formato técnico aqui é porque isso aqui espantaria aí seu cliente né Imagine ah quero ver quais são os sabores de bolos aí você manda a lista assim já pensou né então você claro você tem que formatar isso aqui para que ele possa mandar a lista em formato
de texto uma coisa mais legível mais amigável e E aí que você tem que teria que fazer né o join ele se aplica em arrei tá você não consegue usar join e em outro tipo de dados o o dados ali ele tem que tá no formato Array tá E aí você pode eh criar uma Ari com base aqui no na sua lista de itens usando Eh um node chamado aggregate tá e significa agregar que Inclusive era uma das funções do node item list tá que também acabou sendo individualizado em um node aqui tá E aí
no aggregate né até me enrola um pouquinho para falar esse nome a gente vai informar aqui qual é o campo que eu quero gerar o Array tá Porém você não vai colocar em forma de expressão ou se você não vai pegar aqui arrastar e soltar aqui tá não aqui no agregate você tem que colocar o nome assim fixo mesmo né então se lá tá name eu vou colocar name tá vendo ó coloquei name tá E aí eu tenho a opção também de renomear e para ele colocar um nome a parte aqui no arrei né então
eu posso botar nomes tá E aí por exemplo ó se eu executar agora ó repare que ele criou aqui para mim um arrei chamado nomes com todos os nomes eh armazenados aqui nos índices tá ó índice 0 1 2 3 4 beleza são cinco nomes mas como começa com o índice zero né vai a até o índice 4 beleza e aí o John entra nesse momento aqui tá Quando por exemplo eu tenho aqui um arrei por exemplo ó tenho aqui nome Inclusive eu posso até botar aqui o o nome da constante de lista nomes tá
E aí eu posso pegar esse arrei aqui tá ó referenciar aqui beleza e aí eu posso aqui ó aplicar o join tá E aí o join o que que ele faz ele simplesmente eh concatena todos os índices ali do arrei tá sendo que por padrão eh ele vai concatenar aqui colocando vírgula tá então repare que eu peguei assim nesse formato aqui né formato de arrei né E aí o join sem parâmetro simplesmente criou num formato aqui de string né onde cada índice está sendo separado por vírgula se eu quiser um outro tipo de separação eu
tenho que informar aqui como parâmetro tá E aí quando a gente fala de lista de texto eh geralmente a separação é o quê é uma quebra de linha né quando a pessoa vai te dar ali uma lista de compra né Principalmente no WhatsApp a pessoal vai lá ó quero arroz aí dá uma quebra de linha feijão quebra de linha açúcar Ok então a quebra de linha aqui no NN para ele poder reconhecer como uma quebra de linha você tem que colocar aqui aspas tá E aí você coloca contra barra n tá inclusive isso aqui é
um código né Que várias aplicações entende como quebra de linha beleza é claro que se você dá contra barra n duas vezes aí ele já faz como se fosse um parágrafo né ele dá um espaço a mais aqui beleza mas aí no caso vou colocar só um barra n tá Então olha só que legal eu consegui através do join criar uma lista de texto mesmo tá E essa lista Você pode depois mencionar lá né seja no e-mail que você vai enviar pro cliente ou então no WhatsApp tá se for no e-mail por exemplo a gente
usando aqui o node send e meil né e eu posso pegar aqui deixa eu ver ter que rodar aqui do zero deixa eu desativar eu rodo isso E aí eu posso simplesmente vir aqui ó arrastar o corpo do e-mail tá e olha só aqui interessante no corpo do e-mail estaria sendo impresso a lista de nomes assim ó bem organizado tá aí eu posso até colocar também aqui um título né ó lista de nomes então por exemplo ó segue a lista de nomes Ok eu posso dar uma quebra de linha aqui e aí seria impresso assim
no e-mail Beleza então é para isso que serve join quando você quer transformar a lista de itens ali do ntn em lista de texto para poder disparar em algum canal aí de comunicação seja e-mail WhatsApp SMS e etc tá bom e para finalizarmos né já que estamos a 50 minutos de vídeo né esse vídeo acabou ficando extenso como o anterior né porque são muitos detalhes né que a gente procura falar aqui justamente para poder ajudar você a dominar aí o ntn né você a dominar o editor de expressão dominar as funções porque tudo isso você
vai usar no dia a dia então é imprescidível que você assista sabe tudo aqui todo esse vídeo que você deixa suas dúvidas também nos comentários pra gente poder ir esclarecendo tá e para fechar aqui com chave de ouro né Nós temos aqui uma outra função muito importante também que é o Mat R né que é uma gerar um número aleatório tá isso aqui ele é muito importante quando você quer trabalhar com dados dinâmicos né Às vezes você por exemplo vou dar um exemplo bem claro do que acontece no dia a dia por exemplo Às vezes
você tem ali uma automação que você gostaria que por exemplo que cada como posso dizer que cada que cada Lead que entra ali na automação né vamos dizer que é uma automação que eh associa o Lead a um vendedor da sua empresa né Por exemplo ó entrou um lead eu quero que associe ao vendedor um agora entrou o segundo eu quero que associa ao vendedor dois entrou o terceiro Lead quero que associa agora o vendedor oito né então você quer que a cada Lead que fori entrando ali na automação vai sendo processado que seja atribuído
a um vendedor de forma aleatória tá o Mat Random ele vai ser muito útil nesse sentido tá então pra gente fechar aqui com chave de ouro tá inclusive isso aqui é algo que dificilmente você vai ver aí em outros canais tá inclusive isso aqui é até conteúdo para curso tá porém estamos entregando aqui gratuitamente porque temos essa intenção que de fato você aprenda a usar as funções do ntn para você ter sucesso aí nas suas automações tá e a única coisa que a gente pede em troca é que você curta aí o vídeo se inscreva
no canal Para apoiar o nosso trabalho tá bom então Eh eu vou voltar aqui pro meu workflow tá E e aí vamos fazer o seguinte por exemplo ã fechar aqui e aí vamos imaginar que esse set aqui fosse uma pi né a gente tá fazendo uma chamada pi né onde a gente associaria eh como posso dizer onde a gente eh como posso dizer a gente associaria né o nome do vendedor ao cadastro daquele Lead que tá entrando naquele momento tá então vamos dizer que no cadastro lá um dos Campos é vended você precisa informar e
claro geralmente utiliza um identificador único né que pode ser e-mail que pode ser o ID né mas no caso aqui a gente pretende usar nome tá mas para não falar que a gente tá fazendo de forma errada vamos usar o e-mail eu acho melhor porque o e-mail ele acaba sendo um identificador único né e nos testes aqui a gente já vai conseguir ver e os e-mails sendo diferentes para cada execução aqui tá então eh vamos dizer que aqui você tem um tenha um campo chamado e-mail vendedor e aí é o seguinte eh por exemplo aqui
eu usaria novamente o aggregate né ah não gosto de falar esse nome é muito muito complicado E aí nesse caso eu já criaria um arrei e do campo e mail tá E aí aqui eu posso botar e-mails né no plural a por exemplo se eu executar ó ele vai gerar aqui para mim um Array da lista de e-mails dos vendedores beleza e aqui na minha api vamos imaginar aqui é um request né de uma API é um search né que eu vou fazer dos dados ali do Lead onde um dos Campos é o e-mail do
vendedor que vai estar sendo associado ao cadastro dele tá E aí que que eu faria aqui por exemplo eu poderia pegar aqui ó referenciar o arre mail tá E aí lembra que eu posso referenciar o índice colocando aqui entre coches o número do índice ó então se eu coloco aqui o índice zero ele torna e o primeiro e-mail aqui tá Eu coloco índice 1 ele retorna no segundo e oio aqui do segundo vendedor é o 2 Tero e e assim sucessivamente tá E aí como é que você faz para deixar isso aqui de forma dinâmica
Ou seja a cada execução né o seu ntn vai selecionar um dos vendedores aqui e atribuir ao Lead de forma automática dinâmica tá usando a função match Rain tá então eu vou maximizar aqui para facilitar a visualização tá você concorda que o que tem que ser dinâmico aqui é o número do índice né a estrutura não precisa ser dinâmica porque ela segue um padrão Ok mas é mudando o índice aqui que eu tenho um e-mail diferente então eu tenho que fazer com que esse número aqui do índice seja randome tá E aí como é que
eu faria eh bom antes de mais nada eu vou tentar colocar a função aqui embaixo para você ver como é que ela funciona e aí depois a gente vai colar aqui dentro dessa expressão aqui do do índice Tá então vamos lá primeiro eu vou colocar aqui embaixo eu vou botar aqui ó match ponto Random tá o Mat é como se fosse o nome da biblioteca tá da biblioteca JavaScript e Random é o método dessa biblioteca tá isso também envolve a um pouco de conceito de programação né programação orientada a objeto e tal eh e aí
no match Random aqui eh repare que ele gera aqui um número tá vendo ó Ele gera um número aqui com esse rangle tá eh Porém para que você possa definir um Range né que seria quando fosse um limite né Por exemplo ó eu quero que gere um número ã de zero a a 10 né você teria que colocar aqui eh multiplicado por 10 tá Por quê Porque assim ele vai gerar um número entre 0 a 10 Ok eh sendo que por padrão ele vai gerar um número eh decimal né você vai ver que tem um
inteiro ponto e os decimais aqui tá E claro não existe índice nesse formato aqui né vai vai dar até erro Se eu tentar colar isso aqui Aqui tá então você pode usar aquela função que eu usei bem no início aqui desse vídeo que é o parce int que é quando você quer converter ali um determinado valor em inteiro tá então se eu uso aqui por exemplo ó eu vou copiar essa expressão aqui tá e vou usar aqui ó par int tá ó par int E aí dentro aqui do meu par in como parâmetros se eu
colar essa expressão toda né que que vai acontecer o match randle né vai gerar um número de 0 a 10 tá porém no formato decimal e o paciente vai transformar esse decimal em inteiro então se ele retornou lá por exemplo 6.54 3 2 1 Bá com paciente ele só vai pegar a parte inteira que é seis Deu para entender e aí a medida que for feita e as execuções esse número vai mudando tá vendo ó toda vez que eu abro e fecho aqui o editor ó ele gera um número diferente tá ó gerou ó agora
gerou zero tá eh algo é válido gerar zero sim porque como você vai usar para referenciar o número do índice Tem que existir zero porque o zero é um número válido de índice de um arrei tá então por isso que eu recomendo e você deixar esse intervalo de fato de zero ao limite que tu quer tá sendo que e como são quatro índices né aliás são cinco índices né porém termina no quatro eu posso aqui ó colocar 4 Ok ele vai gerar um número é de zero de zer a 4 tá se eu não me
engano deixa eu ver aqui talvez acho que eu tenho que colocar é Talvez eu tenha que colocar até cinco tá Por quê Porque quando você coloca 4 é como ele gerasse um valor que seja menor do que qu ok aqui não é igual ou menor é menor tá Então na verdade o certo seria colocar C Beleza então aqui de fato ó ele conseguiria gerar um número entre zer a 4 Beleza então você tem que sempre considerar aí de fato um número a mais para ficar dentro daquele intervalo ali de índice Tá bom então eu pegaria
agora essa expressão aqui ó ó vou apagar aqui E substituiria pelo índice aqui ó colar Beleza então repare que agora ficou dinâmico ó tá vendo ó ó toda vez que eu abro o editor de expressão ó ele retorna aqui um e meil diferente ó lá ó retornou o primeiro aqui ele tá retornando o quarto né ó retornou a outro tá vendo ó então aqui ele vai fazendo essa dinâmica então a sua automação vai ficar dinâmica também ou seja toda vez né que esse workflow foi executado e a passar aqui pelo pelo set né ele vai
associar o Lead algum vendedor ali de forma dinâmica tá vendo ó executar de novo ó ó lá tá vendo eaos diferente Beleza então é para isso que serve aí o Mat R né para você trabalhar com dados dinâmicos na sua automação beleza bom se você gostou desse vídeo de alguma forma ele te ajudou novamente eu peço deixa o like aí no vídeo Tá ok para que outras pessoas possam tomar conhecimento desse vídeo e serem ajudados também e se você tem alguma sugestão ideia de vídeo né que você ainda não viu no nosso canal e você
acha que é útil também pode deixar aí nos comentários que a gente vai avaliar para ver se a gente grava também esse vídeo tá bom um forte abraço e valeu