Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Raporlarda Power BI tümleşik analiz varsayılan hata iletilerini gizleyebilir ve bunun yerine uygulama tasarımınıza uygun özel hata iletilerini gösterebilirsiniz.
Örneğin, bu varsayılan hata iletişim kutusunu değiştirebilirsiniz:
Bu özel hata iletişim kutusuyla:
Hataları geçersiz kılma
Özel hata iletilerini kullanmak için, önce hideErrors özelliğini Power BI embedded analytics yapılandırma nesnesinde true olarak ayarlayarak varsayılan Power BI tümleşik analiz hata iletilerini gizleyin.
powerbi.embed(element, config) için bu yapılandırma diğer ayarları ve seçenekleri de içerir. Daha fazla bilgi için bkz. Rapor ayarlarını yapılandırma.
let config = {
type: 'report',
tokenType: models.TokenType.Embed,
accessToken: accessToken,
embedUrl: embedUrl,
id: embedReportId,
permissions: permissions,
settings: {
hideErrors: true
}
};
Varsayılan hata iletilerini gizlediğinizde, hata iletişim kutuları ve hatalar oluşursa iletiler artık görünmez. Uygulamanızın kullanıcılarının hatalar oluştuğunda tutarlı ve yararlı yanıtlar alması için hata olaylarını işlemek sizin sorumluluğunuzdadır.
Hataları işlemek için önce error olayını dinleyerek hataları alın:
report.off("error");
report.on("error", function(event) {
// Handle errors
});
IError arabirimindeki level özelliği, hangi tür hataların işleneceğini belirtmenize olanak tanır:
interface IError {
message: string;
detailedMessage?: string;
errorCode?: string;
level?: TraceType;
technicalDetails?: ITechnicalDetails;
}
enum TraceType {
Information = 0,
Verbose = 1,
Warning = 2,
Error = 3,
ExpectedError = 4,
UnexpectedError = 5,
Fatal = 6,
}
Fatal hataları, raporun yanıt vermemeye başlamasından dolayı en ciddi hata türüdür. Son kullanıcıların hata iletisi olmadan yanıt vermeyen veya bozuk raporlarla karşılaşmasını önlemek için Fatal hataları işlediğinizden emin olun.
Örnek
Aşağıdaki kod örneği, error olayları dinleyerek ve işleyerek hataları nasıl geçersiz kılabileceğinizi gösterir. Örnekte newAccessToken veya error.detailedMessage işlevleri gösterilmez. Belirtilen yerlerde kendi işlevlerinizi uygulayın.
// Embed the loadConfiguration that hides the default errors.
let config = {
type: 'report',
tokenType: models.TokenType.Embed,
accessToken: accessToken,
embedUrl: embedUrl,
id: embedReportId,
permissions: permissions,
settings: {
hideErrors: true
}
};
// Get a reference to the embedded report HTML element.
let embedContainer = $('#embedContainer')[0];
// Embed the report and display it within the div container.
let report = powerbi.embed(embedContainer, config);
// Set report.off to remove any pre-existing error event handler.
report.off("error");
// Set report.on to add the new error event handler.
report.on("error", function(event) {
const error = event.detail;
// If the error level isn't Fatal, log the error and continue.
if (error.level !== models.TraceType.Fatal) {
console.error(error);
return;
}
// If the Fatal error is TokenExpired, refresh the token.
if (error.message === models.CommonErrorCode.TokenExpired) {
// Implement your own function here.
let newAccessToken = refreshToken();
// Set the new access token.
report.setAccessToken(newAccessToken);
} else {
// If the error isn't TokenExpired, show the custom
// dialog with detailed error message in the iframe.
// Implement your own function here.
showError(error.detailedMessage);
}
});
İlgili içerik
- Rapor ayarlarını yapılandırma
- Eklenmiş uygulama sorunlarını giderme
- Power BI bağıntı kimliğini kullanma