Class SpreadsheetReportSupport

java.lang.Object
io.jmix.reportsspreadsheetflowui.runner.SpreadsheetReportSupport
All Implemented Interfaces:
SpreadsheetViewSupport

@Component("repspd_SpreadsheetReportSupport") public class SpreadsheetReportSupport extends Object implements SpreadsheetViewSupport
Internal support bean for spreadsheet-specific report execution and opening logic.

The bean keeps spreadsheet viewer behaviour out of the general OSS runner API while still allowing built-in reports UI and premium modules to opt into spreadsheet rendering.

  • Field Details

  • Constructor Details

    • SpreadsheetReportSupport

      public SpreadsheetReportSupport()
  • Method Details

    • supportsExtension

      public boolean supportsExtension(@Nullable String extension)
      Returns:
      whether the specified file extension can be opened in a spreadsheet viewer
    • open

      public boolean open(@Nullable View<?> owner, ReportOutputDocument document, @Nullable String documentName)
      Opens a generated report document in a spreadsheet viewer.
      Returns:
      true if opened correctly, false otherwise
    • supportsFileRef

      public boolean supportsFileRef(@Nullable FileRef fileRef)
      Specified by:
      supportsFileRef in interface SpreadsheetViewSupport
      Returns:
      whether the given stored file can be opened in a spreadsheet viewer
    • open

      public boolean open(@Nullable View<?> owner, FileRef fileRef)
      Description copied from interface: SpreadsheetViewSupport
      Opens the stored file in the spreadsheet viewer relative to the given owner view.
      Specified by:
      open in interface SpreadsheetViewSupport
      Returns:
      true if the file was successfully opened, false otherwise
    • openSpreadsheetView

      protected boolean openSpreadsheetView(@Nullable View<?> owner, Consumer<ReportSpreadsheetView> configurer)
    • createRunContext

      public UiReportRunContext createRunContext(UiReportRunContext sourceContext)
      Wraps a regular report run context with an internal spreadsheet marker.
    • closeOpenedDialogs

      protected void closeOpenedDialogs(View<?> owner)
      Closes any dialog views currently opened in the owner's UI before navigating to the spreadsheet view, so that the navigation target is not hidden behind leftover modal layers (e.g. the input parameters dialog).
    • resolveOwner

      protected @Nullable View<?> resolveOwner(@Nullable View<?> owner)
    • getExtension

      protected @Nullable String getExtension(@Nullable String documentName)
    • normalizeExtension

      protected @Nullable String normalizeExtension(@Nullable String extension)
    • isSpreadsheetExtension

      protected boolean isSpreadsheetExtension(String extension)