Skip to main content

pivot

Tabela dinâmica

Linhas agregadas em prateleiras de linhas, colunas e valores, com totais e percentagens.

  • Kind: view
  • Key: pivot
  • Categoria: análise
  • Envelope: lista de um só elemento (a config vive em config[0])
Envelope de um só elemento

View.config é uma lista com um único elemento: a configuração vive em config[0], não em config. Uma config escrita como mapa cru é lida de qualquer maneira, mas entra nos relatórios como desvio de envelope.

Campos

ChaveTipoObrigatórioOmissãoDescriçãoReferência
hiddenColumnslist de stringnão-Colunas escondidas.-
filterGroupmapnão-Grupo de filtros aplicado às linhas da vista.-
filtersjsonnão-Descontinuado. Filtros no formato legado: nome da coluna → valor escolhido. Só lido, e só quando não há filterGroup. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui.-
filterTypesjsonnão-Descontinuado. Operadores do formato legado: nome da coluna → operador. Só lido, a par de filters. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui.-
dynamicFiltersmapnão-Filtros aplicados em execução, com o UUID da coluna na chave; entradas combinadas por E, e uma chave órfã esconde tudo (falha fechada).chave: coluna (uuid)
predefinedFilterslistnão-Filtros guardados no formato legado (mapas por chave de coluna com valores escolhidos): dado de utilizador. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui.-
sortedColumnslist de stringnão-Colunas por que se ordena, por ordem.-
allowAddbooleannãotruePermite acrescentar linhas.-
footerSumColumnslist de stringnão-Colunas somadas no rodapé.-
rowFieldslist de mapnão-Colunas que fazem as LINHAS da tabela dinâmica, por ordem.-
columnFieldslist de mapnão-Colunas que fazem as COLUNAS da tabela dinâmica, por ordem.-
valueFieldslist de mapnão-Colunas agregadas nas células.-
showTotalsbooleannãotrueMostra os subtotais de cada grupo.-
showGrandTotalbooleannãotrueMostra o total geral.-
showPercentagesbooleannãofalseMostra cada valor também em percentagem do total.-
sortRowsenumerationnão"asc"Sentido da ordenação das linhas.-
sortColumnsenumerationnão"asc"Sentido da ordenação das colunas.-
defaultExpandedLevelintegernão-Profundidade aberta por omissão: nulo fecha tudo, 0 deixa só o total geral, N abre até ao nível N e 999 abre tudo.-
titlestringnão-Título mostrado acima da tabela.-
allowUserShelvesbooleannãotrueDeixa o utilizador mexer nas prateleiras em execução.-

filterGroup

ChaveTipoObrigatórioOmissãoDescriçãoReferência
combinatorenumerationnão"and"Como se combinam as regras do grupo: and exige todas, or basta uma.-
ruleslist de mapnão-As regras do grupo.-
groupslist de mapnão-Subgrupos aninhados, com a mesma forma.-

filterGroup.rules[]

Cada elemento de filterGroup.rules é um objeto:

ChaveTipoObrigatórioOmissãoDescriçãoReferência
idstringnão-Identificador da regra, gerado pela app. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui.-
columnNamestringnão-Coluna desta tabela, POR NOME.coluna (nome)
operatorstringnão-Operador da comparação.-
valuestringnão-Valor da comparação: dado de utilizador. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui.-
secondValuestringnão-Segundo valor, usado pelos operadores de intervalo. Só aparece no JSON quando não é nulo. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui.-

filterGroup.groups[]

Cada elemento de filterGroup.groups é um objeto:

ChaveTipoObrigatórioOmissãoDescriçãoReferência
combinatorenumerationnão"and"Como se combinam as regras do subgrupo.-
ruleslist de mapnão-As regras do grupo.-
groupslistnão-Subgrupos de terceiro nível: varrem-se às cegas (uma FieldDecl const não se pode referir a si própria).-

filterGroup.groups[].rules[]

Cada elemento de filterGroup.groups[].rules é um objeto:

ChaveTipoObrigatórioOmissãoDescriçãoReferência
idstringnão-Identificador da regra, gerado pela app. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui.-
columnNamestringnão-Coluna desta tabela, POR NOME.coluna (nome)
operatorstringnão-Operador da comparação.-
valuestringnão-Valor da comparação: dado de utilizador. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui.-
secondValuestringnão-Segundo valor, usado pelos operadores de intervalo. Só aparece no JSON quando não é nulo. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui.-

rowFields[]

Cada elemento de rowFields é um objeto:

ChaveTipoObrigatórioOmissãoDescriçãoReferência
featureColumnIduuidsim-Coluna desta tabela, por UUID (o pivot é a única vista que refere colunas por identificador).coluna (uuid)
labelstringnão-Rótulo mostrado na prateleira.-
orderintegernão0Posição na prateleira.-
dateGranularityenumerationnão-Granularidade, quando a coluna é de data.-
dateGroupTypestringnão-Descontinuado. Nome antigo do dateGranularity, ainda lido como recurso; aceita também normal, que vale por "sem granularidade".-

columnFields[]

Cada elemento de columnFields é um objeto:

ChaveTipoObrigatórioOmissãoDescriçãoReferência
featureColumnIduuidsim-Coluna desta tabela, por UUID (o pivot é a única vista que refere colunas por identificador).coluna (uuid)
labelstringnão-Rótulo mostrado na prateleira.-
orderintegernão0Posição na prateleira.-
dateGranularityenumerationnão-Granularidade, quando a coluna é de data.-
dateGroupTypestringnão-Descontinuado. Nome antigo do dateGranularity, ainda lido como recurso; aceita também normal, que vale por "sem granularidade".-

valueFields[]

Cada elemento de valueFields é um objeto:

ChaveTipoObrigatórioOmissãoDescriçãoReferência
featureColumnIduuidsim-Coluna desta tabela, por UUID (o pivot é a única vista que refere colunas por identificador).coluna (uuid)
labelstringnão-Rótulo mostrado na prateleira.-
aggregationenumerationsim-Operação aplicada aos valores.-
formatenumerationnão"number"Formato de apresentação do resultado.-

Exemplo JSON

[
{
"allowAdd": true,
"showTotals": true,
"showGrandTotal": true,
"showPercentages": false,
"sortRows": "asc",
"sortColumns": "asc",
"allowUserShelves": true
}
]

Gerado de definitions.json versão 17f3e0bc59d9. Esta página nasce no build: não se edita à mão.