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 RaiseEventolarak 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.

Sonraki adımlar