Olayları işleme
İpucu
Power BI Embedded Analytics Playground'unGeliştirici korumalı alanı bölümünde kendi raporunuzu veya örnek raporumuzu kullanarak API'lerle gerçek zamanlı denemeler yapın.
Olaylar, Power BI bileşeni (örneğin, bir rapor) ile web uygulaması kodu arasında iletişim kurmak için kullanılır.
Katıştırılmış bileşen, bileşenin içinde bir eylem yürütüldükten sonra olayları yayar. Bunlar, kullanıcı etkileşimleri veya bileşen içindeki otomatik bir eylem (işlenen bir görsel gibi) olabilir.
Örneğin, buttonClicked
bir kullanıcı rapordaki bir düğmeye tıkladığında Power BI raporu tarafından yayılan bir olaydır. kullanarak report.on(...)
olayı dinleyebilir ve ardından bir olay işleyicisi ayarlayabilirsiniz.
Bir olayın nasıl işlenmek için bir örnek
Bu örnekte bir rapor olayının nasıl işlenme şekli gösterilmektedir. Diğer olay türleri hakkında bilgi edinmek için bkz . Olaylar ve bunların yanıt değerleri.
Not
API'leri kullanmadan önce bileşenin yüklenmesini bekleyin. Yüklenen olayı dinleyin ve ardından yeni komutlar yayımlayın.
report.on('loaded', function(event)
{
reportPages = await report.getPages();
});
Olay işleyicilerini kaldırma
Belirli bir olayın tüm olay işleyicilerini kaldırmak için kullanabilirsiniz report.off(...)
.
Olaylar ve bunların yanıt değerleri
Olası olayların ve bunların yanıt değerlerinin tam listesini görüntüleyin.
Hata olayları (tüm eklemeler için geçerlidir)
Başarısız bir işlemi açıklamak için bir hata olayı yayılır.
interface IError {
message: string // A general message that describes the operation that failed (example: "Could not set page")
detailedMessage?: string // Detailed message that describes the error
errorCode?: string // Short message that describes the error
level?: TraceType // The level of the error (example: 'Fatal')
technicalDetails?: ITechnicalDetails
}
interface ITechnicalDetails {
requestId?: string // Id for debugging - should be provided when reporting a bug
}
Not
message
Yalnızca özelliği gereklidir ve diğer özellikler tanımlanmamış olabilir.
Rapor olayları
Rapor olayı, rapor düğmesine tıklama veya görseli işleme gibi eklenmiş bir raporla etkileşim için yayılır.
Buttonclicked
Olay buttonClicked
, kullanıcı Bir Rapor düğmesine tıkladığında oluşturulur.
id: string
title?: string
type?: string (type of button)
bookmark?: string
commandTriggered
Olay commandTriggered
, kullanıcı bir uzantı komutuna tıkladığında tetikleniyor.
command: string
dataPoints?: IIdentityValue[]
report: models.IReport
page: models.IPage
visual: models.IVisual
dataHyperlinkClicked
Köprüye dataHyperlinkClicked
tıklandığında ve köprü davranışı veya RaiseEvent
olarak ayarlandığında NavigateAndRaiseEvent
olay tetiklendi.
url: string
report: models.IReport
page: models.IPage
visual: models.IVisual
Daha fazla bilgi için bkz. Rapor ayarlarını yapılandırma.
dataSelected
Olay dataSelected
, belirli bir veri noktası seçildiğinde tetiklenir.
report: models.IReport
page: models.IPage
visual: models.IVisual
filters: IFilter[]
dataPoints: IIdentityValue[]
loaded
Olay loaded
, rapor başlatıldığında tetikleniyor. Power BI logosu kaybolduğunda yükleme tamamlanır.
pageChanged
Olay pageChanged
, bir sayfa değiştirildiğinde oluşturulur.
newPage: Models.IPage
Işlen -miş
Olay rendered
, bir rapor tam olarak işlendiğinde oluşturulur. Örneğin, tüm görseller bir rapor yüklendikten sonra veya kullanıcı etkileşimi sonrasında işleniyorsa.
saveAsTriggered
Kullanıcı saveAsTriggered
kullanıcı arabiriminde Farklı Kaydet'e tıkladığında olay tetikleniyor. Bu, Farklı Kaydet eylemi için kendi iletişim kutunuzu oluşturmanıza olanak tanır.
kaydedildi
Olaysaved
, kullanıcı arabirimindeki bir veya eylemi tarafından veya saveAs
API'ler kullanılarak bir save
kaydetme tetiklendiğinde tetikler.
Selectionchanged
Olay selectionChanged
, kullanıcı seçilen görseli her değiştirildiğinde tetiklenir.
selectedItems
, birden fazla seçili görselin listesidir.
report: models.IReport
page: models.IPage
visual?: models.IVisual
selectedItems?: models.IVisual[]
visualClicked
Olay visualClicked
, bir görsele her tıklandığında oluşturulur.
report: models.IReport
page: models.IPage
visual: models.IVisual
visualRendered
OlayvisualRendered
, bir görsel işlendiğinde oluşturulur (ayarlar nesnesinde ayarının true olarak ayarlanması visualRenderedEvents
gerekir).
Not
Görseller kullanıcı etkileşimlerinden dolayı işlenebileceği için, bu olayın yalnızca gerektiğinde açılması önerilir.
name: string
Daha fazla bilgi için bkz. Rapor ayarlarını yapılandırma.
Rapor Ekleme Mobil olayları
Rapor Ekleme Mobil olayı, çekme işleminin başlangıcı veya sonu gibi bir mobil düzendeki eklenmiş raporla etkileşim için yayılır.
swipeStart ve swipeEnd olayları
swipeStart
veya swipeEnd
olaylar, bir kullanıcı eklenmiş bir raporda çekme hareketi başladığında veya sona erdiğinde tetiklenir.
interface ISwipeEvent {
currentPosition: IPosition
startPosition: IPosition
}
interface IPosition {
x: number
y: number
}
Pano olayları
Pano yüklendiğinde ve kullanıcı panodaki bir kutucuğa tıkladığında bir pano olayı yayılır.
loaded
Olay loaded
, pano başlatıldığında oluşturulur.
tileClicked
Olay tileClicked
, bir son kullanıcı bir kutucuğa tıkladığında tetikleniyor. Sabitlenmiş canlı sayfalar için tetiklenmez.
tileId: string
navigationUrl: string
pageName: string
reportEmbedUrl: string
Q&A olayları
Soru girildikten sonra bir görsel işlendiğinde soru ve yanıt (Q&A) olayı oluşturulur.
visualRendered (Q&A)
Olay visualRendered
, bir soru girildikten ve bir yanıt görüntülendiğinde bir görsel işlendiğinde oluşturulur.
question: string
normalizedQuestion: string
Kutucuk olayları
Kullanıcı bir kutucuğa tıkladığında Kutucuk olayı tetikleniyor.
tileClicked (kutucuk olayı)
Olay tileClicked
, bir son kullanıcı bir kutucuğa tıkladığında tetikleniyor. Sabitlenmiş canlı sayfalar için tetiklenmez.
tileId: string
navigationUrl: string
pageName: string
reportEmbedUrl: string
kutucuk Yüklendi
Kutucuk tileLoaded
başlatıldığında olay tetikleniyor. Power BI logosu kaybolduğunda yükleme tamamlanır.