import_pivot_cache_field_group

Defined in header: <orcus/spreadsheet/import_interface_pivot.hpp>

class import_pivot_cache_field_group

Interface for importing group field settings in a pivot cache definition.

Public Functions

virtual ~import_pivot_cache_field_group()

Establish a linkage between a base item to a group item.

The index to corresponding base item is inferred from the order of this method being called; the first call to this method implies a base item index of 0, the second call implies an index of 1, and so on.

This method is called only for a non-range group field; a group field where parent-to-child item relationships are manually defined.

Parameters:

group_item_index – 0-based index for the group item.

virtual void set_field_item_string(std::string_view value) = 0

Set an individual field item value that is of string type to the current internal buffer.

This method can be called either for a range group field or a non-range one.

Parameters:

value – field item value.

virtual void set_field_item_numeric(double v) = 0

Set an individual field item value that is of numeric type to the current internal buffer.

This method can be called either for a range group field or a non-range one.

Parameters:

v – field item value.

virtual void commit_field_item() = 0

Commit the current internal field item buffer to the group.

virtual void set_range_grouping_type(pivot_cache_group_by_t group_by) = 0

Set the range grouping type.

The current group field implicitly becomes a range group field when this method is called.

Parameters:

group_by – type of range grouping.

virtual void set_range_auto_start(bool b) = 0

Set whether the current range group field has an automatic start position.

The current group field implicitly becomes a range group field when this method is called.

Parameters:

b – whether or not the current range group field has an automatic start position.

virtual void set_range_auto_end(bool b) = 0

Set whether the current range group field has an automatic end position.

The current group field implicitly becomes a range group field when this method is called.

Parameters:

b – whether or not the current range group field has an automatic end position.

virtual void set_range_start_number(double v) = 0

Set the start number of the current range group field.

The current group field implicitly becomes a range group field when this method is called.

Parameters:

v – start number of the current range group field.

virtual void set_range_end_number(double v) = 0

Set the end number of the current range group field.

The current group field implicitly becomes a range group field when this method is called.

Parameters:

v – end number of the current range group field.

virtual void set_range_start_date(const date_time_t &dt) = 0

Set the start date of the current range group field.

The current group field implicitly becomes a range group field when this method is called.

Parameters:

dt – start date of the current range group field.

virtual void set_range_end_date(const date_time_t &dt) = 0

Set the end date of the current range group field.

The current group field implicitly becomes a range group field when this method is called.

Parameters:

dt – end date of the current range group field.

virtual void set_range_interval(double v) = 0

Set the interval of the current range group field. If the current range is a date range, the value represents the number of days.

Parameters:

v – interval of the current range group field.

virtual void commit() = 0

Commit the current field group data to the parent field.