diff options
Diffstat (limited to 'offapi/com/sun/star/report/XReportDefinition.idl')
-rw-r--r-- | offapi/com/sun/star/report/XReportDefinition.idl | 309 |
1 files changed, 309 insertions, 0 deletions
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 <com/sun/star/report/XReportComponent.idl> +#include <com/sun/star/report/XFunctionsSupplier.idl> +#include <com/sun/star/view/PaperOrientation.idl> +#include <com/sun/star/container/NoSuchElementException.idl> +#include <com/sun/star/style/GraphicLocation.idl> +#include <com/sun/star/view/PaperFormat.idl> +#include <com/sun/star/util/XCloseable.idl> +#include <com/sun/star/ui/XUIConfigurationManagerSupplier.idl> +#include <com/sun/star/document/XDocumentSubStorageSupplier.idl> +#include <com/sun/star/frame/XModel.idl> +#include <com/sun/star/document/XViewDataSupplier.idl> +#include <com/sun/star/frame/XLoadable.idl> +#include <com/sun/star/embed/XVisualObject.idl> +#include <com/sun/star/document/XStorageBasedDocument.idl> +#include <com/sun/star/awt/Size.idl> +#include <com/sun/star/util/XModifiable2.idl> +#include <com/sun/star/document/XEventBroadcaster.idl> +#include <com/sun/star/lang/DisposedException.idl> +#include <com/sun/star/style/XStyleFamiliesSupplier.idl> + +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. + + <p>This interface does not really provide an own functionality, it is only for easier + runtime identification of report components.</p> + + <p>A report fulfills several tasks, like storing the structure of its + report components and it provides the + event environment for its contained elements.</p> + + @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. + + <p>A spreadsheet document contains 2 families of styles: + "PageStyles" and "CellStyles".</p> + */ + interface com::sun::star::style::XStyleFamiliesSupplier; + + /** a storable document should provide information about his modify state + + <p> + 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. + </p> + */ + 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<string> 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. + <p>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:<br/> + 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.<br/> + 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.</p> + + + @see com::sun::star::sdb::CommandType + */ + [attribute,bound] string Command; + + /** specifies the type of the command to be executed to retrieve a result set. + + <p>#Command needs to be interpreted depending on the value of this property.</p> + + <p>This property is only meaningful together with the #Command + property, thus either <em>both</em> or <em>none</em> of them are present.</p> + + @see com::sun::star::sdb::CommandType + */ + [attribute,bound] long CommandType; + + /** specifies an additional filter to optionally use. + + <p>The Filter string has to form a SQL WHERE-clause, <em>without</em> the WHERE-string itself.</p> + + <p>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.</p> + + <p>Note that the Filter property does not make sense if a ResultSet has been specified + in the DataAccessDescriptor.</p> + + @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. + + <p>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.</p> + + <p>This property is usually present together with the #Command and + #CommandType properties, and is evaluated if and only if #CommandType + equals CommandType::COMMAND.</p> + */ + [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: */ |