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 .
21 module com
{ module sun
{ module star
{ module sheet
{
24 /** represents a dimension in a data pilot source.
26 <p>A dimension is equivalent to a column of a cell range in a spreadsheet
27 used for a data pilot field.</p>
29 <p>In more complex data sources, a dimension may contain several
30 hierarchies, which consolidate items of a complex data type, called
33 <p>Example: In a database, a column contains date values. This column
34 will be a dimension of the data pilot source. One hierarchy may contain
35 the 3 levels year, month, day. Another hierarchy may contain the 2 levels
36 year and week number.</p>
38 @see com::sun::star::sheet::DataPilotSource
39 @see com::sun::star::sheet::DataPilotTable
41 service DataPilotSourceDimension
44 /** provides access to the name of the dimension, i.e. used in
47 interface com
::sun
::star
::container
::XNamed
;
50 /** provides access to the collection of hierarchies of this dimension.
52 interface com
::sun
::star
::sheet
::XHierarchiesSupplier
;
55 /** supports duplicating the dimension.
57 <p>A dimension may be used several times in a data pilot table,
58 i.e. as row field and data field.</p>
60 interface com
::sun
::star
::util
::XCloneable
;
63 //!published service PropertySet
64 /** provides access to the properties.
66 interface com
::sun
::star
::beans
::XPropertySet
;
69 /** returns the name of the dimension from which this dimension was
70 cloned, or `NULL` if it was not cloned.
72 [readonly, property
] com
::sun
::star
::container
::XNamed Original
;
75 /** contains `TRUE` if this is the dimension used to layout the
76 different data dimensions.
78 [readonly, property
] boolean IsDataLayoutDimension
;
81 /** specifies where the dimension is used.
83 [property
] com
::sun
::star
::sheet
::DataPilotFieldOrientation Orientation
;
86 /** specifies the position of the dimension within its orientation.
88 [property
] long Position
;
91 /** specifies how data are aggregated.
93 [property
] com
::sun
::star
::sheet
::GeneralFunction Function
;
96 /** specifies which hierarchy of the dimension is used.
98 @see com::sun::star::sheet::DataPilotSourceHierarchies
100 [property
] long UsedHierarchy
;
103 /** specifies which values are used.
105 [property
] sequence
< com
::sun
::star
::sheet
::TableFilterField
> Filter
;
108 /** contains flags that control the usage of the dimension.
110 @see com::sun::star::sheet::DimensionFlags
112 [readonly, property
, optional] long Flags
;
115 /** specifies how data are aggregated.
116 @since LibreOffice 5.3
118 [property
, optional] short Function2
;
125 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */