Share via


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

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

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

대상 형식

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

  • IColumnTarget
  • IHierarchyLevelTarget
  • IMeasureTarget
  • IColumnAggrTarget
  • IHierarchyLevelAggrTarget

Column

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테이블의 Region 열에서 작동합니다.

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 계층 구조의 Month 수준에서 작동하므로 서부 지역의 데이터만 보고서의 해당 계층 수준 아래에 표시됩니다.

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"
};

다음 단계