# NoConcatenate

Con il prefisso NoConcatenate, due tabelle che vengono caricate con gruppi di campo identici verranno considerate come due tabelle interne separate, invece di venire concatenate automaticamente.

Sintassi:

NoConcatenate( loadstatement | selectstatement )

Per impostazione predefinita, se viene caricata una tabella che contiene un numero identico di campi e nomi di campi corrispondenti a una tabella caricata in precedenza nello script, queste due tabelle verranno concatenate automaticamente da Qlik Sense. Questo accade anche se la seconda tabella ha un nome diverso.

Tuttavia, se il prefisso dello script `NoConcatenate` viene incluso prima dell'istruzione LOAD o SELECT della seconda tabella, le due tabelle verranno caricate separatamente.

Un caso d'uso tipico per `NoConcatenate` è quello in cui è necessario creare una copia temporanea di una tabella per eseguire alcune trasformazioni temporanee su tale copia, conservando una copia dei dati originali. `NoConcatenate` assicura che sia possibile creare tale copia senza aggiungerla implicitamente alla tabella di origine.

## Impostazioni locali

Se non diversamente specificato, gli esempi di questo argomento utilizzano il seguente formato di data: MM/DD/YYYY. Il formato della data viene specificato nell'istruzione `SET DateFormat` nello script di caricamento dei dati. La formattazione predefinita della data potrebbe essere diversa nel proprio sistema, a causa delle impostazioni regionali e di altri fattori. È possibile modificare i formati degli esempi seguenti in base alle proprie esigenze. In alternativa, è possibile modificare i formati nel proprio script di caricamento per adattarli a questi esempi. Per ulteriori informazioni, vedere [Modifica delle impostazioni internazionali per applicazioni e script](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/regional-settings-in-apps.htm).

Le impostazioni regionali predefinite nelle applicazioni si basano sul profilo utente. Queste impostazioni di formato regionale non riguardano la lingua visualizzata nell'interfaccia utente Qlik Cloud. Qlik Cloud verrà visualizzato nella stessa lingua del browser utilizzato.

Se si è un creatore di applicazioni, è possibile impostare la regione predefinita per le applicazioni che si creano. Per ulteriori informazioni, vedere [Regolazione delle impostazioni internazionali preferite per la creazione di app e script in Qlik Cloud Analytics](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Sense_Hub/UserInterface/Languages.htm#Setting).

Esempio di funzione

| Esempio | Risultato |
| --- | --- |
| `Source:<br><br>								LOAD A,B from file1.csv;<br><br><br><br>							`<br>` CopyOfSource:<br><br>								NoConcatenate<br><br>							LOAD A,B resident Source;   ` | Viene caricata una tabella con `A` e `B` come misure. Una seconda tabella con gli stessi campi viene caricata separatamente utilizzando la variabile `NoConcatenate`. |

## Esempio 1 - Concatenazione implicita

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

#### Script di caricamento e risultati

Panoramica

In questo esempio verranno aggiunti due script di caricamento in ordine sequenziale.

Aprire l'Editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova sezione.

Lo script di caricamento contiene:

* Un set di dati iniziale con date e importi che viene inviato a una tabella denominata `Transactions`.

Primo script di caricamento

```
Transactions: 
LOAD  
*  
Inline [ 
id, date, amount 
1, 08/30/2018, 23.56 
2, 09/07/2018, 556.31 
3, 09/16/2018, 5.75 
4, 09/22/2018, 125.00 
5, 09/22/2018, 484.21 
6, 09/22/2018, 59.18 
7, 09/23/2018, 177.42 
]; 
```

Risultati

Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:

* `id`
* `date`
* `amount`

Prima tabella dei risultati

| id | date | importo |
| --- | --- | --- |
| 1 | 30/08/2018 | 23,56 |
| 2 | 09/07/2018 | 556,31 |
| 3 | 16/09/2018 | 5,75 |
| 4 | 22/09/2018 | 125,00 |
| 5 | 22/09/2018 | 484,21 |
| 6 | 22/09/2018 | 59,18 |
| 7 | 09/23/2018 | 177.42 |

Secondo script di caricamento

Aprire l'Editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova sezione.

Lo script di caricamento contiene:

* Un secondo set di dati con campi identici viene inviato a una tabella denominata `Sales`.

```
Sales: 
LOAD 
*  
Inline [ 
id, date, amount 
8, 10/01/2018, 164.27 
9, 10/03/2018, 384.00 
10, 10/06/2018, 25.82 
11, 10/09/2018, 312.00 
12, 10/15/2018, 4.56 
13, 10/16/2018, 90.24 
14, 10/18/2018, 19.32 
]; 
```

Risultati

Caricare i dati e passare alla tabella.

Seconda tabella dei risultati

| id | date | importo |
| --- | --- | --- |
| 1 | 30/08/2018 | 23,56 |
| 2 | 09/07/2018 | 556,31 |
| 3 | 16/09/2018 | 5,75 |
| 4 | 22/09/2018 | 125,00 |
| 5 | 22/09/2018 | 484,21 |
| 6 | 22/09/2018 | 59,18 |
| 7 | 09/23/2018 | 177.42 |
| 8 | 10/01/2018 | 164.27 |
| 9 | 10/03/2018 | 384.00 |
| 10 | 10/06/2018 | 25.82 |
| 11 | 10/09/2018 | 312.00 |
| 12 | 10/15/2018 | 4.56 |
| 13 | 10/16/2018 | 90.24 |
| 14 | 10/18/2018 | 19.32 |

Quando viene eseguito lo script, la tabella `Sales` viene concatenata implicitamente alla tabella `Transactions` esistente, poiché i due set di dati condividono un numero identico di campi, con nomi di campo identici. Questo accade nonostante il secondo tag di nome della tabella tenti di dare un nome al set di risultati `‘Sales’`.

Si può vedere che il set di dati Vendite è concatenato implicitamente osservando il registro di Avanzamento del caricamento dei dati.

Registro di avanzamento del caricamento dei dati che mostra la concatenazione implicita dei dati delle transazioni.

Registro di avanzamento del caricamento dei dati che mostra la concatenazione implicita dei dati delle transazioni.

Registro di avanzamento del caricamento dei dati che mostra la concatenazione implicita dei dati delle transazioni. ![Il registro di avanzamento del caricamento dei dati mostra che la tabella Transazioni è stata caricata due volte.](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Resources/Images/dle_DataLoadProgressLog_NoConcatenate.png)

## Esempio 2 - Scenario d'uso

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

#### Script di caricamento e risultati

Panoramica

In questo scenario d'uso si ha:

* Un set di dati sulle transazioni con:

  * id

  * date

  * importo (in GBP)

* Una tabella delle valute con:

  * Tassi di conversione da USD a GBP

* Un secondo set di dati sulle transazioni con:

  * id

  * date

  * importo (in USD)

Verranno caricati cinque script in ordine sequenziale.

* Il primo script di caricamento contiene un set di dati iniziale con date e importi in GBP che viene inviato a una tabella denominata `Transactions`.

* Il secondo script di caricamento contiene:

  * Un secondo set di dati con date e importi in USD viene inviato a una tabella denominata `Transactions_in_USD`.

  * Il prefisso `noconcatenate` che viene posto prima dell'istruzione LOAD del set di dati `Transactions_in_USD` per evitare la concatenazione implicita.

* Il terzo script di caricamento contiene il prefisso `join` che verrà utilizzato per creare un tasso di cambio tra GBP e USD nella tabella `Transactions_in_USD`.

* Il quarto script di caricamento contiene il prefisso `concatenate` che aggiungerà `Transactions_in_USD` alla tabella iniziale `Transactions`.

* Il quinto script di caricamento contiene l'istruzione `drop table` che rimuove la tabella `Transactions_in_USD` i cui dati sono stati concatenati alla tabella `Transactions`.

Primo script di caricamento

```
Transactions: 

Load * Inline [
id, date, amount 
1, 12/30/2018, 23.56 
2, 12/07/2018, 556.31 
3, 12/16/2018, 5.75 
4, 12/22/2018, 125.00 
5, 12/22/2018, 484.21 
6, 12/22/2018, 59.18 
7, 12/23/2018, 177.42 
];
```

Risultati

Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:

* `id` `date` `amount`

Risultati del primo script di caricamento

| id | date | importo |
| --- | --- | --- |
| 1 | 12/30/2018 | 23,56 |
| 2 | 12/07/2018 | 556,31 |
| 3 | 12/16/2018 | 5,75 |
| 4 | 12/22/2018 | 125,00 |
| 5 | 22/12/2018 | 484,21 |
| 6 | 22/12/2018 | 59,18 |
| 7 | 12/23/2018 | 177.42 |

La tabella mostra il set di dati iniziale con importi in GBP.

Secondo script di caricamento

```
Transactions_in_USD:
NoConcatenate 
Load * Inline [ 
id, date, amount 
8, 01/01/2019, 164.27 
9, 01/03/2019, 384.00 
10, 01/06/2019, 25.82 
11, 01/09/2019, 312.00 
12, 01/15/2019, 4.56 
13, 01/16/2019, 90.24 
14, 01/18/2019, 19.32 
];
```

Risultati

Caricare i dati e passare alla tabella.

Risultati del secondo script di caricamento

| id | date | importo |
| --- | --- | --- |
| 1 | 30/12/2018 | 23,56 |
| 2 | 07/12/2018 | 556,31 |
| 3 | 16/12/2018 | 5,75 |
| 4 | 22/12/2018 | 125,00 |
| 5 | 22/12/2018 | 484,21 |
| 6 | 22/12/2018 | 59,18 |
| 7 | 23/12/2018 | 177.42 |
| 8 | 01/01/2019 | 164.27 |
| 9 | 01/03/2019 | 384.00 |
| 10 | 01/06/2019 | 25.82 |
| 11 | 01/09/2019 | 312.00 |
| 12 | 01/15/2019 | 4.56 |
| 13 | 01/16/2019 | 90.24 |
| 14 | 01/18/2019 | 19.32 |

Si vedrà che il secondo set di dati della tabella `Transactions_in_USD` è stato aggiunto.

Terzo script di caricamento

Questo script di caricamento aggiunge alla tabella `Transactions_in_USD` un tasso di cambio da USD a GBP.

```

Join (Transactions_in_USD)
Load * Inline [ 
rate 
0.7 
];
```

Risultati

Caricare i dati e accedere al sistema di visualizzazione del modello dati. Selezionare la tabella `Transactions_in_USD` per vedere che ogni record esistente ha un valore di 0,7 nel campo "tasso".

Quarto script di caricamento

Utilizzando il caricamento residente, questo script di caricamento concatenerà la tabella `Transactions_in_USD` alla tabella `Transactions` dopo aver convertito gli importi in USD.

```

Concatenate (Transactions)
LOAD
id,
date, 
amount * rate as amount
Resident Transactions_in_USD;
```

Risultati

Caricare i dati e passare alla tabella. Dalle righe otto a quattordici vengono visualizzate nuove voci con importi in GBP.

Risultati del quarto script di caricamento

| id | date | importo |
| --- | --- | --- |
| 1 | 30/12/2018 | 23,56 |
| 2 | 07/12/2018 | 556,31 |
| 3 | 16/12/2018 | 5,75 |
| 4 | 22/12/2018 | 125,00 |
| 5 | 22/12/2018 | 484,21 |
| 6 | 22/12/2018 | 59,18 |
| 7 | 23/12/2018 | 177.42 |
| 8 | 01/01/2019 | 114.989 |
| 8 | 01/01/2019 | 164.27 |
| 9 | 03/01/2019 | 268.80 |
| 9 | 03/01/2019 | 384.00 |
| 10 | 06/01/2019 | 18.074 |
| 10 | 06/01/2019 | 25.82 |
| 11 | 09/01/2019 | 218.40 |
| 11 | 09/01/2019 | 312.00 |
| 12 | 15/01/2019 | 3.192 |
| 12 | 15/01/2019 | 4.56 |
| 13 | 16/01/2019 | 63.168 |
| 13 | 16/01/2019 | 90.24 |
| 14 | 18/01/2019 | 13.524 |
| 14 | 18/01/2019 | 19.32 |

Quinto script di caricamento

Questo script di caricamento eliminerà le voci duplicate dalla tabella dei risultati del quarto script di caricamento, lasciando solo le voci con importi in GBP.

```

drop tables Transactions_in_USD;
```

Risultati

Caricare i dati e passare alla tabella.

Risultati del quinto script di caricamento

| id | date | importo |
| --- | --- | --- |
| 1 | 30/12/2018 | 23,56 |
| 2 | 07/12/2018 | 556,31 |
| 3 | 16/12/2018 | 5,75 |
| 4 | 22/12/2018 | 125,00 |
| 5 | 22/12/2018 | 484,21 |
| 6 | 22/12/2018 | 59,18 |
| 7 | 23/12/2018 | 177.42 |
| 8 | 01/01/2019 | 114,989 |
| 9 | 01/03/2019 | 268,80 |
| 10 | 01/06/2019 | 18,074 |
| 11 | 09/01/2019 | 218,40 |
| 12 | 15/01/2019 | 3,192 |
| 13 | 16/01/2019 | 63,168 |
| 14 | 18/01/2019 | 13,524 |

Dopo aver caricato il quinto script di caricamento, la tabella dei risultati mostra tutte le quattordici transazioni esistenti in entrambi i set di dati di transazioni; tuttavia, le transazioni 8-14 sono state convertite in GBP.

Se si rimuove il prefisso NoConcatenate utilizzato prima di Transactions\_in\_USD nel secondo script di caricamento, lo script non riuscirà e mostrerà l'errore: "Tabella 'Transactions\_in\_USD' non trovata". Questo perché la tabella Transactions\_in\_USD sarebbe stata concatenata automaticamente alla tabella originale Transactions.

## Ulteriori informazioni

* [Concatenazione di tabelle](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Sense_Hub/LoadData/concatenate-tables.htm)
* [Load](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)
* [Select](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Select.htm)