Yer işaretleri ile kullanıcılarınızın deneyimini geliştirme
Power BI'daki rapor yer işaretleri, tüm filtreler ve görsellerinin durumu da dahil olmak üzere eklenmiş rapor sayfasının geçerli durumunu yakalamanıza olanak sağlar. Raporu daha sonra açtığınızda, raporu kaydedilmiş duruma geri yüklemek için yer işaretini seçebilirsiniz. Geliştiriciler yer işaretlerini yakalamak ve uygulamak için Power BI İstemci API'lerini kullanarak kullanıcı deneyimini denetleyebilir.
Kaydedilen yer işareti, bir raporun parçası olarak kaydedilmiş bir yer işareti veya raporun gerçek zamanlı durumu olarak yakalanan bir yer işareti olabilir. Rapor yüklerken kaydedilmiş bir yer işareti uygularsanız, yer işaretinin adını veya durumunu sağlayarak kullanılacak yer işaretini belirtebilirsiniz. Ada göre bir yer işareti sağlarsanız, raporunuzun aynı ada sahip kaydedilmiş bir yer işareti içermesi gerekir.
Bu makalede yer işaretlerini destekleyen raporlar eklemek için ihtiyacınız olan farklı API ayarları açıklanmaktadır.
Not
kuruluşunuz için
müşterileriniz için
Power BI'da yer işaretlerini kullanma hakkında daha fazla bilgi için bkz. Power BI Desktop'ta yer işaretleri oluşturma
Power BI'ı eklerken kişisel yer işaretlerini kullanma hakkında bilgi için bkz. Kişisel yer işaretleri.
Rapor yer işaretlerini kullanma
Aşağıdaki bölümlerde rapor yer işaretleriyle çalışmak için Power BI İstemci API'lerinin nasıl kullanılacağı gösterilmektedir.
Raporun yer işaretlerini yönetme
Raporun yer işaretlerini yönetmek için
BookmarksManager sınıfı aşağıdaki yöntemlere sahiptir:
getBookmarks
- Raporla ilişkili kaydedilmiş yer işaretlerinin listesini döndürür.apply
- Rapora önceden kaydedilmiş bir yer işareti adına göre uygulanır.capture
- Raporun geçerli durumunu temsil eden base64 serileştirme dizesini yakalar ve döndürür.applyState
Bir yer işaretinin önceden yakalanan base64 serileştirme durumunu rapora uygular.play
- Raporun yer işaretleri için slayt gösterisi sunu modunu denetler.
Rapor yer işaretine erişme
Tek bir yer işaretine erişmek için getBookmarks
yöntemini kullanarak ReportBookmark
nesnelerin listesine erişin.
ReportBookmark
sınıfı aşağıdaki özelliklere sahiptir:
name
- Rapor yer işaretinin benzersiz tanımlayıcısı.displayName
- Yer İşaretleri bölmesinde görüntülenen rapor yer işaretinin görünen adı.state
- Rapor yer işaretinin durumunun base64 serileştirmesi. Bunu kaydedebilir vebookmarksManager.applyState
yöntemiyle bir rapora uygulayabilirsiniz.children
- Varsa rapor yer işareti grubunu temsil edenReportBookmark
nesnelerin listesi.
Rapor yer işaretleri API'lerini kullanma
Katıştırılmış bir raporda geliştiriciler şunları yapabilir:
- kaydedilen rapor yer işaretlerinin listesini alın.
- Rapor yüklemesinde veya oturumsırasında kaydedilen yer işaretini ada göre uygulayın.
- Geçerli görünümü yakalama veyer işareti nesnesi olarak alma.
- Rapor yükünde veya oturum sırasında yakalanan yer işareti durumunu uygulama
- bir rapor yer işareti uygulandığında ek mantık gerçekleştirin.
- Yer İşaretleri bölmesinigösterin veya gizleyin.
- yer işaretlerini girin veya slayt gösterisi modundan çıkın.
Kaydedilen rapor yer işaretlerinin listesini alma
Bir raporla ilişkili kaydedilmiş yer işaretlerinin listesini almak için raporun bookmarksManager
özelliği tarafından döndürülen BookmarksManager nesnesinin getBookmarks
yöntemini çağırın.
getBookmarks
yöntemi aşağıdaki gibi tanımlanır:
getBookmarks(): Promise<models.IReportBookmark[]>
Mesela:
let bookmarks = await report.bookmarksManager.getBookmarks();
Kaydedilen yer işaretini rapor yükünde veya oturum sırasında ada göre uygulama
Daha önce kaydedilmiş bir yer işaretini yer işareti adını kullanarak rapora uygulamak için, raporun bookmarksManager
özelliği tarafından döndürülen BookmarksManager nesnesinin apply
yöntemini çağırın.
Daha fazla bilgi için bkz. Rapor ayarlarını yapılandırma.
apply
yöntemi aşağıdaki gibi tanımlanır:
apply(bookmarkName: string): Promise<void>
Mesela:
await report.bookmarksManager.apply("Bookmark1234");
Geçerli görünümü yer işareti nesnesi olarak yakalama ve alma
Raporun geçerli durumunu base64 dizesi olarak yakalamak için BookmarksManager nesnesinin capture
yöntemini çağırın.
capture
yöntemi, belirli bir rapora kaydedilmemiş bir yer işaretini temsil eden bir IReportBookmark
nesnesi döndürür. yer işareti durumunu tanımlayan base64 dizesini döndürmek için IReportBookmark.state
özelliğini kullanın. Bu dizeyi daha sonra yükleme süresi veya çalışma zamanı sırasında bir rapora uygulayabilirsiniz.
capture
yöntemi aşağıdaki gibi tanımlanır:
capture(options?:ICaptureBookmarkOptions): Promise<models.IReportBookmark>
Mesela:
let capturedBookmark = await report.bookmarksManager.capture();
Yer işareti yakalama seçenekleri
capture
yöntemine bir ICaptureBookmarkOptions
nesnesi de geçirebilirsiniz.
interface ICaptureBookmarkOptions {
allPages?: boolean;
personalizeVisuals?: boolean;
}
-
allPages
- Varsayılan olarak, yakalanan yer işareti durumu yalnızca geçerli sayfa durumunu kaydeder. Tüm sayfaların durumunu yakalamak içinallPages
seçeneğitrue
olarak ayarlanmışcapture
yöntemini çağırın. - kişiselleştirilmiş görsellerle geçerli durumu yakalamak için seçeneğinin olarak ayarlandığı yöntemini çağırın.
Örneğin, aşağıdaki kod kişiselleştirilmiş görseller de dahil olmak üzere tüm sayfaların durumunu yakalar:
let capturedBookmark = await report.bookmarksManager.capture({
allPages: true,
personalizeVisuals: true
});
Yakalanan yer işareti durumunu rapor yüküne veya oturum sırasında uygulama
Daha önce yakalanan yer işareti durumunu bir rapora uygulamak için BookmarksManager nesnesinin applyState
yöntemini kullanın.
Daha fazla bilgi için bkz. Rapor ayarlarını yapılandırma.
applyState
yöntemi aşağıdaki gibi tanımlanır:
applyState(state: string): Promise<void>
Mesela:
await report.bookmarksManager.applyState(capturedBookmark.state);
Rapor yer işareti uygulandığında ek mantık gerçekleştirme
Bir rapor yer işaretinin ne zaman uygulandığını belirlemek için, rapor nesnesinin on
yöntemini çağırarak bookmarkApplied
olayını dinleyin.
Mesela:
report.on("bookmarkApplied", (event) => {
console.log(event.detail.name);
});
Yer İşaretleri bölmesini gösterme veya gizleme
Power BI Yer İşaretleri bölmesini göstermek veya gizlemek için rapor ayarlarının panes
özelliğini güncelleştirin.
Yer İşaretleri bölmesini gösterme
let embedConfig = {
...
panes: {
bookmarks: {
visible: true
}
}
};
Yer İşaretleri bölmesini gizleme
let embedConfig = {
...
panes: {
bookmarks: {
visible: false
}
}
};
Rapor ayarlarını güncelleştirme hakkında bilgi için bkz. Rapor ayarlarını yapılandırma.
Yer işaretlerine girme veya slayt gösterisi modundan çıkma
Raporun yer işaretlerinin slayt gösterisi sunu modunu denetlemek için BookmarksManager nesnesinin play
yöntemini çağırın. Daha fazla bilgi için bkz.slayt gösterisi olarak Yer İşaretlerini
play
yöntemi aşağıdaki gibi tanımlanır:
play(playMode: models.BookmarksPlayMode): Promise<void>
Not
Yer işaretleri slayt gösterisi moduna girmeden önce, rapordagetBookmarks API'
Slayt gösterisi sunu moduna girme
await report.bookmarksManager.play(models.BookmarksPlayMode.Presentation);
Slayt gösterisi sunu modundan çıkma
await report.bookmarksManager.play(models.BookmarksPlayMode.Off);
Dikkat edilmesi gerekenler ve sınırlamalar
Yer işaretleri API'sini kullandığınızda raporda yapılan bazı değişiklikler hataya veya beklenmeyen bir sonuca neden olabilir. Buna örnek olarak rapor filtrelerini rapordan kaldırabilirsiniz. Hataları önlemek için ilgili filtre kartlarının mevcut olması gerekir. Filtreleri kaldırmak yerine değerlerini
All
olarak ayarlayın. Hangi filtrelerin silindiğini veya değiştirildiğini bilmiyorsanız, değişiklikleri rapora uyguladıktan sonra yer işaretini yeniden özetleyin.Ekleme oturumu tarafından oluşturulan veya
güncelleştirme filtreleri ekleme işlemi tarafından eklenen yük filtrelerindegibi filtreler yer işareti durumunda yakalanır, ancak yalnızca geçerli oturumda uygulanır. Bu sınırlamayı aşmak için filtrenin rapora All
değeriyle kaydedilmesi ve güncelleştirme filtreleri güncelleştirme işlemikullanılarak ekleme oturumunda değiştirilmesi gerekir.
İlgili içerik
- Denetim raporu filtreleri
- rapor dilimleyicilerini
- Olayları işleme