# Carregamento parcial

Um carregamento total sempre começa excluindo todas as tabelas no modelo de dados existente e, em seguida, executa o script de carregamento.

Um carregamento parcial não fará isso. Em vez disso, ele mantém todas as tabelas no modelo de dados e depois executa apenas os comandos Load e Select precedidos por um prefixo Add, Merge ou Replace. Outras tabelas de dados não são afetadas pelo comando. O argumento only indica que o comando deve ser executado apenas durante carregamentos parciais e deve ser ignorado durante carregamentos totais. A tabela a seguir resume a execução da instrução para carregamentos parciais e totais.

| Instrução | Carregamento total | Carregamento parcial |
| --- | --- | --- |
| Load ... | A instrução será executada | A instrução não será executada |
| Adicionar/substituir/mesclar carregamento... | A instrução será executada | A instrução será executada |
| Adicionar/substituir/mesclar somente carregamento... | A instrução não será executada | A instrução será executada |

Carregamentos parciais têm vários benefícios em comparação com carregamentos completos:

* Mais rápidos, porque somente os dados recém-alterados precisam ser carregados. Com grandes conjuntos de dados, a diferença é significativa.

* Menos memória é consumida, porque menos dados são carregados.

* Mais confiáveis, porque as consultas aos dados de origem são executadas mais rapidamente, reduzindo o risco de problemas de rede.

Nota informativaPara que o carregamento parcial funcione corretamente, o aplicativo deve ser aberto com dados antes que um carregamento parcial seja disparado.

Execute um carregamento parcial usando o botão Carregar. Para obter mais informações, consulte [Botão](https://help.qlik.com/pt-BR/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Visualizations/Button/button.htm). Você também pode usar o Qlik Engine JSON API.

## Limitações

Uma recarga parcial falhará se houver comandos com referências a tabelas que existiam durante a recarga completa, mas não durante a recarga parcial.

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptPrefixes/PartialReload.htm)

#### Exemplo

### Comandos de exemplo

```
LEFT JOIN(<Table_removed_after_full_reload>)
```

```
CONCATENATE(<Table_removed_after_full_reload>)
```

Onde &lt;Table\_removed\_after\_full\_reload&gt; é uma tabela que existia na recarga completa, mas não na recarga parcial.

### Solução alternativa

Como solução alternativa, você pode cercar o comando com a seguinte instrução if:

```
IF NOT IsPartialReload() THEN ... ENDIF.
```

Um carregamento parcial pode remover valores dos dados. No entanto, isso não será refletido na lista de valores distintos, que é uma tabela mantida internamente. Assim, após um carregamento parcial, a lista conterá todos os valores distintos que existiam no campo desde o último carregamento parcial, o que pode ser superior ao que existe atualmente após esse carregamento parcial. Isso afeta a saída das funções FieldValueCount() e FieldValue(). FieldValueCount () poderia retornar um número maior que o número atual de valores de campos.

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptPrefixes/PartialReload.htm)

#### Exemplo

## Exemplo 1

### Script de carregamento

Adicione o script de exemplo ao seu aplicativo e faça um carregamento parcial. Para ver o resultado, adicione os campos listados na coluna de resultados a uma pasta no seu aplicativo.

```
T1:
Add only Load distinct recno()+10 as Num autogenerate 10;      
```

### Resultado

Resulting table

| Num | Count(Num) |
| --- | --- |
| 11 | 1 |
| 12 | 1 |
| 13 | 1 |
| 14 | 1 |
| 15 | 1 |
| 16 | 1 |
| 17 | 1 |
| 18 | 1 |
| 19 | 1 |
| 20 | 1 |

### Explicação

A instrução só é executada durante um carregamento parcial. Se o prefixo “distinct” for omitido, a contagem do campo Num aumentará a cada carregamento parcial subsequente.

## Exemplo 2

### Script de carregamento

Adicione o script de exemplo ao seu aplicativo. Faça um carregamento total e veja o resultado. Em seguida, faça um carregamento parcial e veja o resultado. Para ver os resultados, adicione os campos listados na coluna de resultados a uma pasta no seu aplicativo.

```

T1:
Load recno() as ID, recno() as Value autogenerate 10;

T1:
Replace only Load recno() as ID, repeat(recno(),3) as Value autogenerate 10; 
```

### Resultado

Output table after full reload

| ID | Value |
| --- | --- |
| 1 | 1 |
| 2 | 2 |
| 3 | 3 |
| 4 | 4 |
| 5 | 5 |
| 6 | 6 |
| 7 | 7 |
| 8 | 8 |
| 9 | 9 |
| 10 | 10 |

Output table after partial reload

| ID | Value |
| --- | --- |
| 1 | 111 |
| 2 | 222 |
| 3 | 333 |
| 4 | 444 |
| 5 | 555 |
| 6 | 666 |
| 7 | 777 |
| 8 | 888 |
| 9 | 999 |
| 10 | 101010 |

### Explicação

A primeira tabela é carregada durante um recarregamento total e a segunda tabela simplesmente substitui a primeira tabela durante um recarregamento parcial.

## Saiba mais

* [Load](https://help.qlik.com/pt-BR/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)
* [Select](https://help.qlik.com/pt-BR/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Select.htm)
* [Add](https://help.qlik.com/pt-BR/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptPrefixes/Add.htm)
* [Merge](https://help.qlik.com/pt-BR/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptPrefixes/Merge.htm)
* [Replace](https://help.qlik.com/pt-BR/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptPrefixes/Replace.htm)