Update ooo320-m1
[ooovba.git] / offapi / com / sun / star / report / XReportDefinition.idl
blob2fd9e55b0ed460a781287859ff00e9a8601d5f07
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: XReportDefinition.idl,v $
10 * $Revision: 1.4 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef __com_sun_star_report_XReportDefinition_idl__
31 #define __com_sun_star_report_XReportDefinition_idl__
33 #ifndef __com_sun_star_report_XReportComponent_idl__
34 #include <com/sun/star/report/XReportComponent.idl>
35 #endif
36 #ifndef __com_sun_star_report_XFunctionsSupplier_idl__
37 #include <com/sun/star/report/XFunctionsSupplier.idl>
38 #endif
39 #ifndef __com_sun_star_view_PaperOrientation_idl__
40 #include <com/sun/star/view/PaperOrientation.idl>
41 #endif
42 #ifndef __com_sun_star_container_NoSuchElementException_idl__
43 #include <com/sun/star/container/NoSuchElementException.idl>
44 #endif
45 #ifndef __com_sun_star_style_GraphicLocation_idl__
46 #include <com/sun/star/style/GraphicLocation.idl>
47 #endif
48 #ifndef __com_sun_star_view_PaperFormat_idl__
49 #include <com/sun/star/view/PaperFormat.idl>
50 #endif
51 #ifndef __com_sun_star_util_XClosable_idl__
52 #include <com/sun/star/util/XCloseable.idl>
53 #endif
54 #ifndef __com_sun_star_ui_XUIConfigurationManagerSupplier_idl__
55 #include <com/sun/star/ui/XUIConfigurationManagerSupplier.idl>
56 #endif
57 #ifndef __com_sun_star_document_XDocumentSubStorageSupplier_idl__
58 #include <com/sun/star/document/XDocumentSubStorageSupplier.idl>
59 #endif
60 #ifndef __com_sun_star_frame_XModel_idl__
61 #include <com/sun/star/frame/XModel.idl>
62 #endif
63 #ifndef __com_sun_star_document_XViewDataSupplier_idl__
64 #include <com/sun/star/document/XViewDataSupplier.idl>
65 #endif
66 #ifndef __com_sun_star_frame_XLoadable_idl__
67 #include <com/sun/star/frame/XLoadable.idl>
68 #endif
69 #ifndef __com_sun_star_embed_XVisualObject_idl__
70 #include <com/sun/star/embed/XVisualObject.idl>
71 #endif
72 #ifndef __com_sun_star_embed_XStorageBasedDocument_idl__
73 #include <com/sun/star/document/XStorageBasedDocument.idl>
74 #endif
75 #ifndef __com_sun_star_awt_Size_idl__
76 #include <com/sun/star/awt/Size.idl>
77 #endif
78 #ifndef __com_sun_star_util_XModifiable_idl__
79 #include <com/sun/star/util/XModifiable.idl>
80 #endif
81 #ifndef __com_sun_star_document_XEventBroadcaster_idl__
82 #include <com/sun/star/document/XEventBroadcaster.idl>
83 #endif
84 #ifndef __com_sun_star_lang_DisposedException_idl__
85 #include <com/sun/star/lang/DisposedException.idl>
86 #endif
87 #ifndef __com_sun_star_style_XStyleFamiliesSupplier_idl__
88 #include <com/sun/star/style/XStyleFamiliesSupplier.idl>
89 #endif
91 module com { module sun { module star { module sdbc {
92 published interface XConnection;
93 };};};};
94 //=============================================================================
96 module com { module sun { module star { module report {
98 interface XSection;
99 interface XGroups;
100 //=============================================================================
102 /** identifies a <type>XReportComponent</type> as being a (sub-) report.
104 <p>This interface does not really provide an own functionality, it is only for easier
105 runtime identification of report components.</p>
107 <p>A report fulfills several tasks, like storing the structure of its
108 report components and it provides the
109 event environment for its contained elements.</p>
111 @see XReportComponent
113 interface XReportDefinition
115 /** allows the access to the model embedded in the database storage.
117 interface com::sun::star::frame::XModel;
119 /** offers a simple way to initialize a component.
121 interface com::sun::star::frame::XLoadable;
123 /** represents common visualisation functionality for the embedded report.
125 interface com::sun::star::embed::XVisualObject;
127 /** allows to initialize the document with a storage.
129 interface com::sun::star::document::XStorageBasedDocument;
131 /** gives access to some properties describing all open views to a document.
133 interface com::sun::star::document::XViewDataSupplier;
135 /** allows to close the document.
137 interface com::sun::star::util::XCloseable;
139 /** allows to retrieve the user interface configuration manager related to an object.
141 interface com::sun::star::ui::XUIConfigurationManagerSupplier;
143 interface com::sun::star::document::XDocumentSubStorageSupplier;
145 /** provides access to the collection of style families.
147 <p>A spreadsheet document contains 2 families of styles:
148 "PageStyles" and "CellStyles".</p>
150 interface com::sun::star::style::XStyleFamiliesSupplier;
152 //-------------------------------------------------------------------------
153 /** a storable document should provide information about his modify state
156 With this interface it's possible too, to reset the modify state.
157 That can be neccessary to prevent code against problem during closing
158 of the document without saving any changes.
159 </p>
161 interface com::sun::star::util::XModifiable;
163 /** allows the creation of sub reports.
165 interface XReportComponent;
167 /** gives access to functions defined in the report definition.
169 interface XFunctionsSupplier;
171 /** makes it possible to register listeners which are called whenever
172 a document event occurs.
173 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>
174 because the methods addEventListener and removeEventListener are already defined in <type scope="com::sun::star::lang">XComponent</type>.
175 A queryInterface call is still supported to the <type scope="com::sun::star::document">XEventBroadcaster</type> interface.
177 com::sun::star::document::XEventBroadcaster getEventBroadcaster()
178 raises( ::com::sun::star::lang::DisposedException,
179 ::com::sun::star::uno::Exception );
181 /** returns a sequence of the currently supported output formats.
183 sequence<string> getAvailableMimeTypes()
184 raises( ::com::sun::star::lang::DisposedException,
185 ::com::sun::star::uno::Exception );
187 //-------------------------------------------------------------------------
189 /** Represents the output format (media (mime) type) of the resulting document when executing this report.
191 [attribute,bound] string MimeType
193 set raises (com::sun::star::lang::IllegalArgumentException);
196 /** Represents the title of the report in print preview.
198 [attribute,bound] string Caption;
200 /** Specifies whether groups in a multi column report are kept together.
201 @see com.sun.star.report.GroupKeepTogether
203 [attribute,bound] short GroupKeepTogether
205 set raises (com::sun::star::lang::IllegalArgumentException);
208 /** Represents the location of the page header.
209 @see ReportPrintOption
211 [attribute,bound] short PageHeaderOption;
213 /** Represents the location of the page footer.
214 @see ReportPrintOption
216 [attribute,bound] short PageFooterOption;
219 /** is the command which should be executed, the type of command depends
220 on the CommandType.
221 <p>In case of a <member>CommandType</member> of <member>CommandType::COMMAND</member>,
222 means in case the <member>Command</member> specifies an SQL statement, the inherited
223 <member scope="com::sun::star::sdbc">RowSet::EscapeProcessing</member>
224 becomes relevant:<br/>
225 It then can be to used to specify whether the SQL statement should be analyzed on the
226 client side before sending it to the database server.<br/>
227 The default value for <member scope="com::sun::star::sdbc">RowSet::EscapeProcessing</member>
228 is <TRUE/>. By switching it to <FALSE/>, you can pass backend-specific SQL statements,
229 which are not standard SQL, to your database.</p>
232 @see com::sun::star::sdb::CommandType
234 [attribute,bound] string Command;
236 /** specifies the type of the command to be executed to retrieve a result set.
238 <p><member>Command</member> needs to be interpreted depending on the value of this property.</p>
240 <p>This property is only meaningfull together with the <member>Command</member>
241 property, thus either <em>both</em> or <em>none</em> of them are present.</p>
243 @see com::sun::star::sdb::CommandType
245 [attribute,bound] long CommandType;
247 /** specifies an addtional filter to optinally use.
249 <p>The Filter string has to form a SQL WHERE-clause, <em>without</em> the WHERE-string itself.</p>
251 <p>If a <member>DataSourceName</member>, <member>Command</member> and <member>CommandType</member>
252 are specified, a <type>RowSet</type> can be created with this information. If the results provided by the
253 row set are to be additionally filtered, the Filter property can be used.</p>
255 <p>Note that the Filter property does not make sense if a <member>ResultSet</member> has been specified
256 in the DataAccessDescriptor.</p>
258 @see com::sun::star::sdb::RowSet
259 @see ResultSet
261 [attribute,bound] string Filter;
263 /** specifies if the <member>Command</member> should be analyzed on the client side before sending it
264 to the database server.
266 <p>The default value of this property is <TRUE/>. By switching it to <FALSE/>, you can pass
267 backend-specific SQL statements, which are not standard SQL, to your database.</p>
269 <p>This property is usually present together with the <member>Command</member> and
270 <member>CommandType</member> properties, and is evaluated if and only if <member>CommandType</member>
271 equals <member>CommandType::COMMAND</member>.</p>
273 [attribute,bound] boolean EscapeProcessing;
275 /** specifies the active connection which is used to create the resulting report.
277 [attribute,bound] com::sun::star::sdbc::XConnection ActiveConnection
279 set raises (com::sun::star::lang::IllegalArgumentException);
282 /** is the name of the datasource to use, this could be a named datasource
283 or the URL of a data access component.
285 [attribute,bound] string DataSourceName;
287 /** Defines that the report header is on.
288 Default is <FALSE/>.
290 [attribute,bound] boolean ReportHeaderOn;
292 /** Defines that the report footer is on.
293 Default is <FALSE/>.
295 [attribute,bound] boolean ReportFooterOn;
297 /** Defines that the page header is on.
298 Default is <TRUE/>.
300 [attribute,bound] boolean PageHeaderOn;
302 /** Defines that the page footer is on.
303 Default is <TRUE/>.
305 [attribute,bound] boolean PageFooterOn;
307 /** Represents the groups of the report.
309 [attribute,readonly] com::sun::star::report::XGroups Groups;
311 /** returns the report header if the <member>ReportHeaderOn</member>is <TRUE/>.
312 @throws <type scope="com::sun::star::container">NoSuchElementException</type>
313 If the report has the report header disabled.
314 @see XSection
316 [attribute,readonly] com::sun::star::report::XSection ReportHeader
318 get raises (com::sun::star::container::NoSuchElementException);
321 /** returns the page header if the <member>PageHeaderOn</member>is <TRUE/>.
322 @throws <type scope="com::sun::star::container">NoSuchElementException</type>
323 If the report has the page header disabled.
324 @see XSection
326 [attribute,readonly] com::sun::star::report::XSection PageHeader
328 get raises (com::sun::star::container::NoSuchElementException);
331 /** returns the detail section.
332 @see XSection
334 [attribute,readonly] com::sun::star::report::XSection Detail;
336 /** returns the page footer if the <member>PageFooterOn</member>is <TRUE/>.
337 @throws <type scope="com::sun::star::container">NoSuchElementException</type>
338 If the report has the page footer disabled.
339 @see XSection
341 [attribute,readonly] com::sun::star::report::XSection PageFooter
343 get raises (com::sun::star::container::NoSuchElementException);
346 /** returns the report footer if the <member>ReportFooterOn</member>is <TRUE/>.
347 @throws <type scope="com::sun::star::container">NullPointerException</type>
348 If the report has the report footer disabled.
349 @see XSection
351 [attribute,readonly] com::sun::star::report::XSection ReportFooter
353 get raises (com::sun::star::container::NoSuchElementException);
357 service ReportDefinition : XReportDefinition;
358 //=============================================================================
360 }; }; }; };
362 /*=============================================================================
364 =============================================================================*/
365 #endif