커넥터 함수 출력의 배열과 객체 이해하기
  • 21 Oct 2024
  • 3 읽을 분
  • 기여자

커넥터 함수 출력의 배열과 객체 이해하기


기사 요약

목적

SQL 및 HTTP 커넥터 함수는 앱에 '출력'을 객체 또는 배열로 보냅니다. 앱에서 객체를 조작하는 방법을 알아보세요.

이 문서에서는 앱에서 커넥터 함수의 '출력'을 사용하는 방법에 대해 알아봅니다**.**

앱에서 커넥터 함수의 출력을 사용하는 방법

배열과 객체는 많은 프로그래밍 언어에서 사용되는 두 가지 인기 있는 데이터 구조입니다. Tulip은 커넥터 함수에서 이 두 가지 데이터 구조를 모두 활용합니다:

  1. SQL 커넥터 함수가 여러 행을 출력하는 경우, 출력은 객체로 가득 찬 배열로 앱에 전송됩니다.
  2. HTTP 커넥터 함수가 배열이 포함된 출력을 반환하는 경우 배열은 객체로 가득 찬 배열로 앱에 표시됩니다.
  3. SQL 커넥터 함수가 단일 행을 출력하거나 HTTP 커넥터 함수에 출력이 있는 경우 값은 객체에 키/값 쌍으로 저장됩니다.

객체는 커넥터 함수가 성공적으로 완료된 경우에만 자동으로 생성될 수 있습니다.

이 가이드에서는 커넥터 함수의 출력이 자동으로 구성되는 방법을 보여드리겠습니다. 그런 다음 앱에서 이러한 출력을 사용하는 방법을 살펴봅니다.

커넥터에서 출력 수집하기

특정 운영자의 튤립 배지 ID를 기준으로 SQL 데이터베이스에서 특정 운영자에 대한 모든 데이터를 가져오고 싶다고 가정해 보겠습니다.

이를 위해 badge_id를 입력으로 받고 모든 운영자 정보를 출력에 저장하는 SQL 커넥터 함수를 작성할 수 있습니다. 이 경우 출력은 group_name이라고 합니다. 이 함수는 다음과 같습니다:

이 함수에는 문자열로 저장되는 group_name이라는 하나의 출력이 있습니다. 이는 출력 섹션의 "텍스트" 레이블을 기반으로 합니다.

실제로 커넥터 함수를 만들 때 출력을 배열이나 객체로 저장하는 옵션은 없습니다. 다음은 "출력" 섹션에서 허용되는 데이터 유형입니다.

따라서 "텍스트"로 저장한 다음 트리거 에디터에서 조작해야 합니다.

트리거 에디터에서 이 함수를 실행하여 출력을 객체에 저장합니다.

  • "커넥터 함수 실행" 커넥터: "SBD - 테스트" "운영자 탐색"
  • 배지 ID: "정적 값" "텍스트" "2222" 결과를 다음 이름으로 저장합니다: "변수" "test_var"

이 경우 2222 값을 입력으로 사용하고 "test_var"라는 변수에 출력을 저장합니다.

앱에서 객체 사용하기

위의 예제에서는 group_name이라는 출력을 가져온 다음 test_var라는 변수에 저장했습니다. 앱 변수 보기에서 이 변수는 실제로 "group_name"이라는 하나의 속성을 가진 객체임을 알 수 있습니다.

실제로 커넥터 함수에 여러 개의 출력이 있는 경우 각 출력은 트리거에서 생성된 "test_var"라는 객체의 새 프로퍼티로 저장됩니다. 이렇게 하면 하나의 함수 호출의 모든 출력을 한 곳에서 정리할 수 있습니다.

앱에 변수 텍스트를 추가한 다음 컨텍스트 창의 위젯 탭에서 변수를 선택하여 함수의 출력을 테스트할 수 있습니다.

이 경우 5개의 필드가 있는 객체를 저장하는 "Order Details"라는 변수가 있습니다:

  • orderPlaced
  • quantity
  • address1
  • address2
  • address3

변수 검색 상자에서 개체를 선택하자마자 앱에 속성 이름에 따라 5개 필드가 모두 레이블로 채워지는 것을 볼 수 있습니다. 모든 필드를 한 번에 보려면 변수 텍스트 필드를 확장해야 할 수도 있습니다.

개체 표시

객체에 여러 속성이 있는 경우 앱의 한 단계에서 모든 속성을 한 번에 표시하고 싶을 수 있습니다. 이렇게 하면 각 개별 속성에 대해 새 변수 텍스트를 만드는 것보다 쉽습니다.

개체에서 개별 속성의 순서를 바꾸거나 제거하려면 컨텍스트 창에서 속성에서 X 또는 격자 기호를 클릭합니다.

열 수를 변경하려면 컨텍스트 창에서 열 옵션을 사용합니다.

레이블 및 값의 표시를 변경하려면 컨텍스트 패널에서 색상 및 글꼴 크기를 조정합니다.

이 데이터가 운영자에게 어떻게 표시되는지 확인하려면 플레이어에서 앱을 실행하면 전체 개체를 볼 수 있습니다. 값을 수집하는 커넥터 함수를 먼저 실행하면 값이 포함됩니다.

오브젝트 조작하기

앱에서 객체 배열을 사용하면 타겟팅하려는 데이터 포인트를 추출하는 옵션이 제한될 수 있습니다. 커넥터 함수에서 출력되는 객체 배열을 조작하여 로직 등에 사용하려는 데이터에 더 쉽게 액세스할 수 있습니다. 이 작업은 추출하려는 객체 내에 키를 지정하여 수행할 수 있습니다. 이렇게 하면 데이터 출력을 간소화하여 관심 있는 데이터를 더 잘 활용할 수 있습니다.

커넥터 함수의 예는 아래와 같습니다:

image.png

image.png

위의 출력은 객체 배열입니다. 커넥터 함수가 객체 배열을 반환하는 경우 표현식 편집기에는 이를 조작하는 데 도움이 되는 액션이 있습니다. 이러한 매핑 함수를 사용하면 주어진 키를 기반으로 해당 값을 매핑할 수 있습니다. 출력된 값은 선택한 유형의 배열에 매핑할 수 있습니다. MAP_TO_TEXT_LIST()를 사용하여 모든 타이틀의 텍스트 배열을 가져올 수 있습니다.

image.png

  • "실행 커넥터 기능" 커넥터: "테스트" "함수 테스트"를 실행하고 결과를 다음과 같이 저장합니다: "test_output"
  • "데이터 조작" "저장" 데이터: "Expression" "MAP_TO_TEXT_LIST(Variable.test_out.Test Parent, 'Test Child')

맵 함수에 전달된 첫 번째 매개변수는 객체 배열입니다. 두 번째 매개변수인 'Test Child'는 커넥터 함수 출력에 명시된 추출기 이름입니다. 추출기 이름은 값을 추출하는 키로 사용됩니다. 이렇게 하면 모든 제목이 문자열 배열로 출력됩니다.

앱의 모든 객체 변수 검토하기

앱에서 데이터 구조를 조작하려면 해당 데이터 구조가 이미 변수로 저장되어 있어야 합니다. 앱 에디터의 컨텍스트 창으로 들어가서 앱 탭에서 '변수' 옆의 시그마 기호를 선택하면 기존 변수를 확인할 수 있습니다.

개체는 범용 개체 기호인 "{}"와 함께 표시됩니다.

HTTP 커넥터에서 여러 행의 SQL 또는 배열 표시하기

HTTP 커넥터의 여러 행의 SQL 출력 또는 배열을 앱에서 대화형 목록으로 전환하려면 다음 별도의 가이드를 확인하세요.

추가 자료


원하는 정보를 찾았나요?

community.tulip.co로 이동하여 질문을 게시하거나 다른 사람들이 비슷한 문제를 겪었는지 확인할 수도 있습니다!


이 문서가 도움이 되었습니까?