Aracılığıyla paylaş


Rapor temaları uygulama

Power BI rapor temaları raporunuzun tamamına tasarım değişiklikleri uygulamanıza olanak sağlar. Örneğin, şirket renklerinizi ekleyebilir ve simge kümelerinizi değiştirebilirsiniz. Rapor teması uyguladığınızda, raporunuzdaki tüm görseller varsayılan olarak seçtiğiniz temadaki renkleri ve biçimlendirmeyi kullanır. Tema ayarları ve nasıl tasarlandıkları hakkında daha fazla bilgi için bkz. Rapor teması JSON dosya biçimi.

Tema uygulanmış bir raporu kaydedebilir ve yayımlayabilirsiniz. Uygulanan tema, Power BI Hizmeti'ne veya Power BI tümleşik analizine yüklendiğinde bu rapor için varsayılan temadır.

Power BI tümleşik analizi kullanan geliştiriciler, rapor için varsayılan tema yerine özel tema uygulanmış bir rapor ekleme olanağına da sahiptir. Bir temayı bu şekilde uygulamak, ayarlarına göre farklı kullanıcılara farklı temalar içeren aynı raporu yükler.

Rapor teması nesnesi

Bu bölümde, temaları temsil etmek için kullanılan rapor teması nesnesi açıklanmaktadır. Ekli yapılandırmaya bir IReportTheme nesne türü geçirilebilir.

interface IEmbedConfiguration extends IEmbedConfigurationBase {
  ...
  theme?: models.IReportTheme;
}

Rapor teması nesnesinin themeJsonadlı tek bir parametresi olmalıdır. Bu alan, tema ayarlarını temsil eden JSON nesnesini içermelidir. Daha fazla bilgi için Rapor teması JSON dosya biçimi sayfasına bakın.

interface IReportTheme {}
interface ICustomTheme extends IReportTheme {
  themeJson: any;
}

Rapora tema uygulama

Uygulanan tema, rapor yüklendikten sonra da değiştirilebilir. Raporu yükledikten sonra temayı uyguladığınızda, son kullanıcı listeden bir tema seçebilir ve yeniden yükleme yapmadan rapora uygulanan stil değişikliklerini hemen görebilir.

Yükte tema uygulama

Bu örnek, rapor yüküne özel bir tema uygulamak istiyorsanız kullanışlıdır.

// Parse the theme JSON file into an object
let themeJsonObject = parseJsonfile(path);
let embedConfig = {
    …
    theme: {
        themeJson: themeJsonObject
    }
};

let report = powerbi.embed(embedContainer, embedConfig);

Çalışma zamanında tema uygulama

Uygulama yöntemi, raporu yeniden yüklemeden rapor yüklendikten sonra temayı değiştirmek istiyorsanız kullanışlıdır.

Power BI İstemcisi Rapor sınıfı, applyTheme yöntemini şu şekilde tanımlar:

applyTheme(theme: models.IReportTheme): Promise<void>

applyTheme API çalışma zamanında rapora uygulanan temayı değiştirir.

...
// Parse the theme JSON file into an object
let themeJsonObject = parseJsonfile(path); 

// Apply the theme
report.applyTheme({ themeJson: themeJsonObject });

Rapor oluştururken tema uygulama

Yeni bir eklenmiş rapor, tema uygulanmış olarak oluşturulabilir. Rapora eklenen yeni görseller tema stiline saygı gösterir. Ekli rapor oluşturma, düzenleme ve kaydetme sayfasına da bakın.

Bu örnek, yeni bir rapora özel tema uygulamak istiyorsanız kullanışlıdır.

// Parse the theme JSON file into an object
let themeJsonObject  = parseJsonfile(path);
let embedCreateConfiguration = {
  …
  theme: {
    themeJson: themeJsonObject 
  }
};

let report = powerbi.createReport(embedContainer, embedCreateConfiguration);

Not

parseJsonfile, uygulama kodunda uygulanması gereken ve SDK'nın parçası olmayan bir işlevdir.

Rapor temasını sıfırlama

Rapor temasını varsayılan temaya sıfırlamak istiyorsanız ancak tema JSON dosyanız yoksa sıfırlama yöntemi kullanışlıdır.

Power BI İstemcisi Rapor sınıfıresetTheme yöntemini şu şekilde tanımlar:

resetTheme(): Promise<void>

resetTheme API'sini çağırmak raporun varsayılan temasına döner.

// Apply the theme
report.resetTheme();

Dikkat edilmesi gerekenler ve sınırlamalar

  • Yukarıda açıklanan applyTheme API'sinin kullanılması, varsayılan temayı tamamen yeni JSON dosyasıyla geçersiz kılar. API varsayılan temanın yapılandırmasını genişletmez.
  • Tema uygulama işleminin rapordaki görselleri beklediğiniz gibi değiştirmediği birkaç kez vardır. Daha fazla bilgi için bkz. Rapor Teması renkleriraporlarınıza bağlı kalmadığında durumlar.
  • Tema uygulamak ve aynı anda karşıtlık düzeyi ayarlamak için API'yi kullanamazsınız. Her iki özelliği de yapılandırdığınızda, API belirttiğiniz karşıtlık düzeyini kullanır ancak tema ayarını yoksayar.