/************************************************************************* * * $RCSfile: RowSet.idl,v $ * * $Revision: 1.8 $ * * last change: $Author: mi $ $Date: 2002-10-03 13:06:35 $ * * 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 2000 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_sdb_RowSet_idl__ #define __com_sun_star_sdb_RowSet_idl__ #ifndef __com_sun_star_sdbc_RowSet_idl__ #include #endif module com { module sun { module star { module sdbc { interface XConnection; };};};}; #ifndef __com_sun_star_sdb_ResultSet_idl__ #include #endif #ifndef __com_sun_star_sdb_XCompletedExecution_idl__ #include #endif module com { module sun { module star { module sdbcx { interface XDeleteRows; };};};}; module com { module sun { module star { module sdb { interface XRowSetApproveBroadcaster; interface XResultSetAccess; // DocMerge from xml: service com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet /** is a client side RowSet, which use retrieves is data based on a database table, a query or a SQL command or by a rowset reader, who mustn't support SQL. The connection of the rowset is typically a named DataSource or a DataAccess component or a previous instanciated connection.

Depending on the ResultSetConcurrency , the RowSet caches all data or uses an optimized way for retrieving the data, such as, refetching rows by their keys or if provided, by their bookmarks.

In addition, it provides events for RowSet navigation and RowSet modifications to approve the actions and to react on them. @see com::sun::star::sdb::RowChangeAction @see com::sun::star::sdb::RowChangeEvent

*/ service RowSet { // DocMerge: empty anyway service com::sun::star::sdbc::RowSet; // DocMerge: empty anyway service com::sun::star::sdb::ResultSet; /** can be used to allow an interaction handler to supply missing data during a execute process.

If you want a row set to be based on a parametrized query, you will usually use the XParameters interface.
However, you can also choose to let an interaction handler supply such data. For this, you may for instance instantiate an InteractionHandler, which asks the user for the data, or you may write your own one, which supplies the data from somewhere else.

@see com::sun::star::sdb::InteractionHandler */ interface com::sun::star::sdb::XCompletedExecution; /** approving of actions performed on the rowset. */ interface XRowSetApproveBroadcaster; // DocMerge from xml: service com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet: interface com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::XResultSetAccess /** creates a second result set which is based on the same data.

The new result set is interoperable with the row set which created it, e.g., you can exchange bookmarks between both sets.

If the row set is not alive (i.e., it was not executed before), is returned.

*/ interface XResultSetAccess; // DocMerge from xml: property com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet::ActiveConnection /** is the connection generated by a DataSource or by a URL. It could also be set from outside. When set from outside the RowSet is not responsible for the closing of the connection. */ [property] com::sun::star::sdbc::XConnection ActiveConnection; // DocMerge from xml: property com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet::DataSourceName /** is the name of the datasource to use, this could be a named datasource or the URL of a data access component. */ [property] string DataSourceName; // DocMerge from xml: property com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet::Command /** is the command which should be executed, the type of command depends on the CommandType. @see com::sun::star::sdb::CommandType */ [property] string Command; // DocMerge from xml: property com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet::CommandType /** is the type of the command. @see com::sun::star::sdb::CommandType @see com::sun::star::sdb::CommandType */ [property] long CommandType; // DocMerge from xml: property com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet::ActiveCommand /** is the command which is currently used. @see com::sun::star::sdb::CommandType */ [readonly, property] string ActiveCommand; // DocMerge from xml: property com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet::IgnoreResult /** indicates whether all results should be discarded or not. */ [property] boolean IgnoreResult; // DocMerge from xml: property com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet::Filter /** additional filter for a rowset. */ [property] string Filter; // DocMerge from xml: property com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet::ApplyFilter /** indicates whether the filter should be applied or not, default is . */ [property] boolean ApplyFilter; // DocMerge from xml: property com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet::Order /** is a additional sort order definition for a rowset. */ [property] string Order; // DocMerge from xml: property com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet::Privileges /** indicates the privileges for insert, update, and delete. @see com::sun::star::sdbcx::Privilege */ [readonly, property] long Privileges; // DocMerge from xml: property com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet::IsModified /** indicates that the current row is modified. */ [readonly, property] boolean IsModified; // DocMerge from xml: property com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet::IsNew /** indicates that the current row is going to be inserted to the database. */ [readonly, property] boolean IsNew; // DocMerge from xml: property com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet::RowCount /** contains the number of rows accessed in a the data source. */ [readonly, property] long RowCount; // DocMerge from xml: property com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet::IsRowCountFinal /** indicates that all rows of te row set have been counted. */ [readonly, property] boolean IsRowCountFinal; // DocMerge from xml: property com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet::UpdateTableName /** is the name of the table which should be updated, this is usually used for queries which relate to more than one table. @optional */ [optional, property] string UpdateTableName; // DocMerge from xml: property com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet::UpdateCatalogName /** is the name of the table catalog @optional */ [optional, property] string UpdateCatalogName; // DocMerge from xml: property com::sun::star::sdbc::com::sun::star::sdbcx::com::sun::star::sdb::RowSet::UpdateSchemaName /** is the name of the table schema. @optional */ [optional, property] string UpdateSchemaName; }; //============================================================================= }; }; }; }; /*=========================================================================== $Log: not supported by cvs2svn $ Revision 1.7.2.2 2002/08/05 13:01:36 fs added XCompletedExecution Revision 1.7.2.1 2002/02/18 10:23:56 oj #97563# parameter,return value and exception description Revision 1.7 2001/10/25 15:00:32 mi proofreading and corrections from Richard Holt Revision 1.6 2001/01/24 09:56:11 fs #83074# extended the doc for the XResultSetAccess interface Revision 1.5 2001/01/23 10:08:26 mi optional interfaces now marked as [optional] instead of just a prosa description of this fact Revision 1.4 2000/12/14 12:53:38 mi -> and same with FALSE Revision 1.3 2000/11/08 12:43:31 mi moved from api Revision 1.1.1.1 2000/09/18 23:35:36 hjs initial import Revision 1.10 2000/09/11 11:52:40 mi documentation merged from XML Revision 1.8 2000/01/14 08:15:28 dg #70278# IsInsertOnly renamed to IgnoreResult Revision 1.7 1999/12/20 16:32:43 dg #70278# files removed and new doc Revision 1.6 1999/12/10 16:56:32 dg #70278# documentation Revision 1.5 1999/12/10 12:40:16 dg #70278# documentation Revision 1.4 1999/12/09 12:42:21 dg #70278# documentation Revision 1.3 1999/12/08 14:42:25 dg #70278# new Composer files Revision 1.2 1999/11/25 08:48:50 dg adjustments Revision 1.1 1999/11/24 08:39:01 dg new Star Data Beans ===========================================================================*/ #endif