# Dual - Skript- und Diagrammfunktion

Dual() kombiniert eine Zahl und einen String in einem einzelnen Datensatz, sodass die Zahlendarstellung des Datensatzes zur Sortierung und Berechnung verwendet und der Stringwert zu Darstellungszwecken genutzt werden kann.

[Dual Function](https://play.vidyard.com/vNa9jcN6DizzYQ1hDZ5VAr)

Syntax:

Dual(text, number)

Rückgabe Datentyp: dual

InformationshinweisAlle dualen Rückgabewerte sind rechts ausgerichtet.

Argumente

| Argument | Beschreibung |
| --- | --- |
| text | Der Stringwert, der in Verbindung mit dem Zahlenargument verwendet werden soll. |
| number | Die Zahl, die in Verbindung mit dem String im Stringargument verwendet werden soll. |

In Qlik Sense sind alle Feldwerte potenziell duale Werte. Die Feldwerte können demnach sowohl einen numerischen als auch einen Textwert haben. Z. B. kann ein Datum einen numerischen Wert von 40908 und den Textwert von '2011-12-31' haben.

InformationshinweisWenn alle Werte dieselbe Zahlendarstellung, aber unterschiedliche Stringdarstellungen haben, nehmen alle die Stringdarstellung des ersten dieser Werte an.

TipphinweisDie dual-Funktion steht meist am Anfang des Skripts, bevor andere Werte in das betreffende Feld geladen werden, denn auf diese Weise kann die Stringdarstellung für Filterfenster festgelegt werden.

Beispiel: Diagrammformeln

| Beispiel | Beschreibung |
| --- | --- |
| `Dual(IF(DayOfWeek = 0, 'Monday',`<br>`IF(DayOfWeek = 1, 'Tuesday',`<br>`If(DayOfWeek = 2 ,'Wednesday',`<br>`If(DayOfWeek = 3 ,'Thursday',		If(DayOfWeek = 4 ,'Friday',		If(DayOfWeek = 5 ,'Saturday',		 If(DayOfWeek = 6 ,'Sunday'`<br>`))))))), DayOfWeek)` | Das Feld `DayOfWeek` kann z. B. in einer Visualisierung als Dimension verwendet werden. In einer Tabelle werden die Wochentage automatisch in der richtigen numerischen anstatt der alphabetischen Reihenfolge sortiert. |
| `Dual(Pick( Priority , 'Low','Medium','High'), Priority)` | Das Feld `Priority` kann z. B. in einer Visualisierung als Dimension verwendet werden. In einer Tabelle wird das Feld `Priority` automatisch in der richtigen numerischen anstatt der alphabetischen Reihenfolge sortiert. |
| `Dual('Q' & Ceil(Month(Date)/3), Ceil(Month(Date)/3))` | Das Feld `Date` kann z. B. in einer Visualisierung als Dimension verwendet werden. Die Textwerte `Q1` bis `Q4` werden erstellt und den numerischen Werten `1` bis `4` zugewiesen. |
| `Dual(WeekYear(Date) & '-W' & Week(Date), WeekStart(Date))` | Das Feld `Date` kann z. B. in einer Visualisierung als Dimension verwendet werden. In diesem Beispiel werden Textwerte im Format `'2012-W22'` erstellt und gleichzeitig ein Zahlenwert zugewiesen, welcher der Datumszahl des ersten Wochentags entspricht, wie zum Beispiel: `41057` |

Beispiel: Ladeskripte

| Beispiel | Beschreibung |
| --- | --- |
| Fügen Sie Ihrem Skript die folgenden Beispiele hinzu und führen Sie es aus.<br><br>`Load dual ( NameDay,NumDay ) as DayOfWeek inline` `[ NameDay,NumDay` `Monday,0` `Tuesday,1` `Wednesday,2` `Thursday,3` `Friday,4` `Saturday,5` `Sunday,6 ];` | Das Feld `DayOfWeek` kann z. B. in einer Visualisierung als Dimension verwendet werden. In einer Tabelle werden die Wochentage automatisch in der richtigen numerischen anstatt der alphabetischen Reihenfolge sortiert. |
| `Load<br>Dual('Q' & Ceil(Month(Now())/3), Ceil(Month(Now())/3)) as Quarter<br>AutoGenerate 1;` | Dieses Beispiel liefert das aktuelle Quartal. Es wird als `Q1` angezeigt, wenn die Funktion Now in den ersten drei Monaten des Jahres ausgeführt wird, als `Q2` für die nächsten drei Monate usw. Wenn es zur Sortierung verwendet wird, verhält sich das Feld `Quarter` wie ein numerischer Wert: 1 bis 4. |
| `Dual('Q' & Ceil(Month(Date)/3), Ceil(Month(Date)/3)) as Quarter` | Wie im vorherigen Beispiel wird das Feld `Quarter` mit den Textwerten `Q1` bis `Q4` erstellt und erhält die numerischen Werte `1` bis `4`. Damit dies im Skript verwendet werden kann, müssen die Werte für `Date` geladen werden. |
| `Dual(WeekYear(Date) & '-W' & Week(Date), WeekStart(Date)) as YearWeek` | Dieses Beispiel erstellt ein Feld `YearWeek` mit Textwerten in der Form `2012-W22` und weist gleichzeitig einen Zahlenwert zu, welcher der Datumszahl des ersten Wochentags entspricht, wie zum Beispiel: `41057`. Damit dies im Skript verwendet werden kann, müssen die Werte für `Date` geladen werden. |

## Beispiel – Grundlegendes zu „Dual“

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

#### Diagrammformel

Übersicht

Ein Datensatz enthält Kundendienstdaten. Sie möchten die Anzahl der Anrufe nach Wochentag überprüfen.

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in einen neuen Abschnitt ein.

Das Ladeskript umfasst:

* Datensatz, der in eine Datentabelle namens `Example` geladen wird

* Die folgenden Felder in der Datentabelle:

  * `DayOfWeek`
  * `NoOfCalls`

Ladeskript

```
Example:
Load * inline [
DayOfWeek, NoOfCalls
0, 25000
1, 30000
2, 27500
3, 32000
4, 23250
5, 28950
6, 32350
];
```

Ergebnisse

Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie ein neues Balkendiagramm und fügen Sie dann eine Dimension mit einer der folgenden Methoden hinzu:

1. Fügen Sie in der Dimensionsformel Folgendes hinzu:

   ```
   =Dual(IF(DayOfWeek = 0, 'Monday',
   IF(DayOfWeek = 1, 'Tuesday',
   If(DayOfWeek = 2 ,'Wednesday',
   If(DayOfWeek = 3 ,'Thursday',
   If(DayOfWeek = 4 ,'Friday',
   If(DayOfWeek = 5 ,'Saturday',
   If(DayOfWeek = 6 ,'Sunday'
   ))))))), DayOfWeek) 
   ```

2. Diese Methode ist effizienter. Fügen Sie in der Dimensionsformel Folgendes hinzu:

   ```
   =Dual(pick( DayOfWeek +1 , 'Monday','Tuesday','Wednesday', 'Thursday','Friday', 'Saturday','Sunday' ), DayOfWeek)
   ```

Erstellen Sie die folgende Kennzahl:

* `=Sum(NoOfCalls)`, um die Anzahl der Anrufe zu berechnen.

Ergebnisse: Balkendiagramm mit der Anzahl der Anrufe nach Wochentag

Ergebnisse: Balkendiagramm mit der Anzahl der Anrufe nach Wochentag

Ergebnisse: Balkendiagramm mit der Anzahl der Anrufe nach Wochentag ![Balkendiagramm mit Dimension, das mit der Funktion „Dual“ in der Dimensionsformel erstellt wurde](https://help.qlik.com/de-DE/sense/November2025/Subsystems/Hub/Content/Resources/Images/dual-barchart.png)

Das Balkendiagramm zeigt die Anzahl der Anrufe nach Wochentag. Es sortiert die Wochentage automatisch in der richtigen Reihenfolge.

## Beispiel – Szenario für „Dual“

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

#### Diagrammformel

Übersicht

Ein Datensatz enthält Feedback zum Kundensupport. Sie möchten das Feedback sortieren und anzeigen, wobei die negativen Antworten zuerst angezeigt werden sollen, gefolgt von den positiven Antworten.

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in einen neuen Abschnitt ein.

Das Ladeskript umfasst:

* Datensatz, der in eine Datentabelle namens Example geladen wird

* Die folgenden Felder in der Datentabelle:

  * ResponseType
  * NoOfResponses

Ladeskript

```
Example:
Load * inline [
ResponseType, NoOfResponses
1, 350
2, 560
3, 4350
4, 2350
5, 5350
];
```

Ergebnisse

Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie ein neues Balkendiagramm und fügen Sie die folgende Formel zu einer Dimension hinzu.

* =Dual(pick( ResponseType , 'Very Bad','Bad','Average', 'Good','Very Good'), ResponseType)

Erstellen Sie die folgende Kennzahl:

* =Sum(NoOfResponses), um die Anzahl der Antworten zu berechnen.

Ergebnisse: Balkendiagramm mit der Anzahl der Antworten nach Antworttyp

Ergebnisse: Balkendiagramm mit der Anzahl der Antworten nach Antworttyp

Ergebnisse: Balkendiagramm mit der Anzahl der Antworten nach Antworttyp ![Balkendiagramm mit Dimension, das mit der Funktion „Dual“ in der Dimensionsformel erstellt wurde](https://help.qlik.com/de-DE/sense/November2025/Subsystems/Hub/Content/Resources/Images/dual-barchart2.png)

Das Balkendiagramm zeigt die Anzahl der Antworten nach Antworttyp. Beachten Sie, dass die Balken automatisch von negativ zu positiv sortiert werden. Der Antworttyp, der ein numerischer Wert ist, wurde einer Textbeschreibung zugewiesen.