| /************************************************************** |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| |
| #ifndef __com_sun_star_sheet_DataPilotFieldReferenceType_idl__ |
| #define __com_sun_star_sheet_DataPilotFieldReferenceType_idl__ |
| |
| //============================================================================= |
| |
| module com { module sun { module star { module sheet { |
| |
| //============================================================================= |
| |
| /** These constants select different types of References to calculate |
| the data fields. |
| */ |
| constants DataPilotFieldReferenceType |
| { |
| //------------------------------------------------------------------------- |
| |
| /** This type means, that the results in the data fields are displayed like they are. |
| */ |
| const long NONE = 0; |
| |
| //------------------------------------------------------------------------- |
| |
| /** From each result, its reference value (see below) is subtracted, and the difference is shown. |
| Totals outside of the base field are shown as empty results. |
| |
| <p><b>Named Item</b></p> |
| |
| <p>If a base item name is specified, the reference value for a combination of field items is the |
| result where the item in the base field is replaced by the specified base item.</p> |
| |
| <p>If the reference value isn't shown in the DataPilot table because of hidden details for a |
| parent field, the difference isn't calculated and an error value is shown.</p> |
| |
| <p>If the result for an item combination is empty, the value 0 is used for the difference, even |
| if the summary function is undefined without values, like average or variance. The difference |
| is shown in the result table even if the original result was empty.</p> |
| |
| <p>The difference for item combinations containing the base item is shown as empty result.</p> |
| |
| <p><b>Previous or Next</b></p> |
| |
| <p>If "previous" or "next" is specified as the base item, the reference value is the result for |
| the next visible member of the base field, in the base field's sort order. If details for one |
| item in the base field are hidden, that item is skipped. The difference for the item with |
| hidden details isn't calculated, not even for the item's summary, to have a consistent order |
| of previous and next items.</p> |
| |
| <p>Empty results are handled as for named items (see above).<p> |
| |
| <p>The difference for the first (for <TYPE>com::sun::star::sheet::DataPilotFieldReferenceItemType::PREVIOUS</TYPE>) |
| or last (for <TYPE>com::sun::star::sheet::DataPilotFieldReferenceItemType::NEXT</TYPE>) item of the base field is |
| shown as empty result.</p> |
| */ |
| |
| const long ITEM_DIFFERENCE = 1; |
| |
| //------------------------------------------------------------------------- |
| |
| /** Each result is divided by its reference value. The reference value is determined in the |
| same way as for <const scope="::com::sun::star::sheet">DataPilotFieldReferenceType::ITEM_DIFFERENCE</const>. |
| Totals outside of the base field are shown as empty results. |
| |
| <p>Division by zero results in an error. Otherwise, empty results are shown as 0. Results for |
| the base item, first (for <TYPE>com::sun::star::sheet::DataPilotFieldReferenceItemType::PREVIOUS</TYPE>) |
| or last (for <TYPE>com::sun::star::sheet::DataPilotFieldReferenceItemType::NEXT</TYPE>) item of the base field are shown |
| as 1 if not empty.</p> |
| */ |
| |
| const long ITEM_PERCENTAGE = 2; |
| |
| //------------------------------------------------------------------------- |
| |
| /** From each result, its reference value is subtracted, and the difference divided by the |
| reference value. The reference value is determined in the same way as for |
| <const scope="::com::sun::star::sheet">DataPilotFieldReferenceType::ITEM_DIFFERENCE</const>. |
| Totals outside of the base field are shown as empty results. |
| |
| <p>Division by zero results in an error. Otherwise, the rules for <const scope="::com::sun::star::sheet">DataPilotFieldReferenceType::ITEM_DIFFERENCE</const> apply.</p> |
| */ |
| |
| const long ITEM_PERCENTAGE_DIFFERENCE = 3; |
| |
| //------------------------------------------------------------------------- |
| |
| /** Each result is added to the sum of the results for preceding items in the base field, |
| in the base field's sort order, and the total sum is shown. |
| |
| <p>If details for one item in the base field are hidden, that item isn't included in |
| calculating the sum, and results for that item are shown as error, to ensure consistency |
| between details and subtotals for the following items.</p> |
| |
| <p>Results are always summed, even if a different summary function was used to get each result.</p> |
| |
| <p>Totals outside of the base field are shown as empty results.</p> |
| */ |
| |
| const long RUNNING_TOTAL = 4; |
| |
| //------------------------------------------------------------------------- |
| |
| /** Each result is divided by the total result for its row in the DataPilot table. |
| |
| <p>If there are several data fields, the total for the result's data field is used.</p> |
| |
| <p>If there are subtotals with manually selected summary functions, still the total with |
| the data field's summary function is used.</p> |
| |
| <p>Division by zero results in an error.</p> |
| |
| <p>Otherwise, empty results remain empty.</p> |
| */ |
| |
| const long ROW_PERCENTAGE = 5; |
| |
| //------------------------------------------------------------------------- |
| |
| /** Same as <const scope="::com::sun::star::sheet">DataPilotFieldReferenceType::ROW_PERCENTAGE</const>, but the total for the result's column is used. |
| */ |
| |
| const long COLUMN_PERCENTAGE = 6; |
| |
| //------------------------------------------------------------------------- |
| |
| /** Same as <const scope="::com::sun::star::sheet">DataPilotFieldReferenceType::ROW_PERCENTAGE</const>, but the grand total for the result's data field is used. |
| */ |
| |
| const long TOTAL_PERCENTAGE = 7; |
| |
| //------------------------------------------------------------------------- |
| |
| /** The row and column totals and the grand total, following the same rules as above, are used to calculate the following expression. |
| |
| <p>( original result * grand total ) / ( row total * column total )</p> |
| |
| <p>Division by zero results in an error. Otherwise, empty results remain empty.</p> |
| */ |
| |
| const long INDEX = 8; |
| |
| |
| }; |
| |
| //============================================================================= |
| |
| }; }; }; }; |
| |
| #endif |
| |