From ed5640d8b587fbcfed7dd7967f3de04b37a76f26 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 11:06:44 +0200 Subject: Adding upstream version 4:7.4.7. Signed-off-by: Daniel Baumann --- offapi/com/sun/star/report/XReportDefinition.idl | 309 +++++++++++++++++++++++ 1 file changed, 309 insertions(+) create mode 100644 offapi/com/sun/star/report/XReportDefinition.idl (limited to 'offapi/com/sun/star/report/XReportDefinition.idl') diff --git a/offapi/com/sun/star/report/XReportDefinition.idl b/offapi/com/sun/star/report/XReportDefinition.idl new file mode 100644 index 000000000..cf412e96e --- /dev/null +++ b/offapi/com/sun/star/report/XReportDefinition.idl @@ -0,0 +1,309 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_report_XReportDefinition_idl__ +#define __com_sun_star_report_XReportDefinition_idl__ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +module com { module sun { module star { module sdbc { +published interface XConnection; +};};};}; + + module com { module sun { module star { module report { + + interface XSection; + interface XGroups; + +/** identifies a XReportComponent as being a (sub-) report. + +

This interface does not really provide an own functionality, it is only for easier + runtime identification of report components.

+ +

A report fulfills several tasks, like storing the structure of its + report components and it provides the + event environment for its contained elements.

+ + @see XReportComponent + */ +interface XReportDefinition +{ + /** allows the access to the model embedded in the database storage. + */ + interface com::sun::star::frame::XModel; + + /** offers a simple way to initialize a component. + */ + interface com::sun::star::frame::XLoadable; + + /** represents common visualization functionality for the embedded report. + */ + interface com::sun::star::embed::XVisualObject; + + /** allows to initialize the document with a storage. + */ + interface com::sun::star::document::XStorageBasedDocument; + + /** gives access to some properties describing all open views to a document. + */ + interface com::sun::star::document::XViewDataSupplier; + + /** allows to close the document. + */ + interface com::sun::star::util::XCloseable; + + /** allows to retrieve the user interface configuration manager related to an object. + */ + interface com::sun::star::ui::XUIConfigurationManagerSupplier; + + interface com::sun::star::document::XDocumentSubStorageSupplier; + + /** provides access to the collection of style families. + +

A spreadsheet document contains 2 families of styles: + "PageStyles" and "CellStyles".

+ */ + interface com::sun::star::style::XStyleFamiliesSupplier; + + /** a storable document should provide information about his modify state + +

+ With this interface it's possible too, to reset the modify state. + That can be necessary to prevent code against problem during closing + of the document without saving any changes. +

+ */ + interface com::sun::star::util::XModifiable2; + + /** allows the creation of sub reports. + */ + interface XReportComponent; + + /** gives access to functions defined in the report definition. + */ + interface XFunctionsSupplier; + + /** makes it possible to register listeners which are called whenever + a document event occurs. + This is a workaround due to the fact that this interface can not be directly inherited from com::sun::star::document::XEventBroadcaster + because the methods addEventListener and removeEventListener are already defined in com::sun::star::lang::XComponent. + A queryInterface call is still supported to the com::sun::star::document::XEventBroadcaster interface. + */ + com::sun::star::document::XEventBroadcaster getEventBroadcaster() + raises( ::com::sun::star::lang::DisposedException, + ::com::sun::star::uno::Exception ); + + /** returns a sequence of the currently supported output formats. + */ + sequence getAvailableMimeTypes() + raises( ::com::sun::star::lang::DisposedException, + ::com::sun::star::uno::Exception ); + + + /** Represents the output format (media (mime) type) of the resulting document when executing this report. + */ + [attribute,bound] string MimeType + { + set raises (com::sun::star::lang::IllegalArgumentException); + }; + + /** Represents the title of the report in print preview. + */ + [attribute,bound] string Caption; + + /** Specifies whether groups in a multi column report are kept together. + @see com::sun::star::report::GroupKeepTogether + */ + [attribute,bound] short GroupKeepTogether + { + set raises (com::sun::star::lang::IllegalArgumentException); + }; + + /** Represents the location of the page header. + @see ReportPrintOption + */ + [attribute,bound] short PageHeaderOption; + + /** Represents the location of the page footer. + @see ReportPrintOption + */ + [attribute,bound] short PageFooterOption; + + + /** is the command which should be executed, the type of command depends + on the CommandType. +

In case of a #CommandType of CommandType::COMMAND, + means in case the #Command specifies an SQL statement, the inherited + com::sun::star::sdbc::RowSet::EscapeProcessing + becomes relevant:
+ It then can be to used to specify whether the SQL statement should be analyzed on the + client side before sending it to the database server.
+ The default value for com::sun::star::sdbc::RowSet::EscapeProcessing + is `TRUE`. By switching it to `FALSE`, you can pass backend-specific SQL statements, + which are not standard SQL, to your database.

+ + + @see com::sun::star::sdb::CommandType + */ + [attribute,bound] string Command; + + /** specifies the type of the command to be executed to retrieve a result set. + +

#Command needs to be interpreted depending on the value of this property.

+ +

This property is only meaningful together with the #Command + property, thus either both or none of them are present.

+ + @see com::sun::star::sdb::CommandType + */ + [attribute,bound] long CommandType; + + /** specifies an additional filter to optionally use. + +

The Filter string has to form a SQL WHERE-clause, without the WHERE-string itself.

+ +

If a #DataSourceName, #Command and #CommandType + are specified, a RowSet can be created with this information. If the results provided by the + row set are to be additionally filtered, the Filter property can be used.

+ +

Note that the Filter property does not make sense if a ResultSet has been specified + in the DataAccessDescriptor.

+ + @see com::sun::star::sdb::RowSet + @see ResultSet + */ + [attribute,bound] string Filter; + + /** specifies if the #Command should be analyzed on the client side before sending it + to the database server. + +

The default value of this property is `TRUE`. By switching it to `FALSE`, you can pass + backend-specific SQL statements, which are not standard SQL, to your database.

+ +

This property is usually present together with the #Command and + #CommandType properties, and is evaluated if and only if #CommandType + equals CommandType::COMMAND.

+ */ + [attribute,bound] boolean EscapeProcessing; + + /** specifies the active connection which is used to create the resulting report. + */ + [attribute,bound] com::sun::star::sdbc::XConnection ActiveConnection + { + set raises (com::sun::star::lang::IllegalArgumentException); + }; + + /** is the name of the datasource to use, this could be a named datasource + or the URL of a data access component. + */ + [attribute,bound] string DataSourceName; + + /** Defines that the report header is on. + Default is `FALSE`. + */ + [attribute,bound] boolean ReportHeaderOn; + + /** Defines that the report footer is on. + Default is `FALSE`. + */ + [attribute,bound] boolean ReportFooterOn; + + /** Defines that the page header is on. + Default is `TRUE`. + */ + [attribute,bound] boolean PageHeaderOn; + + /** Defines that the page footer is on. + Default is `TRUE`. + */ + [attribute,bound] boolean PageFooterOn; + + /** Represents the groups of the report. + */ + [attribute,readonly] com::sun::star::report::XGroups Groups; + + /** returns the report header if the #ReportHeaderOn is `TRUE`. + @throws com::sun::star::container::NoSuchElementException + If the report has the report header disabled. + @see XSection + */ + [attribute,readonly] com::sun::star::report::XSection ReportHeader + { + get raises (com::sun::star::container::NoSuchElementException); + }; + + /** returns the page header if the #PageHeaderOn is `TRUE`. + @throws com::sun::star::container::NoSuchElementException + If the report has the page header disabled. + @see XSection + */ + [attribute,readonly] com::sun::star::report::XSection PageHeader + { + get raises (com::sun::star::container::NoSuchElementException); + }; + + /** returns the detail section. + @see XSection + */ + [attribute,readonly] com::sun::star::report::XSection Detail; + + /** returns the page footer if the #PageFooterOn is `TRUE`. + @throws com::sun::star::container::NoSuchElementException + If the report has the page footer disabled. + @see XSection + */ + [attribute,readonly] com::sun::star::report::XSection PageFooter + { + get raises (com::sun::star::container::NoSuchElementException); + }; + + /** returns the report footer if the #ReportFooterOn is `TRUE`. + @throws com::sun::star::container::NullPointerException + If the report has the report footer disabled. + @see XSection + */ + [attribute,readonly] com::sun::star::report::XSection ReportFooter + { + get raises (com::sun::star::container::NoSuchElementException); + }; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit v1.2.3