다음을 통해 공유


대상을 사용하여 작업할 데이터 필드 선택

Power BI 편집 모드에서 필드 창 모든 데이터 필드가 있는 모델의 모든 테이블을 표시합니다. 데이터 필드의 데이터를 정렬, 필터링 또는 조각화하여 데이터가 보고서, 페이지 또는 시각적 개체에 표시되는 방식에 영향을 줄 수 있습니다.

Power BI 임베디드 분석 필터, 슬라이서 또는 정렬을 사용하려면 수행할 데이터 필드를 지정하는 대상 개체가 필요합니다. 다음과 같은 경우 ITarget 사용하여 대상 데이터 필드를 제공합니다.

  • IFilter 인터페이스를 사용하여 필터 생성
  • 로드 슬라이서 설정
  • 시각적 개체 정렬
  • 시각화 데이터 필드 추가

대상 형식

데이터 필드는 열, 계층 수준, 집계된 열 또는 계층 수준 또는 계산된 측정값수 있습니다. ITarget 인터페이스의 대상 형식은 다음과 같습니다.

  • IColumnTarget
  • IHierarchyLevelTarget
  • IMeasureTarget
  • IColumnAggrTarget
  • IHierarchyLevelAggrTarget

IColumnTarget 사용하여 테이블의 지정된 열을 대상으로 지정합니다.

target: {
    $schema: "http://powerbi.com/product/schema#column",
    table: "<table name>",
    column: "<column name>"
}

계층 수준

IHierarchyLevelTarget 사용하여 테이블의 계층 내에서 지정된 계층 수준을 대상으로 지정합니다.

target: {
    $schema: "http://powerbi.com/product/schema#hierarchyLevel",
    table: "<table name>",
    hierarchy: "<hierarchy name>",
    hierarchyLevel: "<hierarchy level name>"
}

치수를 재다

IMeasureTarget 사용하여 테이블에서 지정된 측정값을 대상으로 지정합니다. 대상이 시각적 개체에 바인딩되고 해당 값이 총합계의 백분율로 표시되면 percentOfGrandTotal 값이 true로 설정됩니다.

target: {
    $schema: "http://powerbi.com/product/schema#measure",
    table: "<table name>",
    measure: "<measure name>",
    percentOfGrandTotal?: boolean
}

집계 함수

열 및 계층 수준 대상에 대한 집계 함수를 지정할 수 있습니다. aggregationFunction 변수는 선택 사항이며, 변수를 제공하지 않으면 데이터 필드는 기본 Sum 집계 함수를 사용합니다. aggregationFunction 지원되는 다른 값은 다음과 같습니다.

  • Avg
  • DoNotSummarize
  • Count
  • CountNonNull
  • Max
  • Median
  • Min
  • StandardDeviation
  • Variance

집계된 열

IColumnAggrTarget 사용하여 테이블의 지정된 열에 집계 함수를 지정합니다. 대상이 시각적 개체에 바인딩되고 해당 값이 총합계의 백분율로 표시되면 'percentOfGrandTotal' 값이 true로 설정됩니다.

target: {
    $schema: "http://powerbi.com/product/schema#columnAggr",
    table: "<table name>",
    column: "<column name>",
    aggregationFunction: "<aggregation function>", // Optional, default is Sum.
    percentOfGrandTotal?: boolean
}

집계 계층 수준

IHierarchyLevelAggrTarget 사용하여 테이블의 계층 내 지정된 계층 수준에서 집계 함수를 지정합니다. 대상이 시각적 개체에 바인딩되고 해당 값이 총합계의 백분율로 표시되면 'percentOfGrandTotal' 값이 true로 설정됩니다.

target: {
    $schema: "http://powerbi.com/product/schema#hierarchyLevelAggr",
    table: "<table name>",
    hierarchy: "<hierarchy name>",
    hierarchyLevel: "<hierarchy level name>",
    aggregationFunction: "<aggregation function>", // Optional, default is Sum.
    percentOfGrandTotal?: boolean
}

예제

다음 코드 예제에서는 target 개체를 사용하여 필터가 작동해야 하는 데이터 필드를 지정합니다.

열 대상 예제

다음 코드 예제에서는 열 대상이 있는 기본 필터 보고서에 적용합니다. 이 코드는 Geo 테이블의 지역 열에서 작동하므로 서부 지역의 데이터만 보고서에 표시됩니다.

let filter = {
    $schema: "http://powerbi.com/product/schema#basic",
    target: {
        $schema: "http://powerbi.com/product/schema#column",
        table: "Geo",
        column: "Region"
    },
    operator: "In",
    values: ["West"]
};

계층 수준 대상 예제

다음 코드 예제에서는 계층 수준 대상이 있는 기본 필터를 보고서에 적용합니다. 이 코드는 Sales 테이블의 OrderDate 계층 구조의 수준에서 작동하므로 West 지역의 데이터만 보고서의 해당 계층 수준 아래에 표시됩니다.

let filter = {
    $schema: "http://powerbi.com/product/schema#basic",
    target: {
        $schema: "http://powerbi.com/product/schema#hierarchyLevel",
        table: "Sales",
        hierarchy: "OrderDate",
        hierarchyLevel: "Month"
    },
    operator: "In",
    values: ["West"]
};

측정 대상 예제

다음 코드 예제에서는 측정값 대상이 있는 고급 필터 시각적 개체에 적용합니다. 이 코드는 SalesFact 테이블의 Total Category Volume 측정값에서 작동하므로 값이 비어 있지 않은 경우에만 표시됩니다.

let filter = {
    $schema: "http://powerbi.com/product/schema#advanced",
    target: {
        $schema: "http://powerbi.com/product/schema#measure",
        table: "SalesFact",
        measure: "Total Category Volume"
    },
    filterType: models.FilterType.AdvancedFilter,
    logicalOperator: "And",
    conditions: [{
        operator: "IsNotBlank"
    }]
}

집계 열 대상 예제

다음 코드는 Sales 테이블의 Store 열에 있는 값의 합계인 열 집계 대상을 정의합니다.

let columnAggregation = {
    $schema: "http://powerbi.com/product/schema#columnAggr",
    table: "Store",
    column: "Sales",
    aggregationFunction: "Sum"
};