1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #ifndef __com_sun_star_sheet_DataPilotSourceDimension_idl__
21 #define __com_sun_star_sheet_DataPilotSourceDimension_idl__
23 #include
<com
/sun
/star
/container
/XNamed.idl
>
24 #include
<com
/sun
/star
/sheet
/XHierarchiesSupplier.idl
>
25 #include
<com
/sun
/star
/util
/XCloneable.idl
>
26 #include
<com
/sun
/star
/beans
/XPropertySet.idl
>
27 #include
<com
/sun
/star
/sheet
/DataPilotFieldOrientation.idl
>
28 #include
<com
/sun
/star
/sheet
/GeneralFunction.idl
>
29 #include
<com
/sun
/star
/sheet
/TableFilterField.idl
>
32 module com
{ module sun
{ module star
{ module sheet
{
35 /** represents a dimension in a data pilot source.
37 <p>A dimension is equivalent to a column of a cell range in a spreadsheet
38 used for a data pilot field.</p>
40 <p>In more complex data sources, a dimension may contain several
41 hierarchies, which consolidate items of a complex data type, called
44 <p>Example: In a database, a column contains date values. This column
45 will be a dimension of the data pilot source. One hierarchy may contain
46 the 3 levels year, month, day. Another hierarchy may contain the 2 levels
47 year and week number.</p>
49 @see com::sun::star::sheet::DataPilotSource
50 @see com::sun::star::sheet::DataPilotTable
52 service DataPilotSourceDimension
55 /** provides access to the name of the dimension, i.e. used in
58 interface com
::sun
::star
::container
::XNamed
;
61 /** provides access to the collection of hierarchies of this dimension.
63 interface com
::sun
::star
::sheet
::XHierarchiesSupplier
;
66 /** supports duplicating the dimension.
68 <p>A dimension may be used several times in a data pilot table,
69 i.e. as row field and data field.</p>
71 interface com
::sun
::star
::util
::XCloneable
;
74 //!published service PropertySet
75 /** provides access to the properties.
77 interface com
::sun
::star
::beans
::XPropertySet
;
80 /** returns the name of the dimension from which this dimension was
81 cloned, or `NULL` if it was not cloned.
83 [readonly, property
] com
::sun
::star
::container
::XNamed Original
;
86 /** contains `TRUE` if this is the dimension used to layout the
87 different data dimensions.
89 [readonly, property
] boolean IsDataLayoutDimension
;
92 /** specifies where the dimension is used.
94 [property
] com
::sun
::star
::sheet
::DataPilotFieldOrientation Orientation
;
97 /** specifies the position of the dimension within its orientation.
99 [property
] long Position
;
102 /** specifies how data are aggregated.
104 [property
] com
::sun
::star
::sheet
::GeneralFunction Function
;
107 /** specifies which hierarchy of the dimension is used.
109 @see com::sun::star::sheet::DataPilotSourceHierarchies
111 [property
] long UsedHierarchy
;
114 /** specifies which values are used.
116 [property
] sequence
< com
::sun
::star
::sheet
::TableFilterField
> Filter
;
119 /** contains flags that control the usage of the dimension.
121 @see com::sun::star::sheet::DimensionFlags
123 [readonly, property
, optional] long Flags
;
132 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */