/************************************************************************* * * $RCSfile: MailMerge.idl,v $ * * $Revision: 1.5 $ * * last change: $Author: rt $ $Date: 2003-04-17 10:13:59 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses * * - GNU Lesser General Public License Version 2.1 * - Sun Industry Standards Source License Version 1.1 * * Sun Microsystems Inc., October, 2000 * * GNU Lesser General Public License Version 2.1 * ============================================= * Copyright 2003 by Sun Microsystems, Inc. * 901 San Antonio Road, Palo Alto, CA 94303, USA * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License version 2.1, as published by the Free Software Foundation. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, * MA 02111-1307 USA * * * Sun Industry Standards Source License Version 1.1 * ================================================= * The contents of this file are subject to the Sun Industry Standards * Source License Version 1.1 (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.openoffice.org/license.html. * * Software provided under this License is provided on an "AS IS" basis, * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. * See the License for the specific provisions governing your rights and * obligations concerning the Software. * * The Initial Developer of the Original Code is: Sun Microsystems, Inc. * * Copyright: 2000 by Sun Microsystems, Inc. * * All Rights Reserved. * * Contributor(s): _______________________________________ * * ************************************************************************/ #ifndef __com_sun_star_text_MailMerge_idl__ #define __com_sun_star_text_MailMerge_idl__ #ifndef __com_sun_star_task_XJob_idl__ #include #endif #ifndef __com_sun_star_sdbc_XResultSet_idl__ #include #endif #ifndef __com_sun_star_sdbc_XConnection_idl__ #include #endif #ifndef __com_sun_star_frame_XModel_idl__ #include #endif #ifndef __com_sun_star_beans_XPropertySet_idl__ #include #endif #ifndef __com_sun_star_text_XMailMergeBroadcaster_idl__ #include #endif #ifndef __com_sun_star_sdb_DataAccessDescriptor_idl__ #include #endif //============================================================================= module com { module sun { module star { module text { //============================================================================= /** Gives access to mail merge functionality. @since #107627# */ service MailMerge { /** interface to execute the mail merge action.

The XJob::execute method of the interface accepts exactly the same properties as provided by this service in its argument sequence.

The default values for the properties to be used in the method call are those given by this service. If a property is also listed in the argument sequence that value will be used for the call. The value of the property in this service will remain unchanged by that.

*/ interface com::sun::star::task::XJob; /** interface to access the services properties. */ interface com::sun::star::beans::XPropertySet; /** interface to notify mail merge listeners. */ [optional] interface com::sun::star::text::XMailMergeBroadcaster; //============================================================================= /* database properties */ //============================================================================= /** allows to specify the data which the mail merge should be based on.

This service describe the interaction between all data access related properties, namely DataSourceName, Command, CommandType, Connection, Selection, ResultSet, Filter and EscapeProcessing */ service com::sun::star::sdb::DataAccessDescriptor; /** contains the name of the data source that is to be used for merging.

For the interaction of this property with other data access relevant properties, see the DataAccessDescriptor service.

*/ [property] string DataSourceName; //============================================================================= /** determines the type of the database command as described in CommandType

For the interaction of this property with other data access relevant properties, see the DataAccessDescriptor service.

*/ [property] long CommandType; //============================================================================= /** contains the database command.

For the interaction of this property with other data access relevant properties, see the DataAccessDescriptor service.

*/ [property] string Command; //============================================================================= /** provides access to a XResultSet of a ResultSet service.

Note that any superservices of ResultSet are also allowed. Especially, this member can denote an instance of the RowSet, or an instance obtained by calling XResultSetAccess::createResultSet on such a RowSet. This becomes important in conjunction with the Selection property.

For the interaction of this property with other data access relevant properties, see the DataAccessDescriptor service.

*/ [property] com::sun::star::sdbc::XResultSet ResultSet; //============================================================================= /** contains the connection to the database.

For the interaction of this property with other data access relevant properties, see the DataAccessDescriptor service.

*/ [property] com::sun::star::sdbc::XConnection ActiveConnection; //============================================================================= /** contains a selection that refers to bookmarks of the ResultSet.

This property is relevant in conjunction with the ResultSet only. A single element of this array describes a bookmark relative to the result set.
Note that this implies that the ResultSet needs to support the XRowLocate interface.

If this array is empty, the whole result set, as described by ResultSet respectively the triple (DataSourceName, DataCommandType, DataCommand).

For the interaction of this property with other data access relevant properties, see the DataAccessDescriptor service.

*/ [property] sequence< any > Selection; //============================================================================= /** returns if escape processing is on or off.

For the interaction of this property with other data access relevant properties, see the DataAccessDescriptor service.

*/ [property] boolean EscapeProcessing; //============================================================================= /** contains a filter expression for an SQL statement.

For the interaction of this property with other data access relevant properties, see the DataAccessDescriptor service.

*/ [property] string Filter; //============================================================================= /* input properties */ //============================================================================= /** contains the URL of a text document that is to be processed.

If this property is not set an empty document is created.

*/ [property] string DocumentURL; //============================================================================= /** provides access to the model of the document to be processed.

This property will automatically be set to the documents model if a document URL was set.

*/ [property, readonly] com::sun::star::frame::XModel Model; //============================================================================= /* output properties */ //============================================================================= /** determines the destination of the mail merge action. @see com::sun::star::text::MailMergeType */ [property] short OutputType; //============================================================================= /** determines whether single print jobs will be generated per output document.

This property is only evaluated for printer output.

*/ [property] boolean SinglePrintJobs; //============================================================================= /** contains the path where generated files are created.

If "OutputURL" or "FileNamePrefix" are empty the missing value is generated from the location or title of the source documents.

This property is only evaluated for file output.

*/ [property] string OutputURL; //============================================================================= /** determines whether file names of created files are generated using the content of a database column.

This property is only evaluated for file output.

*/ [property] boolean FileNameFromColumn; //============================================================================= /** contains the name of the column to generate the output file names.

If FileNameFromColumn is true the content of the related column is added to the OutputURL.

If "OutputURL" or "FileNamePrefix" are empty the missing value is generated from the location or title of the source documents.

This property is only evaluated for file output.

*/ [property] string FileNamePrefix; //============================================================================= }; //============================================================================= }; }; }; }; #endif