- 인쇄
개요
Tulip에서 데이터를 배열에 저장하고 한 데이터 유형에서 다른 데이터 유형으로 값을 이동하는 방법은 다음과 같습니다.
이 문서에서는 다음을 학습합니다.
- 배열을 만들고 사용하는 방법
- 트리거 에디터에서 배열을 변경하는 방법
- 문자열 분할을 사용하여 커넥터 함수의 출력을 배열로 전환하기
배열과 객체는 많은 프로그래밍 언어에서 사용되는 두 가지 인기 있는 데이터 구조입니다. Tulip은 플랫폼의 두 부분에서 이러한 데이터 구조를 활용합니다:
- 변수: 동일한 변수와 관련된 여러 데이터 포인트를 저장하는 데 사용됩니다.
- 커넥터 - 커넥터 함수의 출력을 변수로 전달하기 위한 커넥터
배열을 만들 수 있습니다:
- 트리거 에디터에서(수동)
- 표현식 편집기(수동)에서
- 변수 요약 보기(아래 표시)에서(수동) (수동)
- 다중 선택 입력의 출력을 저장합니다.
- 여러 행을 반환하는 SQL 커넥터 함수 또는 배열을 반환하는 HTTP 커넥터의 출력을 반환되는 JSON에 저장하는 방법(자동)
배열 생성하기
트리거 에디터에서
"배열에 푸시" 액션을 사용하여 배열을 만들 수 있습니다.
- "배열" "배열에 푸시" 데이터: "정적 값" "텍스트" "텍스트" 배열: (여기서 배열 생성)
표현식 편집기에서
"데이터 조작" "저장" 액션을 통해 새 배열을 만들 수 있습니다. 다음과 같이 하세요:
- "데이터 조작" "저장" 데이터: "표현식" "[1,2,3]" 위치: "test_array"
각 배열에는 한 가지 유형의 값, 즉 문자열 또는 정수만 포함할 수 있습니다.
변수 요약 보기에서
컨텍스트 창의 '앱' 탭에서 변수 요약 보기로 이동한 다음 모달 상단에 새 변수를 만듭니다:
배열 조작
트리거 에디터를 통해 배열을 만들고 조작할 수 있습니다. "Then" 문에서 "새 액션 추가"를 클릭한 다음 "배열" 옵션을 선택합니다.
다음 드롭다운에서 다양한 배열 메서드를 볼 수 있습니다. 이는 JavaScript의 배열 메서드와 일치하므로 자세한 설명이 필요한 경우 이 배열 메서드 가이드를 참조하세요.
사용 가능한 배열 메서드는 다음과 같습니다:
- 배열 지우기
- 배열 연결
- 배열의 인덱스에서 가져오기
- 배열의 길이 가져오기
- 배열의 인덱스에 삽입
- 문자열에 조인
- 배열에서 팝
- 배열로 밀어넣기
- 배열의 인덱스에서 요소 제거 및 저장
- 배열의 인덱스에서 제거
- 배열의 인덱스 설정
- 배열 합산
- 배열에서 요소 바꾸기
이 드롭다운에서 선택한 항목에 따라 나머지 필드에 조작할 배열, 변경할 인덱스 및 설정할 새 값에 대한 옵션이 제공됩니다.
- "배열" "배열에 인덱스 설정" 데이터: "정적 값" "숫자" "90" 배열: "test_a" index: "정적 값" "정수" "0"
위의 예에서는 "test_a"라는 배열의 인덱스 0에 있는 값을 90의 값으로 변경하고 있습니다.
- "배열" "배열의 인덱스에서 가져오기" 배열: "변수" "test_a" index: "정적 값" "정수" "0" 변수에 저장: "test_vari"
위의 예에서는 "test_a"라는 배열의 0 인덱스에 있는 값에 액세스하여 "test_vari"라는 변수에 저장하고 있습니다.
배열을 통한 검색
다중 선택 위젯을 사용하여 작업자가 하나의 제품에 대해 여러 유형의 결함을 입력할 수 있도록 하려고 한다고 가정해 보겠습니다. 그런 다음 작업자가 입력한 결함에 따라 특정 재작업 단계 집합으로 보내려고 합니다.
다중 선택 양식은 값을 배열에 자동으로 저장합니다. 따라서 이 배열에서 특정 값을 검색한 다음 작업자를 특정 단계로 보내야 합니다.
"문자열에 조인" 트리거 작업을 사용하여 이를 수행할 수 있습니다. 이렇게 하면 배열의 모든 요소가 하나의 문자열로 결합되어 별도의 변수에 저장됩니다. 그런 다음 별도의 트리거에서 "If" 문을 사용하여 이 문자열에 특정 값이 포함되어 있는지 확인할 수 있습니다.
배열 요소는 원하는 문자열로 구분할 수 있습니다. 대부분의 Tulip 사용자는 쉼표(,)를 선호합니다.
다음은 배열의 모든 요소를 문자열로 조인하는 예제입니다:
- "배열" "문자열에 조인" join: "결함 유형"
- 구분 기호 포함: "정적 값" "텍스트" ","
- 에 저장합니다: "defect_types_joined"
다음은 이 새 문자열에서 특정 값을 검색하는 데 사용할 두 번째 트리거입니다:
IF
- "변수" "defect_types_joined" "포함" "정적 값" "텍스트" "칩"
분할 문자열을 사용하여 배열 생성하기
지금까지 설명한 내용을 바탕으로 일부 유형의 커넥터 함수의 출력을 배열로 가져오는 것은 매우 어렵습니다. 이 문제를 해결하기 위해 문자열 분할을 사용할 수 있습니다.
커넥터 함수 출력을 배열에 저장할 수 있도록 준비하려면 각 데이터 사이에 공통 문자를 추가해야 합니다. 일반적인 예는 다음과 같습니다:
- 세미콜론(;)
- 쉼표(,)
- 새 줄 문자("\n")
배열에 저장하려는 일련의 데이터 포인트가 있다고 가정해 봅시다. SQL 쿼리 또는 HTTP GET 요청에서 객체에 이미 저장되어 있지 않은 경우 먼저 이들을 하나의 문자열로 결합하고 싶을 것입니다.
다음은 예시입니다:
7989;43f3;3e3;f34;f;34;3
일반적인 구분 기호는 세미콜론입니다.
트리거 에디터에서 "문자열 분할" 옵션을 사용하여 이 문자열을 배열로 변환할 수 있습니다.
먼저 분할하려는 변수를 선택합니다. 이 경우 "q"라고 합니다.
그런 다음 구분 기호를 추가합니다.
마지막으로 배열을 저장할 변수를 선택합니다.
- "문자열 분할" 분할: "변수" "q" by: "정적 값" "텍스트" ";" 저장 위치: "w"
배열 변수 표시하기
이 기능이 제대로 작동하는지 확인하려면 단계에 변수 텍스트를 추가하세요. 그런 다음 배열을 저장하는 변수를 선택합니다.
마지막으로 튤립 플레이어를 열고 배열의 모든 항목이 글머리 기호 목록으로 표시되는지 확인합니다. 배열의 항목 수를 고려하기 위해 텍스트 상자를 확장해야 할 수도 있습니다.
HTTP 커넥터에서 단일 데이터 유형(텍스트, 부울, 정수 등)의 배열을 반환하면 위 섹션에 표시된 것처럼 글머리 기호 목록이 출력됩니다.
SQL 및 HTTP 커넥터 함수에서 배열 표시하기
HTTP 커넥터 함수에서 객체 배열을 반환하거나 SQL 커넥터 함수에서 여러 행을 반환하는 경우 글머리 기호 목록은 이상적인 표시가 아닙니다.
대신 이 별도의 가이드에서 커넥터 함수 출력을 대화형 또는 정적 목록으로 전환하는 방법을 확인하세요.
앱의 모든 배열 변수 검토하기
데이터 구조를 조작하려면 데이터 구조가 이미 변수로 저장되어 있어야 합니다. 앱 에디터의 컨텍스트 창으로 들어가서 앱 탭에서 '변수' 옆의 시그마 기호를 선택하면 기존 변수를 확인할 수 있습니다.
배열은 포함된 값의 종류에 따라 '유형' 열에 '배열'로 표시됩니다. 배열의 인덱스에 대한 기본값을 만들 수도 있습니다.
더 읽어보기
원하는 것을 찾았나요?
community.tulip.co로 이동하여 질문을 게시하거나 다른 사람들이 비슷한 문제를 겪었는지 확인할 수도 있습니다!