/************************************************************** * * 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 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. * *************************************************************/ #ifndef __com_sun_star_report_XReportDefinition_idl__ #define __com_sun_star_report_XReportDefinition_idl__ #ifndef __com_sun_star_report_XReportComponent_idl__ #include <com/sun/star/report/XReportComponent.idl> #endif #ifndef __com_sun_star_report_XFunctionsSupplier_idl__ #include <com/sun/star/report/XFunctionsSupplier.idl> #endif #ifndef __com_sun_star_view_PaperOrientation_idl__ #include <com/sun/star/view/PaperOrientation.idl> #endif #ifndef __com_sun_star_container_NoSuchElementException_idl__ #include <com/sun/star/container/NoSuchElementException.idl> #endif #ifndef __com_sun_star_style_GraphicLocation_idl__ #include <com/sun/star/style/GraphicLocation.idl> #endif #ifndef __com_sun_star_view_PaperFormat_idl__ #include <com/sun/star/view/PaperFormat.idl> #endif #ifndef __com_sun_star_util_XClosable_idl__ #include <com/sun/star/util/XCloseable.idl> #endif #ifndef __com_sun_star_ui_XUIConfigurationManagerSupplier_idl__ #include <com/sun/star/ui/XUIConfigurationManagerSupplier.idl> #endif #ifndef __com_sun_star_document_XDocumentSubStorageSupplier_idl__ #include <com/sun/star/document/XDocumentSubStorageSupplier.idl> #endif #ifndef __com_sun_star_frame_XModel_idl__ #include <com/sun/star/frame/XModel.idl> #endif #ifndef __com_sun_star_document_XViewDataSupplier_idl__ #include <com/sun/star/document/XViewDataSupplier.idl> #endif #ifndef __com_sun_star_frame_XLoadable_idl__ #include <com/sun/star/frame/XLoadable.idl> #endif #ifndef __com_sun_star_embed_XVisualObject_idl__ #include <com/sun/star/embed/XVisualObject.idl> #endif #ifndef __com_sun_star_embed_XStorageBasedDocument_idl__ #include <com/sun/star/document/XStorageBasedDocument.idl> #endif #ifndef __com_sun_star_awt_Size_idl__ #include <com/sun/star/awt/Size.idl> #endif #ifndef __com_sun_star_util_XModifiable2_idl__ #include <com/sun/star/util/XModifiable2.idl> #endif #ifndef __com_sun_star_document_XEventBroadcaster_idl__ #include <com/sun/star/document/XEventBroadcaster.idl> #endif #ifndef __com_sun_star_lang_DisposedException_idl__ #include <com/sun/star/lang/DisposedException.idl> #endif #ifndef __com_sun_star_style_XStyleFamiliesSupplier_idl__ #include <com/sun/star/style/XStyleFamiliesSupplier.idl> #endif module com { module sun { module star { module sdbc { published interface XConnection; };};};}; //============================================================================= module com { module sun { module star { module report { published interface XSection; published interface XGroups; //============================================================================= /** identifies a <type>XReportComponent</type> 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 */ published 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 visualisation 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 <type scope="com::sun::star::document">XEventBroadcaster</type> because the methods addEventListener and removeEventListener are already defined in <type scope="com::sun::star::lang">XComponent</type>. A queryInterface call is still supported to the <type scope="com::sun::star::document">XEventBroadcaster</type> 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 <member>CommandType</member> of <member>CommandType::COMMAND</member>, means in case the <member>Command</member> specifies an SQL statement, the inherited <member scope="com::sun::star::sdbc">RowSet::EscapeProcessing</member> 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 <member scope="com::sun::star::sdbc">RowSet::EscapeProcessing</member> 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><member>Command</member> needs to be interpreted depending on the value of this property.</p> <p>This property is only meaningful together with the <member>Command</member> 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 optinally use. <p>The Filter string has to form a SQL WHERE-clause, <em>without</em> the WHERE-string itself.</p> <p>If a <member>DataSourceName</member>, <member>Command</member> and <member>CommandType</member> are specified, a <type>RowSet</type> 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 <member>ResultSet</member> has been specified in the DataAccessDescriptor.</p> @see com::sun::star::sdb::RowSet @see ResultSet */ [attribute,bound] string Filter; /** specifies if the <member>Command</member> 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 <member>Command</member> and <member>CommandType</member> properties, and is evaluated if and only if <member>CommandType</member> equals <member>CommandType::COMMAND</member>.</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 <member>ReportHeaderOn</member>is <TRUE/>. @throws <type scope="com::sun::star::container">NoSuchElementException</type> 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 <member>PageHeaderOn</member>is <TRUE/>. @throws <type scope="com::sun::star::container">NoSuchElementException</type> 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 <member>PageFooterOn</member>is <TRUE/>. @throws <type scope="com::sun::star::container">NoSuchElementException</type> 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 <member>ReportFooterOn</member>is <TRUE/>. @throws <type scope="com::sun::star::container">NullPointerException</type> 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