1/************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27#ifndef __com_sun_star_report_XReportEngine_idl__ 28#define __com_sun_star_report_XReportEngine_idl__ 29 30#ifndef __com_sun_star_report_XReportDefinition_idl__ 31#include <com/sun/star/report/XReportDefinition.idl> 32#endif 33#ifndef __com_sun_star_beans_XPropertySet_idl__ 34#include <com/sun/star/beans/XPropertySet.idl> 35#endif 36#ifndef __com_sun_star_lang_XComponent_idl__ 37#include <com/sun/star/lang/XComponent.idl> 38#endif 39#ifndef __com_sun_star_util_URL_idl__ 40#include <com/sun/star/util/URL.idl> 41#endif 42#ifndef __com_sun_star_frame_XModel_idl__ 43#include <com/sun/star/frame/XModel.idl> 44#endif 45#ifndef __com_sun_star_task_XStatusIndicator_idl__ 46#include <com/sun/star/task/XStatusIndicator.idl> 47#endif 48#ifndef __com_sun_star_frame_XFrame_idl__ 49#include <com/sun/star/frame/XFrame.idl> 50#endif 51#ifndef __com_sun_star_sdbc_XConnection_idl__ 52#include <com/sun/star/sdbc/XConnection.idl> 53#endif 54#ifndef __com_sun_star_lang_IllegalArgumentException_idl__ 55#include <com/sun/star/lang/IllegalArgumentException.idl> 56#endif 57#ifndef __com_sun_star_lang_DisposedException_idl__ 58#include <com/sun/star/lang/DisposedException.idl> 59#endif 60#ifndef __com_sun_star_uno_Exception_idl__ 61#include <com/sun/star/uno/Exception.idl> 62#endif 63 64//============================================================================= 65module com { module sun { module star { module report { 66/** identifies a <type>XReportEngine</type> which allows the creation of OpenDocument files. 67 68 <p>The following events are supported by the report engine. 69 OnPageStarted Is fired when a new page started. 70 OnReportStarted Is fired when a new report started. 71 OnGroupStarted Is fired when a new group started. 72 OnGroupEnded Is fired when the group ended. 73 OnReportEnded Is fired when the report ended. 74 OnPageEnded Is fired when the page ended. 75 76 @see com.sun.star.document.OfficeDocument 77*/ 78 79published interface XReportEngine 80{ 81 /** allows life-time control of report engine. 82 */ 83 interface com::sun::star::lang::XComponent; 84 85 /** gives access to the properties. 86 */ 87 interface com::sun::star::beans::XPropertySet; 88 89 /** creates a report document. 90 @throws <type scope="com::sun::star::lang">DisposedException</type> 91 If the report engine is already disposed. 92 @throws <type scope="com::sun::star::lang">IllegalArgumentException</type> 93 If the report definition was not set or is <NULL/>. 94 */ 95 com::sun::star::frame::XModel createDocumentModel() 96 raises( ::com::sun::star::lang::DisposedException, 97 com::sun::star::lang::IllegalArgumentException, 98 ::com::sun::star::uno::Exception ); 99 100 /** creates a report document. 101 @param _frame 102 The frame must have a controller set. This controller will be set at the model. 103 @throws <type scope="com::sun::star::lang">DisposedException</type> 104 If the report engine is already disposed. 105 @throws <type scope="com::sun::star::lang">IllegalArgumentException</type> 106 If the report definition was not set or is <NULL/>. 107 108 OJ: Has to be discussed if this method is usefull. 109 */ 110 com::sun::star::frame::XModel createDocumentAlive([in] com::sun::star::frame::XFrame frame) 111 raises( ::com::sun::star::lang::DisposedException, 112 com::sun::star::lang::IllegalArgumentException, 113 ::com::sun::star::uno::Exception ); 114 115 /** creates a report document. 116 @return 117 The URL where the new document is located. 118 @throws <type scope="com::sun::star::lang">DisposedException</type> 119 If the report engine is already disposed. 120 @throws <type scope="com::sun::star::lang">IllegalArgumentException</type> 121 If the report definition was not set or is <NULL/>. 122 */ 123 com::sun::star::util::URL createDocument() 124 raises( ::com::sun::star::lang::DisposedException, 125 com::sun::star::lang::IllegalArgumentException, 126 ::com::sun::star::uno::Exception ); 127 128 /** allows to interrupt the creation process of the report document. 129 @throws <type scope="com::sun::star::lang">DisposedException</type> 130 If the report engine is already disposed. 131 */ 132 void interrupt() 133 raises( ::com::sun::star::lang::DisposedException, 134 ::com::sun::star::uno::Exception ); 135 136 /** specifies the report definition object which is used to create the resulting report. 137 */ 138 [attribute,bound] XReportDefinition ReportDefinition 139 { 140 set raises (com::sun::star::lang::IllegalArgumentException); 141 }; 142 143 /** specifies the active connection which is used to create the resulting report. 144 */ 145 [attribute,bound] com::sun::star::sdbc::XConnection ActiveConnection 146 { 147 set raises (com::sun::star::lang::IllegalArgumentException); 148 }; 149 150 /** specifies the status indicator which shows the progress of the report generation process. 151 */ 152 [attribute] com::sun::star::task::XStatusIndicator StatusIndicator; 153 154 /** defines the maximum number of rows which should be fetched for the report. 155 If the limit is exceeded, the excess rows are silently dropped. 156 <br/> 157 There is no limitation, if set to zero. 158 */ 159 [attribute,bound] long MaxRows; 160}; 161 162//============================================================================= 163 164}; }; }; }; 165 166/*============================================================================= 167 168=============================================================================*/ 169#endif 170