다음을 통해 공유


복잡한 목표 조건 추가

목표에 대해 복잡한 롤업 조건을 추가하려면 롤업 쿼리(GoalRollupQuery) 엔터티를 사용할 수 있습니다. 예를 들어 특정 제품 라인 또는 특정 지역에서 생성된 수익에 대한 수익을 지정할 수 있습니다.

롤업 쿼리는 다른 목표에서 사용할 수 있습니다. 그러나 특정 목표와 연결된 롤업 쿼리는 해당 목표에만 적용됩니다. 부모 목표에 대해 지정된 롤업 쿼리는 자식 목표에 전파되지 않습니다. 자식 목표는 동일한 쿼리 또는 다른 쿼리를 사용할 수 있습니다. 롤업 쿼리는 목표와 연결된 롤업 필드 레코드에 지정된 것과 동일한 엔터티 형식을 사용해야 합니다. 목표가 판매 주문 수익을 추적하더라도 연결된 쿼리가 기회 엔터티를 사용하는 경우, 목표 레코드를 생성하거나 업데이트할 때 예외가 발생합니다.

비고

목표 롤업 쿼리에서 반환할 수 있는 최대 레코드 수는 5000개입니다.

쿼리 조건을 지정하려면 특성을 사용합니다 GoalRollupQuery.FetchXml . 쿼리에 대한 엔터티 형식을 지정하려면 특성을 사용합니다 GoalRollupQuery.QueryEntityType .

비고

특성에 지정할 수 있는 GoalRollupQuery.QueryEntityType 테이블에는 다음과 같은 EntityMetadata 특성이 설정trueIsValidForAdvancedFindIsUserOwnedIsCustomizableCanCreateAttributes되어야 합니다. 이 특성SharePointDocumentLocationSharePointSiteMailMergeTemplate에는 다음 테이블을 지정할 수 없습니다.

목표 메트릭 유형에 따라 쿼리를 사용하여 실제, 진행 중 및 사용자 지정 양 또는 개수 데이터를 필터링할 수 있습니다. 다음 표에서는 각 형식에 대한 쿼리를 지정하는 데 사용할 수 있는 목표 메트릭 형식 및 목표 엔터티 특성을 보여 줍니다.

목표 메트릭 유형 롤업 쿼리 특성
양(금액) Goal.RollUpQueryActualMoneyId

Goal.RollUpQueryCustomMoneyId

Goal.RollUpQueryInprogressMoneyId
양(정수) 또는 개수 Goal.RollupQueryActualIntegerId

Goal.RollUpQueryCustomIntegerId

Goal.RollUpQueryInprogressIntegerId
양(소수) Goal.RollUpQueryActualDecimalId

Goal.RollUpQueryCustomDecimalId

Goal.RollUpQueryInprogressDecimalId

지정된 롤업 특성에 대한 목표의 참여 레코드에 대한 쿼리에는 다음 절이 포함되어야 합니다.

  • Goal.ConsiderOnlyGoalOwnersRecords 값입니다.

  • 에 지정된 FetchXML 식입니다 GoalRollupQuery.FetchXml.

  • 참조된 목표 메트릭의 각 롤업 필드에 지정된 날짜 범위(RollupField.DateAttribute), 상태 및 진행 상태입니다.

이중 계산 및 기타 잘못된 결과 방지

쿼리는 롤업 결과를 필터링하는 데 효과적입니다. 그러나 신중하게 사용하지 않으면 "이중 계산" 또는 기타 잘못된 결과를 도입할 수 있습니다. 다음 예제에서는 쿼리가 원치 않는 결과에 기여할 수 있는 방법을 보여 줍니다.

  • 특정 영업 사원의 판매 주문을 추적하고 있습니다. 그러나 롤업은 판매 주문을 반환하지 않았습니다. 이 시나리오는 사용한 쿼리가 영업 사원에 고객이 있는 지역을 필터링한 경우에 발생할 수 있습니다.

  • 영업 사원에 대해 두 가지 목표를 설정합니다. 한 가지 목표는 특정 제품에 대한 기회를 추적하고 다른 목표는 특정 지역에서 기회를 추적합니다. 기회에 지정된 지역에서 지정된 제품을 판매하는 것이 포함되는 경우 이 기회의 수익은 두 목표 모두에 포함됩니다. 목표의 부모 목표가 같으면 합계가 부모 목표에 추가되어 두 번 계산됩니다.

    다음 지침에 따라 이중 계산 및 기타 잘못된 결과를 방지할 수 있습니다.

  • Goal.ConsiderOnlyGoalOwnersRecords 속성을 true로 설정하여 목표 소유자가 소유한 레코드만 사용합니다.

  • 같은 기간 동안 영업 담당자에게 여러 목표를 할당하지 마세요.

  • 쿼리가 예상한 결과를 제공할지 확신할 수 없는 경우 쿼리를 사용하지 마세요.

목표 관리 테이블
샘플: 롤업 쿼리를 사용하여 목표 추적
목표 합계 롤업