루핑 문

루핑 문을 사용하면 특정한 종료 조건이 충족될 때까지 스크립트가 작업 또는 작업 세트를 수행할 수 있습니다. 세트의 각 멤버에 대해 수행하려는 일련의 작업이 있을 때 유용합니다.

루핑 문 키워드는 다음과 같습니다.

루핑 문에는 항상 조건부 코드 블록이 필요합니다. 블록은 중괄호( { } )로 묶입니다. 블록에 다음과 같은 선택적 문을 포함할 수 있습니다.

BREAK: 문의 루핑 세트를 종료합니다.

FOR 

설명: 특정한 횟수만큼 문 하나 또는 일련의 문을 반복합니다.

구문: FOR <var> = <start> TO <end> <{ ... [BREAK] }>

세부 사항: FOR 루프는 <start> ~<end>의 범위에 해당하는 각 정수마다 한 번씩 중괄호 {...} 로 묶인 코드를 반복합니다. <start><end> 절은 표현식이거나 리터럴 값일 수 있습니다. 각 반복마다 범위에 해당하는 현재 값은 루프의 헤더 줄에 명명된 <var> 변수에 할당됩니다. 이는 반복자 변수라고 합니다.

선택 사항인 BREAK 절은 루프를 취소합니다. 그러면 스크립트가 계속되면서 닫힘 중괄호 뒤의 코드를 실행하거나 다음 Studio 작업닫힘 고객 데이터 모음, 메시지 또는 음악 재생 또는 상담원에게 컨택 라우팅과 같은 Studio 스크립트 내에서 프로세스를 수행합니다.으로 이동합니다.

<start><end> 값은 루프의 시작점에서 한 번 평가됩니다. 중괄호 {...} 로 묶인 코드 문의 <end> 값을 변경할 수 있습니다. 또한 루프 내에서 <var>의 값을 변경할 수 있습니다.

<start>의 값은 <end> 미만일 필요가 없습니다. <end>이(가) <start>보다 작으면 루프가 아래로 이동합니다. 루프의 반복 최소 1회 이상이 항상 발생합니다. 이 행동은 일부 다른 프로그래밍 언어와는 다릅니다. 다음 예시에서는 이 활동을 묘사합니다.

이 예시에서 <end>은(는) <start>보다 큽니다. 결과는 ph="123456789"입니다.

FOR i=1 TO 9
{
	ph = "{ph}{i}"
}

이 예시에서 <start>은(는) <end>보다 큽니다. 결과는 ph="987654321"입니다.

FOR i=9 TO 1
{
	ph = "{ph}{i}"
}

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"

FOREACH

설명: 지정된 문자 배열에서 각 요소에 대한 루프를 한 번 반복합니다.

형식: FOREACH <var> IN <array> <{ ... [ BREAK ] }>

세부 사항: FOREACH 루프는 문자 배열 또는 동적 데이터 개체 배열의 각 요소마다 한 번씩 중괄호 {...} 안의 코드를 반복합니다. 각 배열 요소의 값은 루프의 헤더 줄에 명명된 <var> 변수로 할당됩니다.

선택 사항인 BREAK 절은 루프를 취소합니다. 그러면 스크립트가 계속되면서 닫힘 중괄호 뒤의 코드를 실행하거나 다음 Studio 작업닫힘 고객 데이터 모음, 메시지 또는 음악 재생 또는 상담원에게 컨택 라우팅과 같은 Studio 스크립트 내에서 프로세스를 수행합니다.으로 이동합니다.

다음 예시에서는 IF 을 포함한 FOREACH 루프를 볼 수 있습니다.



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

	}
}

REPEAT 

설명: 지정된 명령을 지정된 횟수만큼 수행합니다.

구문: REPEAT <expression> <{ ... [ BREAK ]}>

세부 사항:  이 명령은 <expression>에 의해 정의된 횟수만큼 중괄호 {...} 에 포함된 코드를 반복합니다. <expression>은(는) 0 또는 양수 정수로 평가되는 표현식의 리터럴 양수 정수가 될 수 있습니다.

루프를 취소하는 선택적인 BREAK 키워드를 포함합니다. 그러면 스크립트가 계속되면서 REPEAT 블록의 닫힘 중괄호 뒤의 코드를 실행하거나 다음 Studio 작업닫힘 고객 데이터 모음, 메시지 또는 음악 재생 또는 상담원에게 컨택 라우팅과 같은 Studio 스크립트 내에서 프로세스를 수행합니다.으로 계속됩니다.

트리 보기 속성

트리 보기 탭에서 REPEAT은(는) REPEAT 0(으)로 표시됩니다.

구성할 수 있는 속성은 다음과 같습니다.

  • Comment: 반복에 관한 메모를 추가합니다.
  • Line Number: 명령이 존재하는 편집기의 줄 번호입니다.
  • Repeat: 숫자 값으로 평가되는 표현식을 입력하여 특정한 행동이 반복되기를 원하는 횟수를 정의합니다.

REPEAT을(를) 완료하려면 REPEAT 0을(를) 마우스 오른쪽 버튼으로 클릭한 다음 스크립트가 반복하려는 행동을 선택합니다. 두 개 이상을 추가할 수 있습니다. 각각의 선택된 행동을 구성합니다.

예시

트리 보기에서 이 예시를 보려면 텍스트 보기 탭으로 이를 복사 및 붙여넣기한 다음 트리 보기 탭을 클릭합니다.


REPEAT 10
{
	phone = "{phone}{random(10)}"
}	

BREAK 

설명: 즉시 루프를 종료합니다.

구문: BREAK

세부 사항: BREAK 문이 도달하면 현재 루프가 즉시 종료됩니다. 스크립트는 완료될 때까지 아래 스니펫 코드를 계속 실행합니다.

BREAK은(는) 선택 사항입니다. 포함되지 않은 경우에는 정의된 중지 조건이 충족될 때까지 루프가 계속됩니다.