Compartilhar via


Criar métricas personalizadas

Você pode estender a capacidade de definir e calcular métricas personalizadas seguindo o mesmo padrão usado para métricas predefinidas.

Gerar tabelas agregadas

Com base na métrica que você deseja computar, um dos seguintes cenários mencionados é aplicável. Siga as etapas para o cenário aplicável a você.

Cenário 1

A tabela agregada predefinida oferece suporte aos dados de medição necessários no conjunto necessário de dimensões, portanto, você não precisa fazer alterações na tabela agregada.

  1. Gere a tabela agregada predefinida conforme explicado em Gerar tabelas agregadas.

  2. Atualize o modelo semântico DatasetForMetricsMeasures_DTST .

Cenário 2

As tabelas agregadas predefinidas oferecem suporte aos dados de medição necessários, mas a dimensão necessária está ausente.

  1. Adicione a dimensão necessária à tabela de agregação predefinida atualizando a lógica de computação no notebook que contém a lógica de computação da tabela agregada. Por exemplo, se a lógica de computação da tabela EmissionsAggregate precisar ser atualizada, atualize a lógica em CreateAggregateForEmissionsMetrics_INTB.

  2. Execute o notebook com a lógica de computação atualizada para gerar a tabela agregada.

    Observação

    Não exclua nenhuma dimensão existente do agregado predefinido capaz de evitar afetar o cálculo da métrica predefinida.

  3. Atualize a tabela agregada no modelo semântico DatasetForMetricsMeasures_DTST :

    1. Baixe o modelo semântico DatasetForMetricsMeasures_DTST da página do espaço de trabalho e abra o modelo no Power BI Desktop.

      Captura de tela da abertura do modelo semântico.

    2. No Power BI Desktop, clique com o botão direito do mouse na tabela agregada atualizada e selecione Editar consulta para abrir o editor do Power Query.

      Captura de tela da abertura do editor do Power Query.

    3. No Editor do Power Query abra o Editor Avançado selecionando Editor Avançado na faixa de opções.

      Captura de tela da abertura do editor avançado .

    4. Atualize o código de consulta para incluir a nova coluna em todas as etapas em que as colunas são referenciadas, ajustando qualquer tratamento de erro conforme necessário para a nova coluna. Escolha Concluído.

      Captura de tela da atualização do código de consulta.

    5. Selecione Atualizar preview para exibir os dados atualizados. Após confirmar, selecione Fechar e Aplicar para aplicar as alterações ao modelo de dados.

    6. Salve o arquivo atualizado do Power BI com as medidas adicionadas e as alterações de esquema. Publique o modelo semântico atualizado no espaço de trabalho de destino no serviço do Power BI , substituindo a versão anterior no espaço de trabalho.

Cenário 3

As tabelas agregadas predefinidas não oferecem suporte aos dados de medição necessários:

  1. Crie uma tabela agregada personalizada definindo a lógica de computação (usando padrões semelhantes aos usados para tabelas agregadas predefinidas) em um notebook.

  2. Execute o notebook para gerar a tabela agregada no lakehouse computedESGMetrics_LH.

  3. Adicione a tabela agregada personalizada a DatasetForMetricsMeasures_DTST:

    1. Faça o download do modelo semântico da página do espaço de trabalho e abra o modelo no Power BI Desktop.

    2. Em Power BI Desktop, selecione Hub de dados OneLake, selecione Lakehouses e, no pop-up, selecione o lakehouse ComputedESGMetrics. Selecione a seta suspensa no botão Conectar e selecione Conectar ao ponto de extremidade SQL.

    3. Selecione as tabelas agregadas personalizadas a serem importadas no modelo semântico. Selecione Carregar para trazer as tabelas para dentro do Power BI Desktop.

    4. No prompt da janela, defina a Configuração de Conexão para Modo de importação para trazer os dados para o modelo e selecione OK.

    5. Quando as tabelas forem carregadas no painel Dados , clique com o botão direito do mouse nas tabelas Editar Consulta para abrir o Editor do Power Query.

    6. Abra o Editor Avançado no painel Editor de Consultas para revisar o código da consulta. Adicione o código de tratamento de erros necessário para gerenciar quaisquer problemas de dados inesperados.

      Por padrão, esse código aparece no painel do editor de consultas:

      let
         Source = Sql.Database("x6eps4xrq2xudenlfv6naeo3i4-lzqqwvhquhb2e7afwzp3ge4.msit-datawarehouse.fabric.microsoft.com", "SDS_ESGDE_ems_ComputedESGMetrics_LH"),
         <Table Name>= Source{[Schema="dbo",Item="<Table Name from the Lakehouse>"]}[Data]
      in
      <Table Name>
      

      Substitua essa consulta pelo código a seguir, fazendo as alterações necessárias com base na tabela e nas colunas presentes na tabela agregada personalizada:

      let
         Source = Sql.Database("x6eps4xrq2xudenlfv6naeo3i4-lzqqwvhquhb2e7afwzp3ge4.msit-datawarehouse.fabric.microsoft.com", "SDS_ESGDE_ems_ComputedESGMetrics_LH"),
         dbo_EmissionsAggregate = try Source{[Schema="dbo",Item="EmissionsAggregate"]}[Data] otherwise #table(
             type table
             [
                 #"ReportingPeriod"=number,
                 #"PartyId"=number,
                 #"PartyTypeName"=text,
                 #"PartyName"=text,
                 #"SecondaryPartyId"=number,
                 #"SecondaryPartyTypeName"=text,	
                 #"SecondaryPartyName"=text,
                 #"EmissionSource"=text,	
                 #"isRolledUp"=logical,	
                 #"CO2eEmission"=number,	
                 #"UnitOfMeasureName"=text
             ],
             {})
      in
         dbo_EmissionsAggregate
      
    7. Para salvar as alterações, selecione Concluído.

    8. Para aplicar as alterações, selecione Fechar e Aplicar no Editor do Power Query.

    9. Na visualização Modelo , adicione relações entre as tabelas recém-adicionadas, se necessário.

    10. Salve o arquivo atualizado do Power BI Desktop. Publique o modelo no espaço de trabalho no serviço do Power BI selecionando Arquivo > Publicar > Publicar em Power BI e escolhendo o espaço de trabalho de destino. Essa ação substitui o modelo semântico existente no espaço de trabalho sem alterar a ID do modelo.

Criar outra medida do Power BI para calcular a métrica personalizada

Conforme mencionado em Computar e armazenar dados de métricas, a computação de métricas ESG é especificada em termos de medida do Power BI , filtros e dimensões.

Você pode percorrer a lista de medidas predefinidas e verificar se é possível reutilizar alguma das medidas existentes para calcular a métrica personalizada. Se for possível reutilizar uma medida existente, você poderá ignorar esta etapa.

Se você não puder usar uma medida existente, crie outra medida do Power BI no DatasetForMetricsMeasures_DTST.

  1. Selecione o item de modelo semântico DatasetForMetricsMeasures_DTST na exibição de lista de espaço de trabalho.

  2. Selecione Abrir modelo de dados na página do modelo semântico.

    Observação

    Se o Abrir modelo de dados estiver esmaecido, navegue até Configuração do espaço de trabalho. Abra o Power BI/Geral e ative os Usuários podem editar modelos de dados na configuração de serviço do Power BI ..

  3. Selecione ESG_Measures no painel lateral Dados e, em seguida, selecione Nova Medida para criar uma medida.

    Captura de tela da criação de uma nova medida.

  4. Atualize o nome da medida e adicione a lógica de computação na forma de consultas DAX (Data Analysis Expressions). Para saber mais sobre as medidas do Power BI, acesse Criar medidas para análise de dados no Power BI Desktop na documentação do Power BI.

Criar uma definição de métrica

Você pode criar a definição de métrica usando a função de utilitário predefinida create_metric_definition(). Para obter mais informações sobre essa função, acesse create_metric_definition.

No parâmetro function, especifique as propriedades da métrica como um arquivo JSON. Por exemplo, convém calcular o consumo de água em instalações para instalações em áreas de alto e extremamente alto risco hídrico. A métrica pré-construída fornece apenas todo o consumo de água para áreas de risco hídrico, mas não fornece a divisão das instalações. Você pode criar uma definição de métrica personalizada Consumo total de água em áreas com risco hídrico e instalações com o seguinte trecho de código.

%run SDS_ESGM_SDS_UtilitiesForMetrics_INTB
metrics_manager = MetricsManager()
metrics_manager.create_metric_definition(
    {
            "metric_name": "Total water consumption in areas at water risk facility wise",
            "measure_name": "WaterConsumption",
            "dimensions": [
                "WaterUtilizationAggregate[ReportingPeriod]",
                "WaterUtilizationAggregate[UnitOfMeasureName]",
                "WaterUtilizationAggregate[PartyName]",
                "WaterUtilizationAggregate[PartyTypeName]"
            ],
            "filters": {
                "WaterUtilizationAggregate[isRolledUp]": [
                    "False"
                ],
                "WaterUtilizationAggregate[WaterRiskIndexName]": [
                    "Extremely High",
                    "High"
                ],
                "WaterUtilizationAggregate[UnitOfMeasureName]": [
                    "Cubic metres"
                ]
            },
            "sustainability_area": "Water and marine resources",
            "labels": {
                "Reporting standard": [
                    "CSRD"
                ],
                "Disclosure datapoint": [
                    "E3-4_02"
                ]
            }
        })

Quando a função é executada com êxito, a definição de métrica é adicionada como uma linha na tabela MetricsDefinitions no lakehouse ComputedESGMetrics_LH.

Observação

O nome da métrica para cada métrica precisa ser exclusivo. Se você criar uma métrica personalizada com um nome que corresponda ao nome de uma métrica existente na tabela MetricsDefinitions , a função será eliminada.
No arquivo JSON de definição de métrica, você pode ignorar a especificação das propriedades de filtro e rótulo se não precisar delas para sua métrica personalizada.

Gerar e armazenar dados de métricas

Use as mesmas etapas especificadas para métricas predefinidas para gerar e armazenar dados de métricas. Especifique o nome da métrica personalizada que você criou na etapa anterior no parâmetro metric_names.

Consumir dados de métricas

Quando os dados de métricas personalizadas estão disponíveis na tabela ComputedESGMetrics você pode consumir os dados para estes cenários:

Visualizar e analisar dados de métricas personalizadas

Você pode visualizar e analisar dados de métricas personalizadas no painel predefinido do Power BI usando as etapas em Visualizar e analisar dados de métricas.

Se a métrica personalizada tiver dimensões adicionais além do período de relatório e do nome da unidade de medida, o painel predefinido poderá manipular a visualização de uma outra dimensão como uma segmentação de dados e duas outras dimensões como um filtro de várias linhas.

Captura de tela de outra dimensão.

Você pode especificar as dimensões da tabela de métrica a serem consideradas para segmentação de dados e filtro de várias linhas no arquivo translate_metrics_output_for_report_config.json.

Por exemplo, você cria a Desagregação de emissões de GEE – por país como uma métrica personalizada com estas colunas:

  • Valor
  • País/região
  • Scope
  • Método de contabilidade
  • Período do relatório
  • Nome da unidade de medida
  1. Para visualizar essa métrica no painel predefinido, você pode especificar os dados na configuração da seguinte maneira:

    {
             "metric_name": "Disaggregation of GHG emissions - by country",
             "dimensions_for_multiple_lines": [
                 "Scope",
                 "AccountingMethod"
             ],
             "dimension_for_slicer": "CountryOrRegion"
    }
    

    Esse trecho adiciona a dimensão CountryOrRegion como uma segmentação de dados no painel. As dimensões Scope e AccountingMethod são concatenadas com um sublinhado (_) e, em seguida, adicionadas como filtro básico (ou filtro de várias linhas) no painel.

  2. Após as atualizações de configuração, você pode executar as mesmas etapas especificadas aqui para visualizar dados de métricas predefinidas. TranslateOutputOfMetricsForReport_INTB notebook.

  3. Atualize o modelo semântico DatasetForMetricsDashboard_DTST.

  4. Abra o item DashboardForMetrics_RPT. Você deve encontrar a métrica personalizada em uma das quatro guias, com base na área de sustentabilidade mapeada para a métrica.

    Observação

    Se a área de sustentabilidade for especificada como um valor diferente de Mudança Climática, Social, Governança, Água e recursos marinhos, ou Uso de recursos e economia, você precisará do relatório predefinido do Power BI.

Publicar dados de métricas para dados de métricas de auditoria no Compliance Manager

  1. Para a métrica personalizada, atualize o translate_metrics_output_for_CM_config.json adicionando um objeto para a métrica personalizada com estes detalhes:

    • metricName: nome da métrica.

    • metricExtractDataPath: Nome da pasta de métrica a ser criada na pasta ReportingData/year no ComputedESGMetrics_LH lakehouse, contendo o arquivo JSON traduzido para a métrica.

      Observação

      Não há suporte para caracteres ou espaços especiais em metricExtractDataPath.

    • disclosureRequirements: nome do requisito de divulgação (ação de melhoria) no modelo CSRD Compliance Manager. O Compliance Manager pode ler esse valor e mapear dados de métrica para a ação de melhoria correta na avaliação CSRD do Compliance Manager.

    • Colunas: nome de exibição da coluna para cada uma das colunas de métrica, que mostra nomes de coluna amigáveis para dados de métricas em aplicativos downstream.

  2. Quando a configuração for atualizada, execute o notebook TranslateOutputOfMetricsForCM_INTB com estes parâmetros:

    • metric_names: nome da métrica personalizada gerada.

    • reporting_period: ano de relatório para os dados métricos.

    • num_previous_years: número de dados de anos comparativos que precisam ser enviados junto com reporting_period dados.

Depois que o notebook é executado, os dados de métrica como arquivos JSON ficam disponíveis na pasta ReportingData da seção de arquivos em ComputedESGMetrics.json. Agora você pode ingerir os dados de métrica publicados no Compliance Manager usando o conector de dados do Sustainability.

Próxima etapa