조회 개체는 라인 아이템 개체에서 참조하는 개체로, 사용자는 조회 레코드를 선택하여 이를 기반으로 라인 아이템 레코드를 생성합니다.
3
라인 아이템 편집기에서 조회 선택기를 사용하지 않고, 라인 아이템 편집만 원하는 경우, 조회 선택기를 차단하도록 설정할 수 있습니다. 또한, 조건에 따라 조회 선택기를 차단하거나 활성화할 수도 있습니다.
부모 개체에서 시작하여 하위 개체인 라인 아이템을 선택하고, 라인 아이템이 참조하고 있는 조회 개체를 설정합니다. 조회 개체를 지정할 때는, 라인 아이템에서 조회 개체를 참조하는 필드를 선택해야 합니다.
기회(Opportunity
)에 대한 기회 제품(OpportunityLineItem
)을 기반으로 빌더를 설정한다고 가정해 보겠습니다. 아래 개체 구조 이미지와 같이 기회 제품은 두 가지 주요 관계를 가집니다:
기회(Opportunity
)
기회 제품의 상위 개체로 기회 ID(OpportunityId
) 필드로 참조됩니다.
가격 목록 항목(PricebookEntry
)
기회 제품이 참조하고 있는 개체로 가격 목록 항목 ID(PricebookEntryId
) 필드로 참조됩니다.
부모 개체는 기회(Opportunity
)로 선택합니다.
라인 아이템 개체는 기회 제품(OpportunityLineItem
)으로 선택합니다.
기회 제품(OpportunityLineItem
)은 가격 목록 항목(PricebookEntry
)을 참조하여 생성되기 때문에, 조회 참조 필드로 기회 제품의 가격 목록 항목 ID(PricebookEntryId
) 필드를 선택해야 합니다.
조회 선택기를 건너뛰고 바로 라인 아이템 편집기로 전환하고 싶은 경우, 조회 선택기 차단 기능을 활성화하세요. 또한, 특정 조건에 따라 조회 선택기를 차단할 수도 있습니다.
차단 조건을 설정하려는 경우, 부모 개체의 특정 필드를 기반으로 제어됩니다. 해당 필드는 Boolean 유형이어야 하며, 값이 true
인 경우 조회 선택기가 차단됩니다.
이 예시에서는 기회 제품에 대한 라인 아이템 편집기를 설정하였습니다.
부모: 기회(Opportunity
)
라인 아이템: 기회 제품(OpportunityLineItem
)
조회: 가격 목록 항목(PricebookEntry
)
라인 아이템 편집기에서 갱신된 기회인 경우 제품 추가(라인 아이템 추가)를 차단하려고 합니다. 예시에서는 기회의 갱신됨(IsRenewal__c
) 필드를 사용하여 차단 조건을 설정합니다.
갱신됨(IsRenewal__c
)이 true
일 때 편집기에서 조회 선택기 화면으로 전환하는 버튼이 표시되지 않는 것을 확인할 수 있습니다.
조회 선택기 화면이 로드될 때 조건에 맞는 조회 개체의 레코드를 불러오려면 필터를 설정하고, 원하는 레코드 순서를 지정하려면 정렬을 설정하세요.
조회 선택기 로드 시 원하는 조건에 맞는 데이터만 조회됩니다. 필터 설정 방식은 SOQL의 WHERE
절과 동일합니다.
예를 들어, 활성화된 가격 목록 항목만 조회하려면 IsActive = true
로 작성하면 됩니다. 또한, 직접 작성하지 않고 쿼리 마법사(Query Wizard)를 이용해 필터를 자동으로 생성할 수도 있습니다.
필터에서 부모 개체의 필드 값을 지정하려면 {$Parent.FieldName}
구문을 사용하여 바인딩할 수 있습니다. 예를 들어, 사용자가 부모 개체의 통화와 일치하는 레코드만 조회할 수 있도록 하려면, 필터를 아래와 같이 작성할 수 있습니다:
CurrencyIsoCode = {$Parent.CurrencyIsoCode}
이렇게 하면 필터가 부모 개체의 통화 필드를 동적으로 참조하여 상황에 맞는 조회 결과를 제공합니다.
조회 선택기 로드 시 데이터가 원하는 순서로 정렬되도록 미리 정의할 수 있습니다. 정렬 설정 방식은 SOQL의 ORDER BY
절과 동일합니다.
예를 들어, 가격 목록 항목의 이름을 오름차순으로 정렬하고 싶다면 Name ASC
로 작성하면 됩니다.