class Google::Apis::SheetsV4::PivotTable

A pivot table.

Attributes

columns[RW]

Each column grouping in the pivot table. Corresponds to the JSON property `columns` @return [Array<Google::Apis::SheetsV4::PivotGroup>]

criteria[RW]

An optional mapping of filters per source column offset. The filters are applied before aggregating data into the pivot table. The map's key is the column offset of the source range that you want to filter, and the value is the criteria for that column. For example, if the source was `C10:E15`, a key of `0` will have the filter for column `C`, whereas the key `1` is for column ` D`. This field is deprecated in favor of filter_specs. Corresponds to the JSON property `criteria` @return [Hash<String,Google::Apis::SheetsV4::PivotFilterCriteria>]

data_execution_status[RW]

The data execution status. A data execution is created to sync a data source object with the latest data from a DataSource. It is usually scheduled to run at background, you can check its state to tell if an execution completes There are several scenarios where a data execution is triggered to run: * Adding a data source creates an associated data source sheet as well as a data execution to sync the data from the data source to the sheet. * Updating a data source creates a data execution to refresh the associated data source sheet similarly. * You can send refresh request to explicitly refresh one or multiple data source objects. Corresponds to the JSON property `dataExecutionStatus` @return [Google::Apis::SheetsV4::DataExecutionStatus]

data_source_id[RW]

The ID of the data source the pivot table is reading data from. Corresponds to the JSON property `dataSourceId` @return [String]

filter_specs[RW]

The filters applied to the source columns before aggregating data for the pivot table. Both criteria and filter_specs are populated in responses. If both fields are specified in an update request, this field takes precedence. Corresponds to the JSON property `filterSpecs` @return [Array<Google::Apis::SheetsV4::PivotFilterSpec>]

rows[RW]

Each row grouping in the pivot table. Corresponds to the JSON property `rows` @return [Array<Google::Apis::SheetsV4::PivotGroup>]

source[RW]

A range on a sheet. All indexes are zero-based. Indexes are half open, i.e. the start index is inclusive and the end index is exclusive – [start_index, end_index). Missing indexes indicate the range is unbounded on that side. For example, if `“Sheet1”` is sheet ID 0, then: `Sheet1!A1:A1 == sheet_id: 0, start_row_index: 0, end_row_index: 1, start_column_index: 0, end_column_index: 1` `Sheet1!A3:B4 == sheet_id: 0, start_row_index: 2, end_row_index: 4, start_column_index: 0, end_column_index: 2` `Sheet1!A:B == sheet_id: 0, start_column_index: 0, end_column_index: 2` `Sheet1!A5:B == sheet_id: 0, start_row_index: 4, start_column_index: 0, end_column_index: 2` `Sheet1 == sheet_id:0` The start index must always be less than or equal to the end index. If the start index equals the end index, then the range is empty. Empty ranges are typically not meaningful and are usually rendered in the UI as `# REF!`. Corresponds to the JSON property `source` @return [Google::Apis::SheetsV4::GridRange]

value_layout[RW]

Whether values should be listed horizontally (as columns) or vertically (as rows). Corresponds to the JSON property `valueLayout` @return [String]

values[RW]

A list of values to include in the pivot table. Corresponds to the JSON property `values` @return [Array<Google::Apis::SheetsV4::PivotValue>]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/sheets_v4/classes.rb, line 7500
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/sheets_v4/classes.rb, line 7505
def update!(**args)
  @columns = args[:columns] if args.key?(:columns)
  @criteria = args[:criteria] if args.key?(:criteria)
  @data_execution_status = args[:data_execution_status] if args.key?(:data_execution_status)
  @data_source_id = args[:data_source_id] if args.key?(:data_source_id)
  @filter_specs = args[:filter_specs] if args.key?(:filter_specs)
  @rows = args[:rows] if args.key?(:rows)
  @source = args[:source] if args.key?(:source)
  @value_layout = args[:value_layout] if args.key?(:value_layout)
  @values = args[:values] if args.key?(:values)
end