* Update how-to-create-custom-parameter-editors.md

* Create upgrade path for R1 2023 SP1

* Updated UpgradePath article

Added "Microsoft Silverlight is no longer supported." on the top.
Changed WinUI version to 2.5.0.
Removed Silverlight dependencies info.

* Update R1 2023 SP1-updated XML schema to 2023/1.1

* R1 2023 sp1 (#919)

* Update overview.md (#826)

* Update overview.md

* Update overview.md

---------

Co-authored-by: Todor Arabadzhiev <todor.arabadzhiev@progress.com>

* Add KB article (#801)

* Add KB article

The article explains how users can open reports that use an XML schema, newer than the one currently compatible with their Standalone Report Designer installation.

* Update open-reports-that-use-newer-xml-schema.md

* Update get-started.md (#819)

* Update get-started.md

* Update overview.md

* Update overview.md

* Update overview.md

* Update structure.md

* Update area.md

* Update bar.md

* Update column.md

* Update line.md

* Update ohlc.md

* Update overview.md

* Update pie.md

* Update polar.md

* Update range.md

* Update scatter.md

* Update sparklines.md

* Update axis.md

* Update gridlines.md

* Update legend.md

* Update series.md

* Update style-resolving-fallback-algorithm.md

* Update title.md

* Update legend.md

* Update title.md

* Update title.md

* Update structure.md

* Update open-reports-that-use-newer-xml-schema.md (#828)

* Update importing-reports-overview.md (#827)

* Update importing-reports-overview.md

* Update overview.md

* Update crystal-reports-converter.md

* Update overview.md

* Update crystal-reports-converter.md

* Update crystal-reports-converter.md

* Update overview.md

* Seo report items htmltextbox (#830)

* Update editing.md

* Update embedded-expressions.md

* Update formatting.md

* Update get-started.md

* Update grow-and-shrink.md

* Update limitations.md

* Update overview.md

* Update using-html-from-telerik-radeditor.md

* Update xhtml-validation.md

* Update connecting-the-sqldatasource-component-to-a-data-source.md (#831)

* Update overview.md (#829)

* Update overview.md

* Update localization.md

* Update localization.md

* Update overview.md

* Update conflicting-actions-error-in-swagger-generation-net-core.md (#833)

* Update conflicting-actions-error-in-swagger-generation-net-core.md

* Update conflicting-actions-error-in-swagger-generation-net-core.md

* Update conflicting-actions-error-in-swagger-generation-net-core.md

---------

Co-authored-by: Todor Arabadzhiev <todor.arabadzhiev@progress.com>

* Update bar.md (#835)

* Update column.md (#836)

* Update overview.md (#832)

* Update overview.md

* Update image-device-information-settings.md

* Update imageinteractive-device-information-settings.md

* Update imageinteractive-device-information-settings.md

* Update imageinteractive-device-information-settings.md

* Update pdf-device-information-settings.md

* Update excel-2007-device-information-settings.md

* Update excel-2007-device-information-settings.md

* Update excel-2003-device-information-settings.md

* Update csv-device-information-settings.md

* Update rtf-device-information-settings.md

* Update csv-device-information-settings.md

* Update excel-2003-device-information-settings.md

* Update excel-2007-device-information-settings.md

* Update pdf-device-information-settings.md

* Update xps-device-information-settings.md

* Update mhtml-device-information-settings.md

* Update html5-device-information-settings.md

* Update html5interactive-device-information-settings.md

* Update word-device-information-settings.md

* Update powerpoint-device-information-settings.md

* Update wpfxaml-wpfxamlinteractive-device-information-settings.md

* Update csv-device-information-settings.md

* Update excel-2003-device-information-settings.md

* Update excel-2007-device-information-settings.md

* Update html5-device-information-settings.md

* Update html5interactive-device-information-settings.md

* Update mhtml-device-information-settings.md

* Update pdf-device-information-settings.md

* Update powerpoint-device-information-settings.md

* Update rtf-device-information-settings.md

* Update word-device-information-settings.md

* Update wpfxaml-wpfxamlinteractive-device-information-settings.md

* Update xps-device-information-settings.md

* Update image-device-information-settings.md

* Update imageinteractive-device-information-settings.md

* Update overview.md

* Update excel-2003-device-information-settings.md

* Update excel-2007-device-information-settings.md

* Update excel-2003-device-information-settings.md

* Update excel-2007-device-information-settings.md

* Update conditional-page-breaks.md (#839)

* Update properties.md (#840)

* Update Configuring the Reporting Engine articles for SEO (#834)

* Update appdata-element.md

* Update assemblyreferences-element.md

* Update cache-element.md

* Update dpiaware-element.md

* Update extensions-element.md

* Update fontlibrary-element.md

* Update overview.md

* Update privatefonts-element.md

* Update processing-element.md

* Update restreportservice-element.md

* Update assemblyreferences-element.md

* Update cache-element.md

* Update fontlibrary-element.md

* Update overview.md

* Update restreportservice-element.md

---------

Co-authored-by: Todor Arabadzhiev <todor.arabadzhiev@progress.com>

* Update seo configure report rendering (#841)

* Update extensions-element.md

* Update fontlibrary-element.md

* Update fontlibrary-element.md (#842)

* Update fontlibrary-element.md (#844)

* update nested table width to fit whole words (#845)

* Update get-started.md (#837)

* Update get-started.md

* Update overview.md

* Update legend.md

* Update parallels-and-meridians.md

* Update title.md

* Update get-started.md

* Update barchart-map.md

* Update barchart-map.md

* Update choropleth-map.md

* Update location-map-series.md

* Update overview.md

* Update location-map-series.md

* Update shape-map-series.md

* Update layers.md

* Update location-providers.md

* Update overview.md

* Update tile-providers.md

* Update location-map-series.md

* Update shape-map-series.md

* Update how-to-use-native-blazor-report-viewer.md (#846)

* Update how-to-use-native-blazor-report-viewer.md

* Update how-to-use-native-blazor-report-viewer.md

---------

Co-authored-by: Todor Arabadzhiev <todor.arabadzhiev@progress.com>

* Update checkbox.md (#847)

* Update get-started.md (#848)

* Update get-started.md

* Update multi-column-reports.md

* Update overview.md

* Update page-headers-footers.md

* Update properties.md

* Update page-headers-footers.md

* Update report-headers-footers.md

* Update basic-concepts.md (#849)

* Update basic-concepts.md

* Update context-menu.md

* Update crosstab-areas.md

* Update get-started.md

* Update group-editor.md

* Update manual-adjustment.md

* Update overview.md

* Update table-parts.md

* Update template-items.md

* Rename using-ms-access-database-in-the-report .md to using-ms-access-… (#850)

* Rename using-ms-access-database-in-the-report .md to using-ms-access-database-in-the-report.md

* Update using-ms-access-database-in-the-report.md

* Update using-ms-access-database-in-the-report.md

---------

Co-authored-by: Momchil Zanev <108741271+mzanev@users.noreply.github.com>

* Update using-ms-access-database-in-the-report.md (#851)

* Update using-ms-access-database-in-the-report.md

* Update using-ms-access-database-in-the-report.md

* Update how-to-add-sorting-to-table-item-and-crosstab-item.md

* Update design-considerations.md (#852)

* Update design-considerations.md

* Update docking-and-anchoring.md

* Update overview.md

* Update performance-considerations.md

* Update report-lifecycle.md

* Update report-structure.md

* Update design-considerations.md

---------

Co-authored-by: Dimitar Nikolov <dnikolov@progress.com>

* Update interactivity (#843)

* Update tooltips.md

* Update table-header-freezing.md

* Update document-map.md

* Update bookmarks.md

* Update overview.md

* Update how-to-add-a-table-of-contents-to-report-book.md

* Update overview.md

* Update bookmarks.md

* Update document-map.md

* Update overview.md

* Update overview.md

* Update how-to-add-a-table-of-contents-to-report-book.md

---------

Co-authored-by: Todor Arabadzhiev <todor.arabadzhiev@progress.com>

* Update report-lifecycle.md (#853)

* Update report-lifecycle.md

* Update design-considerations.md

* Update document-map.md (#854)

* Update datadirect-odbc-drivers.md (#855)

* Update datadirect-odbc-drivers.md

* Update how-to-set-a-no-data-message.md

* Update overview.md

* Update overview.md

---------

Co-authored-by: Dimitar Nikolov <dnikolov@progress.com>

* Update binding-a-data-item-to-data.md (#856)

* Update binding-a-data-item-to-data.md

* Update how-to-nest-a-graph-item-in-a-table-item.md

* Update how-to-use-the-reportitem.dataobject-property-in-expressions.md

* Update overview.md

* Update using-the-needdatasource-event-to-connect-data.md

* Update filter-rules.md

* Update how-to-add-filtering-to-graph-item.md

* Update how-to-add-filtering-to-report.md

* Update how-to-add-filtering-to-table-item-and-crosstab-item.md

* Update overview.md

* Update how-to-add-filtering-to-group.md

* Update how-to-add-groups-to-report.md

* Update how-to-add-groups-to-table-item-and-crosstab-item.md

* Update overview.md

* Update how-to-add-sorting-to-chart-item.md

* Update how-to-add-sorting-to-report.md

* Update how-to-add-sorting-to-table-item-and-crosstab-item.md

* Update overview.md

* Update overview.md

---------

Co-authored-by: Dimitar Nikolov <dnikolov@progress.com>

* Update interactive-action-events.md (#857)

* Update interactive-action-events.md

* Update hyperlink-action.md

* Update graph-item-actions.md

* Update drillthrough-report-action.md

* Update drilldown-report-action.md

* Update bookmark-action.md

* Update custom-action.md

* Update overview.md

* Update sorting-crosstab-top-level-group.md

* Update sorting-crosstab-total.md

* Update sorting-graph.md

* Update sorting-multiple-items-groups.md

* Update sorting-report-details.md

* Update sorting-table-details.md

* Add files via upload

* change doc map image

* Update custom-action.md

* Update overview.md

* Update sorting-crosstab-top-level-group.md

* Update sorting-crosstab-total.md

* Update sorting-crosstab-top-level-group.md

* Update sorting-graph.md

* Update sorting-multiple-items-groups.md

* Update sorting-report-details.md

* Update sorting-table-details.md

---------

Co-authored-by: Todor Arabadzhiev <todor.arabadzhiev@progress.com>

* Update datadirect-odbc-drivers.md (#858)

* Update datadirect-odbc-drivers.md

* Update report-structure.md

* Update understanding-rendering-behaviors.md

* Update calculated-fields.md

* Update jsondatasource-component.md

* Update overview.md

* Update reuse-data-source-components-across-reports.md

* Update shareddatasource-component.md

* Update using-parameters-with-data-source-objects.md

* Update working-with-data-at-design-time.md

* Update connecting-the-csvdatasource-component-to-a-csv-source.md

* Update csvdatasource-escape-formats.md

* Update overview.md

* Update configuring-your-project-for-using-microsoft-analysis-services.md

* Update connecting-the-cubedatasource-component-to-an-olap-database.md

* Update overview.md

* Update selecting-data-from-an-olap-cube-with-the-cubedatasource-component.md

* Update specifying-query-parameters-with-the-cubedatasource-component.md

* Update connecting-the-csvdatasource-component-to-a-csv-source.md

* Update overview.md

* Update specifying-query-parameters-with-the-cubedatasource-component.md

* Update working-with-data-at-design-time.md

---------

Co-authored-by: Dimitar Nikolov <dnikolov@progress.com>

* Update table-header-freezing.md (#859)

* Update configuring-the-database-connectivity-with-the-entitydatasourc… (#860)

* Update configuring-the-database-connectivity-with-the-entitydatasource-component.md

* Update connecting-to-an-entity-data-model-with-the-entitydatasource-component.md

* Update connecting-to-an-entity-data-model-with-the-entitydatasource-component.md

* Update maintaining-the-lifecycle-of-the-context-with-the-entitydatasource-component.md

* Update overview.md

* Update retrieving-data-from-an-entity-data-model-with-the-entitydatasource-component.md

* Update using-parameters-with-the-entitydatasource-component.md

* Update overview.md (#862)

* Update host-reports-service-in-.net-6-with-minimal-api.md (#863)

* Update host-reports-service-in-.net-6-with-minimal-api.md

* Update host-reports-service-in-.net-6-with-minimal-api.md

* Update connecting-the-objectdatasource-component-to-a-data-source.md (#861)

* Update connecting-the-objectdatasource-component-to-a-data-source.md

* Update overview.md

* Update using-parameters-with-the-objectdatasource-component.md

* Update how-to-bind-to-a-businessobject.md

* Create bind-to-a-businessobject.md

* Delete how-to-bind-to-a-businessobject.md

* Create bind-to-data-adapter.md

* Delete how-to-bind-to-a-dataadapter.md

* Create bind-to-data-set.md

* Delete how-to-bind-to-a-dataset.md

* Update bind-to-a-businessobject.md

* Update bind-to-data-adapter.md

* Update bind-to-data-set.md

* Update bind-to-a-businessobject.md

* Update bind-to-data-adapter.md

* Update bind-to-data-set.md

* Update bind-to-data-adapter.md

* Update bind-to-a-businessobject.md

* Delete how-to-bind-to-a-datatable.md

* Create bind-to-data-table.md

* Delete how-to-bind-to-a-dataview.md

* Create bind-to-a-dataview.md

* Update bind-to-a-businessobject.md

* Update bind-to-data-table.md

* Update bind-to-a-dataview.md

* Update bind-to-data-adapter.md

* Update bind-to-data-set.md

* Update overview.md (#864)

* Update connecting-the-objectdatasource-component-to-a-data-source.md (#865)

* Update connecting-the-objectdatasource-component-to-a-data-source.md

* Update bind-to-a-businessobject.md

* Update bind-to-a-dataview.md

* Update bind-to-data-adapter.md

* Update bind-to-data-set.md

* Update bind-to-data-table.md

* Update configuring-the-database-connectivity-with-the-openaccessdatas… (#867)

* Update configuring-the-database-connectivity-with-the-openaccessdatasource-component.md

* Update connecting-to-a-telerik-data-access-model-with-the-openaccessdatasource-component.md

* Update maintaining-the-lifecycle-of-the-openaccesscontext-with-the-openaccessdatasource-component.md

* Update overview.md

* Update retrieving-data-from-a-telerik-data-access-model-with-the-openaccessdatasource-component.md

* Update using-parameters-with-the-openaccessdatasource-component.md

* Update how-to-configure-the-openclientdatasource-component.md

* Update overview.md

* Update connecting-the-sqldatasource-component-to-a-data-source.md (#868)

* Update connecting-the-sqldatasource-component-to-a-data-source.md

* Update data-provider-is-missing-in-the-sqldatasource-wizard.md

* Update how-to-connect-to-a-sql-database.md

* Update overview.md

* Update selecting-data-with-the-sqldatasource-component.md

* Update using-parameters-with-the-sqldatasource-component.md

* Update data-provider-is-missing-in-the-sqldatasource-wizard.md

---------

Co-authored-by: Dimitar Nikolov <dnikolov@progress.com>

* Update how-to-use-jsonpath-to-filter-json-data.md (#869)

* Update how-to-use-jsonpath-to-filter-json-data.md

* Update overview.md

* Update using-parameters-with-the-webservicedatasource-component.md

* Update how-to-use-jsonpath-to-filter-json-data.md

* Update how-to-use-jsonpath-to-filter-json-data.md

---------

Co-authored-by: Dimitar Nikolov <dnikolov@progress.com>

* Update multi-column-reports.md (#870)

* Update licensing.md (#871)

* Update overview.md (#866)

* Update overview.md

* Update how-to-create-a-report-book-at-run-time.md

* Update how-to-use-reportbook-in-windows-forms-app.md

* Update page-settings,-sizes-and-naming.md

* Update report-book-table-of-contents.md

* Update report-book-paging.md

* Update report-book-parameters.md

* Update page-settings,-sizes-and-naming.md

* Update how-to-use-reportbook-in-windows-forms-app.md

* Update overview.md

* Update report-book-paging.md

* Update report-book-parameters.md

* Update report-book-table-of-contents.md

---------

Co-authored-by: Todor Arabadzhiev <todor.arabadzhiev@progress.com>

* Update how-to-use-native-blazor-report-viewer.md (#872)

* Update how-to-set-up-in-.net-framework-application.md (#875)

* Update using-styles-to-customize-reports.md (#838)

* Update using-styles-to-customize-reports.md

* Update understanding-style-selectors.md

* Update creating-style-rules.md

* Update style-inheritance-and-overriding.md

* Update exporting-and-reusing-style-sheets.md

* Update styling-using-the-context-menu.md

* Update conditional-formatting.md

* Update styling-report-items.md

* Update overview.md

* Update understanding-rendering-behaviors.md

* Update understanding-pagination.md

* Update watermarks.md

* Update understanding-rendering-behaviors.md

* Update understanding-pagination.md

* Update understanding-pagination.md

* Update understanding-rendering-behaviors.md

* Update fonts-requirements.md

* Update overview.md

* Update html-rendering-design-considerations.md

* Update image-rendering-design-considerations.md

* Update pdf-rendering-design-considerations.md

* Update excel-rendering-design-considerations.md

* Update csv-rendering-design-considerations.md

* Update rtf-rendering-design-considerations.md

* Update xps-rendering-design-considerations.md

* Update word-rendering-design-considerations.md

* Update powerpoint-rendering-design-considerations.md

* Update overview.md

* Update html-rendering-design-considerations.md

* Update image-rendering-design-considerations.md

* Update pdf-rendering-design-considerations.md

* Update excel-rendering-design-considerations.md

* Update csv-rendering-design-considerations.md

* Update rtf-rendering-design-considerations.md

* Update xps-rendering-design-considerations.md

* Update word-rendering-design-considerations.md

* Update powerpoint-rendering-design-considerations.md

* Update html-rendering-design-considerations.md

* Update excel-rendering-design-considerations.md

* Update html-rendering-design-considerations.md

* Update fonts-requirements.md

* Update overview.md

* Update understanding-pagination.md

* Update understanding-pagination.md

* Update watermarks.md

* Update conditional-formatting.md

* Update creating-style-rules.md

* Update exporting-and-reusing-style-sheets.md

* Update style-inheritance-and-overriding.md

* Update styling-report-items.md

* Update styling-using-the-context-menu.md

* Update understanding-style-selectors.md

* Update using-styles-to-customize-reports.md

* Update using-styles-to-customize-reports.md

---------

Co-authored-by: Todor Arabadzhiev <todor.arabadzhiev@progress.com>

* Update how-to-set-up-in-.net-framework-application.md (#876)

* Update how-to-set-up-in-.net-framework-application.md

* Update csv-rendering-design-considerations.md

* Update excel-rendering-design-considerations.md

* Update html-rendering-design-considerations.md

* Update image-rendering-design-considerations.md

* Update pdf-rendering-design-considerations.md

* Update powerpoint-rendering-design-considerations.md

* Update rtf-rendering-design-considerations.md

* Update word-rendering-design-considerations.md

* Update xps-rendering-design-considerations.md

* Update and rename expression-scope-.md to expression-scope.md (#873)

* Update and rename expression-scope-.md to expression-scope.md

* Update overview.md

* Update constants.md

* Update global-objects.md

* Update member-access.md

* Update operators.md

* Update overview.md

* Update aggregate-functions.md

* Update conditional-functions.md

* Update conversion-functions.md

* Update data-functions.md

* Update date-and-time-functions.md

* Update math-functions.md

* Update overview.md

* Update page-functions.md

* Update report-functions.md

* Update text-functions.md

* Update utility-functions.md

* Update overview.md

* Update user-aggregate-functions.md

* Update user-functions.md

* Update bindings.md

* Update conditional-formatting.md

* Update embedded-expressions.md

* Update expressions-as-values-of-item-properties.md

* Update grouping,-filtering-and-sorting.md

* Update overview.md

* Update report-parameters.md

* Update expression-scope.md

* Update overview.md

* Update operators.md

---------

Co-authored-by: Dimitar Nikolov <dnikolov@progress.com>

* Update how-to-use-native-blazor-report-viewer.md (#877)

* Update creating-style-rules.md (#878)

* update web report designer articles seo (#874)

* update web report designer articles seo

* Update how-to-implement-a-report-definition-storage.md

* Update how-to-set-up-in-.net-5-and-.net-core-3.1-applications.md

* Update how-to-set-up-in-.net-5-and-.net-core-3.1-applications.md

* Update how-to-set-up-in-.net-core-2.1-application.md

* Update web-report-designer-initialization.md

* Update localizing-the-web-report-designer.md

* Update how-to-set-up-in-blazor-application.md

* Update how-to-implement-a-report-definition-storage.md

* Update how-to-set-up-in-.net-5-and-.net-core-3.1-applications.md

* Update how-to-set-up-in-.net-5-and-.net-core-3.1-applications.md

* Update how-to-set-up-in-.net-core-2.1-application.md

* Update how-to-set-up-in-blazor-application.md

* Update localizing-the-web-report-designer.md

* Update overview.md

* Update web-report-designer-initialization.md

* Update how-to-set-up-in-.net-5-and-.net-core-3.1-applications.md

---------

Co-authored-by: Todor Arabadzhiev <todor.arabadzhiev@progress.com>

* Update overview.md (#882)

* Update how-to-set-up-in-.net-core-2.1-application.md (#881)

* Update web-report-designer-initialization.md (#883)

* Update how-to-add-report-parameters.md (#884)

* Update how-to-add-report-parameters.md

* Update how-to-cascade-parameters-with-applied-filtering-on-data-source-level.md

* Update how-to-cascade-parameters-with-applied-filtering-on-data-source-level.md

* Update how-to-cascade-parameters-with-applied-filtering-on-report-level.md

* Update overview.md

* Update using-multivalue-parameters.md

* Update using-report-parameters-in-expressions.md

* Update using-report-parameters-programmatically.md

* Update using-report-parameters-in-expressions.md

* Update using-report-parameters-in-expressions.md

---------

Co-authored-by: Momchil Zanev <108741271+mzanev@users.noreply.github.com>

* Update wrd tools articles seo (#880)

* Update csvdatasource-wizard.md

* Update jsondatasource-wizard.md

* Update objectdatasource-wizard.md

* Update shared-resources.md

* Update sqldatasource-wizard.md

* Update table-crosstab-wizard.md

* Create data-binding-problems.md (#885)

* Create data-binding-problems.md

* Delete data-binding-problems.md

* Create data-source-components-problems.md

* Delete data-source-components-problems.md

* Update data-binding-problems.md (#887)

* Update pass-parameters-to-html5-report-viewer-from-a-views-model.md (#888)

* Update overview.md (#886)

* Update overview.md

* Update how-to-import-reports-created-with-the-vs-report-designer.md

* Update keyboard-support-and-shortcuts.md

* Update localization.md

* Update overview.md

* Update borders-style-is-not-applied.md

* Create common-report-designers-problems.md

* Delete common-report-designers-problems.md

* Update report-templates.md

* Update standalone-report-designer-problems.md

* Update working-with-report-server-reports.md

* Update xml-report-definition.md

* Update extending-report-designer.md

* Update overview.md

* Update report-designer-configuration.md

* Update extending-report-designer.md

* Update report-designer-configuration.md

* Update report-viewer-initialization.md (#890)

* Update Visual Studio Report Designer seo (#892)

* Update overview.md

* Update how-to-import-reports-created-with-standalone-report-designer.md

* Update telerik-reporting-menu.md

* Update upgrade-wizard.md

* Update visual-studio-problems.md

* Update how-to-import-reports-created-with-standalone-report-designer.md

* Update how-to-import-reports-created-with-standalone-report-designer.md

* Update visual-studio-problems.md

---------

Co-authored-by: Todor Arabadzhiev <todor.arabadzhiev@progress.com>

* Update conditional-formatting-rules-dialog.md (#889)

* Update conditional-formatting-rules-dialog.md

* Update context-menu.md

* Update data-explorer.md

* Update edit-action-dialog.md

* Update edit-bindings-dialog.md

* Update edit-action-dialog.md

* Update edit-calculated-fields-dialog.md

* Update edit-expression-dialog.md

* Update edit-filter-dialog.md

* Update edit-grouping-dialog.md

* Update edit-sorting-dialog.md

* Update format-builder-dialog.md

* Update group-explorer.md

* Update load-report-dialog.md

* Update previewing-reports.md

* Update report-explorer.md

* Update reportparameter-collection-editor.md

* Update style-builder-dialog.md

* Update csvdatasource-wizard.md

* Update cubedatasource-wizard.md

* Update datasource-wizard.md

* Update entitydatasource-wizard.md

* Update jsondatasource-wizard.md

* Update objectdatasource-wizard.md

* Update openaccessdatasource-wizard.md

* Update webservicedatasource-wizard.md

* Delete overview.md

* Create sqldatasource-wizard.md

* Update sqldatasource-wizard.md

* Delete query-designer-in-the-standalone-designer.md

* Create query-designer-in-the-standalone-designer.md

* Add files via upload

* Update query-designer-in-the-standalone-designer.md

* Delete SqlQueryDesignerForm.png

* Update import-report-wizard.md

* Update invoice-report-wizard.md

* Update label-report-wizard.md

* Update product-catalog-report-wizard.md

* Update table-and-crosstab-wizards.md

* Update how-to-extend-a-band-report.md

* Update how-to-use-the-report-wizard-to-create-a-band-report.md

* Update overview.md

* Update conditional-formatting-rules-dialog.md

* Update load-report-dialog.md

---------

Co-authored-by: Dimitar Nikolov <dnikolov@progress.com>

* Update data-explorer.md (#894)

* Update data-explorer.md

* Update group-explorer.md

* Update edit-expression-dialog.md

* Update edit-expression-dialog.md

* Update import-report-wizard.md

* Update invoice-report-wizard.md

* Update label-report-wizard.md

* Update product-catalog-report-wizard.md

* Update table-and-crosstab-wizards.md

* Update objectdatasource-wizard.md

* Update overview.md (#891)

* Update overview.md

* Update create-report-programmatically.md

* Update create-sections-programmatically.md

* Update create-report-programmatically.md

* Update create-sections-programmatically.md

* Update create-report-items-programmatically.md

* Update access-report-items-programmatically.md

* Update package-report-definition.md

* Update serialize-report-definition-in-xml.md

* Update overview.md

* Update understanding-events.md

* Update understanding-events.md

* Update using-report-events.md

* Update using-report-events.md

* Update using-section-events.md

* Update using-report-item-events.md

* Update create-report-items-programmatically.md

* Update create-sections-programmatically.md

* Update package-report-definition.md

* Update understanding-events.md

* Update using-report-events.md

* Update using-report-events.md

* Update using-report-events.md

* Update using-report-item-events.md

* Update using-section-events.md

* Update package-report-definition.md

* Update serialize-report-definition-in-xml.md

* Update overview.md

* Update overview.md

* Update create-report-programmatically.md

* Update access-report-items-programmatically.md

---------

Co-authored-by: Todor Arabadzhiev <todor.arabadzhiev@progress.com>

* Fix typos in CDN Assets page (#896)

* Update generate-reports-locally.md (#895)

* Update generate-reports-locally.md

* Update html5-viewer-telerik-rest-service.md

* Update overview.md

* Update report-definitions.md

* Update report-sources.md

* Update overview.md

---------

Co-authored-by: Dimitar Nikolov <dnikolov@progress.com>

* Update configuring-cache.md (#897)

* Update configuring-cache.md

* Update configuring-cache.md

* Update configuring-custom-cache-provider.md

* Update configuring-the-database-cache-provider.md

* Update configuring-the-file-cache-provider.md

* Update overview.md

* Update add-in-set-null-reference-exception.md (#898)

* Create inconsistent-formatting-in-dotnet-core-and-dotnet-framework.md (#900)

* Create inconsistent-formatting-in-dotnet-core-and-dotnet-framework.md

* Add files via upload

* Update inconsistent-formatting-in-dotnet-core-and-dotnet-framework.md

* Update word-rendering-design-considerations.md

* Update inconsistent-formatting-in-dotnet-core-and-dotnet-framework.md

---------

Co-authored-by: Dimitar Nikolov <dnikolov@progress.com>

* Update overview.md (#899)

* Update overview.md

* Update how-to-add-telerik-reporting-wcf-service-to-web-application.md

* Update implement-send-mail-message.md

* Update localization.md

* Update overview.md

* Update host-reports-service-in-.net-5.md

* Update host-reports-service-in-.net-5.md

* Update host-reports-service-in-.net-6-with-minimal-api.md

* Update host-reports-service-in-.net-6-with-minimal-api.md

* Update host-reports-service-in-.net-5.md

* Update host-reports-service-in-.net-core-2.1-and-2.2.md

* Update how-to-host-reports-service-in-asp.net-core-3.1.md

* Update overview.md

* Update add-rest-web-api-to-web-application.md

* Update how-to-implement-the-reportscontroller-in-an-application.md

* Update how-to-self-host-telerik-reporting-rest-web-api.md

* Update overview.md

* Update requirements.md

* Update requirements.md

* Update implement-send-mail-message.md

---------

Co-authored-by: Dimitar Nikolov <dnikolov@progress.com>

* Update requirements.md (#901)

* Update requirements.md

* Update add-rest-web-api-to-web-application.md

* Update how-to-self-host-telerik-reporting-rest-web-api.md

* update angular articles seo (#893)

* update angular articles seo

* Update event-binding.md

* Update how-to-use-angular-report-viewer-with-angular-cli.md

* Update how-to-use-angular-report-viewer-with-report-server.md

* Update how-to-use-angular-report-viewer-with-systemjs.md

* Update how-to-use-angular-report-viewer-with-angular-cli.md

* Update how-to-use-angular-report-viewer-with-systemjs.md

* Update how-to-pass-values-to-report-parameters.md

* Update localization.md

* Update events.md

* Update methods.md

* Update events.md

* Update events.md

* Update options.md

* Update properties.md

* Update events.md

* Update methods.md

* Update options.md

* Update properties.md

* Update how-to-pass-values-to-report-parameters.md

* Update localization.md

* Update event-binding.md

* Update how-to-use-angular-report-viewer-with-angular-cli.md

* Update how-to-use-angular-report-viewer-with-report-server.md

* Update how-to-use-angular-report-viewer-with-angular-cli.md

* Update how-to-use-angular-report-viewer-with-angular-cli.md

* Update how-to-use-angular-report-viewer-with-systemjs.md

---------

Co-authored-by: Todor Arabadzhiev <todor.arabadzhiev@progress.com>

* Update how-to-use-angular-report-viewer-with-systemjs.md (#905)

* Update how-to-use-angular-report-viewer-with-systemjs.md

* Update properties.md

* Update methods.md

* Update blazor wrapper article seo (#904)

* Update overview.md

* Update methods-and-commands.md

* Update how-to-use-blazor-report-viewer.md

* Update how-to-create-a-custom-parameter-editor.md

* Update event-binding.md

* Update overview.md

---------

Co-authored-by: Todor Arabadzhiev <todor.arabadzhiev@progress.com>

* Update overview.md (#906)

* Update overview.md

* Update get-clients-session-timeout-seconds.md

* Update keep-client-alive.md

* Update register-client.md

* Update unregister-client.md

* Update get-clients-session-timeout-seconds.md

* Update keep-client-alive.md

* Update register-client.md

* Update unregister-client.md

* Update send-document.md

* Update search-in-a-document.md

* Update resolve-document.md

* Update release-document.md

* Update get-document.md

* Update get-document-resource.md

* Update get-document-page.md

* Update get-document-info.md

* Update apply-interactive-action-on-document.md

* Update get-clients-session-timeout-seconds.md

* Update register-client.md

* Update get-version.md

* Update get-available-document-formats.md

* Update searchresultsinfo.md

* Update searchinfo.md

* Update reportsource.md

* Update parametervalue.md

* Update parameter.md

* Update pageinfo.md

* Update mailmessage.md

* Update formatkey.md

* Update formatinfo.md

* Update documentinfo.md

* Update bookmarknode.md

* Update resolve-report-instance.md

* Update release-report-instance.md

* Update get-report-parameters.md

* Update get-document-info.md

* Update get-document-page.md

* Update resolve-document.md

* Update send-document.md

* Update parameter.md

* Update parameter.md

* Update parameter.md

* Update get-clients-session-timeout-seconds.md

* Update register-client.md

* Update search-in-a-document.md

* Update get-available-document-formats.md

* Update parameter.md

* Update mailmessage.md

* Update get-clients-session-timeout-seconds.md

* Update get-clients-session-timeout-seconds.md

* Update get-clients-session-timeout-seconds.md

---------

Co-authored-by: Dimitar Nikolov <dnikolov@progress.com>

* Update native blazor viewer seo (#903)

* Update localization.md

* Update commands.md

* Update options.md

* Update commands.md

* Update options.md

* Update localization.md

* Update how-to-create-custom-parameter-editors.md

---------

Co-authored-by: Todor Arabadzhiev <todor.arabadzhiev@progress.com>

* Update event-binding.md (#908)

* Update methods-and-commands.md (#909)

* Update legacy webforms seo (#907)

* Update overview.md

* Update true-print.md

* Update report-viewer-localization.md

* Update how-to-add-report-viewer-to-a-web-page.md

* Update deploying-web-site.md

* Update client-side-api.md

* Update ajax-support.md

* Update deploying-web-applications.md

* Update deploying-web-reportviewer-in-sharepoint.md

* Update overview.md

* Update overview.md

* Update ajax-support.md

* Update client-side-api.md

* Update deploying-web-applications.md

* Update deploying-web-site.md

* Update overview.md

* Update report-viewer-localization.md

* Update true-print.md

* Update overview.md

* Create using-out-proc-session-state-overview.md

* Update using-out-proc-session-state-overview.md

---------

Co-authored-by: Todor Arabadzhiev <todor.arabadzhiev@progress.com>

* Update how-to-implement-a-custom-report-source-resolver.md (#913)

* Update how-to-implement-a-custom-report-source-resolver.md

* Update overview.md

* Update use-custom-report-source-and-document-resolvers.md

* Update rtf-rendering-design-considerations.md (#910)

* Update rtf-rendering-design-considerations.md

* Update dot-net-core-support.md

* Update mvc viewer article seo (#912)

* Update overview.md

* Update reportsource-model-binding.md

* Update manual-setup.md

* Update how-to-use-html5-asp.net-mvc-report-viewer-with-rest-service.md

* Update how-to-use-html5-asp.net-mvc-report-viewer-with-report-server.md

* Update overview.md

* Update styling-and-appearance.md

* Update localization.md

* Update client-events.md

* Update how-to-change-parameter-editors-type.md

* Update how-to-create-a-custom-parameter-editor.md

* Update how-to-pass-values-to-report-parameters.md

* Update localization.md

* Update overview.md

---------

Co-authored-by: Todor Arabadzhiev <todor.arabadzhiev@progress.com>

* Update how-to-use-angular-report-viewer-with-report-server.md (#911)

* Update client-events.md (#915)

* Update how-to-configure-an-mssql-database-storage.md (#914)

* Update how-to-configure-an-mssql-database-storage.md

* Update how-to-configure-an-mssql-database-storage.md

* Update how-to-use-redis-storage.md

* Update overview.md

* Update react-report-viewer-overview.md (#902)

* Update react-report-viewer-overview.md

* Update react-report-viewer-overview.md

* Update how-to-use-react-report-viewer-with-rest-service.md

* Update how-to-use-react-report-viewer-with-report-server.md

* Update event-binding.md

* Update how-to-use-react-report-viewer-with-rest-service.md

* Update react-report-viewer-overview.md

* Update custom-report-viewer-template.md

* Update how-to-create-a-custom-parameter-editor.md

* Update how-to-pass-values-to-report-parameters.md

* Update localization.md

* Update options.md

* Update events.md

* Update methods.md

* Update properties.md

* Update properties.md

* Update how-to-pass-values-to-report-parameters.md

* Update localization.md

* Update how-to-use-react-report-viewer-with-rest-service.md

---------

Co-authored-by: Todor Arabadzhiev <todor.arabadzhiev@progress.com>

* Update event-binding.md (#916)

* Update event-binding.md

* Update options.md

* Update add-rest-servicestack-to-web-application.md (#917)

* Update add-rest-servicestack-to-web-application.md

* Update overview.md

* Update requirements.md

* Update _config.yml

* Update _config.yml

* Update _config.yml

* Update _config.yml

* Update overview.md

* moved REST Service Articles

* silverlight changes

remove text related to silverlight in the MDs

* code snippets embedded

* WCF codes embedded

* wcf references removed

---------

Co-authored-by: Dimitar Nikolov <dnikolov@progress.com>
Co-authored-by: Momchil Zanev <108741271+mzanev@users.noreply.github.com>
Co-authored-by: Ivan Hristov <ivan.g.hristov@gmail.com>

* add note for removing wcf and silverlight

* Update r1-2023-sp1.md

---------

Co-authored-by: Dimitar Nikolov <dnikolov@progress.com>
Co-authored-by: bankovaprgs <bankova@progress.com>
Co-authored-by: Ivan Hristov <ivan.g.hristov@gmail.com>
Co-authored-by: Momchil Zanev <108741271+mzanev@users.noreply.github.com>
Co-authored-by: Ivan <iivanov@progress.com>
This commit is contained in:
Todor Arabadzhiev 2023-03-13 17:31:47 +02:00 коммит произвёл GitHub
Родитель 3d8c02b81c
Коммит 1ba21eec2b
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
85 изменённых файлов: 1201 добавлений и 759 удалений

Просмотреть файл

@ -9,9 +9,9 @@ has_cta_panels: true
# Exclude files which should not be in the output
exclude: [README.md,Gemfile,Gemfile.lock,api_sort.rb,build_kb.rb,switch-ruby.cmd,TodorReadme.txt,report-designer-translations,_assetsApi]
exclude_navigation: ["knowledge-base/*","for-more-help/*","quickstart/*"]
exclude_navigation: ["knowledge-base/*","embedding-reports/host-the-report-engine-remotely/telerik-reporting-wcf-service/*","embedding-reports/display-reports-in-applications/silverlight-application/*"]
navigation:
## List your directory names and order here, like this:
## List your directory names and order here, like this:
getting-started:
position: 2
title: "Getting Started"
@ -41,16 +41,16 @@ navigation:
title: "Barcode"
report-items/barcode/1d-barcodes:
position: 20
title: "1D Barcodes"
title: "1D Barcodes"
report-items/barcode/2d-barcodes:
position: 30
title: "2D Barcodes"
title: "2D Barcodes"
report-items/report-item:
position: 10
title: "Report"
title: "Report"
report-items/table-crosstab-list:
position: 13
title: "Table"
title: "Table"
report-items/graph:
position: 5
title: "Graph"
@ -65,10 +65,10 @@ navigation:
title: "Map"
report-items/map/map-types:
position: 10
title: "Types and Customization"
title: "Types and Customization"
report-items/map/structure:
position: 15
title: "Structure and Elements"
title: "Structure and Elements"
report-items/map/formatting-a-map:
position: 20
title: "Styling and Formatting"
@ -80,10 +80,10 @@ navigation:
title: "Document Output"
doc-output/configure-the-report-engine:
position: 10
title: "Configuring the Report Engine"
title: "Configuring the Report Engine"
doc-output/configure-the-export-formats:
position: 11
title: "Configuring the Output Formats"
title: "Configuring the Output Formats"
interactivity:
position: 8
title: "Interactivity"
@ -104,7 +104,7 @@ navigation:
title: "Document Map"
interactivity/table-of-contents:
position: 13
title: "Table of Contents"
title: "Table of Contents"
globalization:
position: 9
title: "Globalization"
@ -146,19 +146,19 @@ navigation:
title: "ReportViewer"
embedding-reports/display-reports-in-applications/web-application/html5-report-viewer/api-reference/reportviewer/events:
position: 10
title: "Events"
title: "Events"
embedding-reports/display-reports-in-applications/web-application/html5-report-viewer/api-reference/reportviewer/methods:
position: 11
title: "Methods"
title: "Methods"
embedding-reports/display-reports-in-applications/web-application/html5-report-viewer/api-reference/reportviewer/properties:
position: 12
title: "Properties"
title: "Properties"
embedding-reports/display-reports-in-applications/web-application/html5-report-viewer/api-reference/telerikreportviewer-namespace:
position: 12
title: "telerikReportViewer Namespace"
embedding-reports/display-reports-in-applications/web-application/html5-asp.net-mvc-report-viewer:
position: 11
title: "HTML5 ASP.NET MVC Report Viewer"
title: "HTML5 ASP.NET MVC Report Viewer"
embedding-reports/display-reports-in-applications/web-application/html5-asp.net-mvc-report-viewer/customizing:
position: 15
title: "Customizing"
@ -167,16 +167,16 @@ navigation:
title: "HTML5 ASP.NET Web Forms Report Viewer"
embedding-reports/display-reports-in-applications/web-application/html5-asp.net-web-forms-report-viewer/customizing:
position: 15
title: "Customizing"
title: "Customizing"
embedding-reports/display-reports-in-applications/web-application/angular-report-viewer:
position: 13
title: "Angular Report Viewer"
title: "Angular Report Viewer"
embedding-reports/display-reports-in-applications/web-application/angular-report-viewer/customizing:
position: 12
title: "Customizing"
title: "Customizing"
embedding-reports/display-reports-in-applications/web-application/angular-report-viewer/api-reference:
position: 14
title: "API Reference"
title: "API Reference"
embedding-reports/display-reports-in-applications/web-application/react-report-viewer:
position: 16
title: "React Report Viewer"
@ -185,10 +185,10 @@ navigation:
title: "Customizing"
embedding-reports/display-reports-in-applications/web-application/react-report-viewer/api-reference:
position: 14
title: "API Reference"
title: "API Reference"
embedding-reports/display-reports-in-applications/web-application/blazor-report-viewer:
position: 15
title: "Blazor Report Viewer"
title: "Blazor Report Viewer"
embedding-reports/display-reports-in-applications/web-application/native-blazor-report-viewer:
position: 14
title: "Native Blazor Report Viewer"
@ -197,7 +197,7 @@ navigation:
title: "Customizing"
embedding-reports/display-reports-in-applications/web-application/native-blazor-report-viewer/api-reference:
position: 14
title: "API Reference"
title: "API Reference"
embedding-reports/display-reports-in-applications/web-application/asp.net-web-forms-report-viewer:
position: 17
title: "ASP.NET Web Forms Report Viewer"
@ -206,73 +206,61 @@ navigation:
title: "Design Considerations for Out-proc Session State"
embedding-reports/display-reports-in-applications/windows-forms-application:
position: 11
title: "Windows Forms Application"
title: "Windows Forms Application"
embedding-reports/display-reports-in-applications/windows-forms-application/troubleshooting:
position: 15
title: "Troubleshooting"
title: "Troubleshooting"
embedding-reports/display-reports-in-applications/winui-3-desktop-application:
position: 1150
title: "WinUI 3 Desktop Application"
title: "WinUI 3 Desktop Application"
embedding-reports/display-reports-in-applications/wpf-application:
position: 12
title: "WPF Application"
embedding-reports/display-reports-in-applications/wpf-application/troubleshooting:
position: 15
title: "Troubleshooting"
embedding-reports/display-reports-in-applications/silverlight-application:
position: 13
title: "Silverlight Application"
embedding-reports/display-reports-in-applications/silverlight-application/troubleshooting:
position: 15
title: "Troubleshooting"
title: "Troubleshooting"
embedding-reports/host-the-report-engine-remotely:
position: 5
title: "Generating Reports Remotely"
embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services:
position: 12
title: "Telerik Reporting REST Services"
embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/asp.net-web-api-implementation:
embedding-reports/host-the-report-engine-remotely/asp.net-web-api-implementation:
position: 10
title: "ASP.NET Web API Implementation"
embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/asp.net-core-web-api-implementation:
title: "ASP.NET Web API Implementation"
embedding-reports/host-the-report-engine-remotely/asp.net-core-web-api-implementation:
position: 11
title: "ASP.NET Core Web API Implementation"
embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/servicestack-implementation:
title: "ASP.NET Core Web API Implementation"
embedding-reports/host-the-report-engine-remotely/servicestack-implementation:
position: 12
title: "ServiceStack Implementation"
embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-report-source-resolver:
title: "ServiceStack Implementation"
embedding-reports/host-the-report-engine-remotely/rest-service-report-source-resolver:
position: 13
title: "REST Service Report Source Resolver"
embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-storage:
title: "REST Service Report Source Resolver"
embedding-reports/host-the-report-engine-remotely/rest-service-storage:
position: 14
title: "REST Service Storage"
embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference:
title: "REST Service Storage"
embedding-reports/host-the-report-engine-remotely/rest-api-reference:
position: 15
title: "REST API Reference"
embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/clients-api:
title: "REST API Reference"
embedding-reports/host-the-report-engine-remotely/rest-api-reference/clients-api:
position: 10
title: "Clients API"
embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/report-parameters-api:
title: "Clients API"
embedding-reports/host-the-report-engine-remotely/rest-api-reference/report-parameters-api:
position: 11
title: "Report Parameters API"
embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/report-instances-api:
title: "Report Parameters API"
embedding-reports/host-the-report-engine-remotely/rest-api-reference/report-instances-api:
position: 12
title: "Report Instances API"
embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/documents-api:
embedding-reports/host-the-report-engine-remotely/rest-api-reference/documents-api:
position: 13
title: "Documents API"
embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/general-api:
title: "Documents API"
embedding-reports/host-the-report-engine-remotely/rest-api-reference/general-api:
position: 14
title: "General API"
embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/json-entities:
title: "General API"
embedding-reports/host-the-report-engine-remotely/rest-api-reference/json-entities:
position: 15
title: "JSON Entities"
embedding-reports/host-the-report-engine-remotely/telerik-reporting-wcf-service:
position: 14
title: "Telerik Reporting WCF Service"
designing-reports:
position: 4
title: "Creating Reports"
title: "Creating Reports"
designing-reports/report-designer-tools:
position: 4
title: "Report Designers"
@ -284,16 +272,16 @@ navigation:
title: "Tools"
designing-reports/report-designer-tools/web-report-designer/tools/table:
position: 10
title: "Table"
title: "Table"
designing-reports/report-designer-tools/desktop-designers:
position: 11
title: "Desktop Designers"
title: "Desktop Designers"
designing-reports/report-designer-tools/desktop-designers/standalone-report-designer:
position: 10
title: "Standalone Report Designer"
title: "Standalone Report Designer"
designing-reports/report-designer-tools/desktop-designers/standalone-report-designer/configuration:
position: 10
title: "Configuration"
title: "Configuration"
designing-reports/report-designer-tools/desktop-designers/visual-studio-report-designer:
position: 11
title: "Visual Studio Report Designer"
@ -311,7 +299,7 @@ navigation:
title: "Data Source Wizards"
designing-reports/report-designer-tools/desktop-designers/tools/data-source-wizards/sqldatasource-wizard:
position: 11
title: "SqlDataSource Wizards"
title: "SqlDataSource Wizards"
designing-reports/connecting-to-data:
position: 5
title: "Connecting to Data"
@ -350,13 +338,13 @@ navigation:
title: "Data Items"
designing-reports/connecting-to-data/data-items/filtering-data:
position: 10
title: "Filtering Data"
title: "Filtering Data"
designing-reports/connecting-to-data/data-items/ordering-data:
position: 11
title: "Ordering Data"
title: "Ordering Data"
designing-reports/connecting-to-data/data-items/grouping-data:
position: 12
title: "Grouping Data"
title: "Grouping Data"
designing-reports/connecting-to-data/expressions:
position: 12
title: "Expressions"

Просмотреть файл

@ -8,6 +8,7 @@ published: True
position: 6
previous_url: /configuring-telerik-reproting-privatefonts
---
<style>
table th:first-of-type {
width: 20%;
@ -19,11 +20,11 @@ table th:nth-of-type(2) {
# privateFonts Element Overview
Defines a collection that allows the Reporting Engine to use a private version of an existing font without the requirement to install the font on the host machine. If the font is already installed the installed font is used.
Defines a collection that allows the Reporting Engine to use a private version of an existing font without the requirement to install the font on the host machine. If the font is already installed the installed font is used.
>note __Known issue with the Windows Platform:__ If you order the fonts in the PrivateFontCollection first regular then bold the GDI+ measure string size for bold font style is incorrect. This is observed in Windows 8.1 and later and may lead to unexpected rendering and aligning issues. For more information see [Wrong Measurements from MeasureString](https://github.com/Microsoft/DirectXTK/issues/34).
>note __Known issue with Azure:__ The required .NET API for handling private fonts is making GDI calls that are blocked in Azure App Services. If private fonts are required our recommendation is to use Cloud Service plan. More details can be found in [Custom Fonts not working on Azure App Service](https://github.com/wkhtmltopdf/wkhtmltopdf/issues/4398).
>note __Known issue with Azure:__ The required .NET API for handling private fonts is making GDI calls that are blocked in Azure App Services. If private fonts are required our recommendation is to use Cloud Service plan. More details can be found in [Custom Fonts not working on Azure App Service](https://github.com/wkhtmltopdf/wkhtmltopdf/issues/4398).
>note __Known issue with PDF rendering in .NET Core application on Linux:__ The PDF rendering engine needs to obtain the bytes for fonts used in the report. The font resolving mechanism currently relies on the __privateFonts__ element to provide path to each font along with a style description. This includes the substitute fonts that are picked by the runtime when the font, used in the report, is not available.
@ -31,21 +32,17 @@ Defines a collection that allows the Reporting Engine to use a private version o
>
> In the rare case when the `Preferred Family` name of two fonts conincide and the `Family` names are different, on Linux only the second font registered as private would be respected as it will override the first one.
The private fonts are used for all rendering extensions. Still the font rendering on the client computer depends on the viewer configuration and document format specifications:
+ PDF: The rendering extension embeds fonts by default. This functionality is controlled by the [FontEmbedding device information setting]({%slug telerikreporting/using-reports-in-applications/export-and-configure/configure-the-export-formats/pdf-device-information-settings%});
The private fonts are used for all rendering extensions. Still the font rendering on the client computer depends on the viewer configuration and document format specifications:
+ PDF: The rendering extension embeds fonts by default. This functionality is controlled by the [FontEmbedding device information setting]({%slug telerikreporting/using-reports-in-applications/export-and-configure/configure-the-export-formats/pdf-device-information-settings%});
+ HTML5 Rendering: In order web browser to render HTML with private fonts you have to set up font-face rules. For more information see the [W3.org article for font-face rules](https://www.w3.org/TR/css-fonts-3/#font-face-rule);
+ WPF XAML rendering: embeds private fonts by default;
+ WPF XAML rendering: embeds private fonts by default;
+ Silverlight XAML rendering: In addition to add the private fonts as content to the WCF hosting project you have to add the fonts as resources to the Silverlight project with the same relative path;
+ For all other document formats the Reporting Engine is using private fonts but in order the document viewer to use them the fonts should be installed on the client computer;
+ Windows Forms Report Viewer uses Image rendering to render in EMF+ that don't support private fonts.
+ Silverlight XAML rendering: In addition to add the private fonts as content to the WCF hosting project you have to add the fonts as resources to the Silverlight project with the same relative path;
+ For all other document formats the Reporting Engine is using private fonts but in order the document viewer to use them the fonts should be installed on the client computer;
+ Windows Forms Report Viewer uses Image rendering to render in EMF+ that don't support private fonts.
As with most types of software, font files are licensed, rather than sold, and licenses that govern the use of fonts vary from vendor to vendor. As a developer it is your responsibility to ensure that you have the required license rights for any font you use as private font, or otherwise redistribute.
As with most types of software, font files are licensed, rather than sold, and licenses that govern the use of fonts vary from vendor to vendor. As a developer it is your responsibility to ensure that you have the required license rights for any font you use as private font, or otherwise redistribute.
````XML
<privateFonts>
@ -55,9 +52,9 @@ As with most types of software, font files are licensed, rather than sold, and l
## Attributes and Elements
The following sections describe attributes, child elements, and parent elements.
The following sections describe attributes, child elements, and parent elements.
>caption `<privateFonts>` element
>caption `<privateFonts>` element
| | |
| ------ | ------ |
@ -65,7 +62,7 @@ The following sections describe attributes, child elements, and parent elements.
|Child Elements|__add__ - Optional element. Adds a font to the collection.|
|Parent Elements|<ul><li>__configuration__ - Specifies the root element in every configuration file that is used by the common language runtime and the .NET Framework applications.</li><li>__Telerik.Reporting__ - Configures all settings that Telerik Reporting Engine uses.</li></ul>|
>caption `<add>` element
>caption `<add>` element
| | |
| ------ | ------ |
@ -75,9 +72,9 @@ The following sections describe attributes, child elements, and parent elements.
## Example
The following example demonstrates how to configure the reporting engine to use Ubuntu and Courier New fonts. The fonts are part of the project with the following properties:
The following example demonstrates how to configure the reporting engine to use Ubuntu and Courier New fonts. The fonts are part of the project with the following properties:
XML-based configuration file:
XML-based configuration file:
````XML
<?xml version="1.0"?>
@ -94,32 +91,30 @@ XML-based configuration file:
</configuration>
````
JSON-based configuration file:
JSON-based configuration file:
````JSON
"telerikReporting": {
"privateFonts": [
{
"fontFamily": "ubuntu",
"path": "Ubuntu-R.ttf",
},
{
"fontFamily": "Courier New",
"path": "CourI.ttf",
"fontStyle": "Italic"
},
{
"fontFamily": "CourBI",
"path": "CourBI.ttf",
"fontStyle": "Bold,Italic"
}
{
"fontFamily": "ubuntu",
"path": "Ubuntu-R.ttf",
},
{
"fontFamily": "Courier New",
"path": "CourI.ttf",
"fontStyle": "Italic"
},
{
"fontFamily": "CourBI",
"path": "CourBI.ttf",
"fontStyle": "Bold,Italic"
}
]
}
````
## See Also
* [Configure the Report Engine Overview]({%slug telerikreporting/using-reports-in-applications/export-and-configure/configure-the-report-engine/overview%})
* [Rendering and Paging Overview]({%slug telerikreporting/designing-reports/rendering-and-paging/overview%})

Просмотреть файл

@ -19,7 +19,7 @@ __Telerik Reporting__ uses a dedicated cache management system to store and cach
* __WinForms ReportViewer__ - settings must be applied in the application configuration file. By default the viewer keeps the report state in memory;
* __WPF ReportViewer__ - settings must be applied in the application configuration file. By default the viewer keeps the report state in memory;
* __Silverlight ReportViewer (obsolete since R1 2023 SP1)__ - settings must be applied in the [Reporting WCF service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-wcf-service/overview%}) application configuration file. By default the viewer keeps the report state in memory;
* __Silverlight ReportViewer (not supported since R1 2023 SP1)__ - settings must be applied in the [Reporting WCF service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-wcf-service/overview%}) application configuration file. By default the viewer keeps the report state in memory;
* __ASP.NET WebForms ReportViewer (obsolete web viewer)__ - settings must be applied in the application configuration file. By default the viewer keeps the report state in the ASP.NET Session;
> The cache settings mentioned in this article are not obligatory, and they do not apply to the __HTML5 Report Viewer__ or its Angular, WebForms, MVC and other wrappers. Details about the Cache Storage of the Reporting REST Service that works with the HTML5 Report Viewer are available in [Report Viewer and Reporting REST services]({%slug telerikreporting/using-reports-in-applications/export-and-configure/cache-management/html5-report-viewer-and-reporting-rest-services%}).

Просмотреть файл

@ -11,93 +11,68 @@ previous_url: /report-sources-viewers
# How to Set ReportSource for Report Viewers
To display a report in a Report Viewer, you must specify the [Report Source]({%slug telerikreporting/designing-reports/report-sources/overview%}) object. This document explains how to specify a Report Source for each of the following Report Viewer types:
To display a report in a Report Viewer, you must specify the [Report Source]({%slug telerikreporting/designing-reports/report-sources/overview%}) object. This document explains how to specify a Report Source for each of the following Report Viewer types:
* [Report Viewer controls that work with the Telerik Reporting Engine](#set-up-report-viewer-controls-that-work-with-telerik-reporting-engine) - for example, WinForms, WPF, and the obsolete ASP.NET WebForms Report Viewer controls;
* [Report Viewer controls that work with the Telerik Reporting Engine](#set-up-report-viewer-controls-that-work-with-telerik-reporting-engine) - for example, WinForms, WPF, and the obsolete ASP.NET WebForms Report Viewer controls;
* [Report Viewers that operate via the Telerik Reporting Services](#set-up-report-viewers-that-operate-via-telerik-reporting-services) - for example, HTML5, HTML5 ASP.NET MVC, HTML5 ASP.NET WebForms, WinForms, and WPF Report Viewers;
* [Report Viewer controls that are integrated with Telerik Report Server](#set-up-report-viewer-controls-that-are-integrated-with-telerik-report-server) - for example, HTML5, HTML5 ASP.NET MVC, HTML5 ASP.NET WebForms Report Viewers, WinForms and WPF Report Viewer controls.
* [Report Viewers that operate via the Telerik Reporting Services](#set-up-report-viewers-that-operate-via-telerik-reporting-services) - for example, Silverlight, HTML5, HTML5 ASP.NET MVC, HTML5 ASP.NET WebForms, WinForms, and WPF Report Viewers;
* [Report Viewer controls that are integrated with Telerik Report Server](#set-up-report-viewer-controls-that-are-integrated-with-telerik-report-server) - for example, HTML5, HTML5 ASP.NET MVC, HTML5 ASP.NET WebForms Report Viewers, WinForms and WPF Report Viewer controls.
We use Report Viewers to load reports that are already processed and rendered server-side. To request a report to be processed and rendered, you must wrap it in a Report Source object. The report's rendering format and the settings of the Report Source vary depending on the type of the Report Viewer. We describe how to set up each of the three Report Viewer types below.
We use Report Viewers to load reports that are already processed and rendered server-side. To request a report to be processed and rendered, you must wrap it in a Report Source object. The report's rendering format and the settings of the Report Source vary depending on the type of the Report Viewer. We describe how to set up each of the three Report Viewer types below.
## Set up Report Viewer controls that work with Telerik Reporting Engine
These are viewers that operate on the same machine where reports are processed rendered. These viewers include mechanisms for resolving reports:
These are viewers that operate on the same machine where reports are processed rendered. These viewers include mechanisms for resolving reports:
* __[WindowsForms Report Viewer control]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/windows-forms-application/overview%})__ : reports are processed and rendered on the local machine, unless the viewer uses integration with the Reporting REST service or Telerik Report Server ([Report Viewer controls integrated with Telerik Report Server](#set-up-report-viewer-controls-that-are-integrated-with-telerik-report-server));
* __[WindowsForms Report Viewer control]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/windows-forms-application/overview%})__ : reports are processed and rendered on the local machine, unless the viewer uses integration with the Reporting REST service or Telerik Report Server ([Report Viewer controls integrated with Telerik Report Server](#set-up-report-viewer-controls-that-are-integrated-with-telerik-report-server));
* __[WPF Report Viewer control]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/wpf-application/overview%})__ : reports are processed and rendered on the local machine, unless the viewer uses integration with the Reporting REST service or Telerik Report Server ([Report Viewer controls integrated with Telerik Report Server](#set-up-report-viewer-controls-that-are-integrated-with-telerik-report-server));
* __[ASP.NET WebForms Report Viewer control]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/asp.net-web-forms-report-viewer/overview%})__ : reports are processed and rendered on the server machine where the Report Viewer is hosted.
* __[WPF Report Viewer control]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/wpf-application/overview%})__ : reports are processed and rendered on the local machine, unless the viewer uses integration with the Reporting REST service or Telerik Report Server ([Report Viewer controls integrated with Telerik Report Server](#set-up-report-viewer-controls-that-are-integrated-with-telerik-report-server));
Each of these viewer controls has a ReportSource property of type __Telerik.Reporting.ReportSource__, which can be set to an instance of one of the available [Report Sources]({%slug telerikreporting/designing-reports/report-sources/overview%}).
* __[ASP.NET WebForms Report Viewer control]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/asp.net-web-forms-report-viewer/overview%})__ : reports are processed and rendered on the server machine where the Report Viewer is hosted.
The specified report is processed locally on the same machine where the Report Viewer control is running.
Each of these viewer controls has a ReportSource property of type __Telerik.Reporting.ReportSource__, which can be set to an instance of one of the available [Report Sources]({%slug telerikreporting/designing-reports/report-sources/overview%}).
The specified report is processed locally on the same machine where the Report Viewer control is running.
* __Set the Report Source through the Visual Studio Designer__
1. In VS Design view, right-click a report viewer to which you want to set a report source and select __Properties__.
1. In its __Properties__, find and click __ReportSource__.
1. A __"Load a Report from"__ dialog appears which allows you to select a __ReportSource__.
1. Select the type of the report source you would use and specify a report. For this example, we would use a __UriReportSource__, click 'URL or file' option and select the report that would be shown in the viewer. If you have to specify parameters for the report, continue with the next step.
* __Set the Report Source through the Visual Studio Designer__
1. In VS Design view, right-click a report viewer to which you want to set a report source and select __Properties__.
1. In its __Properties__, find and click __ReportSource__.
1. A __"Load a Report from"__ dialog appears which allows you to select a __ReportSource__.
1. Select the type of the report source you would use and specify a report. For this example, we would use a __UriReportSource__, click 'URL or file' option and select the report that would be shown in the viewer. If you have to specify parameters for the report, continue with the next step.
1. Click __Edit Parameters__ button - __Edit Parameters__ dialog appears. Click __New__. In the __Parameter Name__ column select the name of a report parameter in the report. In the __Parameter Value__, type or select the value to pass to the parameter in the report.
* __Set the Report Source programmatically__
* __Set the Report Source programmatically__
{{source=CodeSnippets\CS\API\Telerik\Reporting\ReportSourceSnippets.cs region=CreateUriReportSourceSnippet}}
{{source=CodeSnippets\VB\API\Telerik\Reporting\ReportSourceSnippets.vb region=CreateUriReportSourceSnippet}}
## Set up Report Viewers that operate via Telerik Reporting Services
The following Report Viewers are designed to work as clients of [Telerik Reporting Services]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/overview%}):
The following Report Viewers are designed to work as clients of [Telerik Reporting Services]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/overview%}):
* __Silverlight Report Viewer__ (go to section [Silverlight Viewer](#silverlight-report-viewer))
* __HTML5 Report Viewer__ (go to section [HTML5 Viewer](#html5-report-viewer))
* __HTML5 ASP.NET MVC Report Viewer__ (go to section [MVC Viewer](#html5-aspnet-mvc-report-viewer))
* __HTML5 ASP.NET WebForms Report Viewer__ (go to section [WebForms Viewer](#html5-aspnet-webforms-report-viewer))
* __WinForms Report Viewer__ (go to section [WinForms Viewer](#winforms-report-viewer))
* __WPF Report Viewer__ (go to section [WPF Viewer](#wpf-report-viewer))
* __HTML5 Report Viewer__ (go to section [HTML5 Viewer](#html5-report-viewer))
These Report Viewers do not have direct access to Telerik Reporting Engine. Reports are processed and rendered on a remote machine, and the content is delivered to the client by the corresponding __Telerik Reporting Service__.
* __HTML5 ASP.NET MVC Report Viewer__ (go to section [MVC Viewer](#html5-aspnet-mvc-report-viewer))
* __HTML5 ASP.NET WebForms Report Viewer__ (go to section [WebForms Viewer](#html5-aspnet-webforms-report-viewer))
* __WinForms Report Viewer__ (go to section [WinForms Viewer](#winforms-report-viewer))
* __WPF Report Viewer__ (go to section [WPF Viewer](#wpf-report-viewer))
These Report Viewers do not have direct access to Telerik Reporting Engine. Reports are processed and rendered on a remote machine, and the content is delivered to the client by the corresponding __Telerik Reporting Service__.
__How this works:__
1. The Report Viewer has a __client-side ReportSource__ that describes the report we want to display (*report description string* and *client parameters*). The *report description string* 's content must consider technology limitations in the size of sent messages and in the used characters. The *client parameters* must match by names (case sensitive) the report parameters;
__How this works:__
1. The Report Viewer has a __client-side ReportSource__ that describes the report we want to display (*report description string* and *client parameters*). The *report description string* 's content must consider technology limitations in the size of sent messages and in the used characters. The *client parameters* must match by names (case sensitive) the report parameters;
1. The Report Viewer (as a client) sends the *report description string* to the server, where the content is handled by the corresponding __Telerik Reporting Service's Report Source Resolver__. The purpose of the resolver is to create a valid [server-side Report Source]({%slug telerikreporting/designing-reports/report-sources/overview%}).
>The default resolvers used by __Telerik Reporting Services__ can produce TypeReportSource and UriReportSource on the server ([Report Sources]({%slug telerikreporting/designing-reports/report-sources/overview%})). Each Telerik Reporting Service provides mechanism for plugging a custom report source resolver allowing you to create and return any of the available Report Sources (see the links at the bottom of the article). The reports' assembly or TRDX|TRDP files must be accessible on the server where the Reporting Service and Telerik Reporting Engine are running.
1. The Report Viewer (as a client) sends the *client parameters* to the server. The Reporting Service applies the values to the __server-side Report Source's Parameters collection__ that is generated in memory.
1. The Report Viewer (as a client) sends the *client parameters* to the server. The Reporting Service applies the values to the __server-side Report Source's Parameters collection__ that is generated in memory.
1. After the Reporting Service resolves the *report description string* and *client parameters*, the Reporting Engine processes the document on the server. Finally, the Reporting Service returns the following:
+ Information about Visible parameters - the Report Viewer displays its Parameters Area and corresponding parameters editors;
+ The processed and rendered report - the rendering format depends on the viewer e.g. XAML for WPF and Silverlight Report Viewers and HTML for the HTML5 Viewer, or on the operation - export/print;
+ The processed and rendered report - the rendering format depends on the viewer e.g. XAML for WPF Report Viewers and HTML for the HTML5 Viewer, or on the operation - export/print;
+ Information about Document Map - the Report Viewer displays its DocumentMap Area.
__Setting the Client-Side ReportSource:__
__Setting the Client-Side ReportSource:__
### __Silverlight Report Viewer__
The [Silverlight Report Viewer control]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/silverlight-application/overview%}) has a __[Telerik.ReportViewer.Silverlight.ReportViewer.Report](/reporting/api/Telerik.ReportViewer.Silverlight.ReportViewer#Telerik_ReportViewer_Silverlight_ReportViewer_Report) property__ that accepts a string. This is the *report description string*. The string can be a path to a TRDP or TRDX file or an assembly qualified name of a report class. For example:(__Report="./DashboardReport.trdp")__ or (__Report="Telerik.Reporting.Examples.CSharp.BarcodesReport, CSharp.ReportLibrary, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null__ "). The string is sent to the [Telerik Reporting WCF service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-wcf-service/overview%}) which internally resolves it to a __TypeReportSource__ or a __UriReportSource__ on the machine where the service and Telerik Reporting Engine are running. Report parameters' values sent by the Silverlight Report Viewer are *client parameters*. Report parameters' values can be sent through the viewer's Parameters Area, in code by overriding the Silverlight Report Viewer control's [OnApplyParameters](/reporting/api/Telerik.ReportViewer.Silverlight.ReportViewer#Telerik_ReportViewer_Silverlight_ReportViewer_OnApplyParameters) method or by subscribing to the __ApplyParameters__ event.
> __The Silverlight Report Viewer control works only with__. If you need to modify a report or execute custom logic on displaying a report resulting in the usage of an InstanceReportSource or XmlReportSource, you will have to resolve manually the *report description string* via custom resolver for the Reporting WCF service. For more details, check [How to: Implement and use custom IReportResolver]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-wcf-service/how-to-implement-and-use-custom-ireportresolver%}).
### __HTML5 Report Viewer__
### __HTML5 Report Viewer__
The [HTML5 Report Viewer control]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/overview%}) is a client-side widget that has a __client-side reportSource__. The __reportSource.report__ part is a string - the *report description string* that can be a path to a TRDP or TRDX file, an assembly qualified name of a report class, or other custom information set via string. For example:
@ -125,34 +100,29 @@ The *report description string* is sent to the [Telerik Reporting REST service](
The [HTML5 ASP.NET MVC Report Viewer control]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-asp.net-mvc-report-viewer/overview%}) is an MVC wrapper of the __HTML5 Viewer__ that renders a string on the page. The string contains the HTML elements and the JavaScript methods required for initializing the HTML5 Viewer JavaScript widget. The HTML5 ASP.NET MVC Viewer has a [ReportSource](/reporting/api/Telerik.ReportViewer.Mvc.IReportViewerBuilder#Telerik_ReportViewer_Mvc_IReportViewerBuilder_ReportSource) method, creating a client-side report source via server-side code (C# or VB.NET):
+ `ReportSource(UriReportSource uriReportSource)` - the *report description string* is obtained from the *UriReportSource.Uri* property, and the *client parameters* from the *UriReportSource.Parameters* collection.
+ `ReportSource(UriReportSource uriReportSource)` - the *report description string* is obtained from the *UriReportSource.Uri* property, and the *client parameters* from the *UriReportSource.Parameters* collection.
+ `ReportSource(TypeReportSource typeReportSource)` - the *report description string* is obtained from the *TypeReportSource.TypeName* property, and the *client parameters* from the *TypeReportSource.Parameters* collection.
+ `ReportSource(string report)` - The *report description string* is obtained from the ReportSource method's string report argument. No *client parameters* can be set.
+ `ReportSource(string report, IDictionary<string, object> parameters)` - The *report description string* is obtained from the ReportSource method's string __report__ argument. The *client parameters* can be set through the ReportSource method's IDictionary __parameters__ argument.
+ `ReportSource(TypeReportSource typeReportSource)` - the *report description string* is obtained from the *TypeReportSource.TypeName* property, and the *client parameters* from the *TypeReportSource.Parameters* collection.
+ `ReportSource(string report)` - The *report description string* is obtained from the ReportSource method's string report argument. No *client parameters* can be set.
+ `ReportSource(string report, IDictionary<string, object> parameters)` - The *report description string* is obtained from the ReportSource method's string __report__ argument. The *client parameters* can be set through the ReportSource method's IDictionary __parameters__ argument.
__Example:__
__Example:__
{{source=CodeSnippets\MvcCS\Views\Home\InvoiceParameters.cshtml region=ParametersExample}}
{{source=CodeSnippets\MvcVB\Views\Home\InvoiceParameters.vbhtml region=ParametersExample}}
To display another report or to update the *client parameters* ' values of the current HTML5 Viewer object, you can update the HTML5 Viewer's reportSource by using the viewer object's [reportSource(rs)]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/api-reference/reportviewer/methods/reportsource(rs)%}) method in JavaScript. Or you can recreate the HTML5 ASP.NET MVC Report Viewer.
To display another report or to update the *client parameters* ' values of the current HTML5 Viewer object, you can update the HTML5 Viewer's reportSource by using the viewer object's [reportSource(rs)]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/api-reference/reportviewer/methods/reportsource(rs)%}) method in JavaScript. Or you can recreate the HTML5 ASP.NET MVC Report Viewer.
> __The HTML5 ASP.NET MVC Report Viewer works only with__ ([UriReportSource and TypeReportSource]({%slug telerikreporting/designing-reports/report-sources/overview%}#available-report-sources)). If you need an InstanceReportSource or XmlReportSource, you will have to resolve manually the *report description string* via custom resolver for the Reporting REST service. For more details, check [REST Service Report Source Resolver]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-report-source-resolver/overview%}) (available only if using a Telerik Reporting REST service instance).
> __The HTML5 ASP.NET MVC Report Viewer works only with__ ([UriReportSource and TypeReportSource]({%slug telerikreporting/designing-reports/report-sources/overview%}#available-report-sources)). If you need an InstanceReportSource or XmlReportSource, you will have to resolve manually the *report description string* via custom resolver for the Reporting REST service. For more details, check [REST Service Report Source Resolver]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-report-source-resolver/overview%}) (available only if using a Telerik Reporting REST service instance).
### __HTML5 ASP.NET WebForms Report Viewer__
### __HTML5 ASP.NET WebForms Report Viewer__
The [HTML5 ASP.NET WebForms Report Viewer control]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-asp.net-web-forms-report-viewer/overview%}) is a server-side wrapper of the __HTML5 Viewer__, suitable for ASP.NET WebForms applications. The control renders the HTML elements and the JavaScript methods required for initializing the HTML5 Viewer JavaScript widget. The ReportSource property of the HTML5 ASP.NET WebForms Report Viewer control is of type [Telerik.ReportViewer.Html5.WebForms.ReportSource](/reporting/api/Telerik.ReportViewer.Html5.WebForms.ReportSource) :
The [HTML5 ASP.NET WebForms Report Viewer control]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-asp.net-web-forms-report-viewer/overview%}) is a server-side wrapper of the __HTML5 Viewer__, suitable for ASP.NET WebForms applications. The control renders the HTML elements and the JavaScript methods required for initializing the HTML5 Viewer JavaScript widget. The ReportSource property of the HTML5 ASP.NET WebForms Report Viewer control is of type [Telerik.ReportViewer.Html5.WebForms.ReportSource](/reporting/api/Telerik.ReportViewer.Html5.WebForms.ReportSource):
+ The *report description string* is obtained from the [Telerik.ReportViewer.Html5.WebForms.ReportSource.Identifier](/reporting/api/Telerik.ReportViewer.Html5.WebForms.ReportSource#Telerik_ReportViewer_Html5_WebForms_ReportSource_Identifier) property, which accepts a string. The string can be a path to a TRDP or TRDX file, an assembly qualified name of a report class or custom information provided in a string. For example:(__Identifier="./DashboardReport.trdp"__) or (__Identifier="Telerik.Reporting.Examples.CSharp.BarcodesReport, CSharp.ReportLibrary, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"__).
+ The *report description string* is obtained from the [Telerik.ReportViewer.Html5.WebForms.ReportSource.Identifier](/reporting/api/Telerik.ReportViewer.Html5.WebForms.ReportSource#Telerik_ReportViewer_Html5_WebForms_ReportSource_Identifier) property, which accepts a string. The string can be a path to a TRDP or TRDX file, an assembly qualified name of a report class or custom information provided in a string. For example:(__Identifier="./DashboardReport.trdp"__) or (__Identifier="Telerik.Reporting.Examples.CSharp.BarcodesReport, CSharp.ReportLibrary, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"__).
+ Report parameters' values are obtained from the [ReportSource.Parameters](/reporting/api/Telerik.ReportViewer.Html5.WebForms.ReportSource#Telerik_ReportViewer_Html5_WebForms_ReportSource_Parameters) property - the *client parameters*.
+ The [Telerik.ReportViewer.Html5.WebForms.ReportSource.IdentifierType](/reporting/api/Telerik.ReportViewer.Html5.WebForms.ReportSource#Telerik_ReportViewer_Html5_WebForms_ReportSource_IdentifierType) property hints which resolver can be used for resolving the report description string on the server.
+ Report parameters' values are obtained from the [ReportSource.Parameters](/reporting/api/Telerik.ReportViewer.Html5.WebForms.ReportSource#Telerik_ReportViewer_Html5_WebForms_ReportSource_Parameters) property - the *client parameters*.
+ The [Telerik.ReportViewer.Html5.WebForms.ReportSource.IdentifierType](/reporting/api/Telerik.ReportViewer.Html5.WebForms.ReportSource#Telerik_ReportViewer_Html5_WebForms_ReportSource_IdentifierType) property hints which resolver can be used for resolving the report description string on the server.
__Example of setting the client-side ReportSource in code-behind:__
__Example of setting the client-side ReportSource in code-behind:__
````C#
var clientReportSource = new Telerik.ReportViewer.Html5.WebForms.ReportSource();
@ -169,18 +139,13 @@ clientReportSource.Parameters.Add("Parameter1", 123)
reportViewer1.ReportSource = clientReportSource
````
__Example of setting the client-side ReportSource via mark-up:__
1. Open the ASPX with the HTML5 WebForms Report Viewer.
1. Select the HTML5 WebForms Report Viewer and navigate to its Reportsource property in __Visual Studio Property grid__.
1. A __"Load a Report from"__ dialog appears which allows you to select a __ReportSource__.
1. Select the type of the report source you would use and specify a report. For this example we will use a __TypeReportSource__, click 'Type name' option and select the report that would be shown in the viewer. If you have to specify parameters for the report, continue with the next step.
1. Click __Edit Parameters__ button - __Edit Parameters__ dialog appears. Click __New__. In the __Parameter Name__ column select the name of a report parameter in the report. In the __Parameter Value__, type or select the value to pass to the parameter in the report.
1. Select the HTML5 WebForms Report Viewer and navigate to its Reportsource property in __Visual Studio Property grid__.
1. A __"Load a Report from"__ dialog appears which allows you to select a __ReportSource__.
1. Select the type of the report source you would use and specify a report. For this example we will use a __TypeReportSource__, click 'Type name' option and select the report that would be shown in the viewer. If you have to specify parameters for the report, continue with the next step
1. Click __Edit Parameters__ button - __Edit Parameters__ dialog appears. Click __New__. In the __Parameter Name__ column select the name of a report parameter in the report. In the __Parameter Value__, type or select the value to pass to the parameter in the report.
````HTML
<form runat="server">
@ -198,40 +163,40 @@ __Example of setting the client-side ReportSource via mark-up:__
</form>
````
To display another report or to update the *client parameters* ' values of the current HTML5 Viewer object, you can update the HTML5 Viewer's reportSource by using the viewer object's [reportSource(rs)]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/api-reference/reportviewer/methods/reportsource(rs)%}) method in JavaScript. Or you can recreate the HTML5 WebForms Report Viewer.
To display another report or to update the *client parameters* ' values of the current HTML5 Viewer object, you can update the HTML5 Viewer's reportSource by using the viewer object's [reportSource(rs)]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/api-reference/reportviewer/methods/reportsource(rs)%}) method in JavaScript. Or you can recreate the HTML5 WebForms Report Viewer.
> __The HTML5 WebForms Report Viewer works only with ([UriReportSource and TypeReportSource]({%slug telerikreporting/designing-reports/report-sources/overview%}#available-report-sources))__. If you need an InstanceReportSource or XmlReportSource, you will have to resolve manually the *report description string* via custom resolver for the Reporting REST service. For more details, check [REST Service Report Source Resolver]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-report-source-resolver/overview%}) (available only if using a Telerik Reporting REST service instance).
> __The HTML5 WebForms Report Viewer works only with ([UriReportSource and TypeReportSource]({%slug telerikreporting/designing-reports/report-sources/overview%}#available-report-sources))__. If you need an InstanceReportSource or XmlReportSource, you will have to resolve manually the *report description string* via custom resolver for the Reporting REST service. For more details, check [REST Service Report Source Resolver]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-report-source-resolver/overview%}) (available only if using a Telerik Reporting REST service instance).
### __WinForms Report Viewer__
### __WinForms Report Viewer__
The [WinForms Report Viewer control]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/windows-forms-application/overview%}) can be connected to a __Telerik Reporting REST Service__ or __Telerik Report Server__ by setting its __ReportEngineConnection property__ - [How To: Construct a string to connect to Report Engine]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/how-to-construct-a-string-to-connect-to-report-engine%}). For more details check [How To: Use Windows Forms Report Viewer with Report Server (REST Service)]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/windows-forms-application/how-to-use-windows-forms-report-viewer-with-report-server%}). In this scenario, the viewer's ReportSource property of type __Telerik.Reporting.ReportSource__ is considered as a __client-side ReportSource__. The client report source can be set in the same way as if the viewer is operating locally (go to section [Set up Report Viewer controls that work with Telerik Reporting Engine](#set-up-report-viewer-controls-that-work-with-telerik-reporting-engine)), where the __selection is limited to TypeReportSource and UriReportSource__ :
The [WinForms Report Viewer control]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/windows-forms-application/overview%}) can be connected to a __Telerik Reporting REST Service__ or __Telerik Report Server__ by setting its __ReportEngineConnection property__ - [How To: Construct a string to connect to Report Engine]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/how-to-construct-a-string-to-connect-to-report-engine%}). For more details check [How To: Use Windows Forms Report Viewer with Report Server (REST Service)]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/windows-forms-application/how-to-use-windows-forms-report-viewer-with-report-server%}). In this scenario, the viewer's ReportSource property of type __Telerik.Reporting.ReportSource__ is considered as a __client-side ReportSource__. The client report source can be set in the same way as if the viewer is operating locally (go to section [Set up Report Viewer controls that work with Telerik Reporting Engine](#set-up-report-viewer-controls-that-work-with-telerik-reporting-engine)), where the __selection is limited to TypeReportSource and UriReportSource__:
+ The *report description string* is obtained from the TypeReportSource.TypeName|UriReportSource.Uri property that returns a string. The *report description string* is sent to the [Telerik Reporting REST service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview%}), which internally resolves it to a __TypeReportSource__ or a __UriReportSource__ on the machine where the service and Telerik Reporting Engine are running.
+ The *report description string* is obtained from the TypeReportSource.TypeName|UriReportSource.Uri property that returns a string. The *report description string* is sent to the [Telerik Reporting REST service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview%}), which internally resolves it to a __TypeReportSource__ or a __UriReportSource__ on the machine where the service and Telerik Reporting Engine are running.
>If you need an InstanceReportSource or XmlReportSource, you will have to send custom string as *report description string*, and to resolve manually the *report description string* via custom resolver for the Reporting REST service. For more details, check [REST Service Report Source Resolver]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-report-source-resolver/overview%}) (available only if using a Telerik Reporting REST service instance).
>If you need an InstanceReportSource or XmlReportSource, you will have to send custom string as *report description string*, and to resolve manually the *report description string* via custom resolver for the Reporting REST service. For more details, check [REST Service Report Source Resolver]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-report-source-resolver/overview%}) (available only if using a Telerik Reporting REST service instance).
+ Report parameters' values (*client parameters*) are obtained from the TypeReportSource.Parameters|UriReportSource.Parameters collection. The *client parameters* can be sent through the viewer's Parameters Area, on creating the WinForms Report Viewer, or by updating the viewer's ReportSource property.
+ Report parameters' values (*client parameters*) are obtained from the TypeReportSource.Parameters|UriReportSource.Parameters collection. The *client parameters* can be sent through the viewer's Parameters Area, on creating the WinForms Report Viewer, or by updating the viewer's ReportSource property.
__Example of setting the ReportSource in code-behind:__
__Example of setting the ReportSource in code-behind:__
{{source=CodeSnippets\CS\API\Telerik\ReportViewer\WinForms\Form1.cs region=Winviewer_SetReportSource}}
{{source=CodeSnippets\VB\API\Telerik\ReportViewer\WinForms\Form1.vb region=Winviewer_SetReportSource}}
### __WPF Report Viewer__
The [WPF Report Viewer control]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/wpf-application/overview%}) can be connected to a __Telerik Reporting REST Service__ or __Telerik Report Server__ by setting its __ReportEngineConnection property__ - [How To: Construct a string to connect to Report Engine]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/how-to-construct-a-string-to-connect-to-report-engine%}). For more details check [How To: Use WPF Report Viewer with Report Server (REST Service)]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/wpf-application/how-to-use-wpf-report-viewer-with-report-server%}). In this scenario the viewer's ReportSource property of type __Telerik.Reporting.ReportSource__ is considered as a __client-side ReportSource__. The client report source can be set in the same way as if the viewer is operating locally (go to section [Set up Report Viewer controls that work with Telerik Reporting Engine](#set-up-report-viewer-controls-that-work-with-telerik-reporting-engine)), where the __selection is limited to TypeReportSource and UriReportSource__ :
The [WPF Report Viewer control]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/wpf-application/overview%}) can be connected to a __Telerik Reporting REST Service__ or __Telerik Report Server__ by setting its __ReportEngineConnection property__ - [How To: Construct a string to connect to Report Engine]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/how-to-construct-a-string-to-connect-to-report-engine%}). For more details check [How To: Use WPF Report Viewer with Report Server (REST Service)]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/wpf-application/how-to-use-wpf-report-viewer-with-report-server%}). In this scenario the viewer's ReportSource property of type __Telerik.Reporting.ReportSource__ is considered as a __client-side ReportSource__. The client report source can be set in the same way as if the viewer is operating locally (go to section [Set up Report Viewer controls that work with Telerik Reporting Engine](#set-up-report-viewer-controls-that-work-with-telerik-reporting-engine)), where the __selection is limited to TypeReportSource and UriReportSource__:
+ The *report description string* is obtained from the TypeReportSource.TypeName|UriReportSource.Uri property, that returns a string. The *report description string* is sent to the [Telerik Reporting REST service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview%}) which internally resolves it to a __TypeReportSource__ or a __UriReportSource__ on the machine where the service and Telerik Reporting Engine are running.
>If you need an InstanceReportSource or XmlReportSource, you will have to send a custom string as *report description string*, and to resolve manually the *report description string* via custom resolver for the Reporting REST service. For more details, check [REST Service Report Source Resolver]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-report-source-resolver/overview%}) (available only if using a Telerik Reporting REST service instance).
>If you need an InstanceReportSource or XmlReportSource, you will have to send a custom string as *report description string*, and to resolve manually the *report description string* via custom resolver for the Reporting REST service. For more details, check [REST Service Report Source Resolver]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-report-source-resolver/overview%}) (available only if using a Telerik Reporting REST service instance).
+ Report parameters' values (*client parameters*) are obtained from the TypeReportSource.Parameters|UriReportSource.Parameters collection. The *client parameters* can be sent through the viewer's Parameters Area, on creating the WPF Report Viewer, or by updating the viewer's ReportSource property.
+ Report parameters' values (*client parameters*) are obtained from the TypeReportSource.Parameters|UriReportSource.Parameters collection. The *client parameters* can be sent through the viewer's Parameters Area, on creating the WPF Report Viewer, or by updating the viewer's ReportSource property.
__Example of specifying the ReportSource declaratively__
{{source=CodeSnippets\CS\API\Telerik\ReportViewer\Wpf\Window1.xaml}}
__Example of setting the ReportSource at runtime using the *Window.Loaded* event handler:__
__Example of setting the ReportSource at runtime using the *Window.Loaded* event handler:__
{{source=CodeSnippets\CS\API\Telerik\ReportViewer\Wpf\Window3.xaml}}
{{source=CodeSnippets\CS\API\Telerik\ReportViewer\Wpf\Window3.xaml.cs}}
@ -242,24 +207,18 @@ __Example of setting the ReportSource at runtime using the *Window.Loaded* event
## Set up Report Viewer controls that are integrated with Telerik Report Server
> [Telerik Report Server](http://www.telerik.com/report-server)'s REST Service can use only its built-in Report Source Resolver, capable of handling client-side UriReportSource into a server-side UriReportSource on the server ([Report Sources]({%slug telerikreporting/designing-reports/report-sources/overview%})). Reports must be [serialized in TRDX files]({%slug telerikreporting/using-reports-in-applications/program-the-report-definition/serialize-report-definition-in-xml%}) or [packaged in TRDP files]({%slug telerikreporting/using-reports-in-applications/program-the-report-definition/package-report-definition%}) which can be published on Telerik Report Server - [Working with Report Server Reports]({%slug telerikreporting/designing-reports/report-designer-tools/desktop-designers/standalone-report-designer/working-with-report-server-reports%}). Thus the __client-side ReportSource is limited to UriReportSource__, where the *report description string* must be in a format: __[CategoryName]/[ReportNameWithoutFileExtension]__ e.g. "Samples/Dashboard" which will request the Dashboard.trdx|trdp file that is published on Telerik Report Server under the "Samples" category.
> [Telerik Report Server](http://www.telerik.com/report-server)'s REST Service can use only its built-in Report Source Resolver, capable of handling client-side UriReportSource into a server-side UriReportSource on the server ([Report Sources]({%slug telerikreporting/designing-reports/report-sources/overview%})). Reports must be [serialized in TRDX files]({%slug telerikreporting/using-reports-in-applications/program-the-report-definition/serialize-report-definition-in-xml%}) or [packaged in TRDP files]({%slug telerikreporting/using-reports-in-applications/program-the-report-definition/package-report-definition%}) which can be published on Telerik Report Server - [Working with Report Server Reports]({%slug telerikreporting/designing-reports/report-designer-tools/desktop-designers/standalone-report-designer/working-with-report-server-reports%}). Thus the __client-side ReportSource is limited to UriReportSource__, where the *report description string* must be in a format: __[CategoryName]/[ReportNameWithoutFileExtension]__ e.g. "Samples/Dashboard" which will request the Dashboard.trdx|trdp file that is published on Telerik Report Server under the "Samples" category.
The following Report Viewers are designed to work as clients of [Telerik Report Server](http://www.telerik.com/report-server) :
* __HTML5 Report Viewer__ - the client report source is set in the same way as if the viewer is connected to a __Telerik Reporting REST Service__
* __HTML5 ASP.NET MVC Report Viewer__ - the client report source is set in the same way as if the viewer is connected to a __Telerik Reporting REST Service__
* __HTML5 ASP.NET WebForms Report Viewer__ - the client report source is set in the same way as if the viewer is connected to a __Telerik Reporting REST Service__
* __WinForms Report Viewer__ - the client report source is set in the same way as if the viewer is connected to a __Telerik Reporting REST Service__
* __WPF Report Viewer__ - the client report source is set in the same way as if the viewer is connected to a __Telerik Reporting REST Service__
* __HTML5 Report Viewer__ - the client report source is set in the same way as if the viewer is connected to a __Telerik Reporting REST Service__
* __HTML5 ASP.NET MVC Report Viewer__ - the client report source is set in the same way as if the viewer is connected to a __Telerik Reporting REST Service__
* __HTML5 ASP.NET WebForms Report Viewer__ - the client report source is set in the same way as if the viewer is connected to a __Telerik Reporting REST Service__
* __WinForms Report Viewer__ - the client report source is set in the same way as if the viewer is connected to a __Telerik Reporting REST Service__
* __WPF Report Viewer__ - the client report source is set in the same way as if the viewer is connected to a __Telerik Reporting REST Service__
These Report Viewers do not have direct access to Telerik Reporting Engine. Reports are processed and rendered on a remote machine where Telerik Report Server is running, and the content is delivered to the client by __Telerik Report Server's REST Service__.
## See Also
* [How to: Implement and use custom IReportResolver (Reporting WCF Service's Report Resolver)]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-wcf-service/how-to-implement-and-use-custom-ireportresolver%})
* [Reporting REST Service's Report Source Resolver]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-report-source-resolver/overview%})

Просмотреть файл

@ -11,51 +11,57 @@ previous_url: /report-viewers-overview
# Displaying Reports Overview
Telerik Reporting provides UI components called Report Viewers that you can use to display reports in applications. The Report Viewers cover various technologies (Angular, HTML5/JS, WPF, ASP.NET, Windows Forms, etc.) and allow you to display a report document in the application's UI and to interact with it.
Telerik Reporting provides UI components called Report Viewers that you can use to display reports in applications. The Report Viewers cover various technologies (Angular, HTML5/JS, WPF, ASP.NET, Windows Forms, etc.) and allow you to display a report document in the application's UI and to interact with it.
This document provides a brief overview of the different Telerik Report Viewer flavors. If you are interested in the Report Viewer for a specific technology, follow the corresponding link to learn more.
This document provides a brief overview of the different Telerik Report Viewer flavors. If you are interested in the Report Viewer for a specific technology, follow the corresponding link to learn more.
Telerik Reporting provides the following report viewers:
Telerik Reporting provides the following report viewers:
* [HTML5 Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/overview%})
The HTML5 Viewer is an HTML/CSS/JS client-side widget that doesn't require any assembly references. The viewer operates as a client of the [Telerik Reporting REST Service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview%}) or [Telerik Report Server](https://www.telerik.com/report-server).
The HTML5 Viewer is suitable for any web application that works with JavaScript. For some of the most popular web technologies, we provide dedicated wrappers. We have also successfully tested the viewer in the following technologies for which there are no dedicated wrappers:
+ *Vue.js*. A step-by-step example for integrating the viewer in Vue.js application can be found in the [How to use HTML5 Report Viewer in Vue.js]({%slug how-to-use-html5-viewer-in-vue-js%}) KB article
* [HTML5 Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/overview%})
+ *ASP.NET Core*. The exact implementation depends on the framework version. Use the following resources for the recommended approach:
The HTML5 Viewer is an HTML/CSS/JS client-side widget that doesn't require any assembly references. The viewer operates as a client of the [Telerik Reporting REST Service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview%}) or [Telerik Report Server](https://www.telerik.com/report-server).
+ [How to Use HTML5 Report Viewer in an ASP.NET Core in .NET 5 application]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/how-to-use-html5-report-viewer-in-an-asp.net-core-in-.net-5-application%})
+ [How To: Use HTML5 Report Viewer in an ASP.NET Core 3.1 application]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/how-to-use-html5-report-viewer-in-an-asp.net-core-3.1-application%})
+ [How To: Use HTML5 Report Viewer in an ASP.NET Core 2.1 and 2.2 application]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/how-to-use-html5-report-viewer-in-an-asp.net-core-2.1-and-2.2-application%})
+ [How to implement Telerik Reporting in ASP.NET Core 2.1 MVC]({%slug how-to-implement-telerik-reporting-in-asp-net-core-mvc%})
The HTML5 Viewer is suitable for any web application that works with JavaScript. For some of the most popular web technologies, we provide dedicated wrappers. We have also successfully tested the viewer in the following technologies for which there are no dedicated wrappers:
* [HTML5 ASP.NET MVC Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-asp.net-mvc-report-viewer/overview%})
The HTML5 ASP.NET MVC Report Viewer is a helper allowing you to configure the HTML5 Viewer via server-side code. The helper renders the JavaScript object and required scripts on the page. The HTML5 ASP.NET MVC Report Viewer is suitable for ASP.NET MVC4|MVC5 projects.
+ *Vue.js*. A step-by-step example for integrating the viewer in Vue.js application can be found in the [How to use HTML5 Report Viewer in Vue.js]({%slug how-to-use-html5-viewer-in-vue-js%}) KB article
+ *ASP.NET Core*. The exact implementation depends on the framework version. Use the following resources for the recommended approach:
- [How to Use HTML5 Report Viewer in an ASP.NET Core in .NET 5 application]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/how-to-use-html5-report-viewer-in-an-asp.net-core-in-.net-5-application%})
- [How To: Use HTML5 Report Viewer in an ASP.NET Core 3.1 application]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/how-to-use-html5-report-viewer-in-an-asp.net-core-3.1-application%})
- [How To: Use HTML5 Report Viewer in an ASP.NET Core 2.1 and 2.2 application]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/how-to-use-html5-report-viewer-in-an-asp.net-core-2.1-and-2.2-application%})
- [How to implement Telerik Reporting in ASP.NET Core 2.1 MVC]({%slug how-to-implement-telerik-reporting-in-asp-net-core-mvc%})
* [HTML5 ASP.NET WebForms Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-asp.net-web-forms-report-viewer/overview%})
The HTML5 ASP.NET WebForms Report Viewer is a server-side wrapper allowing you to configure the HTML5 Viewer via server-side code. The control renders the JavaScript object and required scripts on the page. The HTML5 ASP.NET WebForms Report Viewer is suitable for ASP.NET WebForms projects.
* [HTML5 ASP.NET MVC Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-asp.net-mvc-report-viewer/overview%})
* [Angular Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/angular-report-viewer/angular-report-viewer-overview%})
The Angular Report Viewer provides a component which wraps the [HTML5 Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/overview%}).
* [ReactJS Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/react-report-viewer/react-report-viewer-overview%})
The ReactJS Report Viewer provides a component which wraps the [HTML5 Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/overview%}).
* [Native Blazor Report Viewer]({%slug telerikreporting/embedding-reports/display-reports-in-applications/web-application/native-blazor-report-viewer/overview%})
The Native Blazor Report Viewer is a fully native Blazor component which can be used in Blazor applications.
The HTML5 ASP.NET MVC Report Viewer is a helper allowing you to configure the HTML5 Viewer via server-side code. The helper renders the JavaScript object and required scripts on the page. The HTML5 ASP.NET MVC Report Viewer is suitable for ASP.NET MVC4|MVC5 projects.
* [Blazor Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/blazor-report-viewer/overview%})
The Blazor Report Viewer is a component which can be used in Blazor applications. It is built on top of the [HTML5 Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/overview%}).
* [HTML5 ASP.NET WebForms Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-asp.net-web-forms-report-viewer/overview%})
* [WinForms Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/windows-forms-application/overview%})
The WinForms Report Viewer is suitable for WinForms and WPF projects. The viewer is built with standard Microsoft controls. It can operate with an embedded reporting engine or as a client of [Telerik Reporting REST Service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview%}) or [Telerik Report Server](http://www.telerik.com/report-server).
The HTML5 ASP.NET WebForms Report Viewer is a server-side wrapper allowing you to configure the HTML5 Viewer via server-side code. The control renders the JavaScript object and required scripts on the page. The HTML5 ASP.NET WebForms Report Viewer is suitable for ASP.NET WebForms projects.
* [WPF Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/wpf-application/overview%})
The WPF Report Viewer is suitable for WPF and WinForms projects. The viewer is built with Telerik UI for WPF controls providing better look and feel, and functionality. It can operate with an embedded reporting engine or as a client of [Telerik Reporting REST Service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview%}) or [Telerik Report Server](http://www.telerik.com/report-server).
* [Angular Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/angular-report-viewer/angular-report-viewer-overview%})
* [Silverlight Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/silverlight-application/overview%})
The Silverlight Report Viewer is suitable for Silverlight projects. The viewer is built with Telerik UI for Silverlight controls providing better look and feel, and functionality. The viewer operates as a client of [Telerik Reporting WCF service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-wcf-service/overview%}).
The Angular Report Viewer provides a component which wraps the [HTML5 Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/overview%}).
* [ASP.NET WebForms Report Viewer (obsolete)]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/asp.net-web-forms-report-viewer/overview%})
The old ASP.NET WebForms Report Viewer is a server-side control suitable for ASP.NET WebForms projects. The viewer is obsolete as of Q3 2015 and we recommend using the [HTML5 ASP.NET WebForms Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-asp.net-web-forms-report-viewer/overview%}).
* [ReactJS Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/react-report-viewer/react-report-viewer-overview%})
The ReactJS Report Viewer provides a component which wraps the [HTML5 Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/overview%}).
* [Native Blazor Report Viewer]({%slug telerikreporting/embedding-reports/display-reports-in-applications/web-application/native-blazor-report-viewer/overview%})
The Native Blazor Report Viewer is a fully native Blazor component which can be used in Blazor applications.
* [Blazor Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/blazor-report-viewer/overview%})
The Blazor Report Viewer is a component which can be used in Blazor applications. It is built on top of the [HTML5 Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/overview%}).
* [WinForms Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/windows-forms-application/overview%})
The WinForms Report Viewer is suitable for WinForms and WPF projects. The viewer is built with standard Microsoft controls. It can operate with an embedded reporting engine or as a client of [Telerik Reporting REST Service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview%}) or [Telerik Report Server](http://www.telerik.com/report-server).
* [WPF Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/wpf-application/overview%})
The WPF Report Viewer is suitable for WPF and WinForms projects. The viewer is built with Telerik UI for WPF controls providing better look and feel, and functionality. It can operate with an embedded reporting engine or as a client of [Telerik Reporting REST Service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview%}) or [Telerik Report Server](http://www.telerik.com/report-server).
* [ASP.NET WebForms Report Viewer (obsolete)]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/asp.net-web-forms-report-viewer/overview%})
The old ASP.NET WebForms Report Viewer is a server-side control suitable for ASP.NET WebForms projects. The viewer is obsolete as of Q3 2015 and we recommend using the [HTML5 ASP.NET WebForms Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-asp.net-web-forms-report-viewer/overview%}).

Просмотреть файл

@ -11,28 +11,27 @@ previous_url: /installation-deploying-on-silverlight-application
# Deploying Silverlight Application
> The Silverlight Report Viewer and its WCF Reporting Service are no longer supported and deployed with the installation of Telerik Reporting. The last release of Telerik Reporting with included Silverlight Report Viewer is [R1 2023](https://www.telerik.com/support/whats-new/reporting/release-history/progress-telerik-reporting-r1-2023-17-0-23-118).
The deployment of a Silverlight application that utilizes Telerik Reporting can be divided in three steps:
1. Deploying the __Silverlight report viewer__ : All referenced assemblies in the Silverlight application are embedded at compile time into the XAP file, which should be deployed along with the application that hosts the Silverlight application.
1. Deploying the __Silverlight report viewer__ : All referenced assemblies in the Silverlight application are embedded at compile time into the XAP file, which should be deployed along with the application that hosts the Silverlight application.
1. Deploying the __Telerik Reporting WCF Service__ : As the Silverlight report viewer uses the __Telerik Reporting WCF Service__ to access the __Telerik Reporting Engine__, you should deploy (__Telerik.Reporting.Service.dll__) with the application that hosts the WCF service.
1. Deploying the __Telerik Reporting Engine__ : The Reporting engine (__Telerik.Reporting.dll__) should be deployed along with the application that hosts the __Telerik Reporting WCF Service__.
1. Deploying the __Telerik Reporting WCF Service__ : As the Silverlight report viewer uses the __Telerik Reporting WCF Service__ to access the __Telerik Reporting Engine__, you should deploy (__Telerik.Reporting.Service.dll__) with the application that hosts the WCF service.
__*Optional assemblies*__:
1. Deploying the __Telerik Reporting Engine__ : The Reporting engine (__Telerik.Reporting.dll__) should be deployed along with the application that hosts the __Telerik Reporting WCF Service__.
These assemblies add up to the __Telerik Reporting Engine__ functionality and should be used only if you need the specific feature. They are responsible for additional support formats, database cache or retrieving data from an OLAP cube. The asseblies must be deployed along with the application that hosts the __Telerik Reporting WCF Service__.
__*Optional assemblies*__:
* XPS rendering extension requires __Telerik.Reporting.XpsRendering__ assembly (Telerik.Reporting.XpsRendering.dll).
These assemblies add up to the __Telerik Reporting Engine__ functionality and should be used only if you need the specific feature. They are responsible for additional support formats, database cache or retrieving data from an OLAP cube. The asseblies must be deployed along with the application that hosts the __Telerik Reporting WCF Service__.
* DOCX/PPTX/XLSX rendering extensions require __Telerik.Reporting.OpenXmlRendering.dll__ and [Third-Party Dependencies]({%slug telerikreporting/using-reports-in-applications/third-party-dependencies%}) (_DocumentFormat.OpenXml.dll_ v.2.0.5022.0 or above with [binding redirect](http://msdn.microsoft.com/en-us/library/eftw1fys(v=vs.110).aspx)).
* XPS rendering extension requires __Telerik.Reporting.XpsRendering__ assembly (Telerik.Reporting.XpsRendering.dll).
* [Database Cache Provider]({%slug telerikreporting/using-reports-in-applications/export-and-configure/cache-management/other-reportviewer-controls/configuring-the-database-cache-provider%}) requires __Telerik.Reporting.Cache.Database.dll__ and __Telerik Data Access__.
* DOCX/PPTX/XLSX rendering extensions require __Telerik.Reporting.OpenXmlRendering.dll__ and [Third-Party Dependencies]({%slug telerikreporting/using-reports-in-applications/third-party-dependencies%}) (_DocumentFormat.OpenXml.dll_ v.2.0.5022.0 or above with [binding redirect](http://msdn.microsoft.com/en-us/library/eftw1fys(v=vs.110).aspx)).
* [Database Cache Provider]({%slug telerikreporting/using-reports-in-applications/export-and-configure/cache-management/other-reportviewer-controls/configuring-the-database-cache-provider%}) requires __Telerik.Reporting.Cache.Database.dll__ and __Telerik Data Access__.
* [CubeDataSource]({%slug telerikreporting/designing-reports/connecting-to-data/data-source-components/cubedatasource-component/overview%}) requires __Telerik.Reporting.Adomd.dll__ and [Third-Party Dependencies]({%slug telerikreporting/using-reports-in-applications/third-party-dependencies%}) (_Microsoft.AnalysisServices.AdomdClient.dll_ v.10.0.0.0 or above with [proper binding redirects]({%slug telerikreporting/designing-reports/connecting-to-data/data-source-components/cubedatasource-component/configuring-your-project-for-using-microsoft-analysis-services%})).
* [CubeDataSource]({%slug telerikreporting/designing-reports/connecting-to-data/data-source-components/cubedatasource-component/overview%}) requires __Telerik.Reporting.Adomd.dll__ and [Third-Party Dependencies]({%slug telerikreporting/using-reports-in-applications/third-party-dependencies%}) (_Microsoft.AnalysisServices.AdomdClient.dll_ v.10.0.0.0 or above with [proper binding redirects]({%slug telerikreporting/designing-reports/connecting-to-data/data-source-components/cubedatasource-component/configuring-your-project-for-using-microsoft-analysis-services%})).
## See Also
* [Telerik Reporting WCF Service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-wcf-service/overview%})
* [How to Add Telerik Reporting WCF Service to Web Application]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-wcf-service/how-to-add-telerik-reporting-wcf-service-to-web-application%})

Просмотреть файл

@ -1,7 +1,7 @@
---
title: How to Add report viewer to a Silverlight application
page_title: How to Add report viewer to a Silverlight application
description: How to Add report viewer to a Silverlight application
title: Adding Report Viewer
page_title: Adding report viewer to a Silverlight application
description: "Learn How to Add Telerik Reporting Report viewer to a Silverlight application."
slug: telerikreporting/using-reports-in-applications/display-reports-in-applications/silverlight-application/how-to-add-report-viewer-to-a-silverlight-application
tags: how,to,add,report,viewer,to,a,silverlight,application
published: True
@ -9,43 +9,37 @@ position: 1
previous_url: /silverlight-report-viewer-embedding_the_Silverlight_Viewer, /silverlight-report-viewer-embedding-the-silverlight-viewer
---
# How to Add report viewer to a Silverlight application
# Add report viewer to a Silverlight application
This article explains the steps needed to create an application which uses the Silverlight report viewer.
> The Silverlight Report Viewer and its WCF Reporting Service are no longer supported and deployed with the installation of Telerik Reporting. The last release of Telerik Reporting with included Silverlight Report Viewer is [R1 2023](https://www.telerik.com/support/whats-new/reporting/release-history/progress-telerik-reporting-r1-2023-17-0-23-118).
1. First you need to create a Silverlight project. Once you do, add references to the following NoXaml assemblies in your Silverlight project:
This article explains the steps needed to create an application which uses the Silverlight report viewer.
+ Telerik.ReportViewer.Silverlight.dll (located in C:\Program Files (x86)\Progress\Reporting {{site.suiteversion}}\Bin)
1. First you need to create a Silverlight project. Once you do, add references to the following NoXaml assemblies in your Silverlight project:
+ Telerik.ReportViewer.Silverlight.dll (located in C:\Program Files (x86)\Progress\Reporting {{site.suiteversion}}\Bin)
+ System.Windows.Controls.dll
+ Telerik.Windows.Controls.dll
+ Telerik.Windows.Controls.Input.dll
+ Telerik.Windows.Controls.Navigation.dll
In case you are still not prepared to migrate to Implicit Styling you can use the binaries that include the xaml. However you will still have to add all the xaml files mentioned in the next step, otherwise the Report Viewer will not show up as it will have no style.
In case you use Telerik UI for Silverlight only for the report viewer, you can use Telerik UI for Silverlight assemblies and XAML that we provide with the local demos. They are internally unlocked for the Silverlight ReportViewer but can only be used with the report viewer. The Telerik UI for Silverlight assemblies are located in _C:\Program Files (x86)\Progress\Reporting {{site.suiteversion}}\Examples\CSharp\SilverlightDemo\bin_.
The corresponding XAML resources can be found in _C:\Program Files (x86)\Progress\Reporting {{site.suiteversion}}\Silverlight\Themes_.
The Silverlight ReportViewer is build with the latest official release of Telerik UI for Silverlight. In this way we provide trouble free upgrade for most of the users. This means that you can use the latest version of Telerik UI for Silverlight in your project and report viewer.
+ Telerik.Windows.Controls.Navigation.dll
>The files part of Telerik Reporting are the _Telerik.ReportViewer.Silverlight.dll_ and _Telerik.ReportViewer.Silverlight.xaml_. The rest DLLs and XAML resources must be updated from Telerik UI for Silverlight product folder.
In case you are still not prepared to migrate to Implicit Styling you can use the binaries that include the xaml. However you will still have to add all the xaml files mentioned in the next step, otherwise the Report Viewer will not show up as it will have no style.
1. Add the following xaml files, required for the implicit styling of the report viewer:
In case you use Telerik UI for Silverlight only for the report viewer, you can use Telerik UI for Silverlight assemblies and XAML that we provide with the local demos. They are internally unlocked for the Silverlight ReportViewer but can only be used with the report viewer. The Telerik UI for Silverlight assemblies are located in _C:\Program Files (x86)\Progress\Reporting {{site.suiteversion}}\Examples\CSharp\SilverlightDemo\bin_.
+ *System.Windows.xaml*
+ *Telerik.Windows.Controls.xaml*
+ *Telerik.Windows.Controls.Input.xaml*
+ *Telerik.Windows.Controls.Navigation.xaml*
+ *Telerik.ReportViewer.Silverlight.xaml* The Telerik UI for Silverlight xaml files are located in _C:\Program Files (x86)\Progress\Reporting {{site.suiteversion}}\Silverlight\Themes_.
The corresponding XAML resources can be found in _C:\Program Files (x86)\Progress\Reporting {{site.suiteversion}}\Silverlight\Themes_.
The Silverlight ReportViewer is build with the latest official release of Telerik UI for Silverlight. In this way we provide trouble free upgrade for most of the users. This means that you can use the latest version of Telerik UI for Silverlight in your project and report viewer.
>The files part of Telerik Reporting are the _Telerik.ReportViewer.Silverlight.dll_ and _Telerik.ReportViewer.Silverlight.xaml_. The rest DLLs and XAML resources must be updated from Telerik UI for Silverlight product folder.
1. Add the following xaml files, required for the implicit styling of the report viewer:
+ *System.Windows.xaml*
+ *Telerik.Windows.Controls.xaml*
+ *Telerik.Windows.Controls.Input.xaml*
+ *Telerik.Windows.Controls.Navigation.xaml*
+ *Telerik.ReportViewer.Silverlight.xaml* The Telerik UI for Silverlight xaml files are located in _C:\Program Files (x86)\Progress\Reporting {{site.suiteversion}}\Silverlight\Themes_.
1. The next step is to merge these ResourceDictionaries in the App.xaml file:
@ -68,41 +62,56 @@ This article explains the steps needed to create an application which uses the S
</Application>
````
1. Add the ReportViewer to the MainPage.xaml from the __ToolBox__ through __Visual Studio__ or __Expression Blend__. You should skip points #5, #6 and #7 if you have done that, as they describe how to register the report viewer manually.
![](images/SilverlightBlend.png)
![Silverlight ReportViewer added to the MainPage.xaml from the Visual Studio ToolBox](images/SilverlightBlend.png)
1. Open __MainPage.xaml__
1. Register the namespace in the following way: xmlns:`<Name of namespace>= "<Name of assembly>"` in our case:
1. Open __MainPage.xaml__
1. Register the namespace in the following way: xmlns:`<Name of namespace>= "<Name of assembly>"` in our case:
`xmlns:telerik="clr-namespace:Telerik.ReportViewer.Silverlight;assembly=Telerik.ReportViewer.Silverlight"`
1. Now you would be able to declare the ReportViewer control:
````XML
````XAML
<telerik:ReportViewer></telerik:ReportViewer>
````
1. Next we need to set the __ReportServiceUri__ and __Report__ properties of the viewer.
* [Telerik.ReportViewer.Silverlight.ReportViewer.ReportServiceUri](/reporting/api/Telerik.ReportViewer.Silverlight.ReportViewer#Telerik_ReportViewer_Silverlight_ReportViewer_ReportServiceUri) should point to [Telerik Reporting WCF service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-wcf-service/overview%}):
`ReportServiceUri="../ReportService.svc"`
`ReportServiceUri="../ReportService.svc"`
* [Telerik.ReportViewer.Silverlight.ReportViewer.Report](/reporting/api/Telerik.ReportViewer.Silverlight.ReportViewer#Telerik_ReportViewer_Silverlight_ReportViewer_Report) should be set to the assembly qualified name of the report you want to show:
`Report="Telerik.Reporting.Examples.CSharp.BarcodesReport, CSharp.ReportLibrary, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"`
Review [How to use the Report Wizard to create a Band Report]({%slug telerikreporting/designing-reports/report-designer-tools/desktop-designers/tools/report-wizards/band-report-wizard/how-to-use-the-report-wizard-to-create-a-band-report%}) topic for information on creating a __Telerik Report__.
`Report="Telerik.Reporting.Examples.CSharp.BarcodesReport, CSharp.ReportLibrary, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"`
Review [How to use the Report Wizard to create a Band Report]({%slug telerikreporting/designing-reports/report-designer-tools/desktop-designers/tools/report-wizards/band-report-wizard/how-to-use-the-report-wizard-to-create-a-band-report%}) topic for information on creating a __Telerik Report__.
The _MainPage.xaml_ should look similar:
{{source=CodeSnippets\SilverlightCS\API\Telerik\ReportViewer\Silverlight\MainPage.xaml}}
````XAML
<UserControl x:Class="Telerik.Reporting.CodeSnippets.SilverlightCS.API.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:telerik="clr-namespace:Telerik.ReportViewer.Silverlight;assembly=Telerik.ReportViewer.Silverlight">
<Grid x:Name="LayoutRoot">
<telerik:ReportViewer x:Name="ReportViewer1" Width="1000"
ReportServiceUri="../ReportService.svc"
Report="Telerik.Reporting.Examples.CSharp.BarcodesReport, CSharp.ReportLibrary, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null">
</telerik:ReportViewer>
</Grid>
</UserControl>
````
## See Also
* [Silverlight Application]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/silverlight-application/overview%})
* [Using Custom Bindings]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/silverlight-application/using-custom-bindings%})
* [Using Custom Bindings]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/silverlight-application/using-custom-bindings%})

Просмотреть файл

@ -11,6 +11,8 @@ previous_url: /silverlight-report-viewer-intro
# Silverlight Application Overview
> The Silverlight Report Viewer and its WCF Reporting Service are no longer supported and deployed with the installation of Telerik Reporting. The last release of Telerik Reporting with included Silverlight Report Viewer is [R1 2023](https://www.telerik.com/support/whats-new/reporting/release-history/progress-telerik-reporting-r1-2023-17-0-23-118).
The Silverlight Report Viewer allows developers to deliver reports produced by Telerik Reporting to any rich application developed with Silverlight. The Silverlight viewer lives entirely on the client side, while the reports and the rendering engine are on the server side (accessible through the [Telerik Reporting WCF Service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-wcf-service/overview%})).
![](images/SilverlightViewer1.png)

Просмотреть файл

@ -1,7 +1,7 @@
---
title: Report Viewer Localization
page_title: Report Viewer Localization
description: Report Viewer Localization
title: Localization
page_title: Silverlight Report Viewer Localization at a Glance
description: "Learn how to localize the Silverlight Report Viewer in Telerik Reporting."
slug: telerikreporting/using-reports-in-applications/display-reports-in-applications/silverlight-application/report-viewer-localization
tags: report,viewer,localization
published: True
@ -9,78 +9,69 @@ position: 3
previous_url: /report-viewer-localization3
---
# Report Viewer Localization
# Silverlight Report Viewer Localization
> The Silverlight Report Viewer and its WCF Reporting Service are no longer supported and deployed with the installation of Telerik Reporting. The last release of Telerik Reporting with included Silverlight Report Viewer is [R1 2023](https://www.telerik.com/support/whats-new/reporting/release-history/progress-telerik-reporting-r1-2023-17-0-23-118).
In the Silverlight Report Viewer, localized resources are stored in separate __RESX__ resource files and loaded according to the current UI culture settings. To understand how localized resources are loaded, it is useful to think of them as being organized in a hierarchical manner.
## Types of Resources in the Hierarchy
* At the top of the hierarchy sit the fallback resources for the default UI culture, which is English ("en") by default. These are the only resources that do not have their own file. They are stored directly in the assembly of the __Report Viewer__.
* Below the fallback resources are the resources for any neutral cultures. A neutral culture is associated with a language but not a region. For example, French ("fr") is a neutral culture. Note that the fallback resources are also for a neutral culture, but a special one.
* Below those are the resources for any specific cultures. A specific culture is associated with a language and a region. For example, French Canadian ("fr-CA") is a specific culture.
When the __Report Viewer__ tries to load any localized resource and does not find it it will travel up the hierarchy until it finds a resource file containing the requested resource.
The best way to store your resources is to generalize them as much as possible. That means to store localized strings in resource files for neutral cultures rather than specific cultures whenever possible. For instance, if you have resources for the French Belgian ("fr-BE") culture and the resources immediately above are the fallback resources in English, a problem may result when someone uses your application on a system configured for the French Canadian culture. The __Report Viewer__ will look for a __RESX__  file named "fr-CA", it will not find it and will load the fallback resource, which is English, instead of loading the French resources. The following picture shows this undesirable scenario.
The best way to store your resources is to generalize them as much as possible. That means to store localized strings in resource files for neutral cultures rather than specific cultures whenever possible. For instance, if you have resources for the French Belgian ("fr-BE") culture and the resources immediately above are the fallback resources in English, a problem may result when someone uses your application on a system configured for the French Canadian culture. The __Report Viewer__ will look for a __RESX__  file named "fr-CA", it will not find it and will load the fallback resource, which is English, instead of loading the French resources. The following picture shows this undesirable scenario.
![](images/localization1.png)
![Undesired scenario without a default French neutral resources](images/localization1.png)
If you follow the recommended practice of placing as many resources as possible in a neutral resource file for the "fr" culture, the French Canadian user would not see resources marked for the "fr-BE" culture, but he or she would still see strings in French. The following situation demonstrates this preferred scenario.
If you follow the recommended practice of placing as many resources as possible in a neutral resource file for the "fr" culture, the French Canadian user would not see resources marked for the "fr-BE" culture, but he or she would still see strings in French. The following situation demonstrates this preferred scenario.
![](images/localization2.png)
![The correct scenario with a default French neutral resources](images/localization2.png)
## Naming Conventions for the Localization Resources
__The Report Viewer__ uses the following naming convention when searching for localized __RESX__ resource files in the main application folder:
* The names of the __RESX__ localization resource files should have the following format: _Telerik.ReportViewer.Silverlight.TextResources.[culture].resx_, where __[culture]__ is the name of the culture for the specified localization resource. For example, to provide a localization resource for the French Belgian culture, the corresponding resource file should be named as follows: _Telerik.ReportViewer.Silverlight.TextResources.fr-BE.resx_
* Respectively, to provide a localization resource for the French neutral culture, the corresponding resource file should be named as follows: _Telerik.ReportViewer.Silverlight.TextResources.fr.resx_
* It is possible to override the default resources for the language neutral culture, which are stored in the assembly of the __Report Viewer__. In that case the resource file should be named as follows: _Telerik.ReportViewer.Silverlight.TextResources.resx_
* The names of the __RESX__ localization resource files should have the following format: _Telerik.ReportViewer.Silverlight.TextResources.[culture].resx_, where __[culture]__ is the name of the culture for the specified localization resource. For example, to provide a localization resource for the French Belgian culture, the corresponding resource file should be named as follows: _Telerik.ReportViewer.Silverlight.TextResources.fr-BE.resx_
* Respectively, to provide a localization resource for the French neutral culture, the corresponding resource file should be named as follows: _Telerik.ReportViewer.Silverlight.TextResources.fr.resx_
* It is possible to override the default resources for the language neutral culture, which are stored in the assembly of the __Report Viewer__. In that case the resource file should be named as follows:_Telerik.ReportViewer.Silverlight.TextResources.resx_
As described above, if for example the current UI culture is set to French Belgian, the __Report Viewer__ will search for localized __RESX__ resource files inside the main application folder in the following order:
1. Telerik.ReportViewer.Silverlight.TextResources.__fr-BE__.resx
1. Telerik.ReportViewer.Silverlight.TextResources.__fr__.resx
1. Telerik.ReportViewer.Silverlight.TextResources.resx
1. Telerik.ReportViewer.Silverlight.TextResources.resx
![](images/localization3.png)
![A simple view of the resource fallback for a UI culture set to "fr-BE"](images/localization3.png)
The above diagram illustrates a simple view of the resource fallback for a UI culture set to "fr-BE". The __Report Viewer__ handles the case probing the "fr-BE" __RESX__ resource file for the requested key first, and subsequently falls back to the neutral French culture "fr", ultimately looking in the default assembly resources for a value if a value has still not been found.
## Adding Localization Resources for the Report Viewer
1. Add a new __RESX__ resource file to the main project of the application. Name the newly-created __RESX__ file according to the naming convention described above.
1. In the __Property Inspector__ specify the following properties for the resource file:
1. __Build Action:__ "*Embedded Resource*"
1. __Copy to Output Directory:__ "*Copy if newer* " or "*Copy always*"
1. __Build Action:__ "*Embedded Resource*"
1. __Copy to Output Directory:__ "*Copy if newer* " or "*Copy always*"
1. Open the __RESX__ resource file in the __Visual Studio Resource Editor__. Enter the required resource strings ([TextResources](/reporting/api/Telerik.ReportViewer.Silverlight.TextResources)) to translate the __Report Viewer__ to the desired language.
1. Unload the project by right clicking on it and selecting "Unload Project".
1. Right click on the project again and select "Edit MyProject.csproj".
1. Locate the __SupportedCultures__ tag and add the supported cultures (there is no need to specify the neutral culture):
````XML
<SupportedCultures>
fr;fr-BE
</SupportedCultures>
````
1. Reload and build the project
1. Repeat steps from 1 to 3 for each desired translation of the __Report Viewer__. Steps 4 to 7 can be performed at the end only once.
1. Compile and run the project. When viewing a __Telerik Report__, the __Report Viewer__ should be translated according to the current UI culture.
## Distributing an Application with a Localized Report Viewer
@ -89,27 +80,127 @@ In order to distribute an application that uses __Telerik Reporting__ with a loc
## Localization Using the ITextResources interface
The other way to localize the Silverlight __Report Viewer__ in a more flexible manner is to create a class that implements the _ITextResources_ interface and to implement all its properties, which represent all tooltips and messages in the Report Viewer. After you implement ITextResources you have to pass an instance of your custom class to the TextResources property ot the report viewer. The logic is pretty simple, the property just has to return the correct translation for each resource key, as it is shown below:
The other way to localize the Silverlight __Report Viewer__ in a more flexible manner is to create a class that implements the _ITextResources_ interface and to implement all its properties, which represent all tooltips and messages in the Report Viewer. After you implement ITextResources you have to pass an instance of your custom class to the TextResources property ot the report viewer. The logic is pretty simple, the property just has to return the correct translation for each resource key, as it is shown below:
{{source=CodeSnippets\SilverlightCS\API\Telerik\ReportViewer\Silverlight\Localization\InterfaceLocalizationSnippets.cs region=InterfaceLocalizationSnippetStart}}
{{source=CodeSnippets\SilverlightVB\API\Telerik\ReportViewer\Silverlight\Localization\InterfaceLocalizationSnippets.vb region=InterfaceLocalizationSnippetStart}}
````C#
public class CustomResources : Telerik.ReportViewer.Silverlight.ITextResources
{
public string AllFiles
{
get
{
return "Todos Archivos";
}
}
Instead of a hard-coded string the property can be set in a method/contructor or to be created a method that returns string and implements a cutsom logic, for example retreives the resource key from a database.
public string BackToolTip
{
get
{
return "Navega hacia atrás";
}
}
{{source=CodeSnippets\SilverlightCS\API\Telerik\ReportViewer\Silverlight\Localization\InterfaceLocalizationSnippets.cs region=InterfaceLocalizationUsingMethodsSnippetStart}}
{{source=CodeSnippets\SilverlightVB\API\Telerik\ReportViewer\Silverlight\Localization\InterfaceLocalizationSnippets.vb region=InterfaceLocalizationUsingMethodsSnippetStart}}
public string CurrentPageToolTip
{
get
{
return "Página corriente";
}
}
//...... Implement the rest of the properties ......
}
````
````VB.NET
Public Class CustomResources
Implements Telerik.ReportViewer.Silverlight.ITextResources
Public ReadOnly Property AllFiles() As String Implements ReportViewer.Silverlight.ITextResources.AllFiles
Get
Return "Todos Archivos"
End Get
End Property
Public ReadOnly Property BackToolTip() As String Implements ReportViewer.Silverlight.ITextResources.BackToolTip
Get
Return "Navega hacia atrás"
End Get
End Property
Public ReadOnly Property CurrentPageToolTip() As String Implements ReportViewer.Silverlight.ITextResources.CurrentPageToolTip
Get
Return "Página corriente"
End Get
End Property
'...... Implement the rest of the properties ......
End Class
````
Instead of a hard-coded string the property can be set in a method/contructor or to be created a method that returns string and implements a cutsom logic, for example retreives the resource key from a database.
````C#
public class CustomTextResources : Telerik.ReportViewer.Silverlight.ITextResources
{
public string AllFiles
{
get
{
return SqlHelper.GetViewerKeyFromDb(TextResourcesEnum.AllFiles);
}
}
public string BackToolTip
{
get
{
return SqlHelper.GetViewerKeyFromDb(TextResourcesEnum.BackToolTip);
}
}
public string CurrentPageToolTip
{
get
{
return SqlHelper.GetViewerKeyFromDb(TextResourcesEnum.CurrentPageToolTip);
}
}
//...... Implement the rest of the properties ......
}
````
````VB.NET
Public Class CustomTextResources
Implements Telerik.ReportViewer.Silverlight.ITextResources
Public ReadOnly Property AllFiles() As String Implements ReportViewer.Silverlight.ITextResources.AllFiles
Get
Return SqlHelper.GetViewerKeyFromDb(TextResourcesEnum.AllFiles)
End Get
End Property
Public ReadOnly Property BackToolTip() As String Implements ReportViewer.Silverlight.ITextResources.BackToolTip
Get
Return SqlHelper.GetViewerKeyFromDb(TextResourcesEnum.BackToolTip)
End Get
End Property
Public ReadOnly Property CurrentPageToolTip() As String Implements ReportViewer.Silverlight.ITextResources.CurrentPageToolTip
Get
Return SqlHelper.GetViewerKeyFromDb(TextResourcesEnum.CurrentPageToolTip)
End Get
End Property
'...... Implement the rest of the properties ......
End Class
````
## See Also
* [TextResources](/reporting/api/Telerik.ReportViewer.Silverlight.TextResources)
* [TextResources](/reporting/api/Telerik.ReportViewer.Silverlight.TextResources)
* [Silverlight Application]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/silverlight-application/overview%})
* [How to Add report viewer to a Silverlight application]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/silverlight-application/how-to-add-report-viewer-to-a-silverlight-application%})
* [Hierarchical Organization of Resources for Localization](http://msdn2.microsoft.com/en-us/library/756hydy4(VS.71).aspx)
* [Silverlight Globalization and Localization Overview](http://msdn.microsoft.com/en-us/library/cc838238(v=vs.95).aspx)
* [Security and Localized Satellite Assemblies](http://msdn2.microsoft.com/en-us/library/ff8dk041(VS.71).aspx)
* [Security and Localized Satellite Assemblies](http://msdn2.microsoft.com/en-us/library/ff8dk041(VS.71).aspx)

Просмотреть файл

@ -11,6 +11,8 @@ previous_url: /silverlight-report-viewer-implicit-styles
# Setting a Theme (Using Implicit Styles)
> The Silverlight Report Viewer and its WCF Reporting Service are no longer supported and deployed with the installation of Telerik Reporting. The last release of Telerik Reporting with included Silverlight Report Viewer is [R1 2023](https://www.telerik.com/support/whats-new/reporting/release-history/progress-telerik-reporting-r1-2023-17-0-23-118).
With the official Q1 2014 release of Telerik Reporting you will have to disable the Telerik StyleManager and to style the controls using implicit styles (e.g. Style without x:Key attribute). There are a number of benefits of using implicit styles over the Telerik StyleManager. Some are listed below:
* Custom themes are now much easier - created only via merged dictionaries

Просмотреть файл

@ -1,7 +1,7 @@
---
title: Using Custom Bindings
page_title: Using Custom Bindings
description: Using Custom Bindings
page_title: Using Custom Bindings for ReportServiceClient Explained
description: "Learn how to use Custom Bindings for ReportServiceClient in Telerik Reporting Silverlight Report Viewer."
slug: telerikreporting/using-reports-in-applications/display-reports-in-applications/silverlight-application/using-custom-bindings
tags: using,custom,bindings
published: True
@ -9,18 +9,84 @@ position: 4
previous_url: /silverlight-report-viewer-using-custom-bindings
---
# Using Custom Bindings
# Using Custom Bindings for ReportServiceClient
You might encounter a need to use custom Bindings for the __ReportServiceClient__ in certain scenarios. To do that create your own __ReportServiceClient__ object instance and initialize it according to your needs.
> The Silverlight Report Viewer and its WCF Reporting Service are no longer supported and deployed with the installation of Telerik Reporting. The last release of Telerik Reporting with included Silverlight Report Viewer is [R1 2023](https://www.telerik.com/support/whats-new/reporting/release-history/progress-telerik-reporting-r1-2023-17-0-23-118).
You might encounter a need to use custom Bindings for the __ReportServiceClient__ in certain scenarios. To do that create your own __ReportServiceClient__ object instance and initialize it according to your needs.
You need to implement the __IReportServiceClientFactory__ interface and its only method should create and return a new instance of the __ReportServiceClient__ class using any of its constructors. This way you attach your custom Binding to be used for connecting to the Report Service.
Once you have implemented __IReportServiceClientFactory__, you should provide an instance to the report viewer so it will use it the next time it creates a new instance of the __ReportServiceClient__ - that is when the report or report service Uri have changed or the __RefreshReportCommand__ is executed through the __ReportViewerModel__.
Once you have implemented __IReportServiceClientFactory__, you should provide an instance to the report viewer so it will use it the next time it creates a new instance of the __ReportServiceClient__ - that is when the report or report service Uri have changed or the __RefreshReportCommand__ is executed through the __ReportViewerModel__.
The ReportViewer usually passes absolute [Uri](http://msdn.microsoft.com/en-us/library/system.uri%28VS.95%29.aspx) to the _IReportServiceClientFactory.Create()_ method. For more information on how the ReportServiceUri is resolved to absolute please review [Telerik.ReportViewer.Silverlight.ReportViewer.EnsureAbsoluteUri](/reporting/api/Telerik.ReportViewer.Silverlight.ReportViewer#Telerik_ReportViewer_Silverlight_ReportViewer_EnsureAbsoluteUri_System_Uri_)
The ReportViewer usually passes absolute [Uri](https://learn.microsoft.com/en-us/previous-versions/windows/silverlight/dotnet-windows-silverlight/txt7706a(v=vs.95)) to the _IReportServiceClientFactory.Create()_ method. For more information on how the ReportServiceUri is resolved to absolute please review [Telerik.ReportViewer.Silverlight.ReportViewer.EnsureAbsoluteUri](/api/Telerik.ReportViewer.Silverlight.ReportViewer#Telerik_ReportViewer_Silverlight_ReportViewer_EnsureAbsoluteUri_System_Uri_)
The example below illustrates how to implement and use a custom __IReportServiceClientFactory__ :
The example below illustrates how to implement and use a custom __IReportServiceClientFactory__:
{{source=CodeSnippets\SilverlightCS\API\Telerik\ReportViewer\Silverlight\CustomBindingsSnippets.cs region=UsingCustomBindings}}
{{source=CodeSnippets\SilverlightVB\API\Telerik\ReportViewer\Silverlight\CustomBindingsSnippets.vb region=UsingCustomBindings}}
````C#
using System;
using System.ServiceModel;
using System.Windows.Controls;
using Telerik.Reporting.Service.SilverlightClient;
using Telerik.ReportViewer.Silverlight;
public partial class MainPage : UserControl, IReportServiceClientFactory
{
public MainPage()
{
InitializeComponent();
this.ReportViewer1.ReportServiceClientFactory = this;
}
ReportServiceClient IReportServiceClientFactory.Create(System.Uri remoteAddress)
{
var binding = new BasicHttpBinding() // or BasicHttpBinding(BasicHttpSecurityMode.Transport) overload if SSL is used
{
MaxBufferSize = int.MaxValue,
MaxReceivedMessageSize = int.MaxValue,
ReceiveTimeout = new TimeSpan(0, 15, 0),
SendTimeout = new TimeSpan(0, 15, 0)
};
var endpointAddress = new EndpointAddress(remoteAddress);
return new ReportServiceClient(binding, endpointAddress);
}
}
````
````VB.NET
Imports System
Imports System.ServiceModel
Imports System.Windows.Controls
Imports Telerik.Reporting.Service.SilverlightClient
Imports Telerik.ReportViewer.Silverlight
Partial Public Class MainPage
Inherits UserControl
Implements IReportServiceClientFactory
Public Sub New()
InitializeComponent()
Me.ReportViewer1.ReportServiceClientFactory = Me
End Sub
Function Create(ByVal remoteAddress As Uri) As ReportServiceClient Implements IReportServiceClientFactory.Create
Dim binding = New BasicHttpBinding()
binding.MaxBufferSize = Integer.MaxValue
binding.MaxReceivedMessageSize = Integer.MaxValue
binding.ReceiveTimeout = New TimeSpan(0, 15, 0)
binding.SendTimeout = New TimeSpan(0, 15, 0)
Dim endpointAddress As New EndpointAddress(remoteAddress)
Return New ReportServiceClient(binding, endpointAddress)
End Function
End Class
````

Просмотреть файл

@ -24,10 +24,9 @@ __Required assemblies:__
__Optional assemblies:__
These assemblies add up to the core reporting functionality and should be used only if you need the specific feature. They are responsible for additional support formats, database session, retrieving data from an OLAP cube or using the Silverlight report viewer.
These assemblies add up to the core reporting functionality and should be used only if you need the specific feature. They are responsible for additional support formats, database session, or retrieving data from an OLAP cube.
* XPS rendering extension requires the __Telerik.Reporting.XpsRendering__ assembly (`Telerik.Reporting.XpsRendering.dll`).
* DOCX/PPTX/XLSX rendering extensions require `Telerik.Reporting.OpenXmlRendering.dll` and [Third-Party Dependencies]({%slug telerikreporting/using-reports-in-applications/third-party-dependencies%}) (`DocumentFormat.OpenXml.dll v.2.0.5022.0` or above with [binding redirect](https://learn.microsoft.com/en-us/dotnet/framework/configure-apps/file-schema/runtime/bindingredirect-element?redirectedfrom=MSDN).
* The Telerik Reporting WCF Service (if needed) requires __Telerik.Reporting.Service__ assembly (`Telerik.Reporting.Service.dll`).
* [Database Cache Provider]({%slug telerikreporting/using-reports-in-applications/export-and-configure/cache-management/other-reportviewer-controls/configuring-the-database-cache-provider%}) requires `Telerik.Reporting.Cache.Database.dll` and `Telerik Data Access`.
* [CubeDataSource]({%slug telerikreporting/designing-reports/connecting-to-data/data-source-components/cubedatasource-component/overview%}) requires `Telerik.Reporting.Adomd.dll` and [Third-Party Dependencies]({%slug telerikreporting/using-reports-in-applications/third-party-dependencies%}) (`Microsoft.AnalysisServices.AdomdClient.dll v.10.0.0.0` or above with proper [binding redirects]({%slug telerikreporting/designing-reports/connecting-to-data/data-source-components/cubedatasource-component/configuring-your-project-for-using-microsoft-analysis-services%})).

Просмотреть файл

@ -24,10 +24,9 @@ __Required assemblies:__
__Optional assemblies:__
These assemblies add up to the core reporting functionality and should be used only if you need the specific feature. They are responsible for additional support formats, database session, retrieving data from an OLAP cube or using the Silverlight report viewer.
These assemblies add up to the core reporting functionality and should be used only if you need the specific feature. They are responsible for additional support formats, database session, or retrieving data from an OLAP cube.
* XPS rendering extension requires the __Telerik.Reporting.XpsRendering__ assembly (`Telerik.Reporting.XpsRendering.dll`).
* DOCX/PPTX/XLSX rendering extensions require `Telerik.Reporting.OpenXmlRendering.dll` and [Third-Party Dependencies]({%slug telerikreporting/using-reports-in-applications/third-party-dependencies%}) (`DocumentFormat.OpenXml.dll v.2.0.5022.0` or above with [binding redirect](https://learn.microsoft.com/en-us/dotnet/framework/configure-apps/file-schema/runtime/bindingredirect-element?redirectedfrom=MSDN).
* The Telerik Reporting WCF Service (if needed) requires __Telerik.Reporting.Service__ assembly (`Telerik.Reporting.Service.dll`).
* [Database Cache Provider]({%slug telerikreporting/using-reports-in-applications/export-and-configure/cache-management/other-reportviewer-controls/configuring-the-database-cache-provider%}) requires `Telerik.Reporting.Cache.Database.dll` and `Telerik Data Access`.
* [CubeDataSource]({%slug telerikreporting/designing-reports/connecting-to-data/data-source-components/cubedatasource-component/overview%}) requires `Telerik.Reporting.Adomd.dll` and [Third-Party Dependencies]({%slug telerikreporting/using-reports-in-applications/third-party-dependencies%}) (`Microsoft.AnalysisServices.AdomdClient.dll v.10.0.0.0` or above with proper [binding redirects]({%slug telerikreporting/designing-reports/connecting-to-data/data-source-components/cubedatasource-component/configuring-your-project-for-using-microsoft-analysis-services%})).

Просмотреть файл

@ -111,7 +111,7 @@ Let's try to use a widget that the Native Blazor Report Viewer is not able to us
<Template Context="listViewContext">
@{
var isSelected = context.Value?.Equals(listViewContext.Value) ?? false;
var className = isSelected ? "k-state-selected" : string.Empty;
var className = (isSelected ? "k-selected" : string.Empty) + " k-list-item";
}
<div class="@className" @onclick="@(()=> context.Value = listViewContext.Value)">@listViewContext.Name</div>
</Template>
@ -121,12 +121,11 @@ Let's try to use a widget that the Native Blazor Report Viewer is not able to us
@{
var selectedValue = ((IEnumerable)context.Parameter.Value)?.Cast<object>()?.ToList();
}
<TelerikListView Data="@context.Parameter.AvailableValues">
<Template Context="listViewContext">
@{
var isSelected = selectedValue?.Contains(listViewContext.Value) ?? false;
var className = isSelected ? "k-state-selected" : string.Empty;
var className = (isSelected ? "k-selected" : string.Empty) + " k-list-item";
}
<div class="@className" @onclick="@(()=> MultiSelectParameterTemplateItemClick(context, listViewContext.Value))">@listViewContext.Name</div>
</Template>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: how,to,host,reports,service,in,asp.net,core,in,.net,5
published: True
position: 3
previous_url: /telerik-reporting-rest-service-aspnetcore-net5
previous_url: /telerik-reporting-rest-service-aspnetcore-net5,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/asp.net-core-web-api-implementation/host-reports-service-in-.net-5
---
# Hosting the Telerik Reporting REST Service in an ASP.NET Core Application in .NET 5

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: how,to,host,reports,service,in,asp.net,core,in,.net,6,with,top-level,statements
published: True
position: 2
previous_url: /telerik-reporting-rest-service-net6-minimal-api
previous_url: /telerik-reporting-rest-service-net6-minimal-api,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/asp.net-core-web-api-implementation/host-reports-service-in-.net-6-with-minimal-api
---
# Hosting the Telerik Reporting REST Service in ASP.NET Core in .NET 6 and .NET 7 with Top-Level Statements

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: how,to,host,reports,service,in,asp.net,core,2.1,and,2.2
published: True
position: 10
previous_url: /telerik-reporting-rest-service-aspnetcore-mvc-core2
previous_url: /telerik-reporting-rest-service-aspnetcore-mvc-core2,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/asp.net-core-web-api-implementation/host-reports-service-in-.net-core-2.1-and-2.2
---
# Hosting the Telerik Reporting REST Service in an ASP.NET Core Application in .NET Core 2.1 and 2.2

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: how,to,host,reports,service,in,asp.net,core,3.1
published: True
position: 4
previous_url: /telerik-reporting-rest-service-aspnetcore-mvc-core3
previous_url: /telerik-reporting-rest-service-aspnetcore-mvc-core3,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/asp.net-core-web-api-implementation/how-to-host-reports-service-in-asp.net-core-3.1
---
# Hosting the Telerik Reporting REST Service in an ASP.NET Core Application in .NET Core 3.1

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: overview
published: True
position: 0
previous_url: /telerik-reporting-rest-service-aspnetcore-mvc
previous_url: /telerik-reporting-rest-service-aspnetcore-mvc,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/asp.net-core-web-api-implementation/overview
---
# ASP.NET Core Web API Implementation in .NET and .NET Core

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: how,to,add,telerik,reporting,rest,web,api,to,web,application
published: True
position: 2
previous_url: /telerik-reporting-rest-host-http-service-using-web-hosting
previous_url: /telerik-reporting-rest-host-http-service-using-web-hosting,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/asp.net-web-api-implementation/add-rest-web-api-to-web-application
---
# Hosting the Telerik Reporting REST Service in an ASP.NET Application

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: how,to,implement,the,reportscontroller,in,an,application
published: True
position: 4
previous_url: /telerik-reporting-rest-implementing-http-service
previous_url: /telerik-reporting-rest-implementing-http-service,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/asp.net-web-api-implementation/how-to-implement-the-reportscontroller-in-an-application
---
# Implementing the ReportsController in an ASP.NET Application

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: how,to,self,host,telerik,reporting,rest,web,api
published: True
position: 3
previous_url: /telerik-reporting-rest-host-http-service-using-self-hosting
previous_url: /telerik-reporting-rest-host-http-service-using-self-hosting,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/asp.net-web-api-implementation/how-to-self-host-telerik-reporting-rest-web-api
---
# Self Hosting the Telerik Reporting REST Service Web API in a Console Application

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: overview
published: True
position: 0
previous_url: /telerik-reporting-rest-service-web-api
previous_url: /telerik-reporting-rest-service-web-api,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/asp.net-web-api-implementation/overview
---
# Telerik Reporting REST Service ASP.NET Web API Implementation

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: requirements,rest,webapi,api,asp.net,application
published: True
position: 1
previous_url: /telerik-reporting-rest-service-web-api-system-requirements
previous_url: /telerik-reporting-rest-service-web-api-system-requirements,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/asp.net-web-api-implementation/requirements
---
## Requirements for Using the Telerik Reporting REST WebAPI Service

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: implement,send,mail,message
published: True
position: 7
previous_url: /telerik-reporting-rest-implement-send-mail-message
previous_url: /telerik-reporting-rest-implement-send-mail-message,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/implement-send-mail-message
---
# Implementing Send Mail Message

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: localization
published: True
position: 6
previous_url: /telerik-reporting-rest-service-localization
previous_url: /telerik-reporting-rest-service-localization,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/localization
---
# Localization Overview

Просмотреть файл

@ -1,17 +1,54 @@
---
title: Overview
page_title: Generating Reports Remotely at a Glance
description: "Learn how to generate reports remotely by hosting the report engine in a REST Service when working with Telerik Reporting."
slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/overview
tags: telerik, reporting, embedding, reports, host, engine, generate, remotely, overview
page_title: Telerik Reporting REST Services Explained Briefly
description: "Learn the basics about the Telerik Reporting REST Services, including what it is, how it works and how to configure it."
slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview
tags: overview,rest,service,configure,reporting,basics
published: True
position: 0
previous_url: /telerik-reporting-services
previous_url: /telerik-reporting-rest-conception, /using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview,/telerik-reporting-services,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/overview
---
# Generating Reports Remotely Overview
# Telerik Reporting REST Services Overview
Telerik Reporting Services is a set of services that allows report generation from client applications. Based on the technology there are:
The Telerik Reporting REST service provides an Application Programming Interface (API) over HTTP to the reports generation engine. This engine allows exporting report documents in all supported rendering formats. The server-client communication relies on simple [Data Transfer Objects](https://martinfowler.com/eaaCatalog/dataTransferObject.html) (DTOs). All DTOs are JSON encoded.
* [Telerik Reporting REST Service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview%}) has two implementations based on [ASP.NET/ASP.NET Core WebAPI frameworks](https://dotnet.microsoft.com/en-us/apps/aspnet/apis) and [ServiceStack](https://servicestack.net/). It's designed for the purposes of the [Telerik HTML5 Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/overview%}). The service can be used directly by any third party client applications as well.
* [Telerik Reporting WCF Service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-wcf-service/overview%}) is based on [Windows Communication Foundation (WCF)](https://learn.microsoft.com/en-us/previous-versions/dotnet/netframework-4.0/dd456779(v=vs.100)) and is designed for the purposes of the [Telerik Silverlight Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/silverlight-application/overview%}). The service can be used directly by any third party client applications as well.
The primary usage of the service is in the [HTML5 Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/overview%}) ecosystem. It leverages the pure client-side implementation of the viewer.
> You can use the Reporting REST service in a JavaScript application without the viewer. Refer to the _telerikReportViewer.ServiceClient_ class in the JavaScript API.
The service has several implementations targeting different web service frameworks which are described in this chapter.
## How it Works
The Reporting REST service exposes all report generation assets as web resources that can be accessed from specific web endpoints. These exposed assets include:
* Report instances
* Report documents
* Images
* Other rendered report meta-data
To access these report generation assets, a client host issues a set of requests and wraps them in a client session identified by a `clientId`.
### Serving a Request
The following steps describe how the Reporting REST service serves a client's request:
1. The client of the service requests a report by a JSON object called a __client report source__.
1. The service resolves the request to a [.NET report source]({%slug telerikreporting/designing-reports/report-sources/overview%}). To do that, it uses a [REST Service Report Source Resolver]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-report-source-resolver/overview%}).
1. The service serves the rendered reports as web-accessible resources.
1. The service caches all generated resources in a [REST Service Storage]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-storage/overview%}) of choice.
## Configuration Hints
You can configure the report service in the application's configuration file - either .config or .json for the different service implementations. For more details, see [restReportService Element]({%slug telerikreporting/using-reports-in-applications/export-and-configure/configure-the-report-engine/restreportservice-element%}).
Furthermore, each of the steps listed above allows you additional configuration and customization, for example:
* The client session expires within a particular time, which can be configured. That said, within a single client session, the same request will always return the same cached resource.
>An exception is the [Register Client]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/clients-api/register-client%}) endpoint, which can enforce regeneration to support the Refresh Report functionality. To achieve that, add a useCache = false setting to the request's body.
* In some scenarios, you need to share the service with more than one app. For these, you may need to turn on [Cross-Origin Resource Sharing](https://fetch.spec.whatwg.org/).
* If all new report requests get executed simultaneously, the host will get overloaded. To avoid this, the service executes the report generation requests in a task queue. The count of the simultaneously rendered reports is [configurable]({%slug telerikreporting/using-reports-in-applications/export-and-configure/configure-the-report-engine/restreportservice-element%}).
* In some scenarios, you need to host two or more report services in a single application. To achieve that, assign a unique HostAppId property to each implementing controller. This will produce a dedicated task queue for each service instance. Additionally, you must set the appropriate worker count for each queue to avoid system overload.

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: get,clients,session,timeout,seconds
published: True
position: 3
previous_url: /telerik-reporting-rest-api-get-clients-session-timeout-seconds
previous_url: /telerik-reporting-rest-api-get-clients-session-timeout-seconds,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/clients-api/get-clients-session-timeout-seconds
---
# `Get Clients Session Timeout Seconds` Overview

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: keep,client,alive
published: True
position: 2
previous_url: /telerik-reporting-rest-api-keep-client-alive
previous_url: /telerik-reporting-rest-api-keep-client-alive,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/clients-api/keep-client-alive
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: register,client
published: True
position: 0
previous_url: /telerik-reporting-rest-api-register-client
previous_url: /telerik-reporting-rest-api-register-client,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/clients-api/register-client
---
# `Register Client` Overview

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: unregister,client
published: True
position: 1
previous_url: /telerik-reporting-rest-api-unregister-client
previous_url: /telerik-reporting-rest-api-unregister-client,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/clients-api/unregister-client
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: apply,interactive,action,on,document
published: True
position: 6
previous_url: /telerik-reporting-rest-documents-api-apply-interactive-action
previous_url: /telerik-reporting-rest-documents-api-apply-interactive-action,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/documents-api/apply-interactive-action-on-document
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: get,document,info
published: True
position: 1
previous_url: /telerik-reporting-rest-documents-api-get-document-info
previous_url: /telerik-reporting-rest-documents-api-get-document-info,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/documents-api/get-document-info
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: get,document,page
published: True
position: 4
previous_url: /telerik-reporting-rest-documents-api-get-document-page
previous_url: /telerik-reporting-rest-documents-api-get-document-page,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/documents-api/get-document-page
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: get,document,resource
published: True
position: 5
previous_url: /telerik-reporting-rest-documents-api-get-document-resource
previous_url: /telerik-reporting-rest-documents-api-get-document-resource,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/documents-api/get-document-resource
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: get,document
published: True
position: 2
previous_url: /telerik-reporting-rest-documents-api-get-document
previous_url: /telerik-reporting-rest-documents-api-get-document,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/documents-api/get-document
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: release,document
published: True
position: 8
previous_url: /telerik-reporting-rest-documents-api-destroy-document
previous_url: /telerik-reporting-rest-documents-api-destroy-document,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/documents-api/release-document
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: resolve,document
published: True
position: 0
previous_url: /telerik-reporting-rest-documents-api-request-document
previous_url: /telerik-reporting-rest-documents-api-request-document,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/documents-api/resolve-document
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: search,in,a,document
published: True
position: 7
previous_url: /telerik-reporting-rest-documents-api-search-in-document
previous_url: /telerik-reporting-rest-documents-api-search-in-document,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/documents-api/search-in-a-document
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: send,document
published: True
position: 3
previous_url: /telerik-reporting-rest-documents-api-send-document
previous_url: /telerik-reporting-rest-documents-api-send-document,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/documents-api/send-document
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: get,available,document,formats
published: True
position: 0
previous_url: /telerik-reporting-rest-general-api-get-document-formats
previous_url: /telerik-reporting-rest-general-api-get-document-formats,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/general-api/get-available-document-formats
---
# `Get Available Document Formats` Overview

Просмотреть файл

@ -6,6 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: get,version
published: True
position: 1
previous_url: /embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/general-api/get-version
---
# `Get Version` Overview

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: bookmarknode
published: True
position: 0
previous_url: /telerik-reporting-rest-json-entities-bookmarknode
previous_url: /telerik-reporting-rest-json-entities-bookmarknode,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/json-entities/bookmarknode
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: documentinfo
published: True
position: 1
previous_url: /telerik-reporting-rest-json-entities-documentinfo
previous_url: /telerik-reporting-rest-json-entities-documentinfo,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/json-entities/documentinfo
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: formatinfo
published: True
position: 2
previous_url: /telerik-reporting-rest-json-entities-formatinfo
previous_url: /telerik-reporting-rest-json-entities-formatinfo,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/json-entities/formatinfo
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: formatkey
published: True
position: 3
previous_url: /telerik-reporting-rest-json-entities-formatkey
previous_url: /telerik-reporting-rest-json-entities-formatkey,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/json-entities/formatkey
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: mailmessage
published: True
position: 8
previous_url: /telerik-reporting-rest-json-entities-mailmessage
previous_url: /telerik-reporting-rest-json-entities-mailmessage,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/json-entities/mailmessage
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: pageinfo
published: True
position: 4
previous_url: /telerik-reporting-rest-json-entities-pageinfo
previous_url: /telerik-reporting-rest-json-entities-pageinfo,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/json-entities/pageinfo
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: parameter
published: True
position: 5
previous_url: /telerik-reporting-rest-json-entities-parameter
previous_url: /telerik-reporting-rest-json-entities-parameter,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/json-entities/parameter
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: parametervalue
published: True
position: 6
previous_url: /telerik-reporting-rest-json-entities-parametervalue
previous_url: /telerik-reporting-rest-json-entities-parametervalue,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/json-entities/parametervalue
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: reportsource
published: True
position: 7
previous_url: /telerik-reporting-rest-json-entities-reportsource
previous_url: /telerik-reporting-rest-json-entities-reportsource,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/json-entities/reportsource
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: searchinfo
published: True
position: 9
previous_url: /telerik-reporting-rest-json-entities-searchinfo
previous_url: /telerik-reporting-rest-json-entities-searchinfo,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/json-entities/searchinfo
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: searchresultsinfo
published: True
position: 10
previous_url: /telerik-reporting-rest-json-entities-searchresultsinfo
previous_url: /telerik-reporting-rest-json-entities-searchresultsinfo,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/json-entities/searchresultsinfo
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: overview,rest,api,uri,http,service,reporting,request
published: True
position: 0
previous_url: /telerik-reporting-rest-api
previous_url: /telerik-reporting-rest-api,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/overview
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: release,report,instance
published: True
position: 1
previous_url: /telerik-reporting-rest-report-instances-api-destroy-report-instance
previous_url: /telerik-reporting-rest-report-instances-api-destroy-report-instance,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/report-instances-api/release-report-instance
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: resolve,report,instance
published: True
position: 0
previous_url: /telerik-reporting-rest-report-instances-api-create-report-instance
previous_url: /telerik-reporting-rest-report-instances-api-create-report-instance,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/report-instances-api/resolve-report-instance
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: get,report,parameters
published: True
position: 0
previous_url: /telerik-reporting-rest-report-parameters-api-get-report-parameters
previous_url: /telerik-reporting-rest-report-parameters-api-get-report-parameters,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/report-parameters-api/get-report-parameters
---
<style>

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: how,to,implement,a,custom,report,source,resolver
published: True
position: 1
previous_url: /telerik-reporting-rest-custom-report-resolver
previous_url: /telerik-reporting-rest-custom-report-resolver,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-report-source-resolver/how-to-implement-a-custom-report-source-resolver
---
# Steps for Implementing a Custom ReportSource Resolver

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: overview,report,reportsource,resolver,implementation,built-in,rest,service
published: True
position: 0
previous_url: /telerik-reporting-rest-service-report-resolver
previous_url: /telerik-reporting-rest-service-report-resolver,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-report-source-resolver/overview
---
# REST Service ReportSource Resolver Overview

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: how,to,use,custom,report,source,resolver,and,custom,report,document,modify,dynamically
published: True
position: 2
previous_url: /telerik-reporting-rest-using-custom-report-resolver-and-document-resolver
previous_url: /telerik-reporting-rest-using-custom-report-resolver-and-document-resolver,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-report-source-resolver/use-custom-report-source-and-document-resolvers
---
# Implementing Custom ReportSource and ReportDocument Resolvers To Fully Control the Report in Run Time

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: how,to,configure,an,mssql,database,storage,tutorial
published: True
position: 1
previous_url: /telerik-reporting-rest-howto-use-mssql-storage
previous_url: /telerik-reporting-rest-howto-use-mssql-storage,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-storage/how-to-configure-an-mssql-database-storage
---
# Configuring an MSSQL Database Storage for the Reporting REST Service

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: how,to,use,redis,storage,tutorial
published: True
position: 2
previous_url: /telerik-reporting-rest-howto-use-redis-storage
previous_url: /telerik-reporting-rest-howto-use-redis-storage,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-storage/how-to-use-redis-storage
---
# Using Redis Storage for the Reporting REST Service

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: overview,rest,storage,scenario,implementation,service,reporting
published: True
position: 0
previous_url: /telerik-reporting-rest-service-storage
previous_url: /telerik-reporting-rest-service-storage,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-storage/overview
---
# REST Service Storage Overview

Просмотреть файл

@ -0,0 +1,17 @@
---
title: Overview
page_title: Generating Reports Remotely at a Glance
description: "Learn how to generate reports remotely by hosting the report engine in a REST Service when working with Telerik Reporting."
slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/overview
tags: telerik, reporting, embedding, reports, host, engine, generate, remotely, overview
published: False
position: 0
previous_url: /telerik-reporting-services
---
# Generating Reports Remotely Overview
Telerik Reporting Services is a set of services that allows report generation from client applications. Based on the technology there are:
* [Telerik Reporting REST Service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview%}) has two implementations based on [ASP.NET/ASP.NET Core WebAPI frameworks](https://dotnet.microsoft.com/en-us/apps/aspnet/apis) and [ServiceStack](https://servicestack.net/). It's designed for the purposes of the [Telerik HTML5 Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/overview%}). The service can be used directly by any third party client applications as well.
* [Telerik Reporting WCF Service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-wcf-service/overview%}) is based on [Windows Communication Foundation (WCF)](https://learn.microsoft.com/en-us/previous-versions/dotnet/netframework-4.0/dd456779(v=vs.100)) and is designed for the purposes of the [Telerik Silverlight Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/silverlight-application/overview%}). The service can be used directly by any third party client applications as well.

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: how,to,add,telerik,reporting,rest,servicestack,to,web,application
published: True
position: 2
previous_url: /telerik-reporting-rest-servicestack-hosting-iis
previous_url: /telerik-reporting-rest-servicestack-hosting-iis,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/servicestack-implementation/add-rest-servicestack-to-web-application
---
# Adding Telerik Reporting REST ServiceStack to Web Application

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: overview
published: True
position: 0
previous_url: /telerik-reporting-rest-service-service-stack
previous_url: /telerik-reporting-rest-service-service-stack,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/servicestack-implementation/overview
---
# ServiceStack Implementation Overview

Просмотреть файл

@ -6,7 +6,7 @@ slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remo
tags: requirements
published: True
position: 1
previous_url: /telerik-reporting-rest-service-service-stack-system-requirements
previous_url: /telerik-reporting-rest-service-service-stack-system-requirements,/embedding-reports/host-the-report-engine-remotely/telerik-reporting-rest-services/servicestack-implementation/requirements
---
# Requirements for Embedding the Telerik Reporting REST ServiceStack Service in an Application

Просмотреть файл

@ -1,54 +0,0 @@
---
title: Overview
page_title: Telerik Reporting REST Services Explained Briefly
description: "Learn the basics about the Telerik Reporting REST Services, including what it is, how it works and how to configure it."
slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview
tags: overview,rest,service,configure,reporting,basics
published: True
position: 0
previous_url: /telerik-reporting-rest-conception, /using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview
---
# Telerik Reporting REST Services Overview
The Telerik Reporting REST service provides an Application Programming Interface (API) over HTTP to the reports generation engine. This engine allows exporting report documents in all supported rendering formats. The server-client communication relies on simple [Data Transfer Objects](https://martinfowler.com/eaaCatalog/dataTransferObject.html) (DTOs). All DTOs are JSON encoded.
The primary usage of the service is in the [HTML5 Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/overview%}) ecosystem. It leverages the pure client-side implementation of the viewer.
> You can use the Reporting REST service in a JavaScript application without the viewer. Refer to the _telerikReportViewer.ServiceClient_ class in the JavaScript API.
The service has several implementations targeting different web service frameworks which are described in this chapter.
## How it Works
The Reporting REST service exposes all report generation assets as web resources that can be accessed from specific web endpoints. These exposed assets include:
* Report instances
* Report documents
* Images
* Other rendered report meta-data
To access these report generation assets, a client host issues a set of requests and wraps them in a client session identified by a `clientId`.
### Serving a Request
The following steps describe how the Reporting REST service serves a client's request:
1. The client of the service requests a report by a JSON object called a __client report source__.
1. The service resolves the request to a [.NET report source]({%slug telerikreporting/designing-reports/report-sources/overview%}). To do that, it uses a [REST Service Report Source Resolver]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-report-source-resolver/overview%}).
1. The service serves the rendered reports as web-accessible resources.
1. The service caches all generated resources in a [REST Service Storage]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-service-storage/overview%}) of choice.
## Configuration Hints
You can configure the report service in the application's configuration file - either .config or .json for the different service implementations. For more details, see [restReportService Element]({%slug telerikreporting/using-reports-in-applications/export-and-configure/configure-the-report-engine/restreportservice-element%}).
Furthermore, each of the steps listed above allows you additional configuration and customization, for example:
* The client session expires within a particular time, which can be configured. That said, within a single client session, the same request will always return the same cached resource.
>An exception is the [Register Client]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/clients-api/register-client%}) endpoint, which can enforce regeneration to support the Refresh Report functionality. To achieve that, add a useCache = false setting to the request's body.
* In some scenarios, you need to share the service with more than one app. For these, you may need to turn on [Cross-Origin Resource Sharing](https://fetch.spec.whatwg.org/).
* If all new report requests get executed simultaneously, the host will get overloaded. To avoid this, the service executes the report generation requests in a task queue. The count of the simultaneously rendered reports is [configurable]({%slug telerikreporting/using-reports-in-applications/export-and-configure/configure-the-report-engine/restreportservice-element%}).
* In some scenarios, you need to host two or more report services in a single application. To achieve that, assign a unique HostAppId property to each implementing controller. This will produce a dedicated task queue for each service instance. Additionally, you must set the appropriate worker count for each queue to avoid system overload.

Просмотреть файл

@ -11,6 +11,8 @@ previous_url: /silverlight-hosting-in-iis
# How to Add Telerik Reporting WCF Service to Web Application
> The Silverlight Report Viewer and its WCF Reporting Service are no longer supported and deployed with the installation of Telerik Reporting. The last release of Telerik Reporting with included Silverlight Report Viewer is [R1 2023](https://www.telerik.com/support/whats-new/reporting/release-history/progress-telerik-reporting-r1-2023-17-0-23-118).
This topic describes how to host the Telerik Reporting WCF Service in IIS. For this purpose you should follow the steps below to configure your web application:
1. Required assembly references:
@ -19,7 +21,7 @@ This topic describes how to host the Telerik Reporting WCF Service in IIS. For t
+ __Telerik.Reporting.Service.dll__ assembly
+ Assemblies with Telerik Reports to be exposed through the Reporting Service
1. Add .svc file (e.g. __ReportService.svc__) to reference the [Telerik.Reporting.Service.ReportService](/reporting/api/Telerik.Reporting.Service.ReportService). The file would contain the following line only:
1. Add .svc file (e.g. __ReportService.svc__) to reference the [Telerik.Reporting.Service.ReportService](/api/Telerik.Reporting.Service.ReportService). The file would contain the following line only:
````XML
<%@ServiceHost Service="Telerik.Reporting.Service.ReportService, Telerik.Reporting.Service, Version=x.x.x.x, Culture=neutral, PublicKeyToken=A9D7983DFCC261BE" %>

Просмотреть файл

@ -1,7 +1,7 @@
---
title: How to Enable SSL for Telerik Reporting WCF service
page_title: How to Enable SSL for Telerik Reporting WCF service
description: How to Enable SSL for Telerik Reporting WCF service
title: Enabling SSL
page_title: Enabling SSL for Telerik Reporting WCF service
description: "Learn How to Enable SSL for Telerik Reporting WCF service."
slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-wcf-service/how-to-enable-ssl-for-telerik-reporting-wcf-service
tags: how,to,enable,ssl,for,telerik,reporting,wcf,service
published: True
@ -9,80 +9,79 @@ position: 3
previous_url: /silverlight-enable-ssl-for-telerik-reporting-wcf-service
---
# How to Enable SSL for Telerik Reporting WCF service
# Enabling SSL for the Reporting WCF service
> The Silverlight Report Viewer and its WCF Reporting Service are no longer supported and deployed with the installation of Telerik Reporting. The last release of Telerik Reporting with included Silverlight Report Viewer is [R1 2023](https://www.telerik.com/support/whats-new/reporting/release-history/progress-telerik-reporting-r1-2023-17-0-23-118).
When using HTTP as the transport, security is provided by a Secure Sockets Layer (SSL) implementation. SSL is widely used on the Internet to authenticate a service to a client, and then to provide confidentiality (encryption) to the channel. This topic explains how to enable SSL for the Telerik Reporting WCF service.
The solution is to configure corresponding bindings to use [Transport security mode](http://msdn.microsoft.com/en-us/library/ms729700(v=vs.110).aspx). Use the [bindingConfiguration property](http://msdn.microsoft.com/en-us/library/system.servicemodel.configuration.serviceendpointelement.bindingconfiguration.aspx) inside your endpoint definition to point to your custom bindings.
The solution is to configure corresponding bindings to use [Transport security mode](https://learn.microsoft.com/en-us/dotnet/framework/wcf/feature-details/transport-security-overview). Use the [bindingConfiguration property](https://learn.microsoft.com/en-us/dotnet/api/system.servicemodel.configuration.serviceendpointelement.bindingconfiguration?view=netframework-4.8.1#System_ServiceModel_Configuration_ServiceEndpointElement_BindingConfiguration) inside your endpoint definition to point to your custom bindings.
> To run your application using HTTPS the application must be hosted on a server supporting SSL. The Visual Studio Development Server, also known as Cassini, does not support SSL. for more details about configuring your IIS hosted application to use SSL, please refer to [How to: Configure an IIS-hosted WCF service with SSL](http://msdn.microsoft.com/en-us/library/hh556232(v=vs.110).aspx)
> To run your application using HTTPS the application must be hosted on a server supporting SSL. The Visual Studio Development Server, also known as Cassini, does not support SSL. for more details about configuring your IIS hosted application to use SSL, please refer to [How to: Configure an IIS-hosted WCF service with SSL](https://learn.microsoft.com/en-us/dotnet/framework/wcf/feature-details/how-to-configure-an-iis-hosted-wcf-service-with-ssl)
The entire HTTPS-enabled system.serviceModel section of web.config is below:
The entire HTTPS-enabled system.serviceModel section of web.config is below:
````XML
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
<!--security settings -->
<bindings>
<basicHttpBinding>
<binding name="BasicHttpBindingConfig">
<security mode="Transport"/>
</binding>
</basicHttpBinding>
<webHttpBinding>
<binding name="WebHttpBindingConfig">
<security mode="Transport"/>
</binding>
</webHttpBinding>
</bindings>
<services>
<service name="Telerik.Reporting.Service.ReportService"
behaviorConfiguration="ReportServiceBehavior">
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
<!--security settings -->
<bindings>
<basicHttpBinding>
<binding name="BasicHttpBindingConfig">
<security mode="Transport"/>
</binding>
</basicHttpBinding>
<webHttpBinding>
<binding name="WebHttpBindingConfig">
<security mode="Transport"/>
</binding>
</webHttpBinding>
</bindings>
<services>
<service name="Telerik.Reporting.Service.ReportService"
behaviorConfiguration="ReportServiceBehavior">
<!-- endpoint allowing clients access to the Reporting WCF service -->
<endpoint address=""
binding="basicHttpBinding"
bindingConfiguration="BasicHttpBindingConfig"
contract="Telerik.Reporting.Service.IReportService">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address=""
binding="basicHttpBinding"
bindingConfiguration="BasicHttpBindingConfig"
contract="Telerik.Reporting.Service.IReportService">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<!-- endpoint allowing clients access to resources as images -->
<endpoint address="resources"
binding="webHttpBinding"
bindingConfiguration="WebHttpBindingConfig"
behaviorConfiguration="WebBehavior"
contract="Telerik.Reporting.Service.IResourceService"/>
<endpoint address="resources"
binding="webHttpBinding"
bindingConfiguration="WebHttpBindingConfig"
behaviorConfiguration="WebBehavior"
contract="Telerik.Reporting.Service.IResourceService"/>
<!-- endpoint allowing clients access to receive service's metadata via SOAP messages -->
<endpoint address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="ReportServiceBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior name="WebBehavior">
<webHttp />
</behavior>
</endpointBehaviors>
</behaviors>
</system.serviceModel>
<endpoint address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="ReportServiceBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior name="WebBehavior">
<webHttp />
</behavior>
</endpointBehaviors>
</behaviors>
</system.serviceModel>
````
> The service can be tested after browsing the .svc file using HTTPS. If you want to show the service wsdl content set the ReportServiceBehavior `<serviceMetadata httpsGetEnabled="true" />`
> The service can be tested after browsing the .svc file using HTTPS. If you want to show the service wsdl content set the ReportServiceBehavior `<serviceMetadata httpsGetEnabled="true" />`
## See Also
* [How to Setup SSL on IIS 7](http://learn.iis.net/page.aspx/144/how-to-setup-ssl-on-iis-70/)
* [Transport Security Overview](http://msdn.microsoft.com/en-us/library/ms729700.aspx)
* [HTTP Transport Security](http://msdn.microsoft.com/en-us/library/ms734679.aspx)
* [BasicHttpSecurityMode Enumeration](http://msdn.microsoft.com/en-us/library/system.servicemodel.basichttpsecuritymode.aspx)
* [How to Setup SSL on IIS 7](https://learn.microsoft.com/en-us/iis/manage/configuring-security/how-to-set-up-ssl-on-iis)
* [Transport Security Overview](https://learn.microsoft.com/en-us/dotnet/framework/wcf/feature-details/transport-security-overview)
* [HTTP Transport Security](https://learn.microsoft.com/en-us/dotnet/framework/wcf/feature-details/http-transport-security)
* [BasicHttpSecurityMode Enumeration](https://learn.microsoft.com/en-us/dotnet/api/system.servicemodel.basichttpsecuritymode?view=dotnet-plat-ext-7.0)

Просмотреть файл

@ -1,7 +1,7 @@
---
title: How to Implement and use custom IReportResolver
page_title: How to Implement and use custom IReportResolver
description: How to Implement and use custom IReportResolver
title: Custom IReportResolver
page_title: Implementing and Using Custom IReportResolver Explained
description: "Learn How to Implement and use a custom IReportResolver in Telerik Reporting WCF Service."
slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-wcf-service/how-to-implement-and-use-custom-ireportresolver
tags: how,to,implement,and,use,custom,ireportresolver
published: True
@ -9,75 +9,193 @@ position: 4
previous_url: /WCF-report-service-How-to-add-custom-report-resolver
---
# How to Implement and use custom IReportResolver
# Implementing and Using Custom IReportResolver
The client programs invoke the report rendering from the service using a string report description. Based on the report description the services report resolvers try to create an IReportDocument instance needed by the ReportProcessor.
> The Silverlight Report Viewer and its WCF Reporting Service are no longer supported and deployed with the installation of Telerik Reporting. The last release of Telerik Reporting with included Silverlight Report Viewer is [R1 2023](https://www.telerik.com/support/whats-new/reporting/release-history/progress-telerik-reporting-r1-2023-17-0-23-118).
The IReportDocument interface represents a report document. This includes a single Report or ReportBook. The IReportDocument returned by the report resolver will be further handled by the ReportProcessor.
The client programs invoke the report rendering from the service using a string report description. Based on the report description the services report resolvers try to create an IReportDocument instance needed by the ReportProcessor.
The service includes default report resolvers that are capable to resolve IReportDocument from relative and physical path that points to trdp or trdx file (report definition serialized in XML) or from assembly qualified name. This way we cover most of the scenarios. However if you have requirements that are not covered by the default report resolvers, such as retrieving report definitions stored in database or building a report book based on the report description, you can plug into the Telerik Reporting Service report resolving workflow.
The IReportDocument interface represents a report document. This includes a single Report or ReportBook. The IReportDocument returned by the report resolver will be further handled by the ReportProcessor.
The report resolvers implement the IReportResolver interface. This interface has only one method Resolve with a string argument - the report description. In custom resolver implementations you should use that description as you like in order to map it to IReportDocument instance.
The service includes default report resolvers that are capable to resolve IReportDocument from relative and physical path that points to trdp or trdx file (report definition serialized in XML) or from assembly qualified name. This way we cover most of the scenarios. However if you have requirements that are not covered by the default report resolvers, such as retrieving report definitions stored in database or building a report book based on the report description, you can plug into the Telerik Reporting Service report resolving workflow.
If you use the Silverlight report viewer the report description is provided by the __ReportViewer.Report property__.
The report resolvers implement the IReportResolver interface. This interface has only one method Resolve with a string argument - the report description. In custom resolver implementations you should use that description as you like in order to map it to IReportDocument instance.
If you use the Silverlight report viewer the report description is provided by the __ReportViewer.Report property__.
## Extending Telerik Reporting WCF service with custom IReportResolver implementation:
1. __Prerequisites__
+ Web application
+ Reference to System.ServiceModel.dll assembly
+ Web application
+ Reference to System.ServiceModel.dll assembly
+ Reference to Telerik.Reporting.Service.dll assembly
+ Telerik Reports definitions to be exposed through the Reporting Service
+ Reference to Telerik.Reporting.Service.dll assembly
1. __Steps to implement and use custom IReportResolver__
+ Telerik Reports definitions to be exposed through the Reporting Service
1. Implement the Telerik.Reporting.Service.IReportResolver
2. __Steps to implement and use custom IReportResolver__
1. Implement the Telerik.Reporting.Service.IReportResolver
````C#
class CustomReportService : ReportService
{
static readonly IReportResolver resolver = new ReportResolver();
{{source=CodeSnippets\CS\API\Telerik\Reporting\Service\ReportServiceBaseSnippets.cs region=ReportResolverBasic}}
{{source=CodeSnippets\VB\API\Telerik\Reporting\Service\ReportServiceBaseSnippets.vb region=ReportResolverBasic}}
public CustomReportService()
{
this.ReportResolver = resolver;
}
}
````
````VB.NET
Class CustomReportService
Inherits ReportService
Shared ReadOnly resolver As IReportResolver = New ReportResolver()
1. In order to utilize your IReportResolver implementation, create a _Telerik.Reporting.Service_ subclass and in your subclass constructor pass your IReportResolver implementation to the _Telerik.Reporting.ServiceBase.ReportResolver_ property:
Public Sub New()
Me.ReportResolver = resolver
End Sub
End Class
````
{{source=CodeSnippets\CS\API\Telerik\Reporting\Service\ReportServiceBaseSnippets.cs region=ReportServiceReportResolverBasic}}
{{source=CodeSnippets\VB\API\Telerik\Reporting\Service\ReportServiceBaseSnippets.vb region=ReportServiceReportResolverBasic}}
1. Even if you use your own IReportResolver implementation you can still fallback to the default IReportResolver implementations as shown in the following walkthrough.
1. In order to utilize your IReportResolver implementation, create a _Telerik.Reporting.Service_ subclass and in your subclass constructor pass your IReportResolver implementation to the _Telerik.Reporting.ServiceBase.ReportResolver_ property:
3. __Steps to implement and use custom IReportResolver with fallback mechanism__
````C#
class CustomReportService : ReportService
{
static readonly IReportResolver resolver = new ReportResolver();
1. Add to your IReportResolver implementation a constructor with parameter IReportDocument parentResolver. Then use the parentResolver if the custom report resolving mechanism fails.
public CustomReportService()
{
this.ReportResolver = resolver;
}
}
````
````VB.NET
Class CustomReportService
Inherits ReportService
Shared ReadOnly resolver As IReportResolver = New ReportResolver()
Public Sub New()
Me.ReportResolver = resolver
End Sub
End Class
````
1. Even if you use your own IReportResolver implementation you can still fallback to the default IReportResolver implementations as shown in the following walkthrough.
1. __Steps to implement and use custom IReportResolver with fallback mechanism__
1. Add to your IReportResolver implementation a constructor with parameter IReportDocument parentResolver. Then use the parentResolver if the custom report resolving mechanism fails.
````C#
class ReportServiceWithResolverFallback : ReportService
{
static readonly IReportResolver resolvers = new ReportResolverWithFallBack(
new ReportTypeResolver(
new ReportFileResolverWeb(null)));
public ReportServiceWithResolverFallback()
{
this.ReportResolver = resolvers;
}
}
````
````VB.NET
Class ReportServiceWithResolverFallback
Inherits ReportService
Shared ReadOnly resolvers As IReportResolver = New ReportResolverWithFallBack(New ReportTypeResolver(New ReportFileResolverWeb(Nothing)))
Public Sub New()
Me.ReportResolver = resolvers
End Sub
End Class
````
{{source=CodeSnippets\CS\API\Telerik\Reporting\Service\ReportServiceBaseSnippets.cs region=ReportResolverWithFallBack}}
{{source=CodeSnippets\VB\API\Telerik\Reporting\Service\ReportServiceBaseSnippets.vb region=ReportResolverWithFallBack}}
1. Add to Telerik.Reporting.Service subclass the IReportResolver implementations in a chain. Thus the custom one will be executed first, if it fails the second one and so on.
{{source=CodeSnippets\CS\API\Telerik\Reporting\Service\ReportServiceBaseSnippets.cs region=ReportServiceReportResolverWithFallBack}}
{{source=CodeSnippets\VB\API\Telerik\Reporting\Service\ReportServiceBaseSnippets.vb region=ReportServiceReportResolverWithFallBack}}
````C#
class ReportServiceWithResolverFallback : ReportService
{
static readonly IReportResolver resolvers = new ReportResolverWithFallBack(
new ReportTypeResolver(
new ReportFileResolverWeb(null)));
public ReportServiceWithResolverFallback()
{
this.ReportResolver = resolvers;
}
}
````
````VB.NET
Class ReportServiceWithResolverFallback
Inherits ReportService
Shared ReadOnly resolvers As IReportResolver = New ReportResolverWithFallBack(New ReportTypeResolver(New ReportFileResolverWeb(Nothing)))
Public Sub New()
Me.ReportResolver = resolvers
End Sub
End Class
````
You can use for fallback the default IReportResolver implementations:
+ ReportTypeResolver - Resolves IReportDocument from assembly qualified name
+ ReportFileResolver - Resolves IReportDocument from physical path to trdp or trdx file
You can use for fallback the default IReportResolver implementations:
+ ReportFileResolverWeb - Resolves IReportDocument from a relative path to trdp or trdx file
+ ReportTypeResolver - Resolves IReportDocument from assembly qualified name
+ ReportFileResolver - Resolves IReportDocument from physical path to trdp or trdx file
+ ReportFileResolverWeb - Resolves IReportDocument from a relative path to trdp or trdx file
4. __Hosting Telerik.Reporting.Service.ReportService subclass in IIS__
1. __Hosting Telerik.Reporting.Service.ReportService subclass in IIS__
1. Add `.svc` file (e.g. `ReportService.svc`) to reference your Telerik.Reporting.Service.ReportService subclass. The file would contain the following line only:
1. Add .svc file (e.g. ReportService.svc) to reference your Telerik.Reporting.Service.ReportService subclass. The file would contain the following line only:
````XML
<%@ServiceHost Service="CSharp.SilverlightDemo.Web.CustomReportService, CSharp.SilverlightDemo.Web" %>
````
1. Register the Reporting Service endpoints with service name your Telerik.Reporting.Service.ReportService subclass in the web.config:
1. Register the Reporting Service endpoints with service name your Telerik.Reporting.Service.ReportService subclass in the `web.config`:
{{source=CodeSnippets\CS\API\Telerik\Reporting\Service\HostedSubclassService.xml}}
````XML
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<services>
<service name="CSharp.SilverlightDemo.Web.CustomReportService"
behaviorConfiguration="ReportServiceBehavior">
<endpoint
address=""
binding="basicHttpBinding"
contract="Telerik.Reporting.Service.IReportService">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint
address="resources"
binding="webHttpBinding"
behaviorConfiguration="WebBehavior"
contract="Telerik.Reporting.Service.IResourceService"/>
<endpoint
address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="ReportServiceBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior name="WebBehavior">
<webHttp />
</behavior>
</endpointBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
````
The custom resolver's Resolve method is called on each interaction with the report in the Silverlight ReportViewer e.g., changing report parameters' values or hitting refresh. To avoid unexpected results the recommended [Report Sources]({%slug telerikreporting/designing-reports/report-sources/overview%}) to work with are __UriReportSource__ and __TypeReportSource__.
The custom resolver's Resolve method is called on each interaction with the report in the Silverlight ReportViewer e.g., changing report parameters' values or hitting refresh. To avoid unexpected results the recommended [Report Sources]({%slug telerikreporting/designing-reports/report-sources/overview%}) to work with are __UriReportSource__ and __TypeReportSource__.

Просмотреть файл

@ -1,7 +1,7 @@
---
title: How to Increase the timeout value of a WCF service
page_title: How to Increase the timeout value of a WCF service
description: How to Increase the timeout value of a WCF service
title: Increase Timeout
page_title: Increasing the timeout value of a WCF service
description: "Learn How to Increase the timeout value of the WCF service in Telerik Reporting."
slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-wcf-service/how-to-increase-the-timeout-value-of-a-wcf-service
tags: how,to,increase,the,timeout,value,of,a,wcf,service
published: True
@ -9,39 +9,41 @@ position: 5
previous_url: /wcf-report-service-increasing-timeout
---
# How to Increase the timeout value of a WCF service
# Increase the Timeout of a WCF Service
To avoid timeouts when using the Telerik Reporting WCF Service, one should set several attributes on the client and server side.
> The Silverlight Report Viewer and its WCF Reporting Service are no longer supported and deployed with the installation of Telerik Reporting. The last release of Telerik Reporting with included Silverlight Report Viewer is [R1 2023](https://www.telerik.com/support/whats-new/reporting/release-history/progress-telerik-reporting-r1-2023-17-0-23-118).
To avoid timeouts when using the Telerik Reporting WCF Service, one should set several attributes on the client and server side.
## Timeouts on server binding
````XML
<bindings>
<basicHttpBinding>
<binding name="BasicHttpsBindingConfig" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647"
receiveTimeout="00:10:00" sendTimeout="00:10:00">
<readerQuotas maxArrayLength="2147483647" maxStringContentLength="2147483647"/>
</binding>
</basicHttpBinding>
<basicHttpBinding>
<binding name="BasicHttpsBindingConfig" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647"
receiveTimeout="00:10:00" sendTimeout="00:10:00">
<readerQuotas maxArrayLength="2147483647" maxStringContentLength="2147483647"/>
</binding>
</basicHttpBinding>
</bindings>
````
> The number 2,147,483,647 is the max value of a 32 bit signed integer.
## Timeouts on client binding
````C#
ReportServiceClient IReportServiceClientFactory.Create(System.Uri remoteAddress)
{
var binding = new BasicHttpBinding() // or BasicHttpBinding(BasicHttpSecurityMode.Transport) overload if SSL is used
{
MaxBufferSize = int.MaxValue,
MaxReceivedMessageSize = int.MaxValue,
ReceiveTimeout = new TimeSpan(0, 10, 0),
SendTimeout = new TimeSpan(0, 10, 0)
};
var endpointAddress = new EndpointAddress(remoteAddress);
return new ReportServiceClient(binding, endpointAddress);
var binding = new BasicHttpBinding() // or BasicHttpBinding(BasicHttpSecurityMode.Transport) overload if SSL is used
{
MaxBufferSize = int.MaxValue,
MaxReceivedMessageSize = int.MaxValue,
ReceiveTimeout = new TimeSpan(0, 10, 0),
SendTimeout = new TimeSpan(0, 10, 0)
};
var endpointAddress = new EndpointAddress(remoteAddress);
return new ReportServiceClient(binding, endpointAddress);
}
````
@ -49,8 +51,8 @@ For more information, see [Using Custom Bindings]({%slug telerikreporting/using-
## Timeouts when hosted in ASP.NET
When a WCF service is hosted in IIS/ASP.NET, another setting would also control the lifetime of the request: [ExecutionTimeout](/reporting/api/System.Web.Configuration.HttpRuntimeSection#System_Web_Configuration_HttpRuntimeSection_ExecutionTimeout).
When a WCF service is hosted in IIS/ASP.NET, another setting would also control the lifetime of the request: [ExecutionTimeout](/api/System.Web.Configuration.HttpRuntimeSection#System_Web_Configuration_HttpRuntimeSection_ExecutionTimeout).
````XML
<configuration>
<system.web>

Просмотреть файл

@ -1,7 +1,7 @@
---
title: How to Self Host the Service
page_title: How to Self Host the Service
description: How to Self Host the Service
title: Self Hosting
page_title: Self Hosting the WCF Service in Telerik Reporting
description: "Learn how to Self Host the WCF Service in Telerik Reporting."
slug: telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-wcf-service/how-to-self-host-the-service
tags: how,to,self,host,the,service
published: True
@ -9,67 +9,183 @@ position: 2
previous_url: /self-hosted-telerik-reporting-wcf-service
---
# How to Self Host the Service
# Self Hosting the WCF Reporting Service
> The Silverlight Report Viewer and its WCF Reporting Service are no longer supported and deployed with the installation of Telerik Reporting. The last release of Telerik Reporting with included Silverlight Report Viewer is [R1 2023](https://www.telerik.com/support/whats-new/reporting/release-history/progress-telerik-reporting-r1-2023-17-0-23-118).
The advantages of a Self-Hosted service:
* Easy to use: With only a few lines of code you have your service running.
* Easy to debug:
* Easy to debug:
Debugging WCF services that are hosted in a self-hosted environment provides a familiar way of debugging, without having to attach to separate applications that activate your service.
* Easy to deploy.
* Flexible: You can easily control the lifetime of your services.
* Supports all bindings and transport.
## To create a Telerik self-hosted reporting service follow the steps below
1. Create a new Windows console application.
1. Add references to the following System assemblies:
1. Add references to the following System assemblies:
+ System.ServiceModel
+ System.Runtime.Serialization
+ System.Drawing
+ System.Windows.Forms
+ System.ServiceModel
1. Add references to the following Telerik Reporting assemblies:
+ System.Runtime.Serialization
+ System.Drawing
+ System.Windows.Forms
1. Add references to the following Telerik Reporting assemblies:
+ Telerik.Reporting
+ Telerik.Reporting.Service
+ Telerik.Reporting.XpsRendering (in case you plan to render reports in XPS format)
+ Telerik.Reporting
+ Telerik.Reporting.Service
+ Telerik.Reporting.XpsRendering (in case you plan to render reports in XPS format)
1. The Telerik Reporting WCF Service is represented by the Telerik.Reporting.Service.ReportServiceBase - abstract class that requires a base URI to be used for proper resource resolution. This base URI is usually the well-known address of the report service endpoint:
{{source=CodeSnippets\CS\API\Telerik\Reporting\Service\ReportServiceBaseSnippets.cs region=ReportServiceBase_baseUriSnippet}}
{{source=CodeSnippets\VB\API\Telerik\Reporting\Service\ReportServiceBaseSnippets.vb region=ReportServiceBase_baseUriSnippet}}
````C#
[System.Runtime.Serialization.KnownType(typeof(object[]))]
class ReportService : Telerik.Reporting.Service.ReportServiceBase
{
static readonly Uri baseUri = new Uri("http://localhost:54321/reportservice");
protected override Uri BaseAddress
{
get { return baseUri; }
}
protected override string ApplicationPath
{
get
{
//Make sure that the ApplicationPath property always returns a valid directory path that ends with a slash (/) or a backslash (\)
return System.IO.Path.GetDirectoryName(System.Windows.Forms.Application.ExecutablePath) + "\\"; // for WinForms applications
//return HttpContext.Current.Request.PhysicalApplicationPath; // for ASP.NET applications
}
}
}
````
````VB.NET
<System.Runtime.Serialization.KnownType(GetType(Object()))> _
Class ReportService
Inherits Telerik.Reporting.Service.ReportServiceBase
Shared ReadOnly baseUri As New Uri("http://localhost:54321/reportservice")
Protected Overrides ReadOnly Property BaseAddress() As Uri
Get
Return baseUri
End Get
End Property
Protected Overrides ReadOnly Property ApplicationPath As String
Get
'Make sure that the ApplicationPath property always returns a valid directory path that ends with a slash (/) or a backslash (\)
Return System.IO.Path.GetDirectoryName(System.Windows.Forms.Application.ExecutablePath) & "\" ' for WinForms applications
'Return HttpContext.Current.Request.PhysicalApplicationPath ' for ASP.NET applications
End Get
End Property
End Class
````
1. Create a ServiceHost for our ReportService and call its Open method:
{{source=CodeSnippets\CS\API\Telerik\Reporting\Service\ReportServiceBaseSnippets.cs region=CreateServiceHostSnippet}}
{{source=CodeSnippets\VB\API\Telerik\Reporting\Service\ReportServiceBaseSnippets.vb region=CreateServiceHostSnippet}}
````C#
public class ReportServiceBaseSnippets
{
public static void Main(string[] args)
{
System.ServiceModel.ServiceHost host = new System.ServiceModel.ServiceHost(typeof(ReportService));
host.Open();
1. To configure the service and its endpoints add the next code to the applications configuration file:
// Block the Main() method until the user presses a key; then close the host and exit the program
Console.WriteLine("Ready...");
Console.ReadLine();
{{source=CodeSnippets\CS\API\Telerik\Reporting\Service\SelfHostedServiceEndpoints.xml}}
host.Close();
}
}
````
````VB.NET
Public Class ReportServiceBaseSnippets
Public Shared Sub Main(ByVal args As String())
Dim host As New System.ServiceModel.ServiceHost(GetType(ReportService))
host.Open()
1. Add a new report Report1 to the project to test the self-hosted report service.
' Block the Main() method until the user presses a key; then close the host and exit the program
Console.WriteLine("Ready...")
Console.ReadLine()
1. Run the application – the Windows console will appear and when the "Ready…" message appears the service is ready to operate.
1. To test the self-hosted Telerik Reporting WCF Service we use the Export operation for the Resource Service (__Telerik.Reporting.Service.IResourceService__). As it is dedicated to be used by __HTTP GET__ request we will use a web browser application as a client. Open any web browser and type the next address:
````
http://localhost:54321/reportservice/resources/export?format=PDF&report=YourNameSpace.Report1,YourNameSpace&deviceInfo={}&parameterValues={}
host.Close()
End Sub
End Class
````
This will call the __IResourceService__. Export operation that will render the report in __PDF__ with no deviceInfo or parameterValues. When completed, a PDF document will be sent back to the browser.
1. To configure the service and its endpoints add the next code to the applications configuration file:
````XML
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<services>
<service name="ConsoleApplication1.ReportService"
behaviorConfiguration="ReportServiceBehavior">
<host>
<baseAddresses>
<add baseAddress="http://localhost:54321"/>
</baseAddresses>
</host>
<endpoint address="ReportService"
binding="basicHttpBinding"
contract="Telerik.Reporting.Service.IReportService">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="ReportService/resources"
binding="webHttpBinding"
behaviorConfiguration="WebBehavior"
contract="Telerik.Reporting.Service.IResourceService"/>
<endpoint address=""
binding="webHttpBinding"
behaviorConfiguration="WebBehavior"
contract="Telerik.Reporting.Service.IClientAccessPolicy"/>
<endpoint address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="ReportServiceBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior name="WebBehavior">
<webHttp />
</behavior>
</endpointBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
````
1. Add a new report Report1 to the project to test the self-hosted report service.
1. Run the application – the Windows console will appear and when the "Ready…" message appears the service is ready to operate.
1. To test the self-hosted Telerik Reporting WCF Service we use the Export operation for the Resource Service (__Telerik.Reporting.Service.IResourceService__). As it is dedicated to be used by __HTTP GET__ request we will use a web browser application as a client. Open any web browser and type the next address:
`http://localhost:54321/reportservice/resources/export?format=PDF&report=YourNameSpace.Report1,YourNameSpace&deviceInfo={}&parameterValues={}`
This will call the __IResourceService__. Export operation that will render the report in __PDF__ with no deviceInfo or parameterValues. When completed, a PDF document will be sent back to the browser.

Просмотреть файл

@ -11,6 +11,8 @@ previous_url: /silverlight-wcf-service-overview
# Telerik Reporting WCF Service Overview
> The Silverlight Report Viewer and its WCF Reporting Service are no longer supported and deployed with the installation of Telerik Reporting. The last release of Telerik Reporting with included Silverlight Report Viewer is [R1 2023](https://www.telerik.com/support/whats-new/reporting/release-history/progress-telerik-reporting-r1-2023-17-0-23-118).
## Overview
Telerik Reporting WCF Service enables the remote access to the [ReportProcessor](/reporting/api/Telerik.Reporting.Processing.ReportProcessor). The service acts as a communication interface between the client programs and the reporting engine. The service is responsible for managing the reports state and resources.

Просмотреть файл

@ -41,8 +41,7 @@ There are many ways to add the report engine. You can [Host the Report Engine Re
### Generating Reports Remotely
* [Telerik Reporting Services]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview%}) - provide an Application Programming Interface (API) over HTTP to the reports generation engine. It can be used by web and desktop report viewers as well as by any third-party client applications.
* [Telerik Reporting WCF Service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-wcf-service/overview%}) - is based on [Windows Communication Foundation (WCF)](https://docs.microsoft.com/en-us/previous-versions/dotnet/netframework-4.0/dd456779(v=vs.100)) and is designed for the purposes of the [Telerik Silverlight Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/silverlight-application/overview%}).
[Telerik Reporting Services]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview%}) - provide an Application Programming Interface (API) over HTTP to the reports generation engine. It can be used by web and desktop report viewers as well as by any third-party client applications.
### Generating Reports Locally

Просмотреть файл

@ -28,7 +28,7 @@ The following table describes the folder structure for the Telerik Reporting mai
| Directory | Description |
| ------ | ------ |
|`...Progress\Telerik Reporting {{site.suiteversion}}\Bin`|<ul><li>`Telerik.Reporting.dll`</li><li>`Telerik.ReportViewer.Mvc.dll`</li><li>`Telerik.ReportViewer.WebForms.dll`</li><li>`Telerik.ReportViewer.WinForms.dll`</li><li>`Telerik.ReportViewer.Silverlight.dll`</li><li>`Telerik.ReportViewer.Wpf.dll`</li><li>`Telerik.Reporting.Adomd.dll`</li><li>`Telerik.Reporting.Service.dll`</li><li>`Telerik.Reporting.Services.ServiceStack.dll`</li><li>`Telerik.Reporting.Services.WebApi.dll`</li><li>`Telerik.Reporting.XpsRendering.dll`</li><li>`Telerik.Reporting.OpenXmlRendering.dll`</li><li>`Telerik.Reporting.Cache.Database.dll`</li></ul>|
|`...Progress\Telerik Reporting {{site.suiteversion}}\Bin`|<ul><li>`Telerik.Reporting.dll`</li><li>`Telerik.ReportViewer.Mvc.dll`</li><li>`Telerik.ReportViewer.WebForms.dll`</li><li>`Telerik.ReportViewer.WinForms.dll`</li><li>`Telerik.ReportViewer.Wpf.dll`</li><li>`Telerik.Reporting.Adomd.dll`</li><li>`Telerik.Reporting.Service.dll`</li><li>`Telerik.Reporting.Services.ServiceStack.dll`</li><li>`Telerik.Reporting.Services.WebApi.dll`</li><li>`Telerik.Reporting.XpsRendering.dll`</li><li>`Telerik.Reporting.OpenXmlRendering.dll`</li><li>`Telerik.Reporting.Cache.Database.dll`</li></ul>|
|`...Progress\Telerik Reporting {{site.suiteversion}}\Bin\netstandard2.0`|<ul><li>`Telerik.Reporting.dll`</li><li>`Telerik.WebReportDesigner.Services.dll`</li><li>`Telerik.ReportViewer.Blazor.dll`</li><li>`Telerik.Reporting.WebServiceDataSource.dll`</li><li>`Telerik.Reporting.Services.HttpClient.dll`</li><li>`Telerik.Reporting.Services.AspNetCore.dll`</li><li>`Telerik.Reporting.OpenXmlRendering.2.7.2.dll`</li><li>`Telerik.Reporting.JsonSerialization.dll`</li><li>`Telerik.Reporting.Data.Schema.dll`</li><li>`Telerik.Reporting.Cache.StackExchangeRedis.dll`</li><li>`Telerik.Reporting.Cache.StackExchangeRedis.2.dll`</li></ul>|
|`...Progress\Telerik Reporting {{site.suiteversion}}\Bin\netcoreapp3.1`|<ul><li>`Telerik.Reporting.Services.AspNetCore.dll`</li><li>`Telerik.WebReportDesigner.Services.dll`</li><li>`Telerik.ReportViewer.WinForms.dll`</li><li>`Telerik.ReportViewer.Wpf.dll`</li><li>`Telerik.ReportViewer.Wpf.Themes.dll`</li></ul>|
|`...Progress\Telerik Reporting {{site.suiteversion}}\Bin\net6.0`|<ul><li>`Telerik.WebReportDesigner.Services.dll`</li><li>`Telerik.Reporting.Services.AspNetCore.dll`</li></ul>|
@ -72,7 +72,6 @@ The following table describes the folder structure for the miscellaneous Report
| Directory | Description |
| ------ | ------ |
|`...Progress\Telerik Reporting {{site.suiteversion}}\Html5\ReportViewer`|The JavaScript and CSS files, and the template for the HTML5 Report Viewer.|
|`...Progress\Telerik Reporting {{site.suiteversion}}\Silverlight\Themes`|The Silverlight Report Viewer themes.|
|`...Progress\Telerik Reporting {{site.suiteversion}}\Wpf\Themes`|The WPF Report Viewer themes.|
## Administrative Utilities

Просмотреть файл

@ -11,50 +11,37 @@ position: 11
# Report Globalization Overview
Telerik Reporting offers the possibility to control the way numbers, dates and currencies are displayed and to layout text in different directions.
A report is globalized with the help of a [System.Globalization.CultureInfo](http://msdn2.microsoft.com/en-us/library/system.globalization.cultureinfo.aspx) object. You can specify a Culture for the entire [Telerik.Reporting.Report](/reporting/api/Telerik.Reporting.Report) by setting its [Telerik.Reporting.Report.Culture](/reporting/api/Telerik.Reporting.Report#Telerik_Reporting_Report_Culture) property. This will force all [Telerik.Reporting.TextBox](/reporting/api/Telerik.Reporting.TextBox) items to respect the assigned Culture. But you are not limited by one culture per report. You can mix an unlimited number of cultures, by setting the [Telerik.Reporting.TextItemBase.Culture](/reporting/api/Telerik.Reporting.TextItemBase#Telerik_Reporting_TextItemBase_Culture) property of a specific [Telerik.Reporting.TextBox](/reporting/api/Telerik.Reporting.TextBox). This will override the Report's Culture.
A report is globalized with the help of a [System.Globalization.CultureInfo](http://msdn2.microsoft.com/en-us/library/system.globalization.cultureinfo.aspx) object. You can specify a Culture for the entire [Telerik.Reporting.Report](/api/Telerik.Reporting.Report) by setting its [Telerik.Reporting.Report.Culture](/api/Telerik.Reporting.Report#Telerik_Reporting_Report_Culture) property. This will force all [Telerik.Reporting.TextBox](/api/Telerik.Reporting.TextBox) items to respect the assigned Culture. But you are not limited by one culture per report. You can mix an unlimited number of cultures, by setting the [Telerik.Reporting.TextItemBase.Culture](/api/Telerik.Reporting.TextItemBase#Telerik_Reporting_TextItemBase_Culture) property of a specific [Telerik.Reporting.TextBox](/api/Telerik.Reporting.TextBox). This will override the Report's Culture.
## Culture Inheritance
When determining what Culture to use for formatting strings and text direction, the rendering engine will inspect the those objects in the following order:
1. The Culture of the __TextBox__.
1. If the TextBox has no Culture defined, the Culture of the __Report__ is used.
1. If the TextBox has no Culture defined, the Culture of the __Report__ is used.
1. If the Report has no Culture defined, the Culture of the __CurrentThread__ is used.
>tip The Culture of the CurrentThread is determined by the Regional Settings of the machine the application is running on. (Control Panel->Regional Settings->Regional Options->Standards And Formats)
>tip The Culture of the CurrentThread is determined by the Regional Settings of the machine the application is running on. (Control Panel->Regional Settings->Regional Options->Standards And Formats)
## Culture Dependant Properties
* __String Formatting__
* __String Formatting__
Culture affects the way strings are formatted in Telerik Reporting. For example, if you set the British Culture (en-GB) for a TextBox and set its [Telerik.Reporting.Processing.TextItemBase.Format](/reporting/api/Telerik.Reporting.Processing.TextItemBase#Telerik_Reporting_Processing_TextItemBase_Format) to Currency ({0:C2}) you will see values like: £43.21. Same applies for dates, times and numbers.
Culture affects the way strings are formatted in Telerik Reporting. For example, if you set the British Culture (en-GB) for a TextBox and set its [Telerik.Reporting.Processing.TextItemBase.Format](/api/Telerik.Reporting.Processing.TextItemBase#Telerik_Reporting_Processing_TextItemBase_Format) to Currency ({0:C2}) you will see values like: £43.21. Same applies for dates, times and numbers.
* __Text Direction (LTR/RTL)__
* __Text Direction (LTR/RTL)__
Middle Eastern languages such as Hebrew and Arabic are generally written from right to left. If your TextBox will contain text written using a RTL script, then you simply need to specify the appropriate Culture, for example "he" for Hebrew and "ar" for Arabic.
## See Also
* [HTML5 Report Viewer Localization]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/customizing/localization%})
* [Angular Report Viewer Localization]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/angular-report-viewer/customizing/localization%})
* [React Report Viewer Localization]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/react-report-viewer/customizing/localization%})
* [HTML5 ASP.NET MVC Report Viewer Localization]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-asp.net-mvc-report-viewer/customizing/localization%})
* [HTML5 ASP.NET Web Forms Report Viewer Localization]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-asp.net-web-forms-report-viewer/customizing/localization%})
* [Windows Forms Report Viewer Localization]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/windows-forms-application/report-viewer-localization%})
* [WPF Report Viewer Localization]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/wpf-application/report-viewer-localization%})
* [Silverlight Forms Report Viewer Localization]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/silverlight-application/report-viewer-localization%})
* [(legacy) ASP.NET Web Forms Report Viewer Localization]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/asp.net-web-forms-report-viewer/report-viewer-localization%})
* [HTML5 Report Viewer Localization]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/customizing/localization%})
* [Angular Report Viewer Localization]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/angular-report-viewer/customizing/localization%})
* [React Report Viewer Localization]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/react-report-viewer/customizing/localization%})
* [HTML5 ASP.NET MVC Report Viewer Localization]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-asp.net-mvc-report-viewer/customizing/localization%})
* [HTML5 ASP.NET Web Forms Report Viewer Localization]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-asp.net-web-forms-report-viewer/customizing/localization%})
* [Windows Forms Report Viewer Localization]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/windows-forms-application/report-viewer-localization%})
* [WPF Report Viewer Localization]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/wpf-application/report-viewer-localization%})
* [(legacy) ASP.NET Web Forms Report Viewer Localization]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/asp.net-web-forms-report-viewer/report-viewer-localization%})

Просмотреть файл

@ -11,65 +11,59 @@ position: 3
# Drillthrough/Navigate To Report Action
A drillthrough report is a report that a user opens by clicking a link within another report. Drillthrough reports commonly contain details about an item that is contained in an original summary report. For example, you might have a sales summary report with a list of orders and sales totals. When a user clicks an order number in the summary list, another report opens that contains details about the order.
A drillthrough report is a report that a user opens by clicking a link within another report. Drillthrough reports commonly contain details about an item that is contained in an original summary report. For example, you might have a sales summary report with a list of orders and sales totals. When a user clicks an order number in the summary list, another report opens that contains details about the order.
A drillthrough report serves a different purpose than a subreport. A subreport is processed as part of the main report. For example, if a subreport that displays order detail information is added to a table cell in the detail row, the subreport is processed once per row of the table and rendered as part of the main report. A drillthrough report is only processed and rendered when the user clicks the drillthrough link in the summary main report.
A drillthrough report serves a different purpose than a subreport. A subreport is processed as part of the main report. For example, if a subreport that displays order detail information is added to a table cell in the detail row, the subreport is processed once per row of the table and rendered as part of the main report. A drillthrough report is only processed and rendered when the user clicks the drillthrough link in the summary main report.
A drillthrough report typically contains parameters that are passed to it by the summary report. When you set a drillthrough report link on a report item, set a value for the parameter of the target report as well. When the user clicks the link in the summary report, the target detail report opens and displays the information for that specific value.
A drillthrough report typically contains parameters that are passed to it by the summary report. When you set a drillthrough report link on a report item, set a value for the parameter of the target report as well. When the user clicks the link in the summary report, the target detail report opens and displays the information for that specific value.
To define a drill-through action add a [NavigateToReportAction](/api/Telerik.Reporting.NavigateToReportAction) on an item.
To define a drill-through action add a [NavigateToReportAction](/api/Telerik.Reporting.NavigateToReportAction) on an item.
>note The Target report of a drill-through action should always have a default constructor, so it can be instantiated.
>note The Target report of a drill-through action should always have a default constructor, so it can be instantiated.
# How to Add a Drillthrough/Navigate To Report Action
A report can contain links to other reports. The report that opens when you click the link in the main report is known as a drillthrough report. Drillthrough reports must be published to the same report server as the main report, but they can be in different folders. You can add a drillthrough link to any item that has an `Action` property.
> We recommend the usage of `TypeReportSource` ('Type name' option) or `UriReportSource` ('Url or file' option) in the [Load Report Dialog]({%slug telerikreporting/designing-reports/report-designer-tools/desktop-designers/tools/load-report-dialog%})) on configuring the target report. `InstanceReportSource` ('Object instance' option) is only supported for WinForms and WPF Report Viewers in Embedded mode.
A report can contain links to other reports. The report that opens when you click the link in the main report is known as a drillthrough report. Drillthrough reports must be published to the same report server as the main report, but they can be in different folders. You can add a drillthrough link to any item that has an `Action` property.
> We recommend the usage of `TypeReportSource` ('Type name' option) or `UriReportSource` ('Url or file' option) in the [Load Report Dialog]({%slug telerikreporting/designing-reports/report-designer-tools/desktop-designers/tools/load-report-dialog%})) on configuring the target report. `InstanceReportSource` ('Object instance' option) is only supported for WinForms and WPF Report Viewers in Embedded mode.
## Adding a drillthrough action using the Report Designer
1. In Design view, right-click a report item to which you want to add a link and then click __Properties__.
1. In the item's __Properties__ dialog box, click __Action__.
1. Select __Navigate to Report__. Additional section appears which allows you to select a __ReportSource__.
1. In Design view, right-click a report item to which you want to add a link and then click __Properties__.
1. In the item's __Properties__ dialog box, click __Action__.
1. Select __Navigate to Report__. Additional section appears which allows you to select a __ReportSource__.
1. In the __Choose a Report Source__ dialog, select how you would navigate to the report, For this example we would use __Type Report Source__ , click that option and select the report that you would like to navigate to. If you have to specify parameters for the drillthrough report, follow the next step.
1. Click __Edit Parameters__ button - __Edit Parameters__ dialog appears. Click __New__. In the __Parameter Name__ column select the name of the report parameter in the drillthrough report. In the __Parameter Value__ , type or select the value to pass to the parameter in the drillthrough report.
1. To test the link, run the report and click the report item with the applied __Action__. For TextBoxes, it is helpful to change the color and effect of the text to indicate that the text is a link. For example, change the color to blue and the effect to underline by setting the corresponding __Font__ properties of the TextBox.
1. Click __Edit Parameters__ button - __Edit Parameters__ dialog appears. Click __New__. In the __Parameter Name__ column select the name of the report parameter in the drillthrough report. In the __Parameter Value__ , type or select the value to pass to the parameter in the drillthrough report.
1. To test the link, run the report and click the report item with the applied __Action__. For TextBoxes, it is helpful to change the color and effect of the text to indicate that the text is a link. For example, change the color to blue and the effect to underline by setting the corresponding __Font__ properties of the TextBox.
## Adding a drillthrough action programatically
{{source=CodeSnippets\CS\API\Telerik\Reporting\ActionSnippets.cs region=AddNewNavigateToReportSnippet}}
{{source=CodeSnippets\VB\API\Telerik\Reporting\ActionSnippets.vb region=AddNewNavigateToReportSnippet}}
# How to Set ReportSource for Drillthrough/Navigate To Report Action
This article includes details how to specify a __target report__ for a [Navigate to Report (Drill-through) Action]({%slug telerikreporting/designing-reports/adding-interactivity-to-reports/actions/drillthrough-report-action%}). You will need a [Report Source]({%slug telerikreporting/designing-reports/report-sources/overview%}) object.
This article includes details how to specify a __target report__ for a [Navigate to Report (Drill-through) Action]({%slug telerikreporting/designing-reports/adding-interactivity-to-reports/actions/drillthrough-report-action%}). You will need a [Report Source]({%slug telerikreporting/designing-reports/report-sources/overview%}) object.
## Setting the Report Source through the Report Designer
1. In Design view, right-click a report item to which you want to add a drill-through action and then click __Properties__.
1. In the item's __Properties__ dialog box, click __Action__.
1. Select __Navigate to Report__. Additional section appears which allows you to select a __ReportSource__.
1. In Design view, right-click a report item to which you want to add a drill-through action and then click __Properties__.
1. In the item's __Properties__ dialog box, click __Action__.
1. Select __Navigate to Report__. Additional section appears which allows you to select a __ReportSource__.
1. In the __Choose a Report Source__ dialog, select how you would navigate to the report, For this example we would use __Type Report Source__ , click that option and select the report that you would like to navigate to. If you have to specify parameters for the drillthrough report, follow the next step.
1. Click __Edit Parameters__ button - __Edit Parameters__ dialog appears. Click __New__. In the __Parameter Name__ column select the name of the report parameter in the drillthrough report. In the __Parameter Value__ , type or select the value to pass to the parameter in the drillthrough report.
1. Click __Edit Parameters__ button - __Edit Parameters__ dialog appears. Click __New__. In the __Parameter Name__ column select the name of the report parameter in the drillthrough report. In the __Parameter Value__ , type or select the value to pass to the parameter in the drillthrough report.
## Setting the Report Source Programmatically
{{source=CodeSnippets\CS\API\Telerik\Reporting\ActionSnippets.cs region=AddNewNavigateToReportSnippet}}
{{source=CodeSnippets\VB\API\Telerik\Reporting\ActionSnippets.vb region=AddNewNavigateToReportSnippet}}
The [Standalone Report Designer]({%slug telerikreporting/designing-reports/report-designer-tools/desktop-designers/standalone-report-designer/overview%}) includes only XmlReportSource and UriReportSource options due to the format of the produced reports. In [Visual Studio Report Designer]({%slug telerikreporting/designing-reports/report-designer-tools/desktop-designers/visual-studio-report-designer/overview%}) you can use all available [Report Sources]({%slug telerikreporting/designing-reports/report-sources/overview%}).
<<<<<<< HEAD
>tip If the report will be displayed in an HTML5-based Report Viewer, the main report is rendered in HTML and it is loaded at the client. The rendered content contains a link rendered for the `NavigateToReportAction`, that will not be valid and working if the target report is specified via `InstanceReportSource` or `XmlReportSource`.
=======
The [Standalone Report Designer]({%slug telerikreporting/designing-reports/report-designer-tools/desktop-designers/standalone-report-designer/overview%}) includes only XmlReportSource and UriReportSource options due to the format of the produced reports. In [Visual Studio Report Designer]({%slug telerikreporting/designing-reports/report-designer-tools/desktop-designers/visual-studio-report-designer/overview%}) you can use all available [Report Sources]({%slug telerikreporting/designing-reports/report-sources/overview%}).
>tip If the report will be displayed in an HTML5-based Report Viewer or the Silverlight ReportViewer, the main report is rendered in HTML (or XAML respectively) and it is loaded at the client. The rendered content contains a link rendered for the `NavigateToReportAction`, that will not be valid and working if the target report is specified via `InstanceReportSource` or `XmlReportSource`.
>>>>>>> master

Просмотреть файл

@ -11,32 +11,27 @@ previous_url: /designing-reports/adding-interactivity-to-reports/actions/how-to/
# Hyperlink Action Overiw
You can add a hyperlink to a report item so that a user can access a Web page by clicking the item. A hyperlink can be a static URL or an expression that evaluates to a URL. If you have a field in a database that contains URLs, the expression can contain that field, resulting in a dynamic list of hyperlinks in the report. You can define a hyperlink on any report item.
You can add a hyperlink to a report item so that a user can access a Web page by clicking the item. A hyperlink can be a static URL or an expression that evaluates to a URL. If you have a field in a database that contains URLs, the expression can contain that field, resulting in a dynamic list of hyperlinks in the report. You can define a hyperlink on any report item.
>warning Hyperlink URL-s should be absolute by design. This ensures they are compatible with all of the report viewers and supported rendering formats.
>warning Hyperlink URL-s should be absolute by design. This ensures they are compatible with all of the report viewers and supported rendering formats.
To define a hyperlink add a [NavigateToUrlAction](/api/Telerik.Reporting.NavigateToUrlAction) on an item.
To define a hyperlink add a [NavigateToUrlAction](/api/Telerik.Reporting.NavigateToUrlAction) on an item.
You can also specify whether the URL is opened in the same or new browser window using the [Target](/api/Telerik.Reporting.NavigateToUrlAction#Telerik_Reporting_NavigateToUrlAction_Target) property.
You can also specify whether the URL is opened in the same or new browser window using the [Target](/api/Telerik.Reporting.NavigateToUrlAction#Telerik_Reporting_NavigateToUrlAction_Target) property.
> Opening URL in the same window is only applicable for the [ASP.NET Web Forms Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/asp.net-web-forms-report-viewer/overview%}) and [Silverlight Application]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/silverlight-application/overview%}). For the others, the [NavigateToUrlAction](/api/Telerik.Reporting.NavigateToUrlAction) would be opened in a new window.
> Opening URL in the same window is only applicable for the [legacy ASP.NET Web Forms Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/asp.net-web-forms-report-viewer/overview%}). For the others, the [NavigateToUrlAction](/api/Telerik.Reporting.NavigateToUrlAction) would be opened in a new window.
# How to Add a Hyperlink Action
Add a hyperlink to a URL when you want users to be able to click a link in a report and open a browser to the URL you specify. You must ensure that the user has access to the URL that you provide i.e. it allows anonymous access or does not require credentials. You can add a hyperlink to a URL to any item that has an Action property.
Add a hyperlink to a URL when you want users to be able to click a link in a report and open a browser to the URL you specify. You must ensure that the user has access to the URL that you provide i.e. it allows anonymous access or does not require credentials. You can add a hyperlink to a URL to any item that has an Action property.
## Adding a Hyperlink action using Report Designer
1. In Design view, right-click a report item to which you want to add a link and then click __Properties__.
1. In the Properties dialog box, click __Action__.
1. Select __Navigate to URL__. An additional section appears in the dialog box for this option.
1. In __Target URL__ TextBox, type a URL or an expression that evaluates to a URL.
1. Click __OK__.
1. To test the link, run the report and click the report item with the applied __Action__. For TextBoxes, it is helpful to change the color and effect of the text to indicate that the text is a link. For example, change the color to blue and the effect to underline by setting the corresponding __Font__ properties of the TextBox.
## Adding a Hyperlink action programatically
@ -44,13 +39,9 @@ Add a hyperlink to a URL when you want users to be able to click a link in a rep
{{source=CodeSnippets\CS\API\Telerik\Reporting\ActionSnippets.cs region=AddNewNavigateToUrlSnippet}}
{{source=CodeSnippets\VB\API\Telerik\Reporting\ActionSnippets.vb region=AddNewNavigateToUrlSnippet}}
## See Also
* [Drillthrough Report Action]({%slug telerikreporting/designing-reports/adding-interactivity-to-reports/actions/drillthrough-report-action%})
* [Bookmark Action]({%slug telerikreporting/designing-reports/adding-interactivity-to-reports/actions/bookmark-action%})
* [Expressions Overview]({%slug telerikreporting/designing-reports/connecting-to-data/expressions/overview%})
* [Data Items Overview]({%slug telerikreporting/designing-reports/connecting-to-data/data-items/overview%})
* [Drillthrough Report Action]({%slug telerikreporting/designing-reports/adding-interactivity-to-reports/actions/drillthrough-report-action%})
* [Bookmark Action]({%slug telerikreporting/designing-reports/adding-interactivity-to-reports/actions/bookmark-action%})
* [Expressions Overview]({%slug telerikreporting/designing-reports/connecting-to-data/expressions/overview%})
* [Data Items Overview]({%slug telerikreporting/designing-reports/connecting-to-data/data-items/overview%})

Просмотреть файл

@ -11,27 +11,26 @@ previous_url: /designing-reports-interactive-action-events
# Interactive Action Events Overview
To help developers to make their reporting experience more flexible, responsive and customizable, the report viewers provide event handlers for three types of events that are associated with interactive actions – `Executing`, `Enter` and `Leave`.
To help developers to make their reporting experience more flexible, responsive and customizable, the report viewers provide event handlers for three types of events that are associated with interactive actions – `Executing`, `Enter` and `Leave`.
`InteractiveActionExecuting` event is raised when an interactive action is being triggered, but not yet executed. This provides the ability to cancel the event execution due to some condition.
`InteractiveActionExecuting` event is raised when an interactive action is being triggered, but not yet executed. This provides the ability to cancel the event execution due to some condition.
`InteractiveActionEnter` event is raised when the mouse cursor enters the area of a report item that has an interactive action defined.
`InteractiveActionEnter` event is raised when the mouse cursor enters the area of a report item that has an interactive action defined.
`InteractiveActionLeave` event is raised when the mouse cursor leaves the area of a report item that has an interactive action defined.
`InteractiveActionLeave` event is raised when the mouse cursor leaves the area of a report item that has an interactive action defined.
All the events provide arguments that contain a reference to the underlying [IAction](/api/Telerik.Reporting.Processing.IAction) instance and its properties, evaluated during report processing.
All the events provide arguments that contain a reference to the underlying [IAction](/api/Telerik.Reporting.Processing.IAction) instance and its properties, evaluated during report processing.
Based on the used report viewer, the arguments can contain also:
Based on the used report viewer, the arguments can contain also:
* A reference to the element, associated with the action ([FrameworkElement](https://msdn.microsoft.com/en-us/library/system.windows.frameworkelement(v=vs.110).aspx) for WPF and Silverlight, [HTML DOM element](http://www.w3schools.com/js/js_htmldom_elements.asp) for Html5-based viewers).
* A reference to the element, associated with the action ([FrameworkElement](https://learn.microsoft.com/en-us/dotnet/api/system.windows.frameworkelement?view=windowsdesktop-7.0) for WPF, [HTML DOM element](https://www.w3schools.com/js/js_htmldom_elements.asp) for Html5-based viewers).
* The coordinates of the mouse cursor in pixels at the time of raising the event (for WinForms and WPF viewers). These coordinates are relative to the report item that triggered the action.
* The coordinates of the mouse cursor in pixels at the time of raising the event (for WinForms, WPF and SilverLight viewers). These coordinates are relative to the report item that triggered the action.
>note When the `nteractiveActionLeave()` event is raised, these coordinates are empty.
>note When the `nteractiveActionLeave()` event is raised, these coordinates are empty.
* The client bounds of the current report item in pixels (for WinForms and WPF viewers).
* The client bounds of the current report item in pixels (for WinForms, WPF and SilverLight viewers).
For more information please refer to the related articles about each report viewer:
For more information please refer to the related articles about each report viewer:
* [WinForms Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/windows-forms-application/overview%})
@ -41,31 +40,19 @@ For more information please refer to the related articles about each report view
| [InteractiveActionEnter](/api/Telerik.ReportViewer.WinForms.ReportViewerBase#Telerik_ReportViewer_WinForms_ReportViewerBase_InteractiveActionEnter)| [InteractiveActionEventArgs](/api/Telerik.ReportViewer.Common.InteractiveActionEventArgs)|
| [InteractiveActionLeave](/api/Telerik.ReportViewer.WinForms.ReportViewerBase#Telerik_ReportViewer_WinForms_ReportViewerBase_InteractiveActionLeave)| [InteractiveActionEventArgs](/api/Telerik.ReportViewer.Common.InteractiveActionEventArgs)|
* [WPF Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/wpf-application/overview%})
| Event Handler | Event Arguments |
| ------ | ------ |
| [InteractiveActionExecuting](/reporting/api/Telerik.ReportViewer.Wpf.ReportViewer#Telerik_ReportViewer_Wpf_ReportViewer_InteractiveActionExecuting)| [InteractiveActionCancelEventArgs](/reporting/api/Telerik.ReportViewer.Wpf.InteractiveActionCancelEventArgs)|
| [InteractiveActionEnter](/reporting/api/Telerik.ReportViewer.Wpf.ReportViewer#Telerik_ReportViewer_Wpf_ReportViewer_InteractiveActionEnter)| [InteractiveActionEventArgs](/reporting/api/Telerik.ReportViewer.Wpf.InteractiveActionEventArgs)|
| [InteractiveActionLeave](/reporting/api/Telerik.ReportViewer.Wpf.ReportViewer#Telerik_ReportViewer_Wpf_ReportViewer_InteractiveActionLeave)| [InteractiveActionEventArgs](/reporting/api/Telerik.ReportViewer.Wpf.InteractiveActionEventArgs)|
| [InteractiveActionExecuting](/api/Telerik.ReportViewer.Wpf.ReportViewer#Telerik_ReportViewer_Wpf_ReportViewer_InteractiveActionExecuting)| [InteractiveActionCancelEventArgs](/api/Telerik.ReportViewer.Wpf.InteractiveActionCancelEventArgs)|
| [InteractiveActionEnter](/api/Telerik.ReportViewer.Wpf.ReportViewer#Telerik_ReportViewer_Wpf_ReportViewer_InteractiveActionEnter)| [InteractiveActionEventArgs](/api/Telerik.ReportViewer.Wpf.InteractiveActionEventArgs)|
| [InteractiveActionLeave](/api/Telerik.ReportViewer.Wpf.ReportViewer#Telerik_ReportViewer_Wpf_ReportViewer_InteractiveActionLeave)| [InteractiveActionEventArgs](/api/Telerik.ReportViewer.Wpf.InteractiveActionEventArgs)|
* [SilverLight Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/silverlight-application/overview%})
| Event Handler | Event Arguments |
| ------ | ------ |
| [InteractiveActionExecuting](/api/Telerik.ReportViewer.Silverlight.ReportViewer#Telerik_ReportViewer_Silverlight_ReportViewer_InteractiveActionExecuting)| [InteractiveActionCancelEventArgs](/api/Telerik.ReportViewer.Silverlight.InteractiveActionCancelEventArgs)|
| [InteractiveActionEnter](/api/Telerik.ReportViewer.Silverlight.ReportViewer#Telerik_ReportViewer_Silverlight_ReportViewer_InteractiveActionEnter)| [InteractiveActionEventArgs](/api/Telerik.ReportViewer.Silverlight.InteractiveActionEventArgs)|
| [InteractiveActionLeave](/api/Telerik.ReportViewer.Silverlight.ReportViewer#Telerik_ReportViewer_Silverlight_ReportViewer_InteractiveActionLeave)| [InteractiveActionEventArgs](/api/Telerik.ReportViewer.Silverlight.InteractiveActionEventArgs)|
* [HTML5 Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/overview%}) (applies also to its wrappers for other Frameworks)
* [HTML5 Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/overview%}) (applies also to its wrappers for other Frameworks)
| | |
| ------ | ------ |
Event Handler |
| [InteractiveActionExecuting]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/api-reference/reportviewer/events/interactiveactionexecuting(e,-args)%})|
| [InteractiveActionEnter]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/api-reference/reportviewer/events/interactiveactionenter(e,-args)%})|
| [InteractiveActionLeave]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/api-reference/reportviewer/events/interactiveactionleave(e,-args)%})|
| [InteractiveActionLeave]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/api-reference/reportviewer/events/interactiveactionleave(e,-args)%})|

Просмотреть файл

@ -41,13 +41,13 @@ The SubReport enables you to set up the report source either by using a Telerik
### Using a Report Designer
To set the report source of the SubReport item by using a Telerik Report Designer:
To set the report source of the SubReport item by using a Telerik Report Designer:
1. In the **Design** view, right-click a SubReport item to which you want to set a report source and click __Properties__.
1. In the __Properties__ of the item, click __ReportSource__. As a result, a **Load a Report from** dialog appears. Select a __ReportSource__.
1. Select the type of the report source you will use to specify a report. For the purposes of this example, click the __Instance Report Source__ option and select the report that will serve as the detail report.
1. To specify the parameters for the report , click the __Edit Parameters__ button. As a result, the __Edit Parameters__ dialog appears. Click __New__.
1. In the __Parameter Name__ column, select the name of a report parameter in the detail report. In the __Parameter Value__, type or select the value to pass to the parameter in the detail report.
1. In the **Design** view, right-click a SubReport item to which you want to set a report source and click __Properties__.
1. In the __Properties__ of the item, click __ReportSource__. As a result, a **Load a Report from** dialog appears. Select a __ReportSource__.
1. Select the type of the report source you will use to specify a report. For the purposes of this example, click the __Instance Report Source__ option and select the report that will serve as the detail report.
1. To specify the parameters for the report , click the __Edit Parameters__ button. As a result, the __Edit Parameters__ dialog appears. Click __New__.
1. In the __Parameter Name__ column, select the name of a report parameter in the detail report. In the __Parameter Value__, type or select the value to pass to the parameter in the detail report.
### Defining Programmatically
@ -60,7 +60,7 @@ Due to the format of the produced reports, the [Standalone Report Designer]({%sl
The [Visual Studio Report Designer]({%slug telerikreporting/designing-reports/report-designer-tools/desktop-designers/visual-studio-report-designer/overview%}) provides the [report sources]({%slug telerikreporting/designing-reports/report-sources/overview%}) options.
If you are using the HTML5 or the Silverlight Report Viewer to preview the report, the main report will be rendered in HTML or XAML respectively and loaded on the client. The sub-report is considered as part of the main report content and its report source will be internally resolved without additional calls to the Reporting REST service (Reporting WCF Service respectively).
If you are using the HTML5 Report Viewer to preview the report, the main report will be rendered in HTML and loaded on the client. The sub-report is considered as part of the main report content and its report source will be internally resolved without additional calls to the Reporting REST service.
## The property DataSource of the SubReport item
@ -83,7 +83,7 @@ When working with the SubReport item, note the following considerations:
* To remove blank vertical space in the detail section of a SubReport, set the `Height` of the `SubReport.ReportSource` __DetailSection__ to the height of the highest item.
* Sections can grow to accommodate their children but cannot shrink to hide empty space. To make the dtail section shrink only at runtime, set the `Height` property of the __DetailSection__ in the report constructor. Place the `Height` property assignment code right after the `IntializeComponent()` method call.
## Next Steps
## Next Steps
* [(Demo) Invoice Report with a SubReport](https://demos.telerik.com/reporting/invoice)
* [Creating Master-Detail Reports with the SubReport]({%slug telerikreporting/designing-reports/report-structure/how-to/how-to-create-a-master-detail-report-using-a-subreport-item%})

131
upgrade/2023/r1-2023-sp1.md Normal file
Просмотреть файл

@ -0,0 +1,131 @@
---
title: R1 2023 SP1
page_title: R1 2023 SP1
description: R1 2023 SP1
slug: telerikreporting/upgrade/2023/r1-2023-sp1
tags: r1,2023,sp1
published: True
position: 1
---
# R1 2023 SP1
This article explains the manual changes required when upgrading to Telerik Reporting R1 2023 SP1 (17.0.23.315).
## Changes
### Technologies Support
Microsoft Silverlight is no longer supported.
### Native Blazor Report Viewer
The viewer is built with Telerik UI for Blazor __4.0.1__.
### WinUI Report Viewer
The viewer is built with Telerik UI for WinUI __2.5.0__. It now uses __MicrosoftWindowsAppSDK 1.2.221109.1__.
### WPF Report Viewer for .NET Framework
The viewer is built with Telerik UI Controls for WPF __2023.1.315.40__. If you are using a newer version, consider adding binding redirects. For more information see: [How to Add report viewer to a WPF .NET Framework project]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/wpf-application/how-to-add-report-viewer-to-a-wpf-.net-framework-project%}).
### WPF Report Viewer for .NET Core
The viewer is built with Telerik UI Controls for WPF __2023.1.315.310__ and targets .NET Core 3.1.
### WPF Report Viewer for .NET 6
The viewer is built with Telerik UI Controls for WPF __2023.1.315.60__ and targets .NET 6.
### WPF Report Viewer for .NET 7
The viewer is built with Telerik UI Controls for WPF __2023.1.315.70__ and targets .NET 7.
### Standalone Report Designer targeting .NET Framework 4.0
TRDX, TRDP and TRBP report definitions created by the Standalone Report Designer now use schema version __http://schemas.telerik.com/reporting/2023/1.1__.
### Standalone Report Designer targeting .NET 6.0
TRDX, TRDP and TRBP report definitions created by the Standalone Report Designer now use schema version __http://schemas.telerik.com/reporting/2023/1.1__.
## Dependencies
### Web Report Designer Dependencies
The [Web Report Designer]({%slug telerikreporting/designing-reports/report-designer-tools/web-report-designer/overview%}) depends on the following libraries:
* Telerik Kendo UI (__2022.3.913__ or later)
* jQuery (__1.9.1__ or later)
* Browser's native support for promises. When the browser does not support promises the viewer will automatically load a promise polyfill from [Polyfill.io](https://polyfill.io) unless one is not already loaded in the application.
### HTML5 Report Viewer Dependencies
The [HTML5 Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/overview%}) depends on the following libraries:
* Telerik Kendo UI (__2022.3.913__ or later)
* jQuery (__1.9.1__ or later)
* Browser's native support for promises. When the browser does not support promises the viewer will automatically load a promise polyfill from [Polyfill.io](https://polyfill.io) unless one is not already loaded in the application.
### Angular Report Viewer Dependencies
The [Angular Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/angular-report-viewer/angular-report-viewer-overview%}) depends on the following:
* Angular (__4.0.0__ or later)
* jQuery (__3.2.1__)
### React Report Viewer Dependencies
The [React Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/react-report-viewer/react-report-viewer-overview%}) depends on the following:
* React (__16.8.6__ or later)
* React-DOM (__16.8.6__ or later)
* jQuery (__3.2.1__)
### HttpClient Dependencies
Connecting a desktop report viewer (WinForms or WPF) to a REST service or Report Server instance requires the following NuGet packages:
* Newtonsoft.Json (__13.0.1__ or later for .NET Framework and .NET Core projects)
* Microsoft.AspNet.WebApi.Client (__4.0.30506__ or later for .NET Framework projects, __5.2.7__ or later for .NET Core projects)
### WebServiceDataSource Component Dependencies
The [WebServiceDataSource]({%slug telerikreporting/designing-reports/connecting-to-data/data-source-components/webservicedatasource-component/overview%}) requires the following NuGet packages:
* Microsoft.Net.Http (__2.0.20710__ or later)
* Newtonsoft.Json (__13.0.0.0__ or later)
### ASP.NET WebAPI REST Report Service Dependencies
The [ASP.NET WebAPI REST Report Service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/overview%}) requires the following NuGet packages:
* Microsoft ASP.NET Web API (__4.0.20710.0__ or later)
* Newtonsoft.Json (__13.0.0.0__ or later)
### ServiceStack Report Service Dependencies
The [ServiceStack Report Service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/servicestack-implementation/how-to-add-telerik-reporting-rest-servicestack-to-web-application%}) uses ServiceStack (__3.9.70.0__):
### CubeDataSource Dependencies
If you are using [CubeDataSource]({%slug telerikreporting/designing-reports/connecting-to-data/data-source-components/cubedatasource-component/overview%}), the version of your Microsoft.AnalysisServices.AdomdClient should be __10.0.0.0__ or later.
### Database Cache Provider Dependencies
If you are using [Database Cache Provider]({%slug telerikreporting/using-reports-in-applications/export-and-configure/cache-management/other-reportviewer-controls/configuring-the-database-cache-provider%}), the version of your Telerik Data Access ORM should be __2015.1.225.1__ or later.
### Internal Cache
The internal cache uses SQLite version __3.33.0__ for .NET Framework projects and __3.38.0__ for .NET Core and .NET 6+ projects.