Only this pageAll pages
Powered by GitBook
Couldn't generate the PDF for 186 pages, generation stopped at 100.
Extend with 50 more pages.
1 of 100

🇰🇷 한국어

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

SmallBuilder line items

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

SmallBuilder 헬프

본 문서는 세일즈포스 관리자가 더 쉽게 SmallBuilder에 익숙해질 수 있도록 다양한 정보를 담고있습니다.

SmallBuilder는 윈드밀소프트가 제공하는 세일즈포스 애드온 패키지로 세일즈포스 구현 과정에서 자주 접하는 커스텀 기능을 코딩없이 구현할 수 있도록 지원하는 도구들로 구성되어 있습니다.

Cover

SmallBuilder Line Items

기회, 견적, 주문에 대한 표준 라인 아이템을 커스터마이징하고, Low/No-Code 방식으로 사용자 정의 개체에도 라인 아이템을 손쉽게 구현합니다.

Cover

SmallBuilder Documents

쉽게 재사용 가능한 문서 템플릿을 생성하고, 사용자 정의 개체를 지원하며, Low/No-Code 방식으로 구현할 수 있습니다.

Cover

SmallBuilder Lists

필터, 대량 작업, 다른 시스템에서 데이터 조회 등을 포함하여 Low/No-Code 방식으로 맞춤형 리스트를 생성합니다.

로드 시 전체 검색

조회 선택기 화면 로드 시, 데이터가 자동으로 조회되도록 설정됩니다. 이 설정은 기본적으로 활성화되어 있습니다.

예시: 로드 시 전체 검색이 비활성화된 경우

로드 시 데이터가 자동으로 조회되지 않으며, 키워드 검색을 통해서만 데이터를 조회할 수 있습니다. 이는 데이터 조회가 느리거나, 데이터소스 고급 설정에 복잡한 작업 또는 시간이 오래 걸리는 작업이 포함된 경우 해당 기능을 비활성화합니다.

필터 기본 펼치기

필터 검색을 기본으로 펼쳐 표시합니다. 필터를 자주 사용하는 경우, 이 기능을 활성화하세요.

예시: 필터 기본 펼치기가 활성화된 경우

조회 선택기 로드 시, 필터 검색 레이아웃이 기본으로 펼쳐져 표시됩니다.

성능 향상을 위한 캐싱

캐싱을 통해 데이터를 빠르게 조회하고 안정적인 환경을 제공합니다. 다만, 데이터에 변경 사항이 있는 경우 최신 상태로 조회되지 않을 수 있습니다.

데이터가 최신 상태로 반영되지 않는 문제가 발생하면, 캐싱 설정을 비활성화해 보세요.

레이블 변경하기

조회 선택기의 데이터 테이블에 표시할 열 레이블을 변경할 수 있습니다. 기본적으로 선택된 필드의 레이블이 표시되며, 레이블 입력란에 값을 입력하면 해당 값이 표시됩니다. 또한, 입력란 옆의 아이콘( )을 클릭하여 하면 사용자 언어 설정에 따라 번역된 레이블이 표시됩니다.

레이블을 별도로 설정하지 않은 경우, 기본적으로 표시되는 필드 레이블은 사용자 언어에 따라 번역됩니다.

커스텀 라벨을 삽입

릴리즈 노트

'25 Update

  • v 1.40.2 - 비즈니스 규칙 변경 및 삭제 관련 오류 수정, 읽기 전용 제어 적용 오류 수정

  • v 1.40 - 패키지 업그레이드 시 수식 해제되는 오류 수정, 라인 아이템 열에 도움말 텍스트 표시 제공 등

  • v 1.39 - 컬럼 순서 변경 시 JavaScript 오류, 비즈니스 규칙 Key 매핑 오류 등 수정 옵션 기능 비활성화, 라인 아이템 가상 열 계산 기능 지원

  • v 1.38 - 모바일 UI/UX 이슈 및 일부 저장 오류 수정

  • v 1.37 - 데이터소스 명칭 및 UI/UX 변경, 라인 아이템 가상 열(Virtual Column) 제공 등

라이선스 및 권한 할당

SmallBuilder Line Items는 10개의 라이선스를 무료로 제공하고 있습니다. 제품을 사용하기 전에 각 사용자가 제품에 접근할 수 있도록 SmallBuilder Line Items 라이선스와 권한 집합을 할당해야 합니다.

샌드박스에서는 라이선스 제한이 없기 때문에, 사용자에게 라이선스를 할당하지 않아도 제품을 사용할 수 있습니다.

라이선스 할당

SmallBuilder Line Items 정식 라이선스는 사용자당 부여되어야 합니다. 라이센스를 부여하는 방식은 다음과 같습니다:

  1. 설정에서 빠른 찾기 상자에 설치된 패키지를 입력한 후 설치된 패키지를 선택합니다.

  2. SmallBuilder Line Items를 찾아 라이센스 관리를 클릭합니다.

  3. 사용자 추가를 눌러 원하는 사용자를 선택합니다.

  4. 추가를 클릭합니다.

권한 집합 할당

SmallBuilder Line Items는 두 가지 권한 집합을 제공합니다. 사용자의 역할에 맞는 권한 집합을 적절히 할당해 주세요. 제품 기능을 원활하게 사용하려면 반드시 권한 집합을 할당해야 합니다.

SmallBuilder Line Items Manager

SmallBuilder Line Items Manager 권한 집합은 조직 내 관리자가 SmallBuilder Line Items의 전체 관리를 쉽게 수행할 수 있도록 설계되었습니다. 이 권한 집합을 할당받은 관리자는 빌더 설정을 구성하거나 라인 아이템 버튼을 추가하는 등의 작업을 원활하게 진행할 수 있습니다.

SmallBuilder Line Items User

SmallBuilder Line Items User 권한 집합은 라인 아이템을 편집해야 하는 일반 사용자들이 원활하게 작업할 수 있도록 설계되었습니다. 주로 영업 담당자나 프로젝트 매니저와 같이 라인 아이템을 보고 수정하는 역할을 맡은 사용자에게 할당됩니다. 이 권한 집합을 통해 사용자는 라인 아이템 데이터를 쉽게 조회하고 업데이트할 수 있습니다.

빌더

SmallBuilder Line Items는 빌더에서 시작됩니다. 빌더를 사용하여 맞춤형 라인 아이템 편집기를 구성하세요.

빌더 시작하기

빌더 시작하기

빌더 실행 방법과 빌더의 구성 요소에 대해 설명합니다.

라인 아이템 편집기 화면 설정하기

빌더 이름과 설명 등 기본 정보를 입력하여 라인 아이템 편집기 화면의 기본 설정을 구성합니다.

장치에 맞게 반응형 화면 설정하기

데스크톱, 모바일에 따라 반응형 화면을 제공합니다.

편집기 화면 비율 조절하기

화면 크기가 작은 경우, 라인 아이템 편집기가 한눈에 보기 어려울 수 있습니다. 이런 경우, 화면 비율 설정을 통해 편집기의 크기를 조절해 보세요.

편집기 레이블 변경하기

편집기의 타이틀과 버튼 레이블을 원하는 레이블로 수정할 수 있습니다. 사용자 언어에 따라 번역이 필요한 경우,

개체 구성하기

빌더의 개체 연결(Relate Objects) 단계에서 라인 아이템 편집기에서 사용할 개체들의 관계를 정의합니다.

편집기의 상위 개체인 부모 개체를 설정합니다. 부모 개체는 라인 아이템 편집기의 기반이 되는 개체로, 해당 개체를 기준으로 편집기가 실행됩니다.

라인 아이템 개체는 편집기에서 참조 데이터를 선택하고 추가 정보를 입력한 후 저장하는 역할을 합니다.

조회 개체는 라인 아이템이 참조하는 개체로, 이 데이터를 기반으로 라인 아이템의 데이터를 편집 및 저장합니다.

빌더 셋업 절차

라인 아이템 편집기를 구현하기 위해서는 다음의 절차를 수행합니다:

1

개체 연결하기

빌더에서 설정해야 하는 가장 첫 번째 단계는 라인 아이템 편집기에서 사용할 개체들의 관계를 정의하는 것입니다. 이 관계는 반드시 Junction 관계 구조를 따라야 하며, 부모(Parent), 라인 아이템(Line Item), 조회(Lookup) 개체를 설정해야 합니다.

2

조회 선택기 설정

라인 아이템을 등록하기 위해서는 먼저 제품과 같은 조회 개체를 검색하고 검색 결과 중 원하는 레코드를 선택하고 수량 등을 설정하여 라인 아이템을 등록합니다. 검색 설정은 조회 개체 검색 시 검색 결과 레이아웃을 설정하는 기능입니다.

3

라인 아이템 편집기 설정

라인 아이템 필드의 속성을 설정합니다. 앞서 선택 조회 레코드별로 가격, 할인율, 수량 등의 속성 필드를 정의합니다.

4

미리보기

빌더 설정을 완료한 후, 활성화하기 전에 반드시 미리보기를 통해 설정된 기능이 올바르게 작동하는지 확인하세요. 이를 통해 예상치 못한 오류나 불완전한 설정을 사전에 발견할 수 있습니다.

5

활성화

빌더 설정이 완료되면 활성화(Activate)를 진행합니다. 활성화를 통해 편집기 기능이 적용되며, 이후 편집기를 실행하는 버튼을 생성할 수 있습니다.

6

버튼 생성하기

설정을 완료한 후, 버튼을 생성하여 부모 개체의 페이지 레이아웃에 추가합니다. 버튼을 추가하면 사용자는 해당 버튼을 클릭하여 편집기를 실행할 수 있습니다.

활용 사례

편집기의 Aura Component 활용하기

이미지 URL을 이미지로 보여주기

준비중입니다.

JSON 가져오기

준비 중입니다.

번역 활성화

SmallBuilder Line Items는 영어와 한국어를 지원합니다. 기본 언어는 영어이며, 한국어 번역을 사용하려면 조직에서 번역 기능을 활성화해야 합니다.

  1. 설정에서 빠른 찾기 상자에 번역을 입력한 후 번역 언어 설정을 선택합니다.

  2. 한국어 편집을 클릭합니다.

  3. 활성을 체크합니다.

  4. 저장을 클릭합니다.

  5. 영어에 대해서도 1~4번 단계를 반복합니다.

기본 설정 (Default Setting)

빌더 이름, 설명 등 가장 기본적인 설정과 함께, 조회 선택기에서 데이터를 바로 보여줄지 여부, 라인 아이템 편집기에서 요약을 표시할지 여부 등 기본적인 기능 설정을 수행합니다.

이러한 기본 설정들은 빌더의 사이드 패널에서 설정합니다.

사이드 패널에서 제공하는 설정

기본 설정

디바이스에 맞게 반응형 UI 설정

디바이스 유형(데스크톱, 태블릿, 모바일)에 따라 반응형 UI를 제공합니다. 디스플레이 환경에 맞춰 편집기의 크기와 구성을 조정하여 최적의 사용자 경험을 제공합니다. 데스크톱에서는 더 많은 정보를 표시하고, 모바일에서는 간소화된 UI를 제공하고 있습니다.

모든 디바이스에서 간소화된 UI로 보이기를 원한다면, 장치를 모바일로 설정하세요. 이를 통해 디바이스 상관 없이 간단하고 일관된 UI를 제공합니다.

화면 비율 조정

사이드 패널에서는 아래와 같은 기능을 설정을 제공합니다:

편집기의 크기 비율을 조절할 수 있습니다. 예를 들어, 디스플레이가 작은 경우 UI가 화면을 가득 차지하여 불편함을 줄 수 있습니다. 이런 경우, 화면 비율을 낮게 설정하여 편집기 UI의 크기를 줄여보세요.

조회 선택기 관련 설정

조회 선택기와 관련된 설정입니다. 레코드 선택 방식 및 검색 기능을 구성할 수 있습니다.

라인 아이템 편집기 관련 설정

라인 아이템 편집기와 관련된 설정입니다. 하단에 요약을 표시하거나 첫 번째 열을 고정하는 기능을 설정할 수 있습니다.


레이블 설정

편집기 타이틀 및 버튼 레이블 설정

편집기 화면의 타이틀과 일부 버튼 레이블을 변경할 수 있습니다. 필요에 따라 커스텀 라벨을 삽입하면 사용자 언어에 맞게 자동으로 번역이 적용되어 다양한 언어 환경에서 사용성을 향상시킬 수 있습니다.

편집기 화면 비율 조절하기

화면 비율은 100%, 90%, 80%를 지원하며, 기본값은 100%로 설정되어 있습니다.

사이드 패널에서 기본 설정 메뉴 화면입니다.

화면 비율을 100% 설정했을 때

일반적인 편집기 화면이 표시됩니다.

화면 비율 100%

화면 비율을 80% 설정했을 때

편집기에 표시되는 열이 많은 경우, 화면 비율을 낮추면 한 화면에서 더 많은 열을 확인할 수 있습니다.

화면 비율 80%

라인 아이템 편집기 설정

라인 아이템 편집기 기능에 대한 기본 설정입니다.

라인 아이템 편집기 하단에 요약 정보를 표시합니다.

라인 아이템 편집기에서 가로 스크롤 시, 첫 번째 열을 고정합니다. 표시할 열이 많은 경우, 첫 번째 행을 고정해보세요.

열 추가하기

조회 선택기에 표시할 필드(열)을 설정합니다. 또한, 데이터소스에서 가져온 데이터를 표시하기 위해 가상 열을 추가할 수 있습니다.

설정 방법

조회 선택기 설정 단계에서 열 추가 버튼을 클릭하여 조회 선택기에 표시할 필드를 선택합니다.

열 추가 예시

첫 번째 열 고정하기

라인 아이템 편집기에서 가로 스크롤 시, 첫 번째 열을 고정합니다. 표시할 열이 많은 경우, 첫 번째 행을 고정해보세요.

일반

첫 번째 열 고정이 활성화된 경우

조회 선택기 차단하기

조회 선택기를 건너뛰고 바로 라인 아이템 편집기로 전환하고 싶은 경우, 조회 선택기 차단 기능을 활성화하세요. 또한, 특정 조건에 따라 조회 선택기를 차단할 수도 있습니다.

차단 조건을 설정하려는 경우, 부모 개체의 특정 필드를 기반으로 제어됩니다. 해당 필드는 Boolean 유형이어야 하며, 값이 true인 경우 조회 선택기가 차단됩니다.

예시: 갱신된 기회에서 제품 추가 차단하기

라인 아이템 편집기에서 갱신된 기회인 경우 제품 추가(라인 아이템 추가)를 차단하려고 합니다. 예시에서는 기회의 갱신됨(IsRenewal__c) 필드를 사용하여 차단 조건을 설정합니다.

갱신됨(IsRenewal__c)이 true일 때 편집기에서 조회 선택기 화면으로 전환하는 버튼이 표시되지 않는 것을 확인할 수 있습니다.

레코드 중복 선택 허용

동일한 레코드를 여러 개 중복 선택할 수 있도록 허용합니다.

예시: 일반 선택과 중복 선택의 차이

일반 선택

일반적으로 레코드를 선택하면 선택되거나 해제됩니다.

중복 선택

중복 선택의 경우, 동일한 레코드를 여러 번 선택하면 선택한 횟수만큼 라인 아이템에 추가됩니다.

조회 선택기 설정

조회 선택기와 관련된 설정입니다. 레코드 선택 방식 및 검색 기능을 구성할 수 있습니다.

  • 로드 시 전체 검색 조회 선택기 화면 로드 시, 데이터가 자동으로 조회되도록 설정됩니다. 이 설정은 기본적으로 활성화되어 있습니다.

  • 필터 기본 펼치기 필터 검색을 기본으로 펼쳐 표시합니다. 필터를 자주 사용하는 경우, 이 기능을 활성화하세요.

  • 중복 선택 허용 동일한 레코드를 여러 개 중복 선택할 수 있도록 허용합니다.

  • 성능 향상을 위한 캐싱 캐싱을 통해 데이터를 빠르게 조회하고 안정적인 환경을 제공합니다. 다만, 데이터에 변경 사항이 있는 경우 최신 상태로 조회되지 않을 수 있습니다.

  • 페이지별 레코드 수 한 페이지(스크롤)에 표시할 레코드 수를 지정합니다. 기본 설정은 페이지(스크롤)당 50개입니다.

텍스트 정렬 변경하기

열 값의 정렬을 설정할 수 있습니다. 정렬 옵션은 왼쪽, 오른쪽, 가운데 세 가지가 있으며, 기본값은 왼쪽 정렬입니다.

조회 레코드의 필터 및 정렬 순서 설정하기

조회 선택기 화면이 로드될 때 조건에 맞는 조회 개체의 레코드를 불러오려면 필터를 설정하고, 원하는 레코드 순서를 지정하려면 정렬을 설정하세요.

필터 설정하기

조회 선택기 로드 시 원하는 조건에 맞는 데이터만 조회됩니다. 필터 설정 방식은 SOQL의 WHERE절과 동일합니다.

예를 들어, 활성화된 가격 목록 항목만 조회하려면 IsActive = true로 작성하면 됩니다. 또한, 직접 작성하지 않고 쿼리 마법사(Query Wizard)를 이용해 필터를 자동으로 생성할 수도 있습니다.

정렬 설정하기

조회 선택기 로드 시 데이터가 원하는 순서로 정렬되도록 미리 정의할 수 있습니다. 정렬 설정 방식은 SOQL의 ORDER BY절과 동일합니다.

예를 들어, 가격 목록 항목의 이름을 오름차순으로 정렬하고 싶다면 Name ASC로 작성하면 됩니다.

부모 개체 (Parent Object)

부모 개체는 라인 아이템 개체의 상위 개체로, Master-Detail 또는 Lookup 관계를 가집니다. 라인 아이템 편집기는 부모 개체의 레코드 페이지에서 실행됩니다. 빌더에서 부모 개체를 검색할 때, 하위 개체를 가지고 있는 개체만 검색이 가능합니다.

빌더 - 개체 연결 단계

부모 개체의 레코드 페이지에서 라인 아이템 편집기를 실행합니다.

라인 아이템 편집기 버튼은 빌더에서 생성할 수 있으며, 원하는 페이지 레이아웃에 추가할 수 있습니다.

기회 제품에 대한 라인아이템 편집기를 구현하여 기회 레코드 페이지에서 실행합니다.

데이터소스를 위한 가상 열 추가하기

데이터소스에서 가져온 데이터를 표시하기 위해 임시 값을 담을 수 있는 가상 열을 생성합니다. 가상 열은 가상 열 추가 버튼을 클릭하여 추가할 수 있으며, 값 유형으로 텍스트, 숫자, 통화를 지원합니다.

가상 열은 데이터소스 용도로 사용되므로, 자세한 내용은 데이터소스 문서를 참고하세요.

데이터소스(DataSource)에 사용된 예시 >

조건에 따라 라인 아이템 삭제 제어하기

저장된 라인 아이템의 상태에 따라 삭제를 제어하고 싶다면, Boolean 유형의 필드를 지정하여 삭제 가능 여부를 설정할 수 있습니다. 지정된 필드 값이 true(참)인 경우, 해당 라인 아이템에 대해 삭제 버튼을 비활성화할 수 있습니다.

삭제 제어는 라인 아이템 편집기 화면에서만 작동하며, Salesforce 내부 트랜잭션(예: API, 데이터 로더, 또는 수동 삭제)에서는 제어되지 않습니다.

예시: 승인된 상태의 기회 제품 삭제 불가 설정

기회의 라인 아이템인 기회 제품이 승인된 경우, 삭제가 불가능하도록 설정하려고 합니다. 이를 위해 승인됨(Approved__c) 필드를 사용하여 삭제 제어를 구성하였습니다.

빌더 설정

삭제 제어 필드에 승인됨(Approved__c) 필드 API명을 입력합니다.

결과

승인됨(Approved__c) 필드값이 true인 경우에만 삭제 버튼이 노출되지 않는 것을 확인하실 수 있습니다.

필수 입력으로 지정하기

라인 아이템 필드(열)의 입력을 필수로 처리합니다.

필수 설정 예시

필수로 설정된 필드(열)은 입력란 왼쪽에 붉은 선으로 표시됩니다.

필수 필드(열) 값을 입력하지 않고 저장하는 경우, 아래와 같이 오류가 발생합니다.

요약 표시하기

라인 아이템 편집기 하단에 요약 정보를 표시합니다.

예시: 라인 아이템 총액 필드 값의 합계 표시하기

라인 아이템 편집기에서 추가된 모든 데이터의 총액(TotalPrice) 필드(열) 값을 합산하여 하단에 합계를 표시하려고 합니다.

설정 방법

  1. 기본 설정의 라인 아이템 옵션에서 '요약 표시'를 활성화합니다.

  2. 라인 아이템 편집기 설정 단계에서 총액(TotalPrice) 필드(열)의 요약 속성을 활성화합니다.

결과

라인 아이템 편집기를 실행하면, 추가된 데이터의 총액 합계가 하단에 표시되는 것을 확인할 수 있습니다.

페이지별 레코드 수 설정하기

한 페이지(스크롤 다운 시) 조회할 레코드 수를 지정합니다. 기본 설정은 페이지(스크롤)당 50개입니다.

한 번에 선택해야 할 레코드 수가 많다면, ‘페이지별 레코드 수’를 늘려보세요.

활성화

빌더 설정이 완료되고, 미리보기를 통해 정상적으로 동작하는 것을 확인한 후, 빌더를 활성화하여 편집기를 사용할 준비를 합니다.

빌더가 활성화되어야 편집기를 사용할 수 있습니다.

활성화를 해야 편집기 버튼을 추가할 수 있습니다.

버튼 생성 및 페이지 레이아웃에 추가하기

빌더가 활성화되면, 편집기를 실행할 버튼을 생성하여 부모 페이지 레이아웃에 추가합니다.

버튼 생성 및 페이지 레이아웃 할당

1

버튼 레이블

편집기 버튼의 레이블입니다.

2

페이지 레이아웃

버튼 생성 후, 추가할 페이지 레이아웃을 선택합니다.

버튼의 Aura Component

빌더에서 라인 아이템 편집기 버튼을 생성하면, 아래와 같은 Aura Component가 생성됩니다. 버튼에 연결된 편집기를 다양하게 활용하고 싶다면, 버튼이 호출하는 Aura Component를 수정하면 됩니다.

편집기의 Aura Component 활용하기 >

열 너비 설정하기

열의 너비는 픽셀(pixel) 단위로 설정되며, 지정하지 않을 경우 기본 최소 너비는 150px로 자동 적용됩니다.

열 너비 예시

아래 이미지와 같이 대리점가, 총판가, 재고, 수량 등의 열은 데이터 및 입력란 크기에 비해 너비가 작거나 큽니다. 이러한 열의 너비를 고정하여 크기를 일정하게 맞추고자 합니다.

빌더에서 각 열의 너비를 150~200px 사이로 설정합니다.

이전보다 열 너비가 더 안정적으로 보이는 것을 확인할 수 있습니다.

열 너비 설정하기

열 너비를 고정할 수 있습니다. 단위는 픽셀(pixel)입니다.

텍스트 정렬 변경하기

열 값의 정렬을 설정할 수 있습니다. 정렬 옵션은 왼쪽, 오른쪽, 가운데 세 가지가 있으며, 기본값은 왼쪽 정렬입니다.

텍스트 정렬 예시

고급 사용 예제

실무에서 많이 접하는 고급 사용자 요구사항을 구현한 예제입니다.

예제는 AppExchage에서 Test Drive를 통해 직접 보실 수 있습니다.

Data Source를 활용한 Promotion 가격 적용 예시

Data Source를 활용한 외부 시스템 연동 예시

읽기 전용으로 표시하기

기본적으로 라인 아이템 필드는 수식 필드를 제외하고 값을 입력받습니다. 그러나 데이터 표시 용도로 사용되는 필드는 읽기 전용으로 설정하세요.

읽기 전용 설정 예시

조건에 따라 읽기 전용으로 표시하기

라인 아이템 필드(열)의 고급 설정 메뉴에서 ‘읽기 전용 고급 설정’을 통해 설정할 수 있습니다. 해당 기능에 대한 자세한 내용은 ‘특정 조건에 따라 읽기 전용으로 설정하기’ 매뉴얼을 참고하세요.

v 1.40

📦 Package Upgrade

🗓️ Release Date

2025. 4. 30.

🐛 Bug Fixes

⚙️ Features

라인 아이템 열에 적용된 계산식 해제하기

이전에는 적용된 계산식을 해제하려면 다른 옵션을 선택하거나 필드를 제거했다가 다시 추가해야 하는 번거로움이 있었습니다. 이번 버전부터는 '계산식 적용 해제하기' 버튼을 통해 계산식을 바로 해제할 수 있습니다.

도움말 텍스트 설정

컬럼 옆에 도움말 텍스트를 표시하여 사용자에게 컬럼의 용도를 안내할 수 있습니다. 도움말 텍스트 기능이 활성화된 상태에서 입력한 값이 없는 경우, 개체 필드에 설정된 도움말 텍스트가 표시됩니다.

번역 활성화

SmallBuilder 제품들은 영어와 한국어를 지원합니다. 기본 언어는 영어이며, 한국어 번역을 사용하려면 조직에서 번역 기능을 활성화해야 합니다.

  1. 설정에서 빠른 찾기 상자에 번역을 입력한 후 번역 언어 설정을 선택합니다.

  2. 한국어 편집을 클릭합니다.

  3. 활성을 체크합니다.

  4. 저장을 클릭합니다.

  5. 영어에 대해서도 1~4번 단계를 반복합니다.

장치에 맞게 반응형 화면 설정하기

디바이스 유형(데스크톱, 모바일)에 따라 반응형 화면을 제공합니다. 디스플레이 환경에 맞춰 편집기의 크기와 구성을 조정하여 최적의 사용자 경험을 제공합니다. 데스크톱에서는 더 많은 정보를 표시하고, 모바일에서는 간소화된 화면을 제공하고 있습니다.

모든 디바이스에서 간소화된 화면으로 보이기를 원한다면, 장치를 모바일로 설정하세요. 이를 통해 디바이스 상관 없이 간단하고 일관된 화면을 제공합니다.

모바일 화면에서는 아래와 같은 일부 기능이 지원되지 않습니다:

  • 조회 선택기에서 필터하는 기능

  • 제품 옵션 기능

  • 라인 아이템 편집기에서 다중 삭제 기능

데스크톱 화면

모바일 화면

시작하기 전에

패키지 설치

AppExchange에서 SmallBuilder Line Items를 조직에 설치합니다.


라이선스 및 권한 할당

SmallBuilder Line Items는 10개의 라이선스를 무료로 제공하고 있습니다. 제품을 사용하기 전에 각 사용자가 제품에 접근할 수 있도록 SmallBuilder Line Items 관련 라이선스와 권한 집합을 할당해야 합니다.

조직 통화 설정

조직이 처음 생성된 후 통화가 null로 설정되어 있을 수 있습니다. 통화가 올바르게 설정되지 않으면 SmallBuilder Line Items가 제대로 작동하지 않을 수 있습니다. 제품을 사용하기 전에 조직의 통화가 제대로 설정되어 있는지 확인하세요.

번역 활성화

SmallBuilder Line Items는 영어와 한국어를 지원합니다. 기본 언어는 영어이며, 한국어 번역을 사용하려면 조직에서 번역 기능을 활성화해야 합니다.

연결된 앱 설정

빌더에서 페이지 레이아웃에 버튼 추가, 커스텀 라벨 조회 등 메타데이터 관련 작업을 수행하려면 SmallBuilder Line Items에 연결된 앱에 대한 추가 설정이 필요합니다.

라인 아이템 편집기 설정 (Setup Line Item Editor)

라인 아이템 필드의 속성을 설정합니다. 앞서 선택 조회 레코드별로 가격, 할인율, 수량 등의 속성 필드를 정의합니다.

라인 아이템 개체 (Line Item Object)

라인 아이템 개체는 참조 데이터를 선택하여 추가 정보를 입력하고 저장하는 역할을 하는 개체입니다. 이 개체는 부모 개체의 하위 개체여야 하며, 빌더에서 부모 개체를 선택하면 해당 부모 개체와 연관된 하위 개체를 검색할 수 있습니다. 해당 단계에서는 필터, 정렬, 자동 번호 등의 설정들을 제공하고 있습니다.

조직 통화 설정

SmallBuilder를 사용하기 위해 회사의 통화 설정을 확인합니다.

조직이 처음 생성된 후 통화가 null로 설정되어 있을 수 있습니다. 통화가 올바르게 설정되지 않으면 SmallBuilder가 제대로 작동하지 않을 수 있습니다. 제품을 사용하기 전에 조직의 통화가 제대로 설정되어 있는지 확인하세요.

다중 통화가 활성화되어 있는 경우, 해당 과정을 확인하지 않아도 됩니다.

  1. 설정에서 빠른 찾기 상자에 회사를 입력한 후 회사 정보를 선택합니다.

  2. 편집을 클릭합니다.

  3. 통화 설정에서 사용 통화가 제대로 선택되어 있는지 확인합니다.

    null로 되어 있는 경우, 올바른 통화를 선택해 주세요.

설정 방법

부모 개체에 따라 설정 방법 제공

빌더는 스탠다드 기회(Opportunity), 견적(Quote), 주문(Order)에 한해 자동 설정을 지원합니다. 따라서 부모 개체를 기회, 견적, 주문 중 하나로 지정할 경우, 아래 두 가지 설정 방법 중 선택할 수 있습니다:

스탠다드: 자동 설정하기

스탠다드 설정은 부모 개체를 기반으로 라인 아이템과 조회 개체에 필요한 설정을 자동으로 구성합니다. 이를 통해 편집기를 빠르고 간편하게 설정할 수 있습니다.

예를 들어, 기회(Opportunity)에 대해 스탠다드 설정을 적용하면 다음과 같이 자동 구성됩니다:

  • 라인 아이템 개체(Line Item Object):

    • 기회 제품(OpportunityLineItem)으로 설정됩니다.

    • 단가, 수량, 총 금액 등 필수 필드가 자동으로 추가됩니다.

  • 조회 개체(Lookup Object):

    • 가격 목록 항목(PricebookEntry)으로 설정됩니다.

    • 조회 시 필요한 필드(예: 제품명, 단가) 및 필터 조건(예: Pricebook2Id)이 자동으로 구성됩니다.

스탠다드 대상 개체

직접 선택: 맞춤형 라인 아이템 설정하기

사용자 정의 개체를 사용하여 편집기를 구성하려면 직접 설정을 선택해야 합니다. 이 옵션을 통해 부모 개체, 라인 아이템 개체, 조회 개체를 수동으로 정의하여 편집기를 유연하게 설계할 수 있습니다.

직접 선택 옵션을 선택하거나, 부모 개체가 사용자 정의 개체(Custom Object)인 경우, 아래와 같은 설정 옵션이 제공됩니다:

'25 업데이트

버전
업데이트 사항

조직 통화 설정

SmallBuilder를 사용하기 위해 회사의 통화 설정을 확인합니다.

조직이 처음 생성된 후 통화가 null로 설정되어 있을 수 있습니다. 통화가 올바르게 설정되지 않으면 SmallBuilder가 제대로 작동하지 않을 수 있습니다. 제품을 사용하기 전에 조직의 통화가 제대로 설정되어 있는지 확인하세요.

다중 통화가 활성화되어 있는 경우, 해당 과정을 확인하지 않아도 됩니다.

  1. 설정에서 빠른 찾기 상자에 회사를 입력한 후 회사 정보를 선택합니다.

  2. 편집을 클릭합니다.

  3. 통화 설정에서 사용 통화가 제대로 선택되어 있는지 확인합니다.

    null로 되어 있는 경우, 올바른 통화를 선택해 주세요.

편집기 레이블 변경하기

편집기 실행 시 조회 선택기와 라인 아이템 편집기의 타이틀을 사용자가 원하는 레이블로 변경할 수 있습니다.

예를 들어, 동일한 개체에 대해 여러 편집기를 사용하더라도, 편집기의 용도에 따라 타이틀을 다르게 표시하고 싶다면 레이블을 수정할 수 있습니다. 또한, 라인 아이템 편집기에서 조회 선택기로 이동하는 버튼 레이블도 변경 가능합니다.

해당 레이블 변경은 사이드 패널에서 레이블 메뉴를 클릭하여 간단히 설정할 수 있습니다.

타이틀 변경하기

조회 선택기와 라인 아이템 편집기의 각각의 타이틀 레이블을 변경할 수 있습니다. 또한, 입력 란 옆의 아이콘( )을 클릭하여 하면, 사용자의 언어 설정에 따라 번역된 레이블이 표시되도록 설정할 수 있습니다.

버튼 레이블 변경하기

라인 아이템 편집기에서 조회 선택기로 이동하는 버튼 레이블도 변경할 수 있습니다. 타이틀과 마찬가지로 우측 아이콘 버튼( )을 클릭하여 커스텀 라벨을 삽입하면, 사용자의 언어 설정에 따라 번역된 레이블을 표시할 수 있습니다.

커스텀 라벨 적용하기

커스텀 라벨 적용 예시를 확인하고 싶은 경우, 메뉴를 참고하세요. 이 메뉴에서는 커스텀 라벨을 사용하는 구체적인 방법과 예시를 제공합니다.

연결된 앱 설정

SmallBuilder 제품을 설정하는 빌더 화면에서 페이지 레이아웃에 버튼 추가, 탭 생성 등 메타데이터 관련 작업을 수행하려면 SmallBuilder에 연결된 앱에 대한 추가 설정이 필요합니다.

만약 SmallBuilder Line Items 제품을 사용하는 경우, SmallBuilder Line Items OAuth를 설정하세요.

Step 1: 허용된 사용자 설정

  1. 설정에서 빠른 찾기 상자에 연결된 앱을 입력한 후 연결된 앱 관리를 선택합니다.

  2. SmallBuilder {제품 이름} OAuth 편집을 클릭합니다.

  3. 허용된 사용자를 관리 승인 사용자가 미리 인증됨으로 선택합니다.

  4. 저장을 클릭합니다.

Step 2: 프로필 또는 권한 집합 할당

  1. 설정에서 빠른 찾기 상자에 연결된 앱을 입력한 후 연결된 앱 관리를 선택합니다.

  2. SmallBuilder {제품 이름} OAuth을 클릭합니다.

  3. 하단에 프로필 관리 또는 권한 집합 관리를 클릭합니다.

  4. 빌더 설정을 담당하는 프로필 또는 권한 집합을 선택합니다.

  5. 저장을 클릭합니다.

조회 개체 (Lookup Object)

조회 개체는 라인 아이템 개체에서 참조하는 개체로, 사용자는 조회 레코드를 선택하여 이를 기반으로 라인 아이템 레코드를 생성합니다.

키워드 검색 설정하기

조회 레코드를 검색할 때 검색할 키워드의 대상 필드값을 설정합니다. 기본적으로 이름 필드가 검색 대상으로 지정되며, 일치 조건은 포함(Contains)입니다.

예시

키워드 검색 필드는 가격 목록 항목(PricebookEntry) 개체의 제품 이름(Name) 필드로 설정되어 있습니다. 검색 조건은 포함(Contains)이며, 입력한 검색 키워드가 제품 이름 필드 값에 포함된 경우 조회됩니다.

편집기에서 조회 선택기 화면에 ‘Gen’을 입력하면, 제품 이름에 ‘Gen’이 포함된 항목만 검색되는 것을 확인할 수 있습니다.

편집기의 Aura Component 활용하기

Component 직접 생성

버튼 외의 다른 위치에서 라인 아이템 편집기를 호출하려면, Aura Component인 <SBLI:LineItemConfigurator />를 사용하면 됩니다.

현재는 Aura Component만 제공됩니다.

빌더에서 라인 아이템 편집기 버튼을 생성하면, 아래와 같은 Aura Component가 생성됩니다. 버튼에 연결된 편집기를 더 커스터마이징하고 싶다면, 버튼이 호출하고 있는 Aura Component를 수정하면 됩니다.

Aura Component 속성

속성
설명
필수

저장된 라인 아이템의 필터 및 정렬 순서 설정하기

라인 아이템 편집기에서 실행 시 조건에 맞는 저장된 라인 아이템을 불러오고 싶다면, 필터와 정렬 순서를 설정해보세요. 이를 통해 원하는 데이터만 표시하고, 불러오는 순서를 제어할 수 있습니다.

필터 설정하기

편집기 실행 시, 저장된 라인 아이템 데이터를 필터링하여 원하는 조건에 맞는 데이터만 표시할 수 있습니다. 필터 설정 방식은 SOQL의 WHERE절과 동일합니다.

예를 들어, 기회에서 기회 제품을 일반 제품과 구독 제품으로 나눠서 편집기를 사용하려는 경우, 각 편집기에 필터를 적용합니다. 구독형 기회 제품에 대한 편집기의 경우, 구분을 위해 만든 필드인 유형(Type__c)이 ‘구독’인 기회 제품 레코드만 편집 대상으로 하려면, 필터를 아래와 같이 작성하면 됩니다:

또한, 직접 작성하지 않고 를 이용해 필터를 자동으로 생성할 수도 있습니다.

정렬 설정하기

편집기 실행 시, 저장된 라인 아이템 데이터를 원하는 순서로 정렬할 수 있습니다. 정렬 설정 방식은 SOQL의 ORDER BY절과 동일합니다.

예를 들어, 라인 아이템을 최근 생성된 순서로 정렬하고 싶다면 CreatedDate DESC로 작성하면 됩니다.

열 순서 변경하기

추가된 열은 Drag & Drop을 사용하여 순서를 변경할 수 있습니다.

열 순서 변경 방법

  1. 원하는 열의 맨 좌측 아이콘()을 마우스로 클릭한 상태로 유지합니다.

  2. 마우스를 클릭한 상태에서 열을 원하는 위치로 Drag & Drop 합니다.

열 정렬 예시

초기 값 및 계산 적용 순서

라인 아이템 추가 및 값 변경 시 계산 수식, 수식 필드, 데이터 소스 등 적용되는 순서입니다.

라인 아이템 추가 시

필드값 변경 시

기본 화면 로드 시

라인 아이템 저장 시

가상 열 추가하기

가상 열은 을 통해 가져온 데이터나 단순 계산 결과를 화면에 표시하기 위해 사용됩니다.

현재 가상 열은 비즈니스 규칙에서만 사용할 수 있으며, 추후 다양한 용도로 확장될 예정입니다.

설정 방법

  1. 가상 열 추가 버튼을 클릭합니다.

  2. 내부적으로 사용할 API명을 입력하고 표시할 데이터의 유형을 선택합니다. (API명 중복은 허용되지 않습니다.)

  3. 화면에 표시할 레이블을 입력합니다.

제품 옵션 셋업 절차

제품 옵션을 사용하려면 다음과 같은 셋업 절차를 진행해야 합니다:

1

제품 옵션을 사용하려면 빌더에서 제품 옵션 기능을 활성화해야 합니다. 이 기능은 스탠다드 설정(기회, 견적, 주문)에서만 제공됩니다.

2

빌더에서 제품 옵션을 사용하려면 필요한 설정을 완료해야 제대로 기능을 사용할 수 있습니다.

예를 들어, 제품 옵션의 정보를 어떤 라인 아이템 필드에 저장할지, 어떤 기준으로 제품 옵션을 조회할지와 같은 필터 설정 등이 필요합니다.

3

제품 옵션 설정이 완료되면, 편집기에서 조회할 제품 옵션 데이터를 구성해야 합니다. 이를 위해 SmallBuilder Line Items에서 제공하는 제품 구성(SBLI__ProductFeature__c) 및 제품 옵션(SBLI__ProductOption__c) 개체에 데이터를 구성합니다.

레이블 변경하기

라인 아이템 편집기에 표시되는 열 레이블을 변경할 수 있습니다. 기본적으로 선택된 필드의 레이블이 표시되며, 레이블 입력란에 값을 입력하면 해당 값이 표시됩니다. 또한, 입력란 옆의 아이콘( )을 클릭하여 하면 사용자 언어 설정에 따라 번역된 레이블이 표시됩니다.

레이블을 별도로 설정하지 않은 경우, 기본적으로 표시되는 필드 레이블은 사용자 언어에 따라 번역됩니다.

JSON 내보내기

JSON 내보내기는 리스트 구성기에 정의된 데이터를 구조화된 JSON 형식으로 변환하여, 사용자가 이를 파일로 저장하거나 외부 시스템에 전달할 수 있도록 지원하는 기능입니다. 이 기능을 통해 구성된 라인 아이템 편집기나 설정 정보를 다른 환경으로 손쉽게 이전하거나, 백업 및 공유 목적으로 활용할 수 있습니다.


🔸 내보내기

1. 마이그레이션 탭에서 Export JSON 시작하기(Start Json Export) 버튼을 클릭합니다.

2. 빌더를 선택하고 Export 버튼을 클릭합니다.

3. JSON으로 변환된 데이터를 확인하고 이상이 없으면 Download 버튼을 클릭하여 Json 파일을 내려받습니다.

일부 필드 값 저장 시 제외하기

기회 제품을 기반으로 설정한 경우, 편집기에서 단가와 총액을 모두 표시하려고 합니다. 기회 제품에서 단가와 총액은 편집 가능한 필드이지만, 동시에 저장할 수는 없습니다. 총액은 내부적으로 단가와 수량에 의해 자동 계산되어 저장됩니다.

이때, 총액을 읽기 전용으로 설정하면 충분하지 않을까 생각할 수 있습니다. 그러나 라인 아이템 편집기는 빌더 설정에 의존하기 때문에, 읽기 전용으로 표시되더라도 해당 필드가 편집 가능한 필드로 설정되어 있으면 내부적으로 저장이 이루어집니다.

따라서, 수식 필드와 같은 읽기 전용 필드를 제외하고, 저장하지 않아야 하는 필드인 경우 반드시 ‘저장 안 함’ 설정을 활성화해야 합니다.

스탠다드 개체인 기회, 견적, 주문에 대한 설정인 경우, 총액 필드를 추가하면 자동으로 ‘저장 안 함’이 활성화됩니다.

합계 요약하기

라인 아이템 편집기 하단에 합계를 표시할 열을 설정합니다.

요약을 표시하기 전에, 기본 설정에서 ‘’ 옵션이 활성화되어 있어야 합니다.

값을 숨김 처리하여 내부적으로 계산 및 로직에 사용하기

숨김 설정은 아래와 같은 경우에 주로 사용됩니다:

계산식에 필요한 필드 값 처리

고급 설정에서 계산식에 사용해야 하는 필드 값이 있는 경우, 해당 필드는 라인 아이템 열에 추가되어야 합니다. 하지만 사용자가 모든 필드를 화면에서 볼 필요는 없기 때문에, 필드를 숨김 처리하여 화면에 노출되지 않도록 설정합니다.

수식 필드 오류 방지

라인 아이템 개체의 수식 필드는 저장 시 모든 수식을 재계산합니다. 이때, 특정 수식에 필요한 필드 값이 Null이면 오류가 발생할 수 있습니다. 이를 방지하기 위해 숨김 처리를 사용하여 해당 필드를 열에 추가하고 필요한 값을 할당합니다.

1.40.2

비즈니스 규칙 변경 및 삭제 관련 오류 수정, 읽기 전용 제어 적용 오류 수정

1.40

패키지 업그레이드 시 수식 해제되는 오류 수정, 라인 아이템 열에 도움말 텍스트 표시 제공

1.39

컬럼 순서 변경 시 JavaScript 오류, 비즈니스 규칙 Key 매핑 오류 등 수정 옵션 기능 비활성화, 라인 아이템 가상 열 계산 기능 지원

1.38

모바일 UI/UX 이슈 및 일부 저장 오류 수정

1.37

데이터소스 명칭 및 UI/UX 변경, 라인 아이템 가상 열(Virtual Column) 제공 등

<aura:component implements="force:lightningQuickActionWithoutHeader,force:hasRecordId" >   
    <SBLI:LineItemConfigurator builderId="XXX..." recordId="{!v.recordId}" />
</aura:component>

builderId

빌더의 레코드 ID 입니다.

✔️

recordId

대상 빌더의 부모 레코드 ID입니다.

✔️

빌더

버전 1.39 패키지 업그레이드 시 수식 적용이 자동으로 해제되던 현상 수정

빌더

  • 라인 아이템 열에서 적용된 계산식을 해제할 수 있도록 설정 제공

  • 라인 아이템 열에 도움말 텍스트를 표시할 수 있도록 기능 제공

https://login.salesforce.com/packaging/installPackage.apexp?p0=04tPf000000ThrBIAS

반응형

디바이스 환경에 맞춰 자동으로 최적화된 화면을 제공합니다.

데스크톱

디바이스에 상관없이 데스크톱 모드의 화면으로 고정됩니다.

모바일

디바이스에 상관없이 모바일 모드의 화면으로 고정됩니다.

조회 선택기
라인 아이템 편집기
조회 선택기
라인 아이템 편집기

1

라인 아이템 필드 설정

Line-item 개체의 모든 필드 중에서 편집 시 사용할 필드를 선택하고 각 필드의 기본값 및 속성을 설정합니다.

2

데이터소스

조회 개체 레코드 외에 추가 데이터를 표시하고 싶은 경우 데이터소스를 활용하여 다른 개체를 조회하거나 가져온 데이터를 표시할 수 있습니다.

또한, Apex Class를 사용하면 복잡한 로직이나 외부 인터페이스를 통해 데이터를 가져와 조회 선택기에서 표시하는 것도 가능합니다.

1

개체 및 부모 참조 필드 설정하기 라인 아이템으로 사용될 개체를 선택하고, 해당 개체를 부모 개체와 연결할 필드를 지정합니다. 스탠다드 개체를 사용하는 경우, 자동 설정 옵션을 통해 필요한 설정을 간편하게 구성할 수 있습니다.

2

저장된 라인 아이템의 필터와 정렬 순서 설정하기 라인 아이템 편집기에서 실행 시 조건에 맞는 저장된 라인 아이템을 불러오고 싶다면, 필터와 정렬 순서를 설정해보세요. 이를 통해 원하는 데이터만 표시하고, 불러오는 순서를 제어할 수 있습니다.

3

라인 아이템 삭제 제어하기 라인 아이템을 삭제할 때 특정 조건에 따라 제어하려면, 조건의 결과값(true 또는 false)을 저장하는 필드를 지정하세요. 이 필드는 삭제 가능 여부를 결정하는 데 사용됩니다.

4

자동 번호 설정하기 라인 아이템 저장 시 자동 번호를 설정할 수 있습니다. 이 기능은 특히 제품 옵션을 사용하는 경우 각 라인 아이템을 구분하고 관리하기에 유용합니다.

1

조회 참조 필드 선택하기

라인 아이템 개체에서 조회 개체를 참조하는 필드를 설정합니다.

2

키워드 검색 설정하기

조회 레코드를 검색할 때, 어떤 필드값을 기준으로 검색할지를 설정할 수 있습니다. 기본적으로 조회 개체의 Name 필드가 검색 기준으로 설정됩니다.

3

조회 선택기 차단하기

라인 아이템 편집기에서 조회 선택기를 사용하지 않고, 라인 아이템 편집만 원하는 경우, 조회 선택기를 차단하도록 설정할 수 있습니다. 또한, 조건에 따라 조회 선택기를 차단하거나 활성화할 수도 있습니다.

4

필터 및 정렬 순서 설정하기

필터를 사용하여 필요한 데이터만 조회하고, 조회된 데이터에 대해 원하는 정렬 순서를 설정할 수 있습니다.

Type__c = '구독'
쿼리 마법사(Query Wizard)
비즈니스 규칙(데이터소스)
Migration App
빌더 선택
결과 화면
요약 표시하기
커스텀 라벨을 삽입
레이블에 커스텀 라벨 삽입하기
조회 선택기 타이틀
라인 아이템 편집기 타이틀
라인 아이템 편집기 화면에서 버튼 레이블 변경하기
커스텀 라벨을 삽입
요약 표시
첫 번째 열 고정

라이선스 및 권한 할당

SmallBuilder는 10개의 라이선스를 무료로 제공하고 있습니다. 제품을 사용하기 전에 각 사용자가 제품에 접근할 수 있도록 SmallBuilder 라이선스와 권한 집합을 할당해야 합니다.

샌드박스에서는 라이선스 제한이 없기 때문에, 사용자에게 라이선스를 할당하지 않아도 제품을 사용할 수 있습니다.

라이선스 할당

SmallBuilder 정식 라이선스는 사용자당 부여되어야 합니다. 라이센스를 부여하는 방식은 다음과 같습니다:

  1. 설정에서 빠른 찾기 상자에 설치된 패키지를 입력한 후 설치된 패키지를 선택합니다.

  2. SmallBuilder {제품 이름}을 찾아 라이센스 관리를 클릭합니다.

  3. 사용자 추가를 눌러 원하는 사용자를 선택합니다.

  4. 추가를 클릭합니다.

만약 SmallBuilder Line Items 제품을 사용하는 경우, SmallBuilder Line Items를 찾아 라이선스 관리로 이동하면 됩니다.

권한 집합 할당

SmallBuilder는 두 가지 권한 집합을 제공합니다. 사용자의 역할에 맞는 권한 집합을 적절히 할당해 주세요. 제품 기능을 원활하게 사용하려면 반드시 권한 집합을 할당해야 합니다.

  • SmallBuilder {제품 이름} Manager

    SmallBuilder Manager 권한 집합은 제품의 전체 관리를 담당하는 사용자에게 할당됩니다. 주로 관리자에게 할당되며, 이 권한을 받은 관리자는 빌더 설정 구성, 라인 아이템에 버튼 추가, 리스트 제품에서 탭 생성 등 다양한 작업을 수행할 수 있습니다.

  • SmallBuilder {제품 이름} User SmallBuilder User 권한 집합은 주로 영업 담당자나 프로젝트 매니저와 같은 사용자에게 할당됩니다. 이 권한 집합을 할당받은 사용자는 SmallBuilder로 구현된 리스트나 문서를 보고, 라인 아이템 및 스케줄에서 데이터를 추가 및 수정할 수 있습니다.

만약 SmallBuilder Line Items 제품을 사용하는 경우, SmallBuilder Line Items Manager 또는 SmallBuilder Line Items User 권한 집합을 할당합니다.

이미지 URL을 이미지로 보여주기

준비중입니다.

마이그레이션

준비 중입니다.

1

스탠다드: 자동 설정하기 스탠다드 설정은 부모 개체를 기반으로 라인 아이템과 조회 개체에 필요한 설정을 자동으로 구성합니다. 이를 통해 편집기를 빠르고 간편하게 설정할 수 있습니다.

2

직접 선택: 맞춤형 라인 아이템 설정하기 사용자 정의 개체를 사용하여 편집기를 구성하려면 직접 선택을 선택해야 합니다. 이 옵션을 통해 부모 개체, 라인 아이템 개체, 조회 개체를 수동으로 정의하여 편집기를 유연하게 설계할 수 있습니다.

1

개체 (Object)

라인 아이템으로 사용할 부모의 하위 개체를 선택합니다. 이 단계는 부모 개체와 연결된 하위 개체 중에서 라인 아이템으로 사용할 적절한 개체를 지정하는 과정입니다.

2

부모 참조 필드 (Parent Reference Field)

선택한 라인 아이템 개체에서 부모 개체를 참조하는 필드를 지정합니다. 이 필드는 라인 아이템 저장 시 부모 개체를 자동으로 할당하는 데 사용됩니다.

라이선스 및 권한 할당 >
조직 통화 설정 >
번역 활성화 >
연결된 앱 설정 >
제품 옵션 활성화
제품 옵션 설정하기
제품 옵션 데이터 구성하기

v 1.37

📦 Package Upgrade

https://login.salesforce.com/packaging/installPackage.apexp?p0=04tPf000000MNh7IAG

🗓️ Release Date

2025. 4. 2.

⚙️ Features

  • 데이터소스 명칭 변경: 데이터소스에서 비즈니스 규칙(Business Rule)로 명칭이 변경되었습니다.

  • 비즈니스 규칙 설정 화면(UI/UX) 개선

  • Evaluation Event에 ‘On Change’ 옵션 추가: 특정 필드 값이 변경될 때 비즈니스 규칙이 자동으로 실행되도록 설정할 수 있습니다.

라인 아이템 편집

라인 아이템에 기능 제공 (현재 비즈니스 규칙(데이터소스) 용도로만 쓰임)

기존에는 SOQL 문을 직접 입력하여 필터를 설정했지만, 이제는 제공되는 필터 설정 UI를 통해 필터 표현 식을 더 쉽고 직관적으로 구성할 수 있습니다. 라인 아이템, 조회, 비즈니스 규칙(데이터소스)의 필터 설정에 적용되었습니다.

데이터소스 UI/UX 변경 사항

기존에는 데이터소스 레이아웃에서 직접 값을 입력하여 설정하는 방식이었으나,UI 변경된 버전에서는 보기 화면과 편집 화면이 분리되어 있습니다. 이제 데이터소스를 추가하거나 편집할 때는 모달 창을 통해 작업하게 됩니다.

  • 설명란을 추가하여 해당 비즈니스 규칙(데이터소스)에 대한 정보를 기재할 수 있도록 하였습니다.

  • 기존에는 필터를 직접 입력해야 하는 부분이 어드민에게 다소 어려움이 있어 필터 설정 도구를 제공하였습니다.

  • Apex 클래스를 사용한 비즈니스 규칙(데이터소스 고급)에서 파라미터가 많을 경우 보이지 않은 불편함을 개선하였습니다.

기존 화면

변경된 화면

조회 화면

추가 또는 편집 화면

관련 객체를 이용한 비즈니스 규칙(데이터소스 기본)
Apex 클래스를 사용한 비즈니스 규칙(데이터소스 고급)

빌더 시작하기

빌더 실행하기

  1. App Launcher( )에서 SmallBuilder Line Items를 찾아 이동합니다.

  2. 라인 아이템 편집기 탭으로 이동 후 새로 만들기를 눌러 빌더를 실행합니다.

1. SmallBuilder Line Items 앱 이동
2. 라인 아이템 편집기 탭으로 이동

빌더 레이아웃

빌더의 상단에는 저장, 삭제 및 버튼 생성 등의 기능을 제공하는 버튼들이 있습니다. 왼쪽 사이드 패널에서는 빌더의 기본 설정을 관리하고 일부 레이블을 변경할 수 있으며, 오른쪽 패널에서는 단계별 설정 기능을 제공합니다.

1

좌측 상단 타이틀 옆에 활성화 여부를 알 수 있으며 미리 보기, 버튼 추가, 저장 및 삭제 등 버튼이 모여있습니다.

  • 버튼 추가: 활성화된 빌더 설정 기반으로 구성기의 버튼을 생성합니다. 지정한 부모 개체 기반으로 원하는 페이지 레이아웃에 버튼을 추가할 수 있습니다.

  • 활성화: 빌더를 구성기로 사용하기 위해 활성화를 반드시 해주어야 합니다. 비활성화 상태인 경우 구성기를 사용할 수 없습니다.

  • 저장: 빌더를 저장합니다.

  • 복제: 최종적으로 저장된 빌더 기반으로 복제합니다. 복제 버튼을 누른 후 '저장' 버튼을 눌러야 복제가 완료됩니다.

  • 초기화: 편집 과정에서 원래 설정으로 복구하고 싶은 경우, Reset 버튼을 누르면 최종적으로 저장된 설정으로 복구됩니다.

  • 도움말: SmallBuilder Line Items의 헬프 문서로 이동합니다.

2

설정 단계를 표시합니다. 단계는 3가지로 구성되어 있으며 각 설정을 누르면 번 영역이 해당 패널로 전환이 됩니다.

  • 개체 연결: 라인 아이템 편집기는 크게 부모, 조회, 라인 아이템으로 구성되어 있습니다. 이 단계에서는 부모, 조회, 라인 아이템에 어떠한 개체를 사용하지 지정합니다. 그리고 해당 구성들에 설정하려는 개체들은 서로 Junction 관계로 맺어져 있어야 하고 개체는 스탠다드, 커스텀 모두 지원합니다.

  • 조회 선택기 설정: 조회로 지정된 개체에 대하여 필드를 추가하고 라인 아이템 편집기 구성 시 컬럼 값 정렬 및 너비 등을 설정하는 단계입니다.

  • 라인 아이템 편집기 설정: 라인 아이템으로 지정된 개체에 대하여 필드를 추가하고 라인 아이템 편집기 구성 시 컬럼 값 정렬, 너비, 각 컬럼의 속성(숫자, 조회 필드 등)에 따른 고급 설정을 하는 단계입니다.

3

빌더의 기본 설정을 하는 패널입니다. 빌더의 이름, 화면 비율, 장치에 따른 화면 UX 등을 설정합니다.

4

번의 단계에 따라 해당 설정 패널로 전환됩니다.

개체 연결 (Relate Objects)

빌더에서 설정해야 하는 가장 첫 번째 단계는 라인 아이템 편집기에서 사용할 개체들의 관계를 정의하는 것입니다. 이 관계는 반드시 Junction 관계 구조를 따라야 하며, 부모(Parent), 라인 아이템(Line Item), 조회(Lookup) 개체를 설정해야 합니다.

설정 단계

1

부모 개체

부모 개체는 라인 아이템 개체의 상위 개체로, Master-Detail 또는 Lookup 관계를 가집니다. 라인 아이템 편집기는 부모 개체의 레코드 페이지에서 실행됩니다.

부모 개체 설정하기 >

2

라인 아이템 개체

라인 아이템 개체는 참조 데이터를 선택하여 추가 정보를 입력하고 저장하는 역할을 하는 개체입니다.

라인 아이템 개체 설정하기 >

3

조회 개체

조회 개체는 라인 아이템 개체에서 참조하는 개체로, 사용자는 조회 레코드를 선택하여 이를 기반으로 라인 아이템 레코드를 생성합니다.

조회 개체 설정하기 >

예시: 기회 제품 편집 화면 재구성하기

기회(Opportunity)를 기준으로 여러 제품을 관리하기 위해 기회 제품(OpportunityLineItem)이라는 개체가 사용됩니다. 기회 제품은 가격 목록 항목(PricebookEntry)을 참조하여 제품 및 가격 정보를 가져옵니다. 이러한 스탠다드 기회 제품 등록 화면을 SmallBuilder Line Items를 사용하여 재구성하려고 합니다.

  • 부모 개체: 기회

    여러 제품을 연결하는 상위 개체로, 기회 제품과 Master-Detail 관계를 가집니다.

  • 라인 아이템 개체: 기회 제품

    판매 가격, 수량, 총 금액 등 제품 관련 데이터를 저장하며, 기회와 연결됩니다.

  • 조회 개체: 가격 목록 항목

    제품 이름과 가격 정보를 가져오는 참조 개체로, 기회 제품에서 Lookup 관계를 가집니다.

기회 제품은 Junction 개체로, 기회와 가격 목록 항목을 연결하여 특정 기회의 제품 정보를 관리합니다.

설정 방법

부모 개체에서 시작하여 하위 개체인 라인 아이템을 선택하고, 라인 아이템이 참조하고 있는 조회 개체를 설정합니다. 조회 개체를 지정할 때는, 라인 아이템에서 조회 개체를 참조하는 필드를 선택해야 합니다.

기회(Opportunity)에 대한 기회 제품(OpportunityLineItem)을 기반으로 빌더를 설정한다고 가정해 보겠습니다. 아래 개체 구조 이미지와 같이 기회 제품은 두 가지 주요 관계를 가집니다:

  • 기회(Opportunity)

    기회 제품의 상위 개체로 기회 ID(OpportunityId) 필드로 참조됩니다.

  • 가격 목록 항목(PricebookEntry)

    기회 제품이 참조하고 있는 개체로 가격 목록 항목 ID(PricebookEntryId) 필드로 참조됩니다.

부모 개체는 기회(Opportunity)로 선택합니다.

라인 아이템 개체는 기회 제품(OpportunityLineItem)으로 선택합니다.

기회 제품(OpportunityLineItem)은 가격 목록 항목(PricebookEntry)을 참조하여 생성되기 때문에, 조회 참조 필드로 기회 제품의 가격 목록 항목 ID(PricebookEntryId) 필드를 선택해야 합니다.

자동 번호 설정하기

라인 아이템 저장 시 자동 번호를 설정할 수 있습니다. 이 기능은 특히 제품 옵션을 사용하는 경우, 각 라인 아이템을 구분하고 관리하기에 유용합니다.

자동 번호는 라인 아이템 편집기 화면에서 저장하는 경우에만 해당되며, Salesforce 내부 트랜잭션(예: API, 데이터 로더, 또는 수동 삭제)에서는 자동으로 번호가 할당되지 않습니다.

예시: 제품 옵션과 함께 등록된 기회 제품에 자동 번호 할당하기

기회 상세 페이지에서 라인 아이템 편집기를 사용해 기회 제품을 저장하고, 기회에서 견적을 생성한 뒤, 수정된 내용을 다시 기회에 동기화(Sync)하는 과정을 진행한다고 가정해 보겠습니다.

그러나 순서 정렬(SortOrder) 필드값을 올바르게 저장하지 않으면, 제품 옵션에 대한 라인 아이템들이 잘못된 순서로 정렬되어 사용자에게 혼란을 줄 수 있습니다. 이를 해결하기 위해 순서 정렬(SortOrder) 필드에 자동 번호를 할당하여, 동기화(Sync) 시 순서가 올바르게 정렬되도록 설정합니다.

빌더 설정

  1. 빌더에서 개체 연결 단계에서 자동 번호 필드에 순서 정렬 필드의 API명(SortOrder)를 입력합니다.

  2. 정렬 순서를 표시하기 위해 라인 아이템 편집기 설정 단계에서 정렬 순서(SortOrder)를 추가합니다.

결과

라인 아이템 편집기를 실행하면, 정렬 순서(SortOrder) 컬럼에 자동 번호가 할당된 것을 보실 수 있습니다.

라인 아이템의 자동 번호는 기본적으로 100, 200, 300과 같이 100 단위로 순번이 매겨집니다. 구성 제품의 옵션 라인 아이템은 주 라인 아이템의 번호를 기준으로 101, 102와 같이 하위 번호가 할당됩니다.

옵션 라인 아이템의 경우, 편집기에서는 아래 필드 정보만 노출됩니다:

  • 제품명

  • 정가

  • 단가

  • 수량

  • 총액

  • 할인율/할인액

비즈니스 규칙 (Business Rule)

조회 또는 라인 아이템과 관련된 개체나 외부 API 서버에서 필요한 데이터를 조회하거나, 복잡한 로직이나 계산식을 사용해 처리된 데이터를 함께 표시하거나 일부 필드에 기본값으로 설정할 때 사용합니다.

비즈니스 규칙 설정

조회 선택기 설정(Setup Lookup Selector) 또는 라인 아이템 편집기 설정(Setup Line Item Editor) 단계로 이동하면 하단에 비즈니스 규칙을 설정할 수 있는 레이아웃이 나타납니다.

라인 아이템 편집기는 평가 이벤트(Evaluation Event)를 필수로 설정해주어야 합니다. 평가 이벤트(Evaluation Event)는 아래와 같이 제공됩니다.

  • 초기화 시(On Initialization): 라인 아이템 레코드가 새로 추가되었을 때 실행됩니다.

  • 로딩 시(On Loading): 라인 아이템 화면이 로드될 때마다 실행됩니다.

  • 변경 시(On Change): 라인 아이템의 특정 필드가 변경될 때마다 실행됩니다.

  • 저장 전(Before Save): 라인 아이템 레코드들이 저장되기 전 실행됩니다.

비즈니스 규칙 유형

관련 객체에서 데이터 가져오기

단순히 관련된 개체를 조회하려는 경우, 데이터소스 기본 설정을 사용해보세요. 조회 또는 라인 아이템과 관련된 개체를 선택하고, 데이터소스를 통해 가져온 개체의 필드 값을 조회 또는 라인 아이템 필드에 매핑할 수 있습니다.

Apex 클래스를 사용하여 데이터 가져오기

외부 API 서버에서 데이터를 조회하거나, 데이터 조회 및 결합 시 복잡한 로직이 요구되는 경우에 사용됩니다. 데이터소스 고급을 설정하려면 Apex 클래스를 작성해야 합니다. Apex 클래스를 사용해 구현하므로, 데이터소스 기본보다 데이터를 더 자유롭게 가져올 수 있다는 장점이 있습니다.

비즈니스 규칙 실행 순서

비즈니스 규칙은 관련 객체를 사용하는 규칙(Basic)이 먼저 실행된 후, Apex 클래스를 사용하는 규칙(Advanced)이 실행됩니다.

1

관련 객체를 이용한 규칙 (Basic)

추가된 순서대로 실행됩니다.

2

Apex 클래스를 사용한 규칙 (Advanced)

일반적으로 추가된 순서대로 실행되지만, 실행 순서는 보장되지 않을 수 있습니다.

레이블에 커스텀 라벨 삽입하기

커스텀 라벨 적용이 가능한 곳에는 아이콘이 표시됩니다. 해당 아이콘을 클릭하면 커스텀 라벨을 선택할 수 있는 모달 창이 나타나며, 원하는 라벨을 선택하여 적용할 수 있습니다.

커스텀 라벨을 적용할 때, 대상 값이 최대 길이를 초과하면 커스텀 라벨 바인딩이 잘려서 제대로 적용되지 않을 수 있습니다.

라벨 적용 시 최대 길이 제한을 고려하여 설정하세요.

예시: 편집기에서 조회 선택기 버튼 레이블 변경하기

조회 개체 이름이 가격 목록 항목으로 설정되어 조회 선택기 버튼의 이름도 조회 개체 이름을 그대로 사용합니다. 하지만 이러한 버튼 이름은 사용자에게 어색하게 보일 수 있습니다. 세일즈포스 설정에서 개체 레이블을 변경하는 것은 비효율적입니다. 해당 개체는 여러 곳에서 다양하게 사용되므로, 다른 화면에도 영향을 미칠 가능성이 있기 때문입니다.

설정

  1. 사이드 패널에서 레이블 메뉴로 이동합니다.

  2. 조회 버튼 레이블 입력란 옆에 아이콘을 클릭합니다.

  3. 미리 만들어 둔 커스텀 라벨 ‘제품 추가(SmallBuilder_AddProducts)’을 선택합니다.

  4. 입력란에 커스텀 라벨({$CustomLabel.SmallBuilder_AddProducts})이 바인딩된 것을 확인합니다.

  5. 편집기를 실행하여 조회 선택기 버튼이 제대로 변경되었는지 확인합니다.

결과

사용자의 언어 설정에 따라 커스텀 라벨이 번역되어 표시되는 것을 확인할 수 있습니다.

제품 추가(SmallBuilder_AddProducts) 레이블에 대한 번역

언어
번역

영어

Add Products

한국어

제품 추가

사용자의 언어가 한국어인 경우 버튼 레이블이 '제품 추가'로 보이는 것을 확인할 수 있습니다.

사용자의 언어가 영어인 경우 버튼 레이블이 'Add Products'로 보이는 것을 확인할 수 있습니다.

필터 설정 도구

필터 설정 도구를 사용하면 필터를 손쉽게 추가, 수정 및 삭제할 수 있습니다. 필터 값에는 부모 또는 조회 필드를 바인딩할 수 있어 동적인 조건 설정도 가능합니다. 보다 복잡한 조건이 필요한 경우, SOQL 문을 직접 입력하여 필터를 구성할 수도 있습니다.

SOQL 작성

복잡한 조건(예: 서브쿼리)이나 필터 도구에서 제공하지 않는 필드, 연산자, 값을 사용해야 하는 경우, 직접 SOQL 조건절을 입력할 수 있습니다.

필터 도구로 조건을 설정한 경우, 해당 조건이 SOQL 입력란에 자동으로 표시됩니다.

직접 작성한 SOQL이 있는 경우, 필터 도구에서 설정한 조건과 AND 조건으로 자동 연결됩니다.

만약 필드나 바인딩할 부모 및 조회 필드를 삽입해야 하는데 필드 API명을 잘 모르는 경우 우측 상단에 ‘표현식 삽입’ 버튼을 클릭하여 도움을 받을 수 있습니다.

필터 설정 시 부모 개체 필드와 바인딩하기

필터를 설정할 때, 조건값을 부모 개체의 필드 값과 바인딩할 수 있습니다. 값 입력란 앞에 있는 옵션에서 부모를 선택하면, 해당 부모 개체의 필드를 선택하여 필터 조건으로 사용할 수 있습니다.

이 기능을 통해 부모 개체의 동적인 필드 값을 기준으로 필터를 설정할 수 있어 더욱 유연한 데이터 조회가 가능합니다.

예시: 기회의 가격 목록에 해당하는 가격 목록 항목 조회하기

가격 목록 항목의 가격 목록(Pricebook2Id)이 부모 개체인 기회의 가격 목록(Pricebook2Id)과 일치하는 데이터를 조회하도록 필터를 설정하려고 합니다.

  1. 개체 연결 단계에서 조회 개체의 필터 설정(Filter by Query) 항목으로 이동한 후, 필드에 가격 목록(Pricebook2Id)을 검색하여 선택합니다.

  1. 값 입력란 옆의 옵션에서 부모(Parent)를 선택합니다.

  1. 값 입력란에 다시 가격 목록(Pricebook2Id)을 검색하여, 부모 개체의 가격 목록 ID를 선택합니다.

  1. SOQL 편집기를 열어보면, 가격 목록 조건이 부모의 가격 목록 필드와 바인딩된 것을 확인할 수 있습니다.

이 설정을 통해 부모 개체의 가격 목록과 일치하는 가격 목록 항목 데이터를 필터링할 수 있습니다. 필터 도구를 사용하면 조건을 쉽고 편리하게 추가할 수 있습니다.

소스 필드: 부모 또는 조회의 특정 필드 값을 기본값으로 할당하기

라인 아이템 추가 시, 부모 개체 또는 조회 개체의 특정 필드 값을 기본값으로 할당할 수 있습니다.

소스 필드 값은 라인 아이템이 최초 추가될 때만 할당됩니다.

예시: 기회 제품의 단가를 가격 목록 항목의 단가로 기본값으로 할당하기

기회 제품 추가 시, 선택한 제품의 단가를 기회 제품의 단가 필드에 기본값으로 할당하려고 합니다.

라인 아이템에 정가(ListPrice)와 판매 가격(UnitPrice) 필드가 추가되어 있습니다. 해당 필드에 조회 개체인 가격 목록 항목(PricebookEntry)의 정가(UnitPrice) 필드 값을 기본값으로 설정하려고 합니다.

설정 방법

  1. 정가와 판매 가격의 소스 필드에서 첫 번째 옵션을 ‘조회’로 선택합니다.

  2. 두 번째 옵션에서 ‘정가’를 선택합니다.

결과

선택한 제품들의 단가가 라인 아이템의 정가와 판매 가격 필드에 값으로 할당되는 것을 확인할 수 있습니다.

조회 선택기
라인 아이템 편집기

빌더 복제

복제 목적

복제 기능은 두 가지 주요 목적으로 사용됩니다:

1. 안전한 수정 및 테스트

버전 관리 기능을 지원하지 않기 때문에, 현재 설정을 복제하여 안전하게 수정하고 테스트할 수 있습니다. 이를 통해 원래 설정에 영향을 주지 않고 변경 사항을 시도할 수 있습니다.

2. 비슷한 편집기 빠르게 구현

비슷한 라인 아이템 편집기를 추가로 구현할 필요가 있을 때, 복제 기능을 사용하면 새 편집기를 신속하게 생성하고 조정할 수 있습니다.

복제하기

  1. 빌더 상단에 있는 복제 버튼을 클릭합니다.

  2. 복제된 빌더 화면에서 필요한 추가 설정 및 변경을 합니다.

  3. 저장을 눌러 복제 작업을 완료합니다.

제품 옵션 활성화

제품 옵션을 사용하려면 빌더에서 제품 옵션 기능을 활성화해야 합니다. 해당 설정은 개체 연결 단계의 조회 개체 영역에서 활성화할 수 있습니다.

단, 제품 옵션 설정은 스탠다드 설정(기회, 견적, 주문)인 경우에만 가능합니다.

스탠다드 설정에서만 제품 옵션 제공

앞서 안내한 것처럼, 제품 옵션은 스탠다드 설정에서만 활성화할 수 있습니다.

제품 옵션은 가격 목록 항목(PricebookEntry)을 기준으로 제품과 단가 정보를 조회하기 때문에, 세일즈포스에서 가격 목록 항목과 유일하게 관계를 맺고 있는 기회(Opportunity), 견적(Quote), 주문(Order)에 한정하여 제공됩니다.

시작하기 전에

패키지 설치

AppExchange에서 SmallBuilder를 조직에 설치합니다.

라이선스 및 권한 할당

SmallBuilder는 10개의 라이선스를 무료로 제공하고 있습니다. 제품을 사용하기 전에 각 사용자가 제품에 접근할 수 있도록 SmallBuilder 관련 라이선스와 권한 집합을 할당해야 합니다.

라이선스 및 권한 할당

조직 통화 설정

조직이 처음 생성된 후 통화가 null로 설정되어 있을 수 있습니다. 통화가 올바르게 설정되지 않으면 SmallBuilder가 제대로 작동하지 않을 수 있습니다. 제품을 사용하기 전에 조직의 통화가 제대로 설정되어 있는지 확인하세요.

조직 통화 설정

번역 활성화

SmallBuilder 제품들은 영어와 한국어를 지원합니다. 기본 언어는 영어이며, 한국어 번역을 사용하려면 조직에서 번역 기능을 활성화해야 합니다.

번역 활성화

연결된 앱 설정

SmallBuilder 제품에서 페이지 레이아웃에 버튼 추가, 탭 생성 등 메타데이터 관련 작업을 수행하려면 SmallBuilder에 연결된 앱에 대한 추가 설정이 필요합니다.

연결된 앱 설정

열 추가하기

라인 아이템 편집기에 표시 및 작업할 필드(열)을 설정합니다.

미리 추가된 조회 참조 필드는 삭제할 수 없습니다. 라인 아이템 편집기에서 해당 필드를 표시하지 않으려면, 숨김 설정을 체크하세요.

설정 방법

라인 아이템 편집기 설정 단계에서 [열 추가] 버튼을 클릭하여 라인 아이템 편집기에 작업할 필드를 선택합니다.

열 추가 예시

기본값 설정하기

라인 아이템 추가 시 기본값을 할당할 수 있습니다. 기본값은 텍스트 또는 숫자만 설정 가능합니다.

기본값은 라인 아이템이 최초 추가될 때만 할당됩니다.

예시: 수량의 기본값을 1로 설정하기

빌더에서 수량 필드(열)의 기본값을 1로 설정합니다.

라인 아이템 추가 시, 수량이 자동으로 1로 할당되는 것을 확인할 수 있습니다.

기초 사용 예제

Line-item Configurator를 빠르게 이해할 수 있게 구성한 간단한 예제입니다.

기회의 기회 제품 Line-item Configurator 구현 예시

기존에 있는 기회 제품 등록 화면에서 수량 및 단가 변경 시 자동 계산이 안 되는 부분을 Line-Item Configurator를 이용해 할인율 적용, 총액 계산 및 하단에 요약까지 다시 재구현하였습니다.

비즈니스 출장 기능 구현 예시

Line-Item Configurator는 표준 개체뿐만 아니라 사용자 정의 개체를 이용해서 세일즈포스에 쉽게 Line-Item 입력을 할 수 있도록 제공합니다.

아래 영상에서는 사용자 정의 개체인 '비즈니스 출장'을 이용하여 Line-Item Configurator를 구현하였습니다. 기존에는 표준 화면을 이용 시 Line-Item 추가하려면 한 건씩 처리해야 하는 번거로움이 있습니다. 또한, 입력 화면의 필드들을 자유롭게 커스텀하는게 쉽지 않습니다. Configurator를 통해 어떻게 구현되었는지 영상을 통해 보여 드리겠습니다.

제품 옵션 설정하기

제품 옵션을 활성화하면 빌더 상단에 ‘제품 옵션 설정’ 단계가 추가됩니다. 해당 단계에서 제품 옵션 기능을 사용하기 위한 설정을 진행합니다.

제품 옵션 설정

제품 옵션 설정은 크게 기본 설정과 라인 아이템 설정으로 나뉩니다.

제품 추가 시 옵션 선택 건너뛰기, 선택할 수 있는 옵션 필터하기 등 기본적인 설정을 진행합니다.

구성 제품과 옵션 제품 간의 라인 아이템을 연결할 필드를 설정하거나, 옵션 정보를 저장할 라인 아이템 필드를 매핑하는 작업을 수행합니다.

미리보기

편집기를 실제로 사용하기 전에, 빌더에서 설정한 내용이 어떻게 편집기로 구현되는지 미리보기를 통해 확인합니다.

현재는 변경된 설정을 반드시 저장해야만, 미리보기를 통해 변경된 사항이 반영된 것을 확인할 수 있습니다.

1

장치

장치에 따라 편집기를 미리 볼 수 있습니다.

2

대상 레코드 선택

미리 보고 싶은 대상 레코드를 선택합니다. 선택할 레코드는 부모 개체의 레코드입니다.

미리보기 예시

라인 아이템 편집기

라인 아이템 편집기는 빌더 설정을 기반으로 구현된 사용자 맞춤형 편집기입니다. 이 편집기를 통해 스탠다드 편집 화면에서 제공되지 않는 자동 계산, 추가 참조 데이터 표시 등 다양한 기능을 활용할 수 있습니다.

라인 아이템 편집기는 크게 두 가지 화면으로 구성되어 있습니다:

조회 선택기

조회 선택기 화면에서는 라인 아이템에 추가할 항목을 선택하는 역할을 합니다. 여러 개의 아이템을 선택하여 라인 아이템에 추가할 수 있습니다.

예를 들어, 기회에서 기회 제품을 추가할 때 제품을 선택하는 화면을 떠올리면 됩니다. 이 화면이 바로 조회 선택기에 해당합니다.

라인 아이템 편집기

라인 아이템 편집기 화면에서는 추가된 라인 아이템을 관리 및 편집합니다. 라인 아이템별 세부 정보를 수정하거나 계산된 결과를 확인할 수 있는 주요 작업 공간입니다.

(이미지)

v 1.39

📦 Package Upgrade (v1.39.1)

🗓️ Release Date

2025. 4. 28.

🐛 Bug Fixes

⚙️ Features

라인 아이템 가상 열에 자릿수 표시 및 계산식 설정

기존에는 라인 아이템 가상 열은 그저 비즈니스 규칙(데이터소스)의 데이터 표시 용도로만 사용되었습니다. 해당 버전에서는 가상 열 유형이 통화 또는 숫자인 경우 자릿수 표시(Scale)와 계산식(수식, 할인율, 기간)을 적용할 수 있도록 설정할 수 있습니다.

조건에 따라 라인 아이템 열의 필수 여부 또는 읽기 전용 상태로 제어하기

부모, 조회, 라인 아이템의 필드 값에 따라 필수 여부와 읽기 전용 상태를 제어할 수 있습니다. 라인 아이템의 경우 컬럼에 추가되어 있는 필드가 변경되었을 때 조건을 평가합니다.

빌더의 필터 도구 변경사항

기존에는 SOQL을 직접 입력하는 경우 AND 또는 OR를 앞에 작성해야 했습니다.

하지만 이번 버전부터는 자동으로 AND 조건으로 결합하게 됩니다.

라인 아이템 옵션 값의 표시 및 저장 방식

라인 아이템의 옵션 값의 표시 및 저장 방식은 일부 옵션 값과 라인 아이템 편집기 설정 단계에서 추가된 필드 설정에 따라 결정됩니다.

편집기에서 옵션은 모두 읽기 전용으로 표시됩니다. 하지만 수량과 가격은 옵션 데이터 설정에서 ‘수량/가격 편집 가능’ 옵션을 활성화하면 수정할 수 있습니다.

일부 옵션 값의 표현 방식

옵션 값
저장 방식

예시

해당 이미지와 같이 추가된 옵션의 수량은 2이고, 총액은 $90입니다. 계산 방식은 다음과 같습니다:

옵션 필드
계산 방식
결과

라인 아이템 열의 설정에 따른 표시 및 저장

옵션 값이 매핑된 필드가 라인 아이템 열로 추가된 경우, 해당 열에 ‘저장 안 함’ 설정이 활성화되어 있다면 해당 설정을 따릅니다. 그리고 라인 아이템 열에 추가되지 않은 필드는 편집기에서 표시되지 않지만 내부적으로 저장됩니다.

매핑된 라인 아이템의 필드가 세일즈포스 필드 권한에서 읽기 전용으로 설정된 경우, 해당 필드는 저장되지 않습니다.

예시

라인 아이템 편집기 설정에서 총액(TotalPrice) 필드에 ‘저장 안 함’ 설정이 활성화된 상태입니다.

제품 옵션의 Total Price 값이 라인 아이템의 총액(TotalPrice) 필드로 매핑되어 있습니다.

편집기에서 옵션을 추가한 후 저장 시, 옵션의 총액(TotalPrice) 필드는 라인 아이템 열 설정에 따라 저장되지 않습니다.

쿼리 마법사(Query Wizard)를 사용하여 필터 삽입하기

빌더에서 필터 설정은 보통 SOQL의 WHERE 절에 해당하는 구문을 입력합니다. 그러나 SOQL을 잘 모르는 관리자라면 이 과정을 어렵게 느낄 수 있습니다.

이를 해결하기 위해 쿼리 마법사를 제공하여 관리자가 SOQL 문법에 대한 깊은 지식 없이도 간단하게 필터 조건을 설정할 수 있도록 지원합니다. 쿼리 마법사를 사용하면 조건을 선택하고 값을 입력하는 방식으로 필터를 설정할 수 있어 필터 작성이 훨씬 쉬워집니다.

로직 설정하기

쿼리 마법사에서 여러 필터를 설정하면 기본적으로 조건이 ‘AND’로 묶여 생성됩니다.

예를 들어 쿼리 마법사에서 3개의 필터를 추가하였을 때:

쿼리 마법사에서 설정한 1~3번 필터는 다음과 같이 모두 ‘AND’로 묶여 생성됩니다.

로직 변경하기

로직을 변경하려면 로직 편집을 눌러 필터 번호를 기반으로 로직을 수정하세요.

예를 들어, 모든 조건을 OR로 변경하고 싶은 경우 아래와 같이 입력합니다:

수정한 로직대로 필터가 생성된 것을 확인할 수 있습니다.

필터 설정 시 부모 개체 필드와 바인딩하기

필터를 설정할 때, 조건값을 부모 개체의 필드 값과 바인딩할 수 있습니다. 값 입력란 앞에 있는 옵션에서 부모를 선택하면, 해당 부모 개체의 필드를 선택하여 필터 조건으로 사용할 수 있습니다.

이 기능을 통해 부모 개체의 동적인 필드 값을 기준으로 필터를 설정할 수 있어 더욱 유연한 데이터 조회가 가능합니다.

예시: 기회의 가격 목록에 해당하는 가격 목록 항목 조회하기

가격 목록 항목의 가격 목록(Pricebook2Id)이 부모 개체인 기회의 가격 목록(Pricebook2Id)과 일치하는 데이터를 조회하도록 필터를 설정하려고 합니다.

  1. 개체 연결 단계에서 조회 개체의 필터 설정(Filter by Query)에서 쿼리 마법사 버튼을 클릭합니다.

  1. 값 입력란 옆의 옵션에서 부모(Parent)를 선택합니다.

  1. 입력란에 가격 목록(Pricebook2Id)를 검색하여 부모 개체의 가격 목록 ID를 선택합니다.

  1. 필터 조건이 {$Parent.Pricebook2Id}로 자동 바인딩되어 추가된 것을 확인합니다.

이 설정을 통해 부모 개체의 가격 목록과 일치하는 가격 목록 항목 데이터를 필터링할 수 있습니다. 쿼리 마법사를 사용하면 필터 구문이 자동으로 생성되어, 조건을 쉽고 편리하게 추가할 수 있습니다.

기본 설정

제품 추가 시 옵션 선택 건너뛰기, 선택할 수 있는 옵션 필터하기 등 기본적인 설정을 진행합니다.

기본 펼치기

라인 아이템 편집기를 로드하면, 기본적으로 구성 제품에 추가된 옵션들이 모두 표시되도록 옵션 라인 아이템 목록이 확장되어 있습니다.

만약 편집기 로드 시 옵션 목록을 숨기고 싶다면, ‘기본 펼치기’ 설정을 비활성화하세요.

기본 펼치기가 활성화 된 경우

기본 펼치기가 비활성화 된 경우

기본 펼치기가 비활성화된 경우, 옵션 목록이 숨겨져 있습니다. 확장 아이콘()이 있는 라인 아이템 행을 클릭하면 옵션 목록을 펼쳐서 확인할 수 있습니다.

옵션 선택 건너뛰기

기본적으로 제품 옵션이 활성화되면, 조회 선택기에서 제품을 선택한 후 다음 버튼을 클릭하면 옵션 선택 단계가 나타납니다.

하지만, 제품을 추가할 때마다 옵션 선택 단계가 나타나는 것이 번거롭거나 불필요하다고 느낄 경우, ‘옵션 선택 건너뛰기’ 설정을 활성화하여 해당 단계를 건너뛸 수 있습니다.

옵션 선택 단계를 건너뛰어도, 라인 아이템 편집기에서 옵션을 선택할 수 있습니다.

옵션 선택을 건너뛰는 경우

옵션 선택을 건너뛰는 설정을 활성화하면, 아래 이미지와 같이 제품 선택 후 옵션 선택 단계가 생략됩니다. 옵션 선택 단계를 스킵하더라도 라인 아이템 편집기에서 옵션을 선택하거나 추가할 수 있습니다.

옵션 필터

옵션은 선택한 제품과 부모(기회, 견적, 주문)의 가격 목록(Pricebook2Id)을 기반으로 조회됩니다.

추가적으로 옵션 조회 조건을 설정하고 싶은 경우, 옵션 필터를 설정하세요. 필터 작성 방식은 SOQL의 WHERE 절과 동일하며, 필터 기준이 되는 개체는 제품 옵션(SBLI__ProductOption__c)입니다.

예시

또한, 직접 작성하지 않고 를 이용해 필터를 자동으로 생성할 수도 있습니다.

조회 선택기 설정 (Setup Lookup Selector)

라인 아이템을 등록하기 위해서는 먼저 제품과 같은 조회 개체를 검색하고 검색 결과 중 원하는 레코드를 선택하고 수량 등을 설정하여 라인 아이템을 등록합니다. 검색 설정은 조회 개체 검색 시 검색 결과 레이아웃을 설정하는 기능입니다.

SmallBuilder Line Items
SmallBuilder Documents
SmallBuilder Lists
SmallBuilder Schedules

빌더

  • Apex 클래스를 이용한 비즈니스 규칙에서 Key 선택 시, 라인 아이템 필드가 검색되어 잘못 매핑되었던 문제 수정

  • 조회 및 라인 아이템에서 컬럼 순서를 변경할 때 발생하던 JavaScript 오류 수정

  • 개체 기반 비즈니스 규칙에서 필터 설정 시 조회 개체 필드 바인딩 기능 제거 -> 해당 기능은 내부적으로 이슈가 있어 기능을 제거함 추후 별도의 UI/UX를 통해 다시 제공될 예정입니다.

편집기

  • 패키지 라이선스가 없는 경우, “Internal Error” 대신 “라이선스가 필요합니다” 메시지를 표시하여 사용자 혼란 해소

  • 필수로 설정된 일부 컬럼들이 화면 상에 필수 표시가 나타나지 않던 문제 수정

  • 편집기가 플로에 삽입되어 있는 상태에서 저장을 진행하면 로딩 화면이 사라지지 않던 현상 해결

공통

버전 1.39부터 옵션 기능 비활성화 기존에 옵션 기능을 사용 중인 경우 기능은 계속 유지됩니다.

빌더

  • 라인 아이템의 가상 열이 숫자 또는 통화 유형인 경우, 자릿수 표시 및 계산식 적용 기능 제공

  • 라인 아이템 열에서 필수 및 읽기 전용을 조건에 따라 제어할 수 있도록 설정 제공

  • 라인 아이템의 참조형 컬럼 설정에서 필터 도구 제공

  • 필터 도구에서 SOQL 조건이 있는 경우 기본 필터 설정과 ‘AND’ 조건으로 자동 결합되도록 수정

편집기

  • 라인 아이템 열의 너비가 설정되어 있지 않은 경우, 기본적으로 최소 너비 150px로 적용되어 지나치게 좁게 표시되는 현상 해소

https://login.salesforce.com/packaging/installPackage.apexp?p0=04tPf000000TeRtIAK

1

조회 필드 설정

조회 선택기에서 검색 결과에 표시할 필드(열)를 추가하고, 각 필드(열)의 속성을 설정할 수 있습니다.

또한, 데이터 소스에서 가져온 데이터를 표시하기 위해 가상 열을 추가할 수도 있습니다.

2

데이터소스

조회 개체 레코드 외에 추가 데이터를 표시하고 싶은 경우 데이터소스를 활용하여 다른 개체를 조회하거나 가져온 데이터를 표시할 수 있습니다.

또한, Apex Class를 사용하면 복잡한 로직이나 외부 인터페이스를 통해 데이터를 가져와 조회 선택기에서 표시하는 것도 가능합니다.

데이터소스
Virtual Column(가상 열)
필터 설정 UI/UX 개선

현재 필드 보안 수준(Field-Level Security)에 따라 필드가 제어되지 않습니다. 사용자가 해당 필드에 대한 권한이 없을 경우, 오류가 발생합니다. 추후에 개선될 예정입니다.

현재 필드 보안 수준(Field-Level Security)에 따라 필드가 제어되지 않습니다. 사용자가 해당 필드에 대한 권한이 없을 경우, 오류가 발생합니다. 추후에 개선될 예정입니다.

Quantity

구성 제품의 수량과 옵션의 수량을 곱하여 계산된 값으로 표현됩니다.

Total Price

옵션의 단가와 수량을 계산한 결과 값으로 표현됩니다.

수량

구성 제품 수량 × 옵션 수량 = 옵션의 총 수량

2 (구성 제품 수량) × 1 (옵션 수량) = 2 (옵션 총 수량)

총액

옵션 총 수량 × 옵션 단가 = 옵션의 총액

2 (옵션 총 수량) × $45.00 (옵션 단가) = $90.00 (옵션 총액)

1 AND 2 AND 3
1 OR 2 OR 3
쿼리 마법사에서 3개의 필터를 추가
IsActive__c = true
쿼리 마법사(Query Wizard)
편집기 로드 시 옵션이 확장되어 있음
기본적으로 옵션 선택 단계가 나타남
기본 설정
라인 아이템 설정

FAQ

개요

  • Lookup Selector

  • Line-Item Editor

  • 빌더

Lookup Selector

Q: Lookup Selector에서 Parent의 특정 값을 가지고 필터를 설정할 수 있나요?

Advanced Condition에서 {$Parent.필드명} 이용하여 원하는 Parent 필드값으로 필터에 사용할 수 있습니다.

🔗 참고 : 개체 설정 (Relate Objects) > Lookup Object Filter > Advanced Condition

Q: Lookup Selector 없이 Line-Item Editor만 사용할 수 있나요?

Lookup 개체를 지정하는 부분에서 Block adding items를 체크하면 Configurator 실행 시 Line-Item Editor만 사용하실 수 있게 됩니다. 하지만 Lookup 개체를 반드시 지정해줘야 합니다. 추후에 Parent - Line-Item 관계만 사용할 수 있도록 지원할 예정입니다.

🔗참고 : 개체 설정 (Relate Objects) > Lookup Object

Line-Item Editor

Q: Line-Item Editor에서 특정 조건에 따라 삭제를 제어할 수 있나요?

Line-Item 지정 개체의 필드값으로 제어가 가능합니다.

필드 유형은 Boolean이어야 합니다. 해당 필드값이 참이면 삭제가 차단됩니다.

🔗 참고 : 개체 설정 (Relate Objects) > Line-item Object More Setting > Delete Controller Field

빌더

Q: Add Button 실행 시 성공 메시지가 표시되었지만 레코드 페이지에서 보이지 않습니다.
  • 페이지 레이아웃에서 Salesforce 모바일 Lightning Experience 작업(Salesforce Mobile and Lightning Experience Actions) 영역이 활성화 되어있는지 확인하세요.

  • Lightning 레코드 페이지(Lightning Record Page)에서 강조 패널(Highlight Panel)이 동적 작업(Dynamic Actions)으로 업그레이드 되어있는지 확인하세요. 동적 작업으로 되어있는 경우 강조 패널(Highlight Panel)에 버튼을 수동으로 추가해야 하는 경우가 있습니다.

제품 소개

개요

SmallBuilder Line Items는 기회 및 견적 같은 표준 개체는 물론 사용자 정의 개체에서 할인율 계산기, 외부 데이터 연동을 지원하는 라인 아이템 편집기를 개발 없이 구현하도록 지원합니다.

왜 라인 아이템 편집기를 사용해야 하나요?

세일즈포스에서 대표적으로 Junction 관계를 맺은 개체로는 기회, 견적, 주문이 있습니다. 이들은 세일즈 클라우드에서 필수로 사용되는 개체들입니다. 세일즈포스에서 이러한 개체들의 라인 아이템을 추가하거나 변경할 때 제공되는 기본 기능들은 훌륭하지만, 일부 불편한 사항들이 존재합니다.

라인 아이템 편집기는 현재 🔗 개체들만 지원하고 있습니다.

예를 들어, 판매 가격이나 수량을 입력할 때 총액이 즉시 계산되지 않거나, 할인율을 사용자가 직접 계산해 입력해야 하는 부분이 있습니다. 또한, 많은 사용자들은 제품 선택이나 라인 아이템 입력 시 자체 서버에서 재고 데이터를 가져와 참고하고 싶어 합니다. 더불어, 다른 개체에서 계정별 할인율을 자동으로 적용하여 계산되길 원합니다. 이러한 요구 사항을 해결하려면 개발자의 도움이 필요하고, 기능을 추가하거나 변경할 때 어드민이 쉽게 커스터마이징할 수 없는 한계가 있습니다. 그러나 라인 아이템 편집기를 사용하면 개발 없이 포인트 & 클릭 방식으로 이와 같은 단점을 보완할 수 있습니다.

  • 라인 아이템 추가 또는 편집 시 자동 계산, 외부 데이터 적용 등 최소한의 개발 및 포인트 & 클릭만으로 기능 확장이 가능합니다.

  • 빌더를 이용하여 손쉽게 화면을 구현할 수 있어 시간을 절약할 수 있고 유지보수로서 기능 추가 및 수정을 하는데 어려움이 없습니다.

  • 라인 아이템 편집기를 구현할 때 필요한 기본 설정은 개발이 필요하지 않아, 세일즈포스 기본 지식을 갖춘 어드민만으로도 화면을 구현할 수 있습니다.

세일즈포스 스탠다드 화면

라인 아이템 편집기 화면

Junction Object란 무엇인가요?

라인 아이템 편집기는 Junction 관계를 맺은 개체들을 기반으로 구성됩니다. 앞서 말했듯이 대표적으로 기회, 견적, 주문이 있습니다. 이 중에서 기회의 라인 아이템 구조를 살펴봅시다.

우리는 기회(Opportunity)에서 제품을 추가하려고 합니다. 이때 제품의 정보와 가격 정보를 가져오기 위해서는 모든 관련 정보를 포함하는 가격 목록 항목(PricebookEntry) 개체가 필요합니다. 그런 다음, 제품을 추가할 때 입력하는 판매가, 수량 등의 정보를 함께 저장하는 개체가 바로 기회 제품(OpportunityLineItem)입니다.

기회 제품(OpportunityLineItem)은 위의 그림과 같이 기회(Opportunity)와 가격 목록 항목(PricebookEntry)의 정보를 모두 포함하고 있습니다. 기회 제품은 기회에 여러 가격 목록 항목을 등록할 수 있도록 연결해 주는 역할을 하며, 이러한 역할을 하는 개체를 Junction 개체라고 합니다.

위의 관계들만 맺고 있으면 언제든지 라인 아이템 편집기를 구현할 수 있습니다. 그리고 이러한 관계 속에 있는 각 개체들은 라인 아이템 편집기에서 아래와 같이 지칭하고 있습니다:

  • 기회: 부모

  • 가격 목록 항목: 조회

  • 기회 제품: 라인 아이템

주요 기능

✔️ 모든 개체 지원

SmallBuilder Line Items의 라인 아이템 편집기는 모든 개체를 지원합니다. 따라서 표준 기회 또는 견적뿐만 아니라 커스텀 개체에서도 제품 등 라인 아이템을 처리 하는 기능을 구현 시 더 이상 코딩은 필요 없습니다.

✔️ 포인트 & 클릭 기반 저작 툴

기회, 제품 및 가격 목록과 같이 3개 이상의 개체로 이루어지는 복잡한 라인 아이템 편집기(Line Item Editor)를 손쉽게 구현할 수 있는 를 제공하고 있습니다.

✔️ 외부 데이터 실시간 연동

외부 데이터의 실시간 연동이 필요한 경우 라인 아이템 편집기(Line Item Editor)는 연동을 담당하는 Apex Code를 호출하여 외부 데이터를 실시간으로 연동할 수 있도록 지원합니다.

✔️ CPQ의 대안

라인 아이템 편집기(Line Item Editor)는 Currency 필드에 할인율 계산기를 적용할 수 있습니다. 편리한 할인율 계산이 중요한 경우 훌륭한 CPQ의 대안으로 활용 가능합니다.

v 1.40.2

📦 Package Upgrade

🗓️ Release Date

2025. 6. 2.

🐛 Bug Fixes

빌더

  • 비즈니스 규칙 오류

    • 비즈니스 규칙 삭제 후 저장을 누르면 'SObject' 관련 오류가 발생되던 문제 해결

    • 평가 이벤트(Evaluation Event)를 변경한 후 빌더를 저장해도 변경이 반영되지 않던 문제 해결

    • 객체 기반 규칙에서 작업을 삭제하고 빌더 저장하고 다시 확인해보면 삭제가 반영되지 않던 문제 해결

    • Apex 기반 규칙에서 평가 이벤트(Evaluation Event)가 "변경됨(On Change)"일 경우 평가 필드를 선택하는 모달이 로드가 되지 않던 문제 해결

  • 라인 아이템의 '삭제 제어 필드'에 대한 도움말 문구가 잘못되어 있어 수정

    • 이전 내용: 라인 아이템 개체의 확인란(Boolean 유형) 필드여야 합니다. 지정한 필드 값이 참인 경우, 레코드의 삭제 버튼이 활성화 되고 거짓인 경우 버튼이 비활성화 되어 사용자가 레코드를 삭제할 수 없도록 합니다.

    • 수정된 내용: 지정한 필드는 라인 아이템 개체의 확인란(Boolean) 유형 필드여야 합니다. 해당 필드의 값이 참(true)인 경우, 해당 레코드의 삭제 버튼이 비활성화되어 사용자가 레코드를 삭제할 수 없도록 제어됩니다.

  • 읽기 전용 조건에서 체크박스(Boolean) 필드를 조건으로 사용하는 경우, 제대로 적용되지 않던 문제 해결

https://login.salesforce.com/packaging/installPackage.apexp?p0=04tPf000000VIv7IAG
Junction 관계 (many-to-many)
빌더
Standard 화면에서 제품 추가 후 단가 또는 수량 변경 시 총액이 자동 계산이 되지 않습니다.
라인 아이템 편집기로 스탠다드의 제품 편집을 재구현하여 재고 표시, 자동 계산, 할인율 등 기능을 확장합니다.

필터에서 부모 개체의 필드 값을 지정하려면 {$Parent.FieldName} 구문을 사용하여 바인딩할 수 있습니다. 예를 들어, 사용자가 부모 개체의 통화와 일치하는 레코드만 조회할 수 있도록 하려면, 필터를 아래와 같이 작성할 수 있습니다:

CurrencyIsoCode = {$Parent.CurrencyIsoCode}

이렇게 하면 필터가 부모 개체의 통화 필드를 동적으로 참조하여 상황에 맞는 조회 결과를 제공합니다.

버전 1.39부터 제품 옵션 기능을 더 이상 지원하지 않습니다. 단, 기존에 설치되어 제품 옵션 기능을 사용 중인 조직에서는 계속 사용할 수 있습니다.

버전 1.39부터 제품 옵션 기능을 더 이상 지원하지 않습니다. 단, 기존에 설치되어 제품 옵션 기능을 사용 중인 조직에서는 계속 사용할 수 있습니다.

버전 1.39부터 제품 옵션 기능을 더 이상 지원하지 않습니다. 단, 기존에 설치되어 제품 옵션 기능을 사용 중인 조직에서는 계속 사용할 수 있습니다.

필터에서 부모 개체의 필드 값을 지정하려면 {$Parent.FieldName} 구문을 사용하여 바인딩할 수 있습니다. 예를 들어, 사용자가 부모 개체의 통화와 일치하는 레코드만 조회할 수 있도록 하려면, 필터를 아래와 같이 작성할 수 있습니다:

CurrencyIsoCode = {$Parent.CurrencyIsoCode}

이렇게 하면 필터가 부모 개체의 통화 필드를 동적으로 참조하여 상황에 맞는 조회 결과를 제공합니다.

버전 1.39부터 제품 옵션 기능을 더 이상 지원하지 않습니다. 단, 기존에 설치되어 제품 옵션 기능을 사용 중인 조직에서는 계속 사용할 수 있습니다.

이 예시에서는 기회 제품에 대한 라인 아이템 편집기를 설정하였습니다.

  • 부모: 기회(Opportunity)

  • 라인 아이템: 기회 제품(OpportunityLineItem)

  • 조회: 가격 목록 항목(PricebookEntry)

이 예시에서는 기회 제품에 대한 라인 아이템 편집기를 설정하였습니다.

  • 부모: 기회(Opportunity)

  • 라인 아이템: 기회 제품(OpportunityLineItem)

  • 조회: 가격 목록 항목(PricebookEntry)

이 예시에서는 기회 제품에 대한 라인 아이템 편집기를 설정하였습니다.

  • 부모: 기회(Opportunity)

  • 라인 아이템: 기회 제품(OpportunityLineItem)

  • 조회: 가격 목록 항목(PricebookEntry)

이 예시에서는 기회 제품에 대한 라인 아이템 편집기를 설정하였습니다.

  • 부모: 기회(Opportunity)

  • 라인 아이템: 기회 제품(OpportunityLineItem)

  • 조회: 가격 목록 항목(PricebookEntry)

이 예시에서는 기회 제품에 대한 라인 아이템 편집기를 설정하였습니다.

  • 부모: 기회(Opportunity)

  • 라인 아이템: 기회 제품(OpportunityLineItem)

  • 조회: 가격 목록 항목(PricebookEntry)

이 예시에서는 기회 제품에 대한 라인 아이템 편집기를 설정하였습니다.

  • 부모: 기회(Opportunity)

  • 라인 아이템: 기회 제품(OpportunityLineItem)

  • 조회: 가격 목록 항목(PricebookEntry)

이 예시에서는 기회 제품에 대한 라인 아이템 편집기를 설정하였습니다.

  • 부모: 기회(Opportunity)

  • 라인 아이템: 기회 제품(OpportunityLineItem)

  • 조회: 가격 목록 항목(PricebookEntry)

이 예시에서는 기회 제품에 대한 라인 아이템 편집기를 설정하였습니다.

  • 부모: 기회(Opportunity)

  • 라인 아이템: 기회 제품(OpportunityLineItem)

  • 조회: 가격 목록 항목(PricebookEntry)

버전 1.37부터 ‘데이터소스(Data Source)’가 ‘비즈니스 규칙(Business Rule)’으로 명칭이 변경되었습니다.

관련 개체 데이터 가져오기

버전 1.37부터 ‘데이터소스(Data Source)’가 ‘비즈니스 규칙(Business Rule)’으로 명칭이 변경되었습니다.

단순히 관련된 개체를 조회하려는 경우, 해당 비즈니스 규칙을 사용해보세요. 조회 또는 라인 아이템과 관련된 개체를 선택하고, 비즈니스 규칙을 통해 가져온 개체의 필드 값을 조회 또는 라인 아이템 필드에 매핑할 수 있습니다.


관련 개체를 이용한 비즈니스 규칙 설정

번호
항목
설명
필수

1

소스 개체

데이터를 가져올 개체를 선택합니다.

✔

2

설명

비즈니스 규칙에 대한 설명을 기재합니다.

3

필터 조건

필터 설정 방법

4

평가 이벤트

비즈니스 규칙의 실행 시점을 설정합니다.

  • 초기화 시(On Initialization): 라인 아이템 레코드가 새로 추가될 때 실행됩니다.

  • 로딩 시(On Loading): 라인 아이템 화면이 로드될 때마다 실행됩니다.

  • 변경 시(On Change): 라인 아이템의 특정 필드가 변경될 때마다 실행됩니다.

  • 저장 전(Before Save): 라인 아이템 레코드가 저장되기 전에 실행됩니다.

❗ 라인 아이템에서만 제공되는 설정입니다.

✔

5

비즈니스 규칙으로 가져온 데이터를 조회 또는 라인 아이템 필드와 매핑합니다.

✔

작업

비즈니스 규칙을 통해 가져온 데이터를 조회 또는 라인 아이템 필드와 매핑하는 작업입니다. 이 작업을 통해 비즈니스 규칙 값이 지정된 필드에 반영됩니다.

번호
항목
설명
필수

1

Key

비즈니스 규칙과 조회 또는 라인 아이템 간 데이터 매핑 시 사용할 고유 식별 값입니다. Key를 기준으로 비즈니스 규칙 값이 매핑될 대상을 결정합니다.

2

규칙 필드

비즈니스 규칙의 소스 개체에서 가져올 필드를 선택합니다.

✔

3

조회/라인 아이템 필드

데이터를 매핑할 조회 또는 라인 아이템의 필드를 선택합니다.

✔

예시: 제품의 단가 표시

이 예시에서는 기회 제품에 대한 라인 아이템 편집기를 설정하였습니다.

  • 부모: 기회(Opportunity)

  • 라인 아이템: 기회 제품(OpportunityLineItem)

  • 조회: 제품(Product2)

조회 개체를 제품(Product2)으로 설정한 경우, 사용자들은 일반적으로 단가(UnitPrice) 정보를 함께 표시하고 싶어합니다. 하지만 세일즈포스에서는 단가 정보가 가격 목록 항목(PricebookEntry) 개체에 저장되어 있습니다. 그러나 가격 목록 항목은 제품의 하위 개체로, 단가 정보를 수식 필드로 가져올 수 없습니다. 따라서 제품과 연결된 가격 목록 항목 데이터를 비즈니스 규칙을 이용해 조회하려고 합니다.

설정

  1. 조회 선택기 설정 단계에서 조회 필드에 통화 유형의 가상 열을 추가합니다.

  2. 바로 하단에 비즈니스 규칙의 ‘관련 객체에서 데이터 가져오기’ 레이아웃에서 비즈니스 규칙 추가를 클릭합니다.

  3. 비즈니스 규칙에서 소스 개체(Source Object)를 가격 목록 항목(PricebookEntry)로 지정합니다.

  4. 필터 설정에서 개체 조회 조건을 설정합니다.

    • 활성화

      1. 필드: 활성(IsActive)

      2. 연산자: 같음(equals)

      3. 값: 참(true)

    • 기회와 동일한 가격 목록

      1. 필드: 가격 목록(Pricebook2Id)

      2. 연산자: 같음(equals)

      3. 값: 부모/가격 목록(Pricebook2Id)

  5. 작업(Action) 설정에서 각 제품에 해당되는 가격 목록 항목 데이터를 결합하기 위해 다음과 같이 설정합니다:

    • 규칙: Product2Id

    • 조회: Id

  6. 단가를 제품 데이터와 같이 표시하기 위해 작업(Action)을 추가하여 조회 필드(가상 열)을 지정합니다.

    • 규칙: UnitPrice

    • 조회: SBLI_Virtual1

조회 필드에서 단가 정보를 표시할 가상 열을 추가합니다.
비즈니스 규칙 설정 화면입니다.

결과

조회 선택기에서 제품에 대한 데이터소스를 통해 가져온 단가 정보가 함께 표시되는 것을 확인할 수 있습니다.

연결된 앱 설정

SmallBuilder Line Items의 빌더 화면에서 버튼 생성 및 페이지 레이아웃에 버튼 추가 등 메타데이터 관련 작업을 수행하려면 SmallBuilder Line Items에서 제공하는 연결된 앱에 대한 추가 설정이 필요합니다.

Step 1: 허용된 사용자 설정

  1. 설정에서 빠른 찾기 상자에 연결된 앱을 입력한 후 연결된 앱 관리를 선택합니다.

  2. SmallBuilder Line Items OAuth 편집을 클릭합니다.

  3. 허용된 사용자를 관리 승인 사용자가 미리 인증됨으로 선택합니다.

  4. 저장을 클릭합니다.

Step 2: 프로필 또는 권한 집합 할당

  1. 설정에서 빠른 찾기 상자에 연결된 앱을 입력한 후 연결된 앱 관리를 선택합니다.

  2. SmallBuilder Line Items OAuth을 클릭합니다.

  3. 하단에 프로필 관리 또는 권한 집합 관리를 클릭합니다.

  4. 빌더 설정을 담당하는 프로필 또는 권한 집합을 선택합니다.

  5. 저장을 클릭합니다.

열 순서 변경하기

추가된 열은 Drag & Drop을 사용하여 순서를 변경할 수 있습니다.

열 순서 변경 방법

  1. 원하는 열의 맨 좌측 아이콘()을 마우스로 클릭한 상태로 유지합니다.

  2. 마우스를 클릭한 상태에서 열을 원하는 위치로 Drag & Drop 합니다.

열 정렬 예시

버전 1.39부터 제품 옵션 기능을 더 이상 지원하지 않습니다. 단, 기존에 설치되어 제품 옵션 기능을 사용 중인 조직에서는 계속 사용할 수 있습니다.

SmallBuilder - Line-item Configurator, Actionable List and Document TemplateSalesforce AppExchange | Leading Enterprise Cloud Marketplace

빌더 초기화

빌더 설정을 수정 중 저장하지 않은 상태에서, 변경 사항을 취소하고 설정을 원래 상태로 복원하고 싶다면 초기화 기능을 사용하세요.

초기화는 저장되지 않은 변경 사항만 복원하며, 이미 저장된 변경 사항은 되돌릴 수 없습니다. 안전하게 설정을 변경하고 싶다면, 빌더를 복제하여 진행하는 것을 권장합니다.

v 1.38

📦 Package Upgrade

🗓️ Release Date

2025. 4. 8.

🐛 Bug Fixes

제품 옵션 (Product Option)

라인 아이템에 하위 옵션 제품을 추가할 수 있는 기능으로 특정 제품의 구성 요소(예: 추가 서비스, 부가 제품)를 함께 등록하거나 관리하고자 할 때 사용됩니다.

제품 옵션 기능은 일부 스탠다드 개체에서만 사용 가능합니다:

  • 기회

  • 견적

  • 주문

제품 옵션 설정하기

제품 옵션을 사용하려면 먼저 빌더에서 제품 옵션 기능을 활성화하고, 필요한 설정과 데이터를 구성해야 합니다. 아래 참조 문서의 셋업 절차를 따라 설정을 진행하세요.

라인 아이템 옵션 값의 표시 및 저장 방식

옵션이 라인 아이템에 어떻게 표시되고 저장되는지 확인하세요.

빌더

조회 선택기 및 라인 아이템 편집기 설정 단계에서 필드를 모두 삭제한 후 다시 필드를 추가하여 저장할 때 오류가 발생하던 문제 해결 ⚠️ 기존에 패키지가 설치된 조직에서는 라인 아이템 편집기(SBLI__JunctionBuilder__c) 개체 설정에서 아래 확인 규칙(Validation Rule)을 비활성화 하세요:

  • RequiredLookupFieldsAtLeastOne

  • RequiredLineItemFieldsAtLeastOne

편집기

  • 옵션 가격이 수정된 상태에서 옵션 선택기를 열면 수정된 가격이 반영되지 않던 현상 해결

  • 필드 값을 삭제한 뒤 저장하고 다시 편집기를 열었을 때, 공란 상태가 반영되지 않던 문제 해결

모바일 화면:

  • 라인 아이템 추가 시 Recalculation Formula 관련 오류가 발생하던 문제 해결

  • 읽기 전용 필드의 값이 없을 때 하단 필드와 간격이 없어 구분이 어려웠던 문제 개선

https://login.salesforce.com/packaging/installPackage.apexp?p0=04tPf000000T9KrIAK
빌더의 라인 아이템 개체 설정 문서를 참고하세요 >
제품 옵션 셋업 절차 >
표시 및 저장 방식 확인하기 >

버전 1.39부터 제품 옵션 기능을 더 이상 지원하지 않습니다. 단, 기존에 설치되어 제품 옵션 기능을 사용 중인 조직에서는 계속 사용할 수 있습니다.

작업
대상 개체
부모 개체
라인 아이템 개체
조회 개체

기회

기회

Opportunity

기회 제품

OpportunityLineItem

가격 목록 항목

PricebookEntry

견적

견적

Quote

견적서 행 아이템

QuoteLineItem

가격 목록 항목

PricebookEntry

주문

주문

Order

주문 제품

OrderItem

가격 목록 항목

PricebookEntry

대상 개체
부모 개체
라인 아이템 개체
조회 개체

기회

기회

Opportunity

기회 제품

OpportunityLineItem

가격 목록 항목

PricebookEntry

견적

견적

Quote

견적서 행 아이템

QuoteLineItem

가격 목록 항목

PricebookEntry

주문

주문

Order

주문 제품

OrderItem

가격 목록 항목

PricebookEntry

Logo
SmallBuilder Line Items - no code custom line item configurator for any object in SalesforceSalesforce AppExchange | Leading Enterprise Cloud Marketplace

제품 옵션 데이터 구성하기

버전 1.39부터 제품 옵션 기능을 더 이상 지원하지 않습니다. 단, 기존에 설치되어 제품 옵션 기능을 사용 중인 조직에서는 계속 사용할 수 있습니다.

제품 옵션 데이터는 제품 구성(SBLI__ProductFeature__c)과 제품 옵션(SBLI__ProductOption__c) 개체로 구성됩니다. 두 개체는 제품(Product2)를 참조하며, 다음과 같은 역할을 합니다:

제품 구성

제품 옵션을 그룹화하려는 경우 사용되는 선택적인 개체입니다.

제품 옵션

주요 개체로, 옵션 제품과 관련 정보를 관리합니다.

주요 데이터 구성은 제품 옵션을 중심으로 이루어지며, 제품 구성은 필요에 따라 추가로 설정됩니다.

제품 구성

제품 옵션을 카테고리별로 그룹화합니다.

개체 정보

레이블

제품 구성(Product Feature)

API명

SBLI__ProductFeature__c

필드 정보

속성
필드 API명
설명
필수

순서

SBLI__Order__c

옵션 선택 화면에서 나열될 순서를 설정합니다.

기본 제품

SBLI__Product__c

해당 옵션의 구성 제품을 지정합니다

✔

설명

SBLI__Description__c

제품 구성에 대한 설명을 제공합니다.

다중 선택 가능

SBLI__MultiSelectable__c

해당 구성에서 여러 옵션을 선택할 수 있도록 허용할지 여부를 설정합니다.

제품 옵션

옵션의 주요 개체로, 옵션 제품과 관련 정보를 관리합니다.

개체 정보

레이블

제품 옵션(Product Option)

API명

SBLI__ProductOption__c

필드 정보

속성
필드 API명
설명
필수

순서

SBLI__Order__c

옵션 선택 화면에서 나열될 순서를 설정합니다.

제품 구성

SBLI__Feature__c

제품 구성을 참조하는 관계 필드입니다. 구성에 옵션을 추가하려면 해당 필드를 사용하여 연결하세요.

기본 제품

SBLI__Product__c

구성 제품을 나타냅니다.

✔

옵션 제품

SBLI__OptionalProduct__c

옵션으로 사용할 제품을 지정합니다.

✔

수량

SBLI__Quantity__c

옵션의 수량을 나타냅니다. 기본값은 1로 설정됩니다.

단가

SBLI__UnitPrice__c

옵션의 단가를 지정합니다. 단가를 지정하지 않은 경우, 가격 목록 항목(Pricebook Entry)에서 단가를 참조합니다.

할인율(%)

SBLI__Discount__c

옵션의 할인율을 나타냅니다. 할인율이 설정된 경우, 총액에 반영됩니다.

할인가

SBLI__DiscountAmount__c

옵션의 할인 금액을 나타냅니다. 할인가가 설정된 경우, 총액에 반영됩니다.

필수

SBLI__Required__c

옵션 선택 시 필수로 선택해야 하는 항목으로 설정합니다.

선택됨

SBLI__Selected__c

옵션 선택 시 기본적으로 선택된 상태로 설정됩니다.

포함됨

SBLI__Included__c

옵션이 포함된 상태로 설정됩니다. 포함된 옵션은 금액이 단가 및 총액에 반영되지 않으며, 편집기에서 Included로 표시됩니다.

단가 편집 가능

SBLI__PriceEditable__c

옵션 단가를 사용자가 수정할 수 있도록 허용합니다. 기본적으로 옵션 단가는 수정할 수 없습니다.

수량 편집 가능

SBLI__QuantityEditable__c

옵션 수량을 사용자가 수정할 수 있도록 허용합니다. 기본적으로 옵션 수량은 수정할 수 없습니다.

최소 수량

SBLI__MinQuantity__c

옵션 수샹 수정이 가능한 경우, 옵션 선택 단계에서 설정할 최소 수량입니다.

최대 수량

SBLI__MaxQuantity__c

옵션 수샹 수정이 가능한 경우, 옵션 선택 단계에서 설정할 최대 수량입니다.

설명

SBLI__Description__c

옵션에 대한 상세 설명을 제공합니다.

Logo

Apex 클래스를 활용해 다양한 방식으로 데이터 가져오기

버전 1.37부터 ‘데이터소스(Data Source)’가 ‘비즈니스 규칙(Business Rule)’으로 명칭이 변경되었습니다.

외부 API 서버에서 데이터를 조회하거나, 데이터 조회 및 결합 시 복잡한 로직이 요구되는 경우에 사용됩니다. 해당 비즈니스 규칙을 설정하려면 Apex 클래스를 작성해야 합니다. Apex 클래스를 사용해 구현하므로 데이터를 더 자유롭게 가져올 수 있다는 장점이 있습니다.


설정 과정

1

Apex 클래스 작성

Apex 클래스를 작성할 때, SmallBuilder에서 제공하는 인터페이스를 구현해야 합니다.

2

비즈니스 규칙 설정

Apex 클래스 구현이 완료되면, 빌더에서 비즈니스 규칙 설정을 진행합니다.

STEP 1: 비즈니스 규칙에 사용할 Apex 클래스를 작성하기 위한 인터페이스 구현

비즈니스 규칙 설정에서 사용할 Apex 클래스를 작성하려면 반드시 SBLI.DataSourceService.Fetchable 인터페이스를 구현해야 합니다.

이 인터페이스에는 execute 메서드가 포함되어 있으며, 해당 메서드에 데이터 처리를 위한 로직 구현 후 처리된 데이터와 조회 또는 라인 아이템 간의 매핑 정보를 담은 SBLI.DataSourceService.Result 객체를 반환해야 합니다.

예시 코드

해당 예시 코드는 외부 API를 호출하여 제품 코드별 재고 수량을 가져온 후, 조회 또는 라인 아이템의 재고 필드(Inventory__c)에 매핑한다고 가정하였습니다.

SBLI.DataSourceService.Fetchable 인터페이스는 패키지에서 제공되는 인터페이스이므로, 패키지 외부에서 접근하려면 Apex 클래스와 제공되는 메서드 모두 global로 선언해야 합니다.

global class DataSourceInventory implements SBLI.DataSourceService.Fetchable {
    global SBLI.DataSourceService.Result execute(SBLI.DataSourceService.Parameter params) {
        // 부모 레코드 가져오기
        SObject parentRecord = params.getParentRecord();

        // 조회 개체 레코드 가져오기
        List<SObject> lookupRecords = params.getLookupRecords();
        
        // 외부 API를 호출하여 재고 정보 가져오기
        // 키: 제품 코드, 값: 재고 수량
        Map<String, Integer> inventoryData = new Map<String, Integer>(); 
        inventoryData.put('Product001', 10);
        inventoryData.put('Product002', 20);

        // 결과 객체 생성
        SBLI.DataSourceService.Result result = new SBLI.DataSourceService.Result();

        // 조회/라인 아이템 개체와 결과 값 매핑
        for (String productCode : inventoryData.keySet()) {
            SBLI.DataSourceService.Action action = new SBLI.DataSourceService.Action();
            action.setKeyValue(productCode); // 조회/라인 아이템 레코드와 매핑할 Key 값 설정
            action.putSourceToTargetField(
                inventoryData.get(productCode), // 결과 값: 재고 정보
                'Inventory__c'                 // 조회/라인 아이템 필드 API명
            );
            result.addAction(action); // Action 추가
        }
        
        return result; // 결과 반환
    }
}
1

부모 레코드 및 조회 레코드 가져오기

  • params.getParentRecord(): 부모 개체의 레코드를 가져옵니다.

  • params.getLookupRecords(): 조회 개체의 레코드 목록을 가져옵니다.

// 부모 레코드 가져오기
SObject parentRecord = params.getParentRecord();
// 조회 개체 레코드 가져오기
List<SObject> lookupRecords = params.getLookupRecords();

SBLI.DataSourceService.Parameter 참고 >

2

비즈니스 규칙 값 준비

  • 외부 API 서버에서 데이터를 호출하여 재고 정보를 가져온다고 가정합니다.

  • 예시에서는 제품 코드(ProductCode)를 기반으로 재고 정보를 매핑합니다.

Map<String, Integer> inventoryData = new Map<String, Integer>(); 
inventoryData.put('Product001', 10);
inventoryData.put('Product002', 20);
3

결과 생성

  • SBLI.DataSourceService.Action 객체를 생성하여 비즈니스 규칙 값(재고 정보)과 조회 필드(Inventory__c)를 매핑합니다.

  • 생성된 Action 객체를 SBLI.DataSourceService.Result에 추가합니다.

// 결과 객체 생성
SBLI.DataSourceService.Result result = new SBLI.DataSourceService.Result();

// 조회/라인 아이템 개체와 비즈니스 규칙으로 가져온 값 매핑
for (String productCode : inventoryData.keySet()) {
    SBLI.DataSourceService.Action action = new SBLI.DataSourceService.Action();
    action.setKeyValue(productCode); // 조회/라인 아이템 레코드와 매핑할 Key 값 설정
    action.putSourceToTargetField(
        inventoryData.get(productCode), // 비즈니스 규칙 값: 재고 정보
        'Inventory__c'                 // 조회/라인 아이템 필드 API명
    );
    result.addAction(action); // Action 추가
}
4

반환

매핑된 결과를 담은 Result 객체를 반환하여, 편집기에 매핑 정보를 전달합니다.

SBLI.DataSourceService.Parameter

빌더에서 설정한 부모와 조회 파라미터 정보를 가진 객체입니다.

예시 코드

DataSourceInventory.cls
global SBLI.DataSourceService.Result execute(SBLI.DataSourceService.Parameter params) {
    SObject parentRecord = params.getParentRecord();
    List<SObject> lookupRecords = params.getLookupRecords();
    ...
}

Methods

SObject getParentRecord()

부모 레코드를 반환합니다. 빌더에서 추가한 부모 파라미터가 없는 경우, 값은 비어 있습니다.

List<SObject> getLookupRecords()

조회 레코드를 반환합니다. 빌더에서 추가한 조회 파라미터가 없는 경우, 값은 비어 있습니다.

SBLI.DataSourceService.Result

조회 또는 라인 아이템과 비즈니스 규칙 간의 모든 매핑 정보를 담아 편집기로 반환하는 객체입니다. 매핑 정보는 SBLI.DataSourceService.Action 객체에 저장한 뒤, SBLI.DataSourceService.Result 객체에 추가하여 반환합니다.

예시 코드

DataSourceInventory.cls
SBLI.DataSourceService.Result result = new SBLI.DataSourceService.Result();
for(String productCode : inventoryData.keySet()) {
    // SBLI.DataSourceService.Action 객체에 매핑 정보 저장
    SBLI.DataSourceService.Action action = new SBLI.DataSourceService.Action();
    action.setKeyValue(productCode);
    action.putSourceToTargetField(
        inventoryData.get(productCode),
        'Inventory__c'
    );
    result.addAction(action); // 매핑 정보가 담긴 Action을 Result에 추가
}
return result;

Methods

addAction(SBLI.DataSourceService.Action action)

매핑 정보가 담긴 Action 객체를 Result 객체에 추가합니다.

매개변수
유형
값

action

조회 또는 라인 아이템과 비즈니스 규칙 값을 매핑한 정보를 담은 객체입니다.

SBLI.DataSourceService.Action

조회 또는 라인 아이템과 비즈니스 규칙 값을 매핑한 정보를 담은 객체입니다.

예시 코드

DataSourceInventory.cls
SBLI.DataSourceService.Result result = new SBLI.DataSourceService.Result();
// 비즈니스 규칙에서 각 제품코드와 재고 정보를 반복 처리
for(String productCode : inventoryData.keySet()) {
    SBLI.DataSourceService.Action action = new SBLI.DataSourceService.Action();
    // 제품코드를 Key 값으로 설정하여 조회/라인 아이템과 매핑
    action.setKeyValue(productCode);
    
    // 재고 정보를 조회/라인 아이템의 Inventory__c 필드에 매핑 
    action.putSourceToTargetField(
        inventoryData.get(productCode),    // 데이터소스 값: 재고
        'Inventory__c'                                // 필드 API명
    );
    result.addAction(action); // 매핑 정보 추가
}
return result; // 최종 결과 반환

Methods

setKeyValue(Object keyValue)

조회 또는 라인 아이템의 Key와 일치하는 비즈니스 규칙의 Key 값을 설정합니다.

매개변수
유형
값

keyValue

Object

비즈니스 규칙의 Key 값입니다.

putSourceToTargetField(Object sourceValue, String targetFieldApiName)

비즈니스 규칙 값을 원하는 조회 또는 라인 아이템 필드에 할당합니다.

매개변수
유형
값

sourceValue

Object

비즈니스 규칙 값입니다.

targetFieldApiName

String

조회 또는 라인 아이템의 필드 API명입니다.

STEP 2: 비즈니스 규칙 설정

라인 아이템 편집기 설정 단계에서 비즈니스 규칙의 ‘Apex 클래스를 사용하여 데이터 가져오기’ 레이아웃에서 ‘비즈니스 규칙 추가’를 클릭합니다.

Apex 클래스를 선택한 후, 클래스에서 부모와 조회 정보가 필요한 경우 파라미터로 전달할 필드들을 선택합니다.

데이터소스를 설정하기 전에 Apex 클래스를 먼저 작성하세요.

번호
항목
설명
필수

1

Apex Class

비즈니스 규칙에 사용할 Apex 클래스를 선택합니다.

✔

3

파라미터

비즈니스 규칙을 구현한 Apex 클래스에서 부모 또는 조회 개체의 필드 값이 필요한 경우, 해당 필드를 파라미터로 전달하기 위해 추가합니다.

4

평가 이벤트

비즈니스 규칙의 실행 시점을 설정합니다.

  • 초기화 시(On Initialization): 라인 아이템 레코드가 새로 추가될 때 실행됩니다.

  • 로딩 시(On Loading): 라인 아이템 화면이 로드될 때마다 실행됩니다.

  • 변경 시(On Change): 라인 아이템의 특정 필드가 변경될 때마다 실행됩니다.

  • 저장 전(Before Save): 라인 아이템 레코드가 저장되기 전에 실행됩니다.

❗ 라인 아이템에서만 제공되는 설정입니다.

✔

5

작업 키

비즈니스 규칙을 통해 가져온 데이터를 조회 또는 라인 아이템 레코드에 매핑하기 위해 Key 필드를 설정합니다.

Key 필드는 조회 개체의 필드를 사용합니다. 💁 라인 아이템에서 조회 개체의 필드를 Key로 사용하는 이유는, 라인 아이템이 저장되지 않은 레코드일 수도 있어 유일한 Key 값을 판단하기 어렵기 때문입니다.

✔

STEP 3: 비즈니스 규칙 활성화

비즈니스 규칙을 사용하려면 활성화가 필요합니다. 비즈니스 규칙이 비활성화되어 있는 경우, 설정된 규칙은 적용되지 않습니다.

비즈니스 규칙은 최초 추가 시 자동으로 활성화됩니다.

SBLI.DataSourceService.Action

라인 아이템 설정

버전 1.39부터 제품 옵션 기능을 더 이상 지원하지 않습니다. 단, 기존에 설치되어 제품 옵션 기능을 사용 중인 조직에서는 계속 사용할 수 있습니다.

구성 제품의 라인 아이템과 옵션 제품의 라인 아이템 간 연결할 필드를 설정하고 옵션 정보를 저장할 라인 아이템 필드를 매핑하는 작업을 수행합니다.

상위 라인 아이템 필드

구성 제품 라인 아이템과 해당 옵션 라인 아이템을 연결할 필드를 설정합니다. 이 필드는 Self-Relationship이여야 하며, Self-Relationship은 동일한 개체 내에서 레코드 간의 관계를 나타내는 구조로, 한 레코드가 같은 개체의 다른 레코드를 참조할 수 있도록 설정하는 관계입니다.

기회 제품에서는 Base Line Item for Option(SBLI__BaseLineItemForOption__c) 필드를 기본적으로 제공합니다. 기회에 대한 스탠다드 설정을 진행한 경우, 이 필드가 상위 라인 아이템 필드로 자동 설정됩니다.

필요에 따라 다른 필드로 대체할 수 있습니다.

예시

이 예시에서는 기회 제품에 대한 라인 아이템 편집기를 설정하였습니다.

  • 부모: 기회(Opportunity)

  • 라인 아이템: 기회 제품(OpportunityLineItem)

  • 조회: 가격 목록 항목(PricebookEntry)

상위 라인 아이템 필드를 Base Line Item for Option(SBLI__BaseLineItemForOption__c)로 설정했다고 가정하면, 아래 다이어그램과 같은 Self-Relationship 구조가 형성됩니다.

이 설정을 통해 옵션으로 생성된 기회 제품 레코드가 구성 제품의 기회 제품 레코드를 해당 필드를 통해 참조하게 됩니다.

라인 아이템 편집기 화면 예시

옵션 값을 라인 아이템 필드에 매핑

선택한 옵션 정보를 라인 아이템의 어느 필드에 매핑할지 설정합니다. 옵션에서는 다음과 같은 정보를 제공합니다:

필드
용도
유형
필수

Option Record Id

선택한 제품 옵션의 레코드 ID입니다. 해당 값은 라인 아이템에 저장되며, 편집기에서 라인 아이템을 조회할 때 이 옵션 레코드 ID를 참조하여 필요한 옵션 정보를 가져옵니다.

ℹ️ 기회 제품에서는 Product Option(SBLI__ProductOption__c) 필드를 기본적으로 제공합니다. 기회에 대한 스탠다드 설정을 진행한 경우, 이 필드가 자동으로 설정됩니다. 필요에 따라 다른 필드로 대체할 수 있습니다.

조회(제품 옵션)

✔

Original Price

정가를 매핑하려는 경우, 라인 아이템에서 저장할 정가 필드를 선택합니다. 만약 편집기에서 표시 용도로만 사용하려는 경우, 라인 아이템에 추가한 열 중 정가로 사용된 필드를 지정하면 됩니다.

통화

Unit Price

단가를 매핑하려는 경우, 라인 아이템에서 저장할 단가 필드를 선택합니다.

통화

Quantity

수량을 매핑하려는 경우, 라인 아이템에서 저장할 수량 필드를 선택합니다.

숫자

Total Price

옵션의 단가와 수량을 계산하여 산출된 총액입니다. 해당 값을 저장하려면 라인 아이템에서 저장할 총액 필드를 선택하세요.

만약 편집기에서 표시 용도로만 사용하려는 경우, 라인 아이템에 추가한 열 중 총액으로 사용된 필드를 지정하면 됩니다.

통화

Discount (%)

할인율(%)을 매핑하려는 경우, 라인 아이템에서 저장할 할인율(%) 필드를 선택합니다.

백분율

Discount (Amount)

할인가을 매핑하려는 경우, 라인 아이템에서 저장할 할인가 필드를 선택합니다.

통화

Description

옵션 설명에 대한 정보를 매핑하려는 경우, 라인 아이템에서 저장할 설명 필드를 선택합니다.

긴 텍스트 영역(1000)

예시

이 예시에서는 기회 제품에 대한 라인 아이템 편집기를 설정하였습니다.

  • 부모: 기회(Opportunity)

  • 라인 아이템: 기회 제품(OpportunityLineItem)

  • 조회: 가격 목록 항목(PricebookEntry)

기회 제품에 옵션 값을 아래와 같이 매핑하였습니다:

옵션 값
기회 제품 필드

Option Record ID

제품 옵션 SBLI__ProductOption__c

Original Price

정가 ListPrice

Unit Price

단가 UnitPrice

Quantity

수량 Quantity

Total Price

총액 TotalPrice

라인 아이템 편집기 화면 예시

구성 제품인 Desktop PC Intel i3의 RAM 옵션으로 RAM 8GB를 선택합니다. 해당 옵션의 수량은 1이며, 정가와 단가는 동일하게 $45입니다.

선택한 후 추가된 라인 아이템을 확인하면, 앞서 매핑한 필드에 수량, 정가, 단가, 총액의 값이 할당된 것을 확인할 수 있습니다.