Planilhas eletrônicas
Documentação do Spreadsheets
Table of contents
Spreadsheets Extension para Qlik
Baixando e Instalando
Qlik Sense Desktop
Para instalar a Spreadsheets Extension no Qlik Sense Desktop, faça o seguinte:
- Baixe a Spreadsheets Extension para Qlik Sense.
- Extraia o arquivo.
- Abra uma janela do Windows Explorer e navegue até o diretório de Extensions do Qlik Sense:
..\Users\<UserName>\Documents\Qlik\Sense\Extensions. - Copie a pasta anychart-4x-spreadsheets para o diretório de Extensions.
- Reinicie o Qlik Sense Desktop.
Qlik Sense Server
Para instalar a Spreadsheets Extension em um servidor Qlik Sense,
- Baixe a Spreadsheets Extension para Qlik Sense.
- Abra o Qlik Management Console (QMC): https://<QPS server name>/qmc
- Selecione Extensions na página inicial do QMC ou no menu suspenso Start.
- Clique em Import na barra de ações.
- No diálogo, selecione o arquivo baixado. Deixe a área de senha em branco.
- Clique em Open na janela do explorador de arquivos.
- Clique em Import.
Qlik Sense Cloud
Para instalar a Spreadsheets Extension no Qlik Sense Cloud, faça o seguinte:
- Baixe a Spreadsheets Extension para Qlik Sense Cloud.
- Extraia o arquivo.
- Acesse o Management Console:
- adicione /console ao endereço do seu tenant: https://<your tenant address>/console
- ou use o link de navegação Administration sob o perfil do usuário no hub
- Vá para a página Extensions e clique em Add.
- No diálogo, selecione o arquivo com a Extension no bundle – por exemplo, anychart-4x-spreadsheets.zip.
- Clique em Add.
- Repita as etapas acima para adicionar outras Extensions.
- No Management Console, vá para a seção Content Security Policy e clique em Add.
- No diálogo, dê um nome à Content Security Policy – por exemplo, AnyChart.
- Digite o endereço do servidor de origem: qlik.anychart.com
- Selecione as seguintes diretrizes:
- connect-src
- font-src
- img-src
- script-src
- style-src
- Clique em Add.
Visão Geral
O AnyChart Spreadsheets traz uma poderosa experiência de edição de tabelas semelhante ao Excel diretamente para o Qlik Sense. Com suporte para fórmulas nativas do Excel, formatação rica, configurações de várias planilhas e exploração de dados interativa, esta Extension permite aos usuários manipular e analisar dados com a flexibilidade de uma planilha completa.
Explore a seção Quick Start para obter experiência prática na Spreadsheets Extension.
Quick Start
Criar uma Tabela Básica
Este tutorial orienta você na criação de uma visualização básica de Spreadsheets do zero.
Passo a passo em vídeo
Etapa 1: Adicionar uma Visualização Vazia
- No seu aplicativo Qlik Sense, vá para o Assets Panel .
- Navegue até Custom objects > AnyChart 4 .
- Arraste a visualização Spreadsheets para sua planilha.
Etapa 2: Ativar o Autosave
- Selecione a visualização e abra o Properties Panel.
- Vá para a seção Settings -> Autosave
- Selecione a opção de armazenamento Browser IndexedDB
Etapa 3: Adicionar uma Data Section
- Vá para a seção Data.
- Clique no botão Add para criar uma nova Data Section.
- Selecione a Data Section recém-criada.
- Certifique-se de que a opção Create synced sheet esteja ativada.
- Clique em Edit data e selecione Data .
- Adicione as Columns desejadas.

Após concluir essas etapas, sua visualização conterá:
- Uma planilha vazia: Sheet1
- Uma planilha preenchida com dados da Data Section: DataSheet1

Etapa 4: Formatar a Planilha
- Remover a planilha vazia:
- Clique com o botão direito em Sheet1 e selecione Delete.
- Criar uma tabela na planilha de dados restante:
- Selecione todas as células que contêm dados.
- Vá para a seção INSERT no Ribbon Menu.
- Clique em Table e confirme na janela pop-up.
- Ajustar a formatação:
- Redimensione colunas e linhas conforme necessário.
- Personalize os estilos de fonte usando a aba HOME.
- Selecione suas células de cabeçalho e use as ferramentas de alinhamento em Font Alignment.

Etapa 5: Adicionar um Gráfico
- Selecione todas as células que contêm dados.
- Vá para a aba INSERT no Ribbon Menu.
- Clique em Insert Chart e escolha um tipo de gráfico que se adapte aos seus dados.
- Clique em OK.
Reposicione seu gráfico em qualquer lugar da planilha.
Opcional: Exportar sua Planilha para o Excel
Se você quiser continuar trabalhando em outra ferramenta como o Excel:
- Vá para a aba FILE no Ribbon Menu.
- Clique em Export .
- Selecione a opção Excel file.
- Configure suas definições de exportação usando Save Flags .
- Clique no botão Export Excel File.
- Nomeie seu arquivo na janela pop-up e clique em OK.
Depois disso, o download começará automaticamente e seu arquivo .xlsx estará pronto para ser aberto no Excel ou em qualquer software compatível.
Usar modelo Excel existente
Este guia orienta você sobre como usar a AnyChart Spreadsheets Extension no Qlik Sense para transformar um modelo do Excel em uma planilha totalmente interativa e baseada em dados.
Passo a passo em vídeo
Pré-requisitos
- Aplicativo Qlik Sense com a AnyChart Spreadsheets Extension instalada
- Arquivo de modelo: personal-bundet.xlsx
Etapa 1: Carregar Dados no Qlik
- Carregue o arquivo personal-budget.xlsx para os Attached Files do seu aplicativo Qlik.
- Abra o Data Load Editor e use o seguinte script para carregar as tabelas Budget e Transactions:
LOAD
Category,
Budget
FROM [lib://AttachedFiles/personal-budget.xlsx]
(ooxml, embedded labels, header is 3 lines, table is Budget)
Where Upper(Trim(Category)) <> 'TOTAL';
LOAD
"Date",
Description,
Category,
Amount
FROM [lib://AttachedFiles/personal-budget.xlsx]
(ooxml, embedded labels, header is 1 lines, table is Transactions); - Clique em Load Data.
Etapa 2: Adicionar a Spreadsheets Extension
- Crie uma nova planilha no seu aplicativo Qlik e abra-a.
Entre no Edit Mode. - Na seção Custom Objects > AnyChart, arraste a visualização Spreadsheets Table para a tela.
Etapa 3: Ativar o Autosave
- Selecione a visualização e abra o Properties Panel.
- Vá para a seção Settings -> Autosave
Etapa 4: Importar o Modelo do Excel
- Com a visualização selecionada, vá para a aba FILE no Ribbon Menu.
- Clique em Import Excel File .
- Selecione o arquivo personal-budget.xlsx.
O modelo contém duas planilhas:
- Uma planilha Budget
- Uma planilha Transactions
Etapa 5: Criar Data Sections
- Abra o Properties Panel e navegue até a aba Data.
- Clique em Add para criar a primeira Data Section:
- Adicionar dimensão:
- Category
- Adicionar medidas:
- Sum(Budget)
- Sum(Amount)
- Sum(Budget) - Sum(Amount)
- Adicionar dimensão:
- Clique em Add novamente para criar a segunda Data Section:
- Adicionar dimensões:
- Date
- Description
- Category
- Adicionar medida:
- Sum(Amount)
- Adicionar dimensões:
- Personalize os rótulos das medidas (por exemplo, renomeie Sum(Amount) para Amount ).
Etapa 6: Preparar Modelo para Dados do Qlik
- Alterne para cada aba na visualização da planilha.
- Limpe os valores estáticos das células onde os dados do Qlik serão injetados.
- Defina o formato dessas células como General usando o Ribbon Menu (isso é importante para que as fórmulas funcionem corretamente).
Etapa 7: Inserir Fórmulas QLIK.DATA
Planilha Budget
- Na célula inicial da tabela de orçamento (por exemplo, A4), insira:
=QLIK.DATA(0,,,TRUE,”TOP”)
Isso puxa os dados da primeira Data Section e ativa rótulos e totais.
- Formate as células de dados (por exemplo, as colunas Budget, Amount e Difference) como Currency .
Planilha Transactions
- Na célula inicial da tabela de transações (por exemplo, A2 ), insira:
=QLIK.DATA(1,,,TRUE)
Isso usa a segunda Data Section e mostra os rótulos.
- Formate a coluna Date como Short Date , e a coluna Amount como Currency .
Etapa 8: Formatação Final e Salvar
- Faça quaisquer ajustes de formatação final.
- Clique na aba USER no Ribbon Menu e selecione Save to app para armazenar suas alterações.
Resultado
Agora você tem uma planilha totalmente interativa que combina:
- Um layout familiar do Excel
- Dados dinâmicos do Qlik
- Cálculos dinâmicos usando QLIK.DATA
Demos
Em breve.
Planilhas
A Spreadsheets Extension suporta o trabalho em várias planilhas—assim como no Excel—permitindo organizar seus dados, cálculos e layouts em camadas lógicas de um pasta de trabalho.
Cada planilha pode conter uma mistura de:
- Valores estáticos — texto ou números digitados manualmente.
- Funções — incluindo referências a outras células, intervalos ou cálculos.
- Células vinculadas a dados — preenchidas dinamicamente a partir de dados do Qlik ou fórmulas QLIK.
As planilhas são totalmente independentes:
- Você pode usar diferentes layouts e designs por planilha.
- Cada planilha pode exibir diferentes dados de hypercube ou nenhum dado.
- A estrutura e a formatação de uma planilha não interferirão em outra.
Referências entre Planilhas
Assim como no Excel, você pode referenciar células de outras planilhas usando o formato SheetName!CellReference .
Por exemplo: =Sheet2!A1
Esta fórmula extrai o valor da célula A1 em uma planilha chamada Sheet2 .
Isso facilita a criação de planilhas de resumo, a agregação de valores ou a construção de dashboards que combinam saídas de várias planilhas.
Você pode renomear planilhas e reorganizar suas abas livremente, oferecendo flexibilidade na forma como você projeta a estrutura da pasta de trabalho.
Dados
A Spreadsheets Extension introduz um modelo de dados que integra o mecanismo associativo do Qlik com um ambiente de edição flexível semelhante ao Excel. Esta seção aborda como os dados do Qlik são estruturados dentro da Extension e como podem ser conectados ao conteúdo da planilha.
Data Sections
As Data Sections definem conjuntos de dados reutilizáveis criados a partir de dimensões e medidas do Qlik. Elas funcionam como a ponte entre o Qlik e a tela do Spreadsheets.
Visão Geral das Data Sections
- Uma Data Section consiste em Columns, onde cada coluna é uma Dimension ou uma Measure do Qlik.
- A ordem das Columns é personalizável.
- As Data Sections são gerenciadas a partir do Properties Panel da Spreadsheets Extension.
- Cada Data Section pode ser reutilizada em várias planilhas ou tabelas e suporta vários modos de conexão (consulte Connecting Data Sections ).
Totais
Cada Data Section suporta totais automáticos por colunas de Measure:
- Ative os totais na aba Presentation da configuração da Data Section.
- Configurar:
- Position: Top / Bottom / None
- Label: Personalizar texto (por exemplo, "Total", "Resumo")
Os totais são calculados pelo Qlik e atualizados dinamicamente com base nas seleções.
Colunas
Cada coluna em uma Data Section representa uma dimensão ou medida do Qlik, semelhante aos campos nas tabelas nativas do Qlik. As colunas são renderizadas na planilha para exibir valores reais do mecanismo do Qlik.
Por padrão, as colunas são renderizadas na ordem em que são adicionadas — de cima para baixo — começando no canto superior esquerdo da planilha ou da região de dados atribuída.
Intervalo
Opcionalmente, você pode especificar um intervalo para cada coluna para controlar exatamente onde seus valores devem aparecer na planilha.
- Exemplo (vertical): C1:C5 colocará os valores da coluna nas células de C1 a C5.
- Exemplo (horizontal): C3:H3 preencherá as células horizontalmente ao longo da linha 3.
Somente os valores que se encaixam no intervalo definido serão mostrados. Se existirem mais valores do que células disponíveis, a coluna é truncada automaticamente.
Garantir que os intervalos de dados caibam na planilha
Ao usar intervalos personalizados para colunas — sejam verticais (por exemplo, C1:C10) ou horizontais (por exemplo, C3:H3) — é importante garantir que a planilha tenha espaço suficiente para exibir os dados.
Os dados renderizados devem caber no intervalo atual da planilha, que é definido pelo número de linhas e colunas visíveis. Se o intervalo da coluna especificado exceder esses limites, alguns dados podem ser cortados, falhar na renderização correta ou causar comportamento inesperado.
Ajustar as Dimensões da Planilha
Para evitar tais problemas:
- Vá para a aba Settings no Ribbon Menu.
- Selecione General em Sheet Settings.
- Aumente o Row Count e/ou o Column Count conforme necessário.

Comportamentos e Limitações Conhecidos:
- Rolagem: As configurações de intervalo podem afetar o comportamento da rolagem (consulte a seção Scrolling ).
- Offsets: Se diferentes colunas tiverem diferentes posições iniciais (por exemplo, A1, B5, C10), o carregamento de dados e a rolagem serão alinhados com base no offset da primeira coluna.
- Offsets Mistos: O uso de pontos de partida não uniformes (como A3, C5, E7) pode resultar em lacunas ou renderização inesperada durante o carregamento de dados.
- Carregamento de Dados: O carregamento inicial e o carregamento acionado por rolagem sempre respeitam o offset da primeira coluna ao calcular quantas linhas buscar
Conectando Data Sections
Uma vez definida uma Data Section, você pode conectá-la à sua planilha de três maneiras principais:
Visão Geral das Data Sections
Cada método de conexão oferece um equilíbrio diferente entre automação e controle e é adequado para diferentes casos de uso, cada um tendo certos prós e contras:
| Método | Caso de Uso | Controle | Ideal Para |
| Synced Sheet (padrão) | Preenchimento automático de uma nova planilha com dados | Baixo | Visualizações rápidas, uma seção/planilha |
| Table Binding | Vincular uma Data Section a uma tabela da planilha | Médio | Visualizações de dados tabulares, layouts fixos |
| QLIK Formulas | Inserir dados manualmente via fórmulas | Alto | Modelos personalizados, layouts avançados |
Criar Synced Sheet
- Ativado através da opção "Create Synced Sheet" ao adicionar uma Data Section.
- Cria automaticamente uma planilha com o nome do rótulo da seção e injeta os dados.
- Adequado para iteração rápida e teste de novas configurações de dados.
🛈 A planilha é atualizada automaticamente se a Data Section for alterada.
Table Binding
Vincule uma Data Section diretamente a uma tabela existente dentro da planilha.
Passos:
- Selecione uma tabela na visualização da planilha.
- Vá para a aba Table Design no Ribbon Menu.
- Abra o menu suspenso Select Source.
- Selecione uma Data Section.
A tabela será preenchida automaticamente com os dados da seção selecionada, com as colunas mapeadas por ordem.
Isso é ideal para layouts pré-desenhados ou quando você deseja usar recursos do Excel, como fórmulas de tabela estruturadas, formatação ou gráficos em dados dinâmicos do Qlik.
QLIK Formulas
Usuários avançados podem inserir dados manualmente usando fórmulas compatíveis com o Qlik. Elas permitem controle total sobre o layout e a lógica:
- QLIK.DATA() – injeta um bloco de dados
- QLIK.DATA.LABEL() – insere rótulos de colunas
- QLIK.DATA.TOTAL() – insere valores de linhas de totais
Além das funções de vinculação de dados acima, a fórmula QLIK.EXPRESSION() permite avaliar expressões arbitrárias do Qlik diretamente dentro da planilha — refletindo dinamicamente as alterações nas seleções do Qlik.
🛈 Nota: Como essas fórmulas são alimentadas por dados dinâmicos do Qlik, as atualizações no aplicativo Qlik (por exemplo, filtros, seleções ou alterações nos dados subjacentes) afetarão imediatamente a planilha. Isso pode resultar no aumento ou diminuição do número de células preenchidas, portanto, planeje seu layout de acordo.
Para sintaxe detalhada e exemplos, consulte a seção Funções Relacionadas ao Qlik
Seleções do Qlik
Se o seu Spreadsheets for construído sobre Data Sections, ele responderá dinamicamente às seleções do Qlik.
Você também pode realizar seleções do Qlik diretamente da Extension Spreadsheets.
Como aplicar uma seleção a partir do Spreadsheets
- Selecione as células que deseja filtrar.
- Clique com o botão direito na seleção.
- Escolha Qlik Select no menu de contexto.

A Extension Spreadsheets detectará automaticamente as seleções válidas e as aplicará ao aplicativo Qlik.
Funções do Excel
A Extension suporta a maioria das funções nativas do Excel, incluindo:
- Matemática e Trigonométrica: SUM, AVERAGE, ROUND, INT
- Lógica: IF, AND, OR, NOT
- Texto: CONCATENATE, LEFT, RIGHT, TEXTJOIN
- Pesquisa: VLOOKUP, INDEX, MATCH
- Data e Hora: TODAY, NOW, DATEDIF, EOMONTH
- Matriz: UNIQUE, SORT, FILTER
E muitas outras.
Sinta-se à vontade para explorar uma lista completa das funções disponíveis do Excel na seção Formulas do Ribbon Menu

Funções Relacionadas ao Qlik
A Extension Spreadsheets suporta um conjunto de fórmulas específicas do Qlik que permitem interagir com as Data Sections, extrair valores, rótulos, totais ou avaliar expressões diretamente nas células da planilha.
Cada função é executada de forma assíncrona e retorna valores dinâmicos com base no modelo associativo do Qlik.
QLIK.DATA
Busca e insere valores de dados de uma Data Section pré-configurada.
= QLIK.DATA(data_section_label_or_index, [column_label_or_index], [is_horizontal], [show_label], [show_total], [limit])
Argumentos:
- data_section_label_or_index – Rótulo ou índice da Data Section.
- column_label_or_index – (Opcional) Rótulo ou índice da coluna (dimensão ou medida).
- is_horizontal – (Opcional) Se verdadeiro, os dados preenchem horizontalmente em vez de verticalmente.
- show_label – (Opcional) Se verdadeiro, inclui os rótulos das colunas.
- totals_position – (Opcional, Enum) Controla se e onde os valores totais são inseridos.
- "INHERIT" – Usa as configurações de totais definidas no painel do Qlik (seção de definição).
- "TOP" – Insere os valores totais acima do intervalo de dados.
- "BOTTOM" – Insere os valores totais abaixo do intervalo de dados.
- "NONE" (padrão) – Nenhum total é inserido.
- 🛈 Valores inválidos serão tratados como "NONE".
- limit – (Opcional) Define o número máximo de linhas (ou colunas, se for horizontal) a serem retornadas da Data Section. Isso não é o mesmo que definir limitações na Data Section; este é um limite fixo no número de linhas, use a limitação da Data Section se precisar de uma limitação adequada na medida.
Casos de uso:
- Incorporar dados do Qlik em regiões específicas da planilha.
- Preencher planilhas com vários conjuntos de dados de forma independente.
- Exibir dados quando a vinculação automática de planilha para seção não for desejada.
QLIK.DATA.LABEL
Retorna o rótulo de uma dimensão ou medida específica de uma Data Section.
=QLIK.DATA.LABEL(data_section_label_or_index, column_label_or_index)
Argumentos:
- data_section_label_or_index – Rótulo ou índice da Data Section.
- column_label_or_index – Rótulo ou índice da dimensão ou medida.
Casos de uso:
- Mostrar dinamicamente cabeçalhos de colunas.
- Construir modelos genéricos ou reutilizáveis com entradas de dados flexíveis.
QLIK.DATA.TOTAL
Retorna o valor de agregação total para uma medida específica em uma Data Section.
=QLIK.DATA.TOTAL(data_section_label_or_index, column_label_or_index)
Argumentos:
- data_section_label_or_index – Rótulo ou índice da Data Section.
- column_label_or_index – Rótulo ou índice da coluna.
Casos de uso:
- Exibir linhas de totais ou KPIs de resumo fora do bloco de dados principal.
- Referenciar totais calculados pelo Qlik sem soma manual.
QLIK.EXPRESSION
Avalia uma expressão do Qlik e retorna o resultado.
=QLIK.EXPRESSION("=Today()")
Argumentos:
- query_string – Uma expressão do Qlik entre aspas (deve começar com =).
Casos de uso:
- Exibir medidas agregadas (KPI)
=QLIK.EXPRESSION("=Sum(Sales)")- Combine com recursos da planilha, como formatação condicional, para destacar:
- Verde se acima da meta
- Vermelho se abaixo
- Exibir seleções aplicadas
=QLIK.EXPRESSION("=GetSelectedCount(Country)")=QLIK.EXPRESSION("=GetFieldSelections(Region, ' | ')")
- Exibir valores do sistema
=QLIK.EXPRESSION("=Now()")=QLIK.EXPRESSION("=OSUser()")=QLIK.EXPRESSION("ReloadTime()")
Avaliação de Expressão em Tempo Real
Todos os valores retornados por QLIK.EXPRESSION() são dinâmicos e atualizados em tempo real com base em:
- Seleções feitas no aplicativo Qlik
- Mudanças nos dados subjacentes
- Contexto do sistema ou da sessão
Esses valores podem mudar entre sessões ou usuários — ideal para dashboards em tempo real ou visualizações pessoais.
Dica: Use esta função junto com a lógica nativa do Excel (IF, TEXT, ROUND, etc.) para criar dashboards inteligentes diretamente dentro da planilha.
Exemplos Práticos
KPI
É possível construir KPIs baseados em fórmulas do Qlik e aplicar regras de formatação condicional para destacar visualmente os resultados.
1. Inserir Fórmula de KPI
Insira uma expressão do Qlik em uma célula. Por exemplo, para calcular o lucro total:
=QLIK.EXPRESSION("=GetFieldSelections(Region. '|')")

2. Aplicar Formatação Condicional
Use o recurso de Formatação Condicional do Spreadsheets para estilizar dinamicamente a célula com base no resultado do KPI.
Exemplos de regras:
- Verde se o Lucro Total for superior a 2.400.000.000
- Vermelho se o Lucro Total for inferior a 2.400.000.000

3. Atualizações em Tempo Real
Quando seleções são aplicadas no Qlik, o valor do KPI será atualizado automaticamente e a formatação será reavaliada em tempo real.
Isso facilita a criação de dashboards de KPI em tempo real, onde os indicadores visuais respondem instantaneamente aos filtros e seleções do Qlik.
Banner de Status da Seleção
Um Banner de Status da Seleção permite mostrar quais valores estão selecionados no momento no aplicativo Qlik. Isso facilita o fornecimento de contexto dentro dos relatórios da sua planilha, garantindo que os usuários finais saibam sempre quais filtros estão ativos.
Ao contrário de KPIs simples, aqui estamos usando fórmulas do Qlik mais complexas que combinam várias funções ( IF, GetSelectedCount(), GetFieldSelections() ). Isso demonstra que você não está limitado a expressões básicas — é possível construir fórmulas flexíveis para atender às suas necessidades exatas de relatório.
1. Inserir Fórmulas de Seleção
Para mostrar a Região selecionada: =QLIK.EXPRESSION("=IF(GetSelectedCount(Region) = 0, 'No selection (All Regions)', GetFieldSelections(Region, ' | '))")
Para mostrar o País selecionado: =QLIK.EXPRESSION("=IF(GetSelectedCount(Country) = 0, 'No selection (All Countries)', GetFieldSelections(Country, ' | '))")

2. Resultado com Seleções Ativas
Quando o usuário aplica seleções no aplicativo Qlik, o banner é atualizado automaticamente para refletir os valores escolhidos.
Se Europe estiver selecionada em Region → a célula mostra Europe.
Se Germany, Latvia, Lithuania estiverem selecionados em Country → a célula mostra Germany | Latvia | Lithuania. 
Este exemplo usa um wrapper IF para lidar com o caso "Nenhuma seleção", mas você pode adaptar a lógica:
- Substitua as strings de texto pelo seu próprio vocabulário ("All Regions" → "Todos os Valores").
- Concatene vários campos em uma linha (por exemplo, Região + Ano).
- Aplique formatação condicional para destacar quando os filtros forem muito restritos ou muito amplos.
App & System Meta (Live)
É possível exibir metadados da aplicação diretamente na planilha usando as funções de sistema do Qlik. Isso garante que cada relatório comunique claramente de qual aplicativo veio e quando os dados foram atualizados pela última vez.
1. Inserir Fórmulas de Metadados
Nome do documento:
=QLIK.EXPRESSION("=DocumentName()")
Carimbo de data/hora do recarregamento:
=QLIK.EXPRESSION("=ReloadTime()")

Formatação
A Extension Spreadsheets oferece um conjunto abrangente de ferramentas de formatação disponíveis no Ribbon Panel, organizadas por seções. Abaixo estão as ferramentas mais utilizadas da aba Home, ajudando você a estilizar e estruturar rapidamente o conteúdo da sua planilha.
Home
- Fonts : tamanho da fonte, cor, negrito, itálico, sublinhado, preenchimento de fundo, bordas

- Text Aligning : Alinhamento vertical e horizontal, Orientação, Recuo, Quebra de texto, Mesclar e Centralizar

- Number formats : moeda, porcentagem, formatos personalizados

- Cell Styling : Formato Condicional, Formato de Tabela, Estilos de Célula, Editores de Célula

- Cells : Inserir, Excluir, Formatar

- Editing : Inserir Função, Preencher, Limpar, Classificar e Filtrar, Localizar

Rolagem
A Extension Spreadsheets implementa a rolagem vertical para suportar a interação suave com grandes conjuntos de dados, especialmente ao usar Data Sections conectadas ao Qlik. Esse comportamento é automático e depende do tipo de planilha e de como os dados estão conectados.
Esta seção descreve como a rolagem afeta o carregamento e a renderização de dados e descreve detalhes importantes para casos de uso avançados.
Rolagem Geral
- À medida que o usuário rola verticalmente e se aproxima da parte inferior da área visível, o sistema verifica se mais linhas devem ser adicionadas ou se os dados devem ser carregados.
- A rolagem horizontal é suportada apenas para navegação e não aciona o carregamento de dados ou a expansão do intervalo.
Synced Data Sheets
Ao usar o Create Synced Sheet para a Data Section , a planilha lidará automaticamente com grandes conjuntos de dados carregando mais linhas conforme você rola.
Ao descer na planilha, se houver mais dados do Qlik disponíveis, eles aparecerão perfeitamente abaixo das linhas visíveis — sem necessidade de acionar ou recarregar nada manualmente. Isso faz com que o trabalho com tabelas longas pareça fluido e ininterrupto.
Se não houver mais dados para carregar, a planilha ainda permitirá que você role mais, mas as novas linhas aparecerão vazias.
Este comportamento garante:
- Você nunca atinge uma parada brusca ao rolar.
- Novos dados aparecem apenas quando necessário.
- O layout permanece consistente, mesmo ao chegar ao final dos dados.
Você pode controlar quantos dados são carregados inicialmente ajustando a configuração Rows Count nas definições da planilha.
Em Outras Planilhas
As planilhas que não estão vinculadas a Data Sections através de Create Synced Sheet não acionam qualquer adição automática de linhas ou carregamento de dados durante a rolagem.
Offset de Intervalo e Carregamento de Dados
O sistema respeita o offset de intervalo da primeira coluna em uma Data Section ao calcular o comportamento de carregamento de dados.
- Se o intervalo da primeira coluna começar em uma linha inferior (por exemplo, A100), a planilha começa a renderização a partir dessa posição.
- Toda a lógica de rolagem e busca de dados é baseada nesse offset da primeira coluna.
Limitações e Casos Especiais
- Intervalos horizontais (por exemplo, A1:Z1) renderizarão os dados corretamente para o primeiro conjunto de valores, mas não suportarão o carregamento de dados adicionais durante a rolagem vertical. O usuário deve gerenciar o layout e a visibilidade manualmente nesses casos.
- Offsets de coluna mistos (por exemplo, A1, B5, C10) podem resultar em:
- Alinhamento inconsistente
- Lacunas nos dados exibidos
- Dados aparecendo apenas parcialmente carregados
A busca de dados é sempre alinhada com o offset da primeira coluna, independentemente de como as outras colunas estejam configuradas.
Considerações de Desempenho
Intervalos personalizados com grandes offsets ou contagens de linhas muito altas podem aumentar significativamente o volume de dados durante o carregamento.
Por exemplo:
- Uma Data Section com 5 colunas e um limite de linha definido pelo usuário de 10.000 tentará carregar e renderizar 50.000 células.
- Isso pode afetar o desempenho, especialmente em navegadores mais antigos ou máquinas de baixo desempenho.
Para manter a capacidade de resposta, considere:
- Limitar o número de linhas sempre que possível.
- Evitar offsets iniciais desnecessariamente grandes.
Abrir / Salvar
A funcionalidade Open / Save no File Menu permite que você preserve, reutilize e compartilhe o conteúdo do seu Spreadsheets.
Você pode escolher entre 2 locais de armazenamento para salvar e carregar suas configurações de Spreadsheets. Cada opção pode ser ativada ou desativada no Properties Panel. Uma vez ativada, a seção correspondente aparecerá no File Menu.

Opção 1: Desktop

- Salva sua configuração de Spreadsheets como um arquivo JSON no seu computador.
- Ideal para compartilhar diretamente com usuários individuais ou manter cópias privadas.
Para abrir um arquivo salvo:
- Vá para o File Menu → Open → Desktop.
- Clique em Select File.
- Escolha o arquivo de configuração JSON salvo anteriormente.
Opção 2: Content Library

- Salva sua configuração como um arquivo JSON dentro da Qlik Content Library escolhida.
- Semelhante à opção Desktop, mas o arquivo é armazenado no Qlik em vez de localmente.
- Ideal para manter várias versões de configurações de Spreadsheets acessíveis a todos os usuários com acesso à Content Library.
Dica: Para alterações temporárias que não precisam ser salvas, use a funcionalidade Autosave .
Autosave
A funcionalidade Autosave permite preservar as alterações no seu Spreadsheets sem salvá-las explicitamente em uma configuração estável.
Quando ativado, qualquer alteração que você fizer é gravada automaticamente após 3 segundos de inatividade. Essas alterações salvas automaticamente são armazenadas localmente no seu navegador e estão disponíveis apenas para você (não compartilhadas com outros usuários).
Existem três opções de armazenamento:

Opção 1: Window Session
- Salva a configuração atual na sessão do seu navegador.
- As alterações permanecem disponíveis enquanto a janela do navegador estiver aberta.
- Ao fechar o navegador, todas as alterações do Autosave serão descartadas.
Opção 2: Browser IndexDB
- Salva a configuração atual no armazenamento IndexedDB do navegador.
- As alterações são preservadas mesmo após fechar e reabrir o navegador.
- Ideal para manter o seu trabalho pessoal em andamento em várias sessões.
Opção 3: Desativado
- Desliga completamente o Autosave.
- Nenhuma alteração é preservada automaticamente.
Nota: Use Window Session para trabalho temporário, IndexedDB para rascunhos pessoais persistentes ou Desativado se desejar apenas salvamentos manuais. Ao mesmo tempo, não é recomendado armazenar alterações impactantes a longo prazo com o Autosave. Considere usar as opções de salvamento estáveis para alterações de longo prazo.
Histórico de Versões
Quando a funcionalidade Autosave está ativada, a opção Version History fica disponível no File Menu.

O Version History permite que você acesse as versões mais recentes salvas automaticamente de todos os usuários autorizados que têm acesso ao aplicativo.
Em outras palavras, quando os usuários fazem alterações no Spreadsheets, as versões mais recentes salvas automaticamente aparecerão na aba Version History — facilitando a revisão e restauração.
Você pode navegar por cada versão salva para inspecionar seu conteúdo.
Clique em Apply para restaurar uma versão selecionada como o estado atual do seu Spreadsheets.
- Se você não for o proprietário do aplicativo Qlik, a versão aplicada afetará apenas a sua última versão pessoal salva do Spreadsheets.
- Se você for o proprietário do aplicativo, a aplicação de uma versão atualizará a configuração padrão do Spreadsheets para todos os usuários.
Importar / Exportar
A Extension Spreadsheets fornece ferramentas robustas para importar e exportar dados, permitindo uma interação suave com arquivos e softwares externos
Importar arquivos Excel ou CSV
Para importar dados, abra a aba FILE no Ribbon Menu e selecione Import. Você pode carregar um arquivo .XLSX (Excel) ou .CSV.
Cada tipo de importação inclui um conjunto de opções configuráveis que controlam como o arquivo é processado. Dependendo do formato selecionado, você poderá preservar a formatação, fórmulas, células mescladas, configurações de cálculo e muito mais. Essas opções garantem que o conteúdo importado se comporte e apareça conforme o esperado no ambiente Qlik.
Uma vez importada, a planilha mantém sua estrutura e estilo, facilitando a continuação do trabalho com dados ou modelos existentes. Você também pode enriquecer o arquivo importado com gráficos baseados no Qlik, planilhas adicionais ou lógica calculada.
Exportar para Excel, CSV ou PDF
Para exportar sua planilha, vá para a aba FILE e escolha Export. Você pode salvar a pasta de trabalho atual no formato .XLSX, .CSV ou .PDF, dependendo das suas necessidades.
Cada formato de exportação inclui seu próprio painel de configuração, permitindo que você personalize a saída. Por exemplo, você pode optar por incluir estilos, fórmulas, elementos de layout, cabeçalhos ou controlar como as células mescladas e vazias são tratadas. Essas opções ajudam a garantir que o documento exportado preserve a fidelidade da estrutura e do conteúdo desejados.
Nota: ao exportar para o Excel, certifique-se de que a flag “ Include Binding Source ” esteja ativada. Caso contrário, a exportação pode ser corrompida.
Writeback
A Extension Spreadsheets permite que você não apenas trabalhe com dados já carregados em um aplicativo Qlik, mas também grave dados novos ou atualizados de volta em um banco de dados externo. Esse recurso possibilita casos de uso operacionais e interativos, onde os usuários podem editar dados diretamente em uma interface semelhante a uma planilha e manter essas alterações fora do Qlik.
A funcionalidade Writeback existe especificamente para suportar este fluxo de trabalho. Nesta seção da documentação, você aprenderá como configurar um ambiente para Writeback, conectar a Extension Spreadsheets a um serviço de backend e usar efetivamente os recursos de Writeback nos seus aplicativos Qlik - desde a configuração das conexões de dados até a edição de dados e o recarregamento do conteúdo do aplicativo.
Visão Geral
Como o Writeback é estruturado
1. Data Config - definindo conexões de dados
No Data Config, você configura como a Extension Spreadsheets se conecta ao seu backend:
- Defina endpoints HTTP para leitura e gravação de dados (GET, POST, PUT, DELETE, BATCH).
- Configure a autenticação (opcional).
- Crie Tabelas lógicas que descrevam como uma tabela de banco de dados é acessada.
Uma Tabela neste contexto é um objeto de configuração que representa:
- um endpoint de backend,
- uma tabela ou visualização de banco de dados,
- e as regras para interagir com ela.
2. TableSheet - editando dados
No TableSheet, você seleciona uma das Tabelas configuradas e a vincula à planilha.
Uma vez conectado:
- Os dados são carregados a partir do backend.
- O TableSheet exibe uma visualização de tabela que representa os dados do banco de dados.
Os usuários podem:
- editar os valores das células,
- adicionar novas linhas,
- excluir linhas existentes.
Todas as ações são realizadas diretamente na interface semelhante a uma planilha.
Nos bastidores, essas ações traduzem-se em solicitações CRUD ou Batch enviadas para o backend.
3. Salvar alterações e recarregar dados
Quando os usuários terminam de editar os dados:
- As alterações são enviadas para o backend e mantidas no banco de dados.
- O próprio aplicativo Qlik não é atualizado automaticamente.
- Para ver os dados atualizados nos recursos visuais do Qlik, o usuário aciona explicitamente um recarregamento.
Estão disponíveis duas opções de recarregamento:
- Partial Reload
Atualiza os dados para a sessão atual do usuário. - Full Reload
Recarrega o modelo de dados completo do aplicativo (disponível apenas para usuários avançados).
Os recarregamentos são acionados através da Qlik Engine API e dependem de o load script do aplicativo estar configurado corretamente para ler os dados atualizados do backend.
Backend para Writeback
Para suportar o Writeback, fornecemos um backend de referência de exemplo construído com:
- Node.js
- Express
- SQLite
Repositório GitHub com uma solução de backend de exemplo: https://github.com/AnyChart/writeback-server-example
Este backend:
- Implementa os endpoints CRUD e Batch necessários.
- Armazena dados em um banco de dados relacional.
- Demonstra como a integração do Writeback funciona de ponta a ponta.
O backend fornecido é demonstrativo:
- É adequado para testes locais e demonstrações.
- Destina-se a ser uma implementação de referência.
- Espera-se que os usuários o adaptem ou o substituam pelo seu próprio backend para uso em produção.
O que o Writeback é (e o que não é)
Writeback é:
- explícito - os usuários decidem quando salvar e recarregar,
- controlado - sem recarregamentos em segundo plano ou agendados,
- flexível - funciona tanto com o demo quanto com backends personalizados.
Writeback não é:
- fornecer sincronização em tempo real,
- fornecer atualização automática em segundo plano,
- um substituto para a governança de dados do backend.
Fluxo típico de Writeback
- Configure as conexões de backend no Data Config.
- Vincule uma Table configurada ao TableSheet.
- Edite os dados diretamente no TableSheet.
- As alterações são enviadas para o backend e salvas.
- Acione um Partial ou Full Reload para atualizar os dados do Qlik.
Editar → Salvar → Recarregar → Ver dados atualizados no Qlik
________________________________________
Quick Start
Esta seção mostra a maneira mais rápida de obter uma demonstração de Writeback funcional usando o backend de referência fornecido.
Este guia foca no caminho ideal e evita tópicos avançados como backends personalizados, paginação ou validação complexa.
Pré-requisitos
- Qlik Sense Desktop
- A Extension Spreadsheets já está instalada.
- Node.js
- Familiaridade básica com:
- Qlik load scripts
- Adicionar objetos a uma planilha Qlik
Nota: O mesmo fluxo de trabalho aplica-se a outras plataformas Qlik.
Tutorial em vídeo
Em breve
Etapa 1: Iniciar o Backend de Demonstração do Writeback
Fornecemos um backend de referência de exemplo construído com Node.js + Express + SQLite.
Pode ser adaptado ao seu ambiente real.
- Clone o repositório:
git clone https://github.com/AnyChart/writeback-server-example
cd writeback-server - Instale as dependências:
npm install - Configure as variáveis de ambiente
Crie um arquivo .env e defina as seguintes variáveis:
PORT = 3333
TOKEN = testtoken123 - Inicie o servidor:
npm start - Verifique se o backend está em execução:
a. Abra um navegador ou cliente REST
b. Verifique se o endpoint GET responde
http://localhost:<PORT>/employees/get
Neste ponto, o backend e o banco de dados de demonstração estão em execução localmente.
Etapa 2: Criar um REST Connector no Aplicativo Qlik
Para tornar as alterações de Writeback visíveis nas visualizações do Qlik, o aplicativo deve carregar os dados diretamente do backend.
Isso é feito usando um REST connector.
- Abra o Data Load Editor.
- Crie um novo REST connector.
- Defina a URL do endpoint GET do backend (por exemplo, http://localhost:3333/employees/get).
Autenticação (Importante)
Se o seu backend exigir autenticação (como no backend de demonstração):
Adicione um cabeçalho personalizado ao conector:
Nome: Authorization
Valor: Bearer SEU_TOKEN

Notas:
- O valor do token deve corresponder ao token usado na Extension Spreadsheets.
- Se o seu backend não exigir autenticação, este cabeçalho pode ser omitido.
- O tratamento da autenticação depende inteiramente da implementação do seu backend.
Salve o conector.
Neste exemplo, o conector chama-se Writeback_DEMO
Etapa 3: Adicionar um Load Script para ler dados do backend
Após criar o REST connector, adicione um load script que leia os dados dele.
Exemplo de load script:
LIB CONNECT TO 'Writeback_DEMO';
RestConnectorMasterTable:
SQL SELECT
"id",
"Region",
"Director",
"Salary",
"HiredDate",
"FiredDate"
FROM JSON (wrap on) "root";
[employees]:
REPLACE LOAD
[id],
[Region],
[Director],
[Salary],
[HiredDate],
[FiredDate]
RESIDENT RestConnectorMasterTable;
DROP TABLE RestConnectorMasterTable;Recarregamentos (Parciais ou Totais) executam novamente este script para refletir as alterações do Writeback.
Etapa 4: Adicionar a Extension Spreadsheets ao Aplicativo
- Abra o seu aplicativo Qlik.
- Adicione o objeto Spreadsheet a uma planilha.
Neste ponto, a planilha está visível, mas ainda não está conectada a nenhuma fonte de dados.
Etapa 5: Configurar uma Fonte de Dados (Data Config)
- Abra o Data Config dentro da Extension Spreadsheets.
- Crie uma nova Tabela.
- Insira as credenciais de autenticação do backend (token).
- Configure os endpoints do backend (exemplo: tabela de funcionários):
- GET: http://localhost:3333/employees/get
- POST: http://localhost:3333/employees/post
- PUT: http://localhost:3333/employees/put
- DELETE: http://localhost:3333/employees/delete
- BATCH: http://localhost:3333/employees/batch
- Salve a configuração.
Esta etapa define como a Extension Spreadsheets comunica com o backend.
Etapa 6: Vincular a Tabela ao TableSheet
- Alterne para TableSheet.
- Selecione a Tabela configurada na lista.
- Vincule-a à planilha.
Uma vez vinculada:
- Os dados são carregados a partir do backend.
- Uma visualização de tabela que representa o banco de dados é exibida.
- As células tornam-se editáveis.
Etapa 7: Testar o Writeback
- Edite um valor existente no TableSheet ou adicione uma nova linha.
- Salve/aplique as alterações.
- Acione um recarregamento:
- Partial Reload (recomendado)
- Full Reload (também disponível)
A Extension irá:
- enviar as alterações para o backend,
- mantê-las no banco de dados,
- recarregar o aplicativo através da Qlik Engine API.
Etapa 8: Verificar o Resultado
Após a conclusão do recarregamento:
- Os dados atualizados devem aparecer:
- em outras visualizações do Qlik (por exemplo, tabelas, KPIs),
- não apenas dentro da visualização Spreadsheet.
- Isso confirma que:
- o Writeback funcionou,
- os dados foram salvos,
- o recarregamento foi bem-sucedido,
- o load script está lendo os dados atualizados.
Dados editados no TableSheet → salvos no banco de dados → visíveis nos recursos visuais do Qlik.
________________________________________
Arquitetura
Esta seção descreve a arquitetura da funcionalidade de Writeback na Extension Spreadsheets e como os seus componentes principais interagem entre si.
Fluxo de Alto Nível
Num nível elevado, a arquitetura do Writeback segue um modelo de interação explícito e orientado pelo cliente:
- O usuário edita os dados na Extension Spreadsheets.
- A Extension envia solicitações de Writeback para um Backend de Writeback.
- O backend mantém as alterações num banco de dados.
- O usuário aciona explicitamente um recarregamento a partir da Extension.
- O aplicativo Qlik recarrega os dados e atualiza as visualizações.
Não há sincronização em segundo plano e nenhum recarregamento automático após o Writeback.
Todas as alterações de estado são iniciadas por ações do usuário.
Principais Componentes
Data Config (Extension)
O Data Config é a camada de configuração dentro da Extension.
Responsabilidades:
- Definir Tabelas e os seus endpoints de backend para:
- GET
- POST
- PUT
- DELETE
- BATCH
- COLUMNS
- Configurar a autenticação.
Uma Tabela é um objeto de configuração, não os dados em si.
Descreve como a Extension comunica com o backend.
TableSheet (Extension)
TableSheet é a camada de interação de dados.
Responsabilidades:
- Vincular uma Tabela configurada a uma visualização dedicada (TableSheet).
- Exibir os dados do backend num formato tabular.
- Permitir que os usuários:
- editem valores de células,
- adicionem linhas,
- excluam linhas,
- realizem o recarregamento
- Recolher as alterações e prepará-las para o Writeback.
O TableSheet representa o estado atual dos dados carregados do backend, não uma cópia em cache ou autoritária.
Backend de Writeback
O Backend de Writeback é um serviço HTTP responsável pela persistência dos dados.
Responsabilidades:
- Aceitar solicitações CRUD e Batch da Extension.
- Processar dados recebidos (conforme definido pela implementação do backend).
- Manter os dados num banco de dados.
- Retornar linhas atualizadas ou resultados de operações.
Limites importantes:
- O backend é agnóstico em relação ao Qlik.
- O backend não aciona recarregamentos.
- O backend não gere sessões de usuário dentro do Qlik.
O backend Node.js + Express + SQLite fornecido serve como uma implementação de referência, destinada a ser adaptada ou substituída em ambientes de produção.
Banco de Dados
O banco de dados armazena o estado autoritário dos dados.
Características principais:
- O backend é a única fonte de verdade.
- As alterações são aplicadas imediatamente nas solicitações de Writeback.
- Não existe uma camada de preparação intermédia.
O comportamento multiusuário segue um modelo onde a última gravação vence (last-write-wins):
- As atualizações simultâneas são resolvidas pela ordem de execução.
- Não é aplicada nenhuma lógica de bloqueio ou mesclagem.
Esta abordagem evita conflitos por definição e mantém o sistema previsível.
Aplicativo e Engine Qlik
O aplicativo Qlik carrega os dados do backend através do seu load script.
Responsabilidades:
- Ir buscar os dados ao backend usando endpoints GET.
- Construir o modelo de dados do aplicativo.
- Atualizar as visualizações após o recarregamento.
Os recarregamentos são acionados a partir da Extension Spreadsheets usando a Qlik Engine API.
Existem:
- tarefas de recarregamento do QMC inexistentes,
- recarregamentos agendados inexistentes,
- recarregamentos iniciados pelo servidor inexistentes.
Autenticação
A autenticação entre a Extension Spreadsheets e o backend de Writeback suporta três modos:
- None — as solicitações são enviadas sem quaisquer dados de autenticação.
- Basic — as solicitações incluem um nome de usuário e uma senha.
- Token — as solicitações incluem um Bearer token no cabeçalho de Autorização.
A Extension apenas anexa os dados de autenticação selecionados às solicitações de saída.
A lógica de autorização exata, as regras de validação e o controlo de acesso são totalmente geridos pelo backend.
A autenticação é opcional e depende dos requisitos do backend.
Modelo de Recarregamento na Arquitetura
A lógica de recarregamento é totalmente de propriedade da Extension Spreadsheets (não do backend).
- Os recarregamentos são acionados explicitamente pelo usuário.
- São suportados recarregamentos Parciais e Totais.
- Os recarregamentos utilizam apenas a Qlik Engine API.
O recarregamento é uma etapa separada do Writeback e nunca é automático.
Resumo da Arquitetura
A arquitetura do Writeback é intencionalmente simples e explícita:
- A interface de usuário e a interação vivem na Extension Spreadsheets.
- A persistência é gerida por um serviço de backend.
- O recarregamento de dados é orientado pelo usuário e consciente da sessão.
- O comportamento multiusuário é determinístico através do modelo last-write-wins.
- Sem QMC, sem tarefas de recarregamento, sem processos em segundo plano.
Este design mantém as responsabilidades claramente separadas e permite que a solução escale de demonstrações para ambientes de produção sem reescritas arquitetónicas.
________________________________________
Configuração do Backend
Objetivo do Backend de Writeback
O backend de Writeback é um componente obrigatório que mantém as alterações de dados feitas na Extension Spreadsheets.
As suas responsabilidades incluem:
- aceitar solicitações de Writeback da Extension,
- escrever dados num banco de dados,
- retornar registos atualizados ao cliente.
O backend é intencionalmente desacoplado do Qlik e não gere recarregamentos, sessões ou lógica de interface de usuário.
Backend de Demonstração (Implementação de Referência)
Fornecemos um backend de demonstração construído com:
- Node.js
- Express
- SQLite
Este backend serve como:
- uma demonstração pronta a executar para testes locais,
- uma implementação de referência para construir o seu próprio backend.
Demonstra:
- endpoints CRUD e Batch necessários,
- formatos de solicitação e resposta esperados,
- tratamento básico de autenticação,
- padrões de interação com o banco de dados.
O backend de demonstração não é de nível de produção e destina-se a fins de demonstração e aprendizagem.
Executar o Backend de Demonstração
Instruções detalhadas para executar e configurar o backend de demonstração são mantidas no repositório GitHub:
Repositório do Servidor de Writeback - https://github.com/AnyChart/writeback-server-example
O README do repositório abrange:
- etapas de instalação,
- variáveis de ambiente,
- configuração de autenticação,
- esquema de banco de dados,
- endpoints disponíveis,
- exemplos de solicitações.
Usar o Seu Próprio Backend
Não é obrigado a utilizar o backend de demonstração.
Qualquer implementação de backend pode ser utilizada, desde que:
- exponha endpoints CRUD e Batch compatíveis,
- aceite e retorne dados JSON,
- mantenha as alterações de forma fiável,
- aplique a autenticação e validação conforme necessário.
A responsabilidade pela:
- validação de dados,
- segurança,
- controlo de acesso,
- escalabilidade
recai sobre a implementação do backend.
Os endpoints CRUD devem seguir os seguintes requisitos:
Operação | Tipo de Solicitação | Dados da Solicitação | Dados da Resposta |
update | POST | Os dados atualizados | Os dados atualizados |
read | GET | Sem dados | O array de registos |
delete | DELETE | Os dados excluídos ou array de dados | Sem restrições |
create | POST | Os dados inseridos | Os dados inseridos |
getColumns | GET |
| Um array de colunas, onde cada coluna contém as propriedades: A propriedade 'field' é o nome da coluna. A propriedade 'dataType' é o tipo de dados da coluna. A propriedade 'defaultValue' é o valor padrão do registo na coluna. A propriedade 'isPrimaryKey' é a coluna primária. |
batch | POST | Um array de objetos, onde cada objeto contém uma propriedade 'type'. Este tipo de operação pode ser 'update', 'insert', 'delete', 'addColumn', 'updateColumn' ou 'removeColumn'. A propriedade 'dataItem' é o registo atual. A propriedade 'sourceIndex' é o índice do registo. A propriedade opcional 'oldDataItem' é o registo original. A propriedade opcional 'column' é a coluna atual. A propriedade opcional 'data' é o valor padrão da coluna adicionada atual. A propriedade opcional 'originalColumn' é a coluna original. Por exemplo: [ {"type":"addColumn","column":{...}}, {"type":"updateColumn","column":{...}, "originalColumn":{...}}, {"type":"removeColumn","column":{...}}, {"type":"delete","dataItem":{...}, "sourceIndex":5}, {"type":"insert","dataItem":{...}, "sourceIndex":3}, {"type":"update","dataItem":{...}, "oldDataItem":{...}, "oldDataItem":{...}, "sourceIndex":1}] | Um array de objetos, onde cada objeto contém uma propriedade 'succeed' que indica o sucesso ou falha de uma operação, e uma propriedade opcional 'data', que é o registo atual e apenas para a operação 'insert'. Por exemplo: [{"succeed":true}, {"succeed":false}, {"succeed": true}, {"succeed":true}, {"succeed":false}, {"succeed": true}] |
Resumo do Backend
- O backend é obrigatório para o Writeback.
- Um backend de demonstração é fornecido para conveniência e referência.
- As implementações de produção devem utilizar um backend personalizado.
- Os detalhes da implementação do backend estão documentados no GitHub.
________________________________________
Configuração da Extension
Esta seção foca na configuração da Extension Spreadsheets dentro de um aplicativo Qlik para que ela possa comunicar com um backend de Writeback, salvar alterações de dados e acionar recarregamentos.
Visão Geral da Configuração da Fonte de Dados
A configuração do Writeback é gerida através da janela Data Source.
Nesta janela, define uma ou mais Tabelas, onde cada Tabela representa uma ligação lógica a endpoints de backend.

Para aceder, selecione a seção Data no Ribbon menu e clique no botão Data Source Config.

Definições da Tabela
Autenticação
Cada Tabela pode ser configurada com um método de autenticação.
O método selecionado é aplicado a todas as solicitações feitas para essa Tabela.
Opções disponíveis:
- None
Nenhuma autenticação é utilizada.
As solicitações são enviadas sem quaisquer cabeçalhos de autorização. - Basic
Utiliza um par de nome de usuário e senha.
As credenciais são enviadas utilizando a autenticação HTTP Basic padrão. - Token
Utiliza um Bearer token.
O token é anexado às solicitações como um cabeçalho Authorization: Bearer <token>.

A autenticação é opcional e depende inteiramente de como o backend é implementado.
Nota do backend de demonstração:
O servidor de Writeback de demonstração fornecido pela AnyChart utiliza autenticação baseada em Token por padrão. Isto é feito por questões de simplicidade e clareza na implementação de referência.
Nome da Tabela
Um nome lógico utilizado dentro da Extension.
Este nome é selecionado posteriormente ao vincular a Tabela a um TableSheet.
Configuração de Endpoints
Para cada operação, especifique:
- Método HTTP
- URL completa do endpoint
Operações suportadas:
- Read (GET)
Carrega dados no TableSheet. - Create (POST)
Insere novas linhas. - Update (PUT)
Atualiza linhas existentes. - Delete (DELETE)
Exclui linhas. - Batch (POST)
Aplica várias operações de criação/atualização/exclusão numa única solicitação. - Get Columns (GET)
Recupera metadados de colunas do backend.
Notas:
- O endpoint Read (GET) é necessário para exibir os dados.
- As ações de Writeback apenas funcionam se os endpoints correspondentes estiverem configurados.
- Se um endpoint estiver ausente, a ação relacionada não funcionará corretamente.
Vincular uma Tabela ao TableSheet
Após configurar uma Tabela:
- Mude para a visualização TableSheet, selecionando a seção Insert no ribbon menu e clicando no botão TableSheet .

- Selecione uma das Tabelas configuradas na lista suspensa.

- Observe a tabela vinculada no TableSheet

Uma vez vinculado, o TableSheet exibe os dados retornados pelo endpoint Read e permite a edição de acordo com as operações configuradas.
________________________________________
Utilização do Writeback
Esta seção explica como trabalhar com o Writeback dentro do aplicativo Qlik, utilizando a interface TableSheet.
Editar Linhas Existentes
Para editar dados existentes, primeiro ative o modo Row Action:
- Abra a seção Table Sheet Design no ribbon menu.
- Clique no botão Row Action.

Uma vez ativado o modo Row Action:
- Pode editar valores em qualquer coluna que não seja uma chave primária.
- As colunas de chave primária são apenas de leitura e não podem ser alteradas.
Para salvar as alterações de uma linha:
- Clique no ícone de marca de verificação (✓) no lado esquerdo da linha.
Esta ação envia imediatamente uma solicitação de Update para o backend.
Para descartar as alterações:
- Clique no ícone de cruz (✕) — a linha volta ao seu estado anterior.

Adicionar Novas Linhas
Para adicionar uma nova linha:
- Role até ao fundo do TableSheet.
- Preencha a última linha vazia com novos dados (pelo menos uma célula na linha deve ser preenchida).
Se forem necessários campos adicionais, isto é definido pelo esquema do backend.
Para salvar a nova linha:
- Clique no ícone de marca de verificação (✓) à esquerda.
- Isto envia uma solicitação de Create para o backend.

Se o backend permitir valores ausentes ou vazios, estes são salvos como estão.
As regras de validação dependem da forma como o backend é implementado.

Excluir Linhas
Para excluir uma linha:
- Localize a linha que deseja remover.
- Clique no ícone de menos (–) no lado esquerdo da linha.

Esta ação envia uma solicitação de Delete para o backend.
Salvar Alterações e Ações em Batch
As ações ao nível da linha (ícones de marca de verificação / menos) aplicam as alterações imediatamente para essa linha.
Se fizer alterações em várias linhas e quiser aplicá-las em conjunto:
- Abra o Table Sheet Design no ribbon menu.
- Abra a lista suspensa Batch.
- Clique em Submit.

Isto envia todas as alterações pendentes numa única solicitação em batch.
Nota: para ativar a funcionalidade Batch - Ative a opção “Batch” no Data Source Config.
Recarregar Dados no Qlik
Após fazer as alterações, recarregue o aplicativo para atualizar outras visualizações.
Os controlos de recarregamento estão localizados em:
Ribbon menu → Table Sheet Design → lista suspensa Batch
Opções disponíveis:
- Partial Reload
- Full Reload

Notas:
- Os recarregamentos são sempre acionados manualmente.
- O recarregamento parcial requer que o Load Script do aplicativo esteja estruturado de forma adequada.
- Quando o recarregamento termina, todos os gráficos e tabelas no aplicativo refletem os dados atualizados.
Exemplo de Fluxo de Trabalho Típico
Um fluxo de trabalho de Writeback comum assemelha-se a isto:
- Editar valores no TableSheet
- Salvar as linhas utilizando a marca de verificação
- Acionar o Partial Reload
- Ver os dados atualizados em gráficos e tabelas
Isto mantém o Writeback explícito, previsível e fácil de controlar
AI Formula
O recurso AI Formula permite que você execute consultas em linguagem natural usando um modelo de IA conectado (na versão alpha suporta conexão apenas com OpenAI). Isso permite que as planilhas se tornem ferramentas interativas e inteligentes — capazes de gerar ou transformar conteúdo em tempo real usando comandos baseados em linguagem.
Configuração (Properties Panel)
Para usar fórmulas de IA, vá para a seção AI Formula no Properties Panel da Extension e defina as seguintes configurações:
- AI server URL
O endpoint para a API da OpenAI (por exemplo, https://api.openai.com/v1/chat/completions) - AI model
Atualmente suporta:- Gpt-3.5-turbo
- Gpt-4
(Modelos adicionais serão adicionados no futuro)
- Max tokens per request
Controla o comprimento da resposta da IA (padrão: 4000) - Formula evaluation mode
Determina quando a IA é consultada:- On recalculation
- Once
- On interval
- API Key
Sua chave secreta da OpenAI (deve ter direitos de acesso válidos ao modelo selecionado)
Usando a Fórmula AI() na Planilha
Uma vez definidas as configurações acima, você pode usar a seguinte fórmula diretamente nas células da planilha:
=AI("Traduza esta frase para espanhol: " & A2)
Sintaxe da Fórmula:
AI(query_string)
- query_string – Um comando de texto que será enviado ao modelo selecionado (pode ser estático ou dinâmico usando referências de células)
O resultado será exibido diretamente na célula onde a fórmula foi inserida.
Conversão a partir da Extension de tabela
Você pode converter um gráfico de Tabela padrão do Qlik para a Extension Spreadsheets.
- Todas as Columns configuradas da Tabela original são transferidas automaticamente para a Data Section padrão do Spreadsheets.
- Uma planilha correspondente é criada, contendo as mesmas colunas da Tabela original.
Como converter um gráfico de Tabela:
- Certifique-se de ter um gráfico de Tabela com dados na planilha do seu aplicativo.
- Entre no Edit Mode e abra o painel Assets.
- Vá para Custom Objects.
- Encontre a Extension Spreadsheets.
- Arraste e solte sobre o gráfico de Tabela existente.
- Selecione Convert.
Nota: A conversão funciona apenas em um sentido. A conversão de um Spreadsheets de volta para um gráfico de Tabela padrão do Qlik não é suportada.
Dica: Use este recurso para migrar rapidamente tabelas existentes para Spreadsheets e desbloquear recursos avançados de edição e interação.
Atalhos de Teclado
A lista de atalhos de teclado disponíveis para uso com a Extension Spreadsheets.
| TECLA | AÇÃO |
| Ctrl+Z | desfazer |
| Ctrl+Y | refazer |
| Ctrl + Down | navegação para o fim |
| Down | navegação para baixo |
| End | navegação para o final da linha |
| Ctrl+Right | navegação para o final da linha |
| Ctrl+Home | ir para o início da planilha |
| Home | navegação para o início da linha |
| Ctrl+Left | navegação para o início da linha |
| Ctrl+End | ir para o canto inferior direito da planilha |
| Left | navegação para a esquerda |
| Tab | mover para a próxima célula |
| PageDown | navegação página para baixo |
| PageUp | navegação página para cima |
| Ctrl+PageUp | Navegação para a planilha anterior |
| Ctrl+PageDown | Navegação para a próxima planilha |
| Shift+Tab | mover para a célula anterior |
| Right | navegação para a direita |
| Ctrl+Up | navegação para o topo |
| Up | navegação para cima |
| Delete | limpar |
| Back | limpar e editar |
| Enter | confirmar entrada e navegar para baixo |
| Shift+Enter | confirmar entrada e navegar para cima |
| ESC | cancelar entrada |
| Shift+Left | seleção para a esquerda |
| Shift+Right | seleção para a direita |
| Shift+Up | seleção para cima |
| Shift+Down | seleção para baixo |
| Shift+Home | seleção até o início da linha |
| Ctrl+Shift+Left | seleção até o início da linha |
| Shift+End | seleção até o final da linha |
| Ctrl+Shift+Right | seleção até o final da linha |
| Shift+PageUp | seleção página para cima |
| Shift+PageDown | seleção página para baixo |
| Ctrl+Shift+Up | seleção para o topo |
| Ctrl+Shift+Down | seleção para o fim |
| Ctrl+Shift+Home | seleção até a primeira célula |
| Ctrl+Shift+End | seleção até a última célula |
| Ctrl+C | Copiar |
| Ctrl+X | Recortar |
| Ctrl+V | Colar |
| Alt+Enter | Inserir nova linha na célula |

