summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/sheet/XDataPilotFieldGrouping.idl
diff options
context:
space:
mode:
Diffstat (limited to 'offapi/com/sun/star/sheet/XDataPilotFieldGrouping.idl')
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotFieldGrouping.idl124
1 files changed, 102 insertions, 22 deletions
diff --git a/offapi/com/sun/star/sheet/XDataPilotFieldGrouping.idl b/offapi/com/sun/star/sheet/XDataPilotFieldGrouping.idl
index 5be15ad39..03ff2a6bc 100644
--- a/offapi/com/sun/star/sheet/XDataPilotFieldGrouping.idl
+++ b/offapi/com/sun/star/sheet/XDataPilotFieldGrouping.idl
@@ -1,7 +1,7 @@
/*************************************************************************
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
+ *
* Copyright 2008 by Sun Microsystems, Inc.
*
* OpenOffice.org - a multi-platform office productivity suite
@@ -41,52 +41,132 @@
#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
#include <com/sun/star/lang/IllegalArgumentException.idl>
#endif
-
+
//=============================================================================
module com { module sun { module star { module sheet {
//=============================================================================
-/** provides methods to control a data pilot field which has already
- been created.
+/** Provides methods to create new DataPilot fields where some or all items of
+ this DataPilot field are grouped in some way.
- @see com::sun::star::sheet::DataPilotField
+ @see DataPilotField
*/
published interface XDataPilotFieldGrouping: com::sun::star::uno::XInterface
{
//-------------------------------------------------------------------------
- /** Creates a new Field which contains a group containing the given Items.
+ /** Creates a new DataPilot field which contains a group containing the
+ given DataPilot field items (members).
- @returns
- the new created field if there is one created.
+ <p>It is possible to create multiple groups by calling this method
+ several times at the same DataPilot field. On subsequent calls, the
+ DataPilot field created at the first call is used to insert the new
+ groups.</p>
- @see com::sun::star::sheet::DataPilotField
+ <p>The collection of groups can be accessed via the
+ <member>DataPilotField::GroupInfo</member> property. The returned
+ struct contains the sequence of groups in its member
+ <member>DataPilotFieldGroupInfo::Groups</member>.</p>
@param aItems
- A sequence containing the Item names which have to be in the new group. This
- have to be Items of the current field.
+ a sequence containing the names of the items (members) which will
+ be part of the new group. Must be names of items contained in the
+ current field.
+
+ @returns
+ the new created field if there is one created on the first call of
+ this method. <NULL/> is returned on subsequent calls.
+
+ @see DataPilotField
+ @see DataPilotFieldGroupInfo
*/
- com::sun::star::sheet::XDataPilotField createNameGroup([in] sequence< string > aItems)
- raises( com::sun::star::lang::IllegalArgumentException );
+ XDataPilotField createNameGroup([in] sequence< string > aItems)
+ raises( com::sun::star::lang::IllegalArgumentException );
//-------------------------------------------------------------------------
- /** Creates a new Field if the current field is grouped by dates. Doesn't create a new field
- if the field contains no dates or it isn't grouped yet.
+ /** Groups the members of this field by dates, according to the passed
+ settings.
- @returns
- the new created field if there is one created.
-
- @see com::sun::star::sheet::DataPilotField
+ <p>If this field is already grouped by dates, a new DataPilot field
+ will be created and returned. If this field is not grouped at all, the
+ date grouping is perfomed inside of this field (no new field will be
+ created). There must not be any other grouping (by member names or by
+ numeric ranges), otherwise an exception is thrown.</p>
@param aInfo
- contains the information how to group the field.
+ contains the information how to group the items of the field. The
+ members of this struct have to fulfill the following requirements:
+
+ <ul>
+ <li>If the member <member>DataPilotFieldGroupInfo::HasAutoStart
+ </member> is set to <FALSE/>, then the value of <member>
+ DataPilotFieldGroupInfo::Start</member> must be a floating-point
+ value representing a valid date/time value (if <member>
+ DataPilotFieldGroupInfo::HasAutoStart</member> is set to <TRUE/>,
+ the value of <member>DataPilotFieldGroupInfo::Start</member> will
+ be ignored).</li>
+
+ <li>If the member <member>DataPilotFieldGroupInfo::HasAutoEnd
+ </member> is set to <FALSE/>, then the value of <member>
+ DataPilotFieldGroupInfo::End</member> must be a floating-point
+ value representing a valid date/time value( if <member>
+ DataPilotFieldGroupInfo::HasAutoEnd</member> is set to <TRUE/>,
+ the value of <member>DataPilotFieldGroupInfo::End</member> will be
+ ignored).</li>
+
+ <li>If the members <member>DataPilotFieldGroupInfo::HasAutoStart
+ </member> and <member>DataPilotFieldGroupInfo::HasAutoEnd</member>
+ are set to <FALSE/> both, then the value of <member>
+ DataPilotFieldGroupInfo::Start</member> must be less than or equal
+ to the value of <member>DataPilotFieldGroupInfo::End</member>.</li>
+
+ <li>The member <member>DataPilotFieldGroupInfo::HasDateValues</member>
+ must be set to <TRUE/>.</li>
+
+ <li>The member <member>DataPilotFieldGroupInfo::Step</member> must
+ be zero, unless ranges of days have to be grouped (see the
+ description of the member GroupBy below), in that case the value
+ must be greater than or equal to 1 and less than or equal to 32767.
+ The fractional part of the value will be ignored.</li>
+
+ <li>The member <member>DataPilotFieldGroupInfo::GroupBy</member>
+ must contain exactly one of the flags from <type>DataPilotFieldGroupBy</type>.
+ A combination of several flags will not be accepted. If
+ <const>DataPilotFieldGroupBy::DAYS</const> is specified, the
+ value of the member <member>DataPilotFieldGroupInfo::Step</member>
+ will specify the type of day grouping (see above). If that value
+ is zero, grouping is performed on all days of the year (e.g. the
+ members containing the 1st of January of any year are grouped
+ together). If that value is greater than zero, grouping is done on
+ ranges of days, and the value specifies the number of days grouped
+ into one range (e.g. a value of 7 groups the members of a week
+ into a range).</li>
+
+ <li>The contents of the member <member>
+ DataPilotFieldGroupInfo::SourceField</member> will be ignored.</li>
+
+ <li>The contents of the member <member>
+ DataPilotFieldGroupInfo::Groups</member> will be ignored.</li>
+ </ul>
+
+ @returns
+ the new created field if there is one created. <NULL/> is returned,
+ if date grouping is performed inside this field (i.e. this field
+ was not grouped by dates before).
+
+ @throws com::sun::star::lang::IllegalArgumentException
+ if the passed struct does not contain valid settings as described,
+ or if this field is already grouped by member names or numeric
+ ranges.
+
+ @see DataPilotField
*/
- com::sun::star::sheet::XDataPilotField createDateGroup([in] com::sun::star::sheet::DataPilotFieldGroupInfo aInfo)
+ XDataPilotField createDateGroup([in] DataPilotFieldGroupInfo aInfo)
raises( com::sun::star::lang::IllegalArgumentException );
-
+
};
//=============================================================================