Instruções de loop
As informações nesta página de ajuda são aplicáveis tanto ao CXone Studio quanto ao Desktop Studio.
Instruções de loop permitem que você faça o script desempenhar uma tarefa ou uma série de tarefas repetidamente até que a condição específica de encerramento seja atendida. Isso é útil se você tem uma série de tarefas que quer executar em cada membro de um conjunto.
As palavras-chave para instruções de loop são:
- FOR: executa as instruções incorporadas desde que uma expressão Booleana
Um tipo de dados que tem dois valores possíveis: true e false. seja avaliada como true.
- FOREACH: executa as instruções incorporadas uma vez para cada elemento em uma matriz.
- REPEAT: executa as instruções incorporadas por um número especificado de vezes.
Instruções de loop sempre exigem blocos de código condicionais. Blocos são colocados dentro de chaves (
BREAK: encerra um conjunto de instruções de loop.
Instruções FOR
Descrição: Repete uma instrução ou uma série de instruções por um número específico de vezes.
Sintaxe: FOR <var> = <start> TO <end> <{ ... [BREAK] }>
Detalhes: Um loop FOR repete o código dentro das chaves {...} uma vez para cada valor de número inteiro no intervalo de <start> a <end>. As cláusulas <start> e <end>podem ser expressões ou valores literais. Com cada iteração, o valor atual no intervalo é atribuído a uma variável <var> nomeada na linha de cabeçalho do loop. Isso é chamado de variável da iteração.
A cláusula BREAK opcional aborta o loop. O script é então continuado, executando o código após a chave final ou movendo-se para a próxima ação Executa um processo dentro de um script do Studio, como coletar dados do cliente, reproduzir uma mensagem ou música ou rotear um contato para um agente. Studio.
O valor inicial de <start> e <end> são avaliados uma vez, no início do loop. Você pode modificar o valor <end> nas declarações do código dentro das chaves {...}. Também é possível modificar o valor de <var> de dentro do loop.
O valor de <start> não precisa ser menor que <end>. Se <end> for menor que <start>, o loop atravessa para baixo. Pelo menos uma iteração do loop sempre ocorrerá. Este comportamento é diferente em algumas outras linguagens de programação. Os exemplos a seguir ilustram este comportamento.
Neste exemplo, <end> é maior que <start>. O resultado é ph="123456789".
FOR i=1 TO 9
{
ph = "{ph}{i}"
}
Neste exemplo, <start> é maior que <end>. O resultado é ph="987654321".
FOR i=9 TO 1
{
ph = "{ph}{i}"
}
Exemplos
IF TEST = 1
{
ASSIGN Names = "Wes|Nate|Dan|Clay"
ASSIGN EyeColors = "Blue|Blue|Brown|Brown"
ASSIGN Signs = "Aquarius|Aries|Pisces|Leo"
ASSIGN Foods = "Spagetti|Pizza|Sushi|Deep Fried Twinkies"
}
DYNAMIC Persons
ASSIGN PeopleCount = Names.size
FOR i = 1 TO PeopleCount
{
ASSIGN Persons[i].Name = "{Names[i]}"
ASSIGN Persons[i].Eyecolor = "{EyeColors[i]}"
ASSIGN Persons[i].Sign = "{Signs[i]}"
ASSIGN Persons[i].Food = "{Foods[i]}"
}
FOR i=1 TO 9
{
a = "{a}{i}"
}
//Result: a="123456789"
FOR i=9 TO 1
{
b = "{b}{i}"
}
//Result: b="987654321"
Instruções FOREACH
Descrição: repete um loop uma vez para cada elemento em uma matriz de string especificada.
Formato: FOREACH <var> IN <array> <{ ... [ BREAK ] }>
Detalhes: um loop FOREACH repete o código dentro das chaves {...} uma vez para cada elemento de uma matriz de string ou matriz de objeto de dados dinâmico. O valor de cada elemento da matriz é atribuído a uma variável <var> nomeada na linha de cabeçalho do loop.
A disposição opcional BREAK aborta o loop. O script é então retomado, executando o código após a chave de encerramento ou indo para a próxima ação Executa um processo dentro de um script do Studio, como coletar dados do cliente, reproduzir uma mensagem ou música ou rotear um contato para um agente. Studio.
O exemplo a seguir mostra um loop FOREACH que inclui uma instrução IF.
IF TEST = 1
{
ASSIGN Names="Odin|Freya|Thor|Loki"
}
ASSIGN SubCounter=1
FOREACH Name IN Names
{
IF Name = "Odin" | Name = "Freya"
{
ASSIGN NewNames[SubCounter]= "{Name}"
ASSIGN SubCounter=SubCounter + 1
}
}
Instruções REPEAT
Descrição: executa os comandos designados um número especificado de vezes.
Sintaxe: REPEAT <expression> <{ ... [ BREAK ]}>
Detalhes: este comando repete o código entre chaves {...} pelo número de vezes definido pela <expression>. <expression> pode ser qualquer número inteiro positivo ou uma expressão avaliada como zero ou um número inteiro positivo.
Inclua a palavra-chave Executa um processo dentro de um script do Studio, como coletar dados do cliente, reproduzir uma mensagem ou música ou rotear um contato para um agente. Studio.
Propriedades da visualização em árvore
Na guia Exibição em árvore,
Ela tem as seguintes propriedades para configuração:
- Comment: adiciona um comentário sobre a repetição.
- Line Number: o número da linha no qual o comando está inserido no editor.
-
Repeat: insere uma expressão avaliada como um valor numérico que define o número de vezes que você quer que um comportamento especificado seja repetido.
Para concluir
Exemplo
Para ver este exemplo na Visualização em árvore, copie e cole na guia Visualização em texto e, em seguida, clique na guia Visualização em árvore.
REPEAT 10
{
phone = "{phone}{random(10)}"
}
Instruções BREAK
Descrição: encerra imediatamente um loop.
Sintaxe: BREAK
Detalhes: Quando a instrução BREAK é alcançada, o loop atual é imediatamente encerrado. O script continua a executar o código snippet abaixo do loop até o fim.
BREAK é opcional. Se não estiver incluído, o loop continuará até que a condição de pausa definida seja atendida.