Early Access: The content on this website is provided for informational purposes only in connection with pre-General Availability Qlik Products.
All content is subject to change and is provided without warranty.
Gå till huvudinnehåll Gå till ytterligare innehåll

Dual - skript- och diagramfunktion

Dual() kombinerar ett tal och en sträng till en enda post, så att talåtergivningen av posten kan användas för sortering och beräkning, samtidigt som strängvärdet kan användas för visning.

Syntax:  

Dual(text, number)

Returnerad datatyp: dual

Anteckning om informationAlla duala returvärden är högerjusteradee.
Argument
ArgumentBeskrivning
textSträngvärdet som ska användas i kombination med talargumentet.
numberTalet som ska användas i kombination med strängen i strängargumentet.

I Qlik Sense är alla fältvärden potentiellt duala värden. Detta innebär att fältvärdena både kan ha ett numeriskt värde och ett textvärde. Exempelvis kan ett datum ha det numeriska värdet 40908 och textrepresentationen '2011-12-31'.

Anteckning om informationNär flera dataelement som laddas i ett fält har olika textsträngar men samma numeriska värde, delar de alla den första påträffade textsträngen.
Anteckning om tipsdual-funktionen används vanligen tidigt i skriptet, innan andra data lästs in i det berörda fältet, för att skapa denna första strängrepresentation som kommer att visas i filterrutor.
Exempel: diagramuttryck
ExempelBeskrivning

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)

Fältet DayOfWeek kan användas i en visualisering som en dimension. I en tabell sorteras veckodagarna automatiskt i rätt nummerordning, istället för i alfabetisk ordning.

Dual(Pick( Priority , 'Low','Medium','High'), Priority)Fältet Priority kan användas i en visualisering som en dimension. I en tabell sorteras fältet Priority automatiskt i rätt nummerordning, istället för i alfabetisk ordning.
Dual('Q' & Ceil(Month(Date)/3), Ceil(Month(Date)/3))Fältet Date kan användas i en visualisering som en dimension. Textvärdena Q1 till Q4 skapas och tilldelas de numeriska värdena 1 till 4.
Dual(WeekYear(Date) & '-W' & Week(Date), WeekStart(Date))

Fältet Date kan användas i en visualisering som en dimension. Det här exemplet skapar textvärden med formen '2012-W22' och tilldelar samtidigt ett numeriskt värde som motsvarar datumtal för veckans första dag, exempelvis: 41057

Exempel: Laddningsskript
ExempelBeskrivning

Lägg till följande exempel i skriptet och kör det.

Load dual ( NameDay,NumDay ) as DayOfWeek inline

[ NameDay,NumDay

Monday,0

Tuesday,1

Wednesday,2

Thursday,3

Friday,4

Saturday,5

Sunday,6 ];

Fältet DayOfWeek kan t.ex. användas i en visualisering som en dimension. I en tabell sorteras veckodagarna automatiskt i rätt nummerordning, istället för i alfabetisk ordning.
Load Dual('Q' & Ceil(Month(Now())/3), Ceil(Month(Now())/3)) as Quarter AutoGenerate 1;Det här exemplet letar rätt på aktuellt kvartal. Det visas som Q1 när funktionen Nu körs under de första tre månaderna på året, Q2 för de följande tre månaderna och så vidare. Om du använder sortering kommer dock fältet Quarter att fungera som sitt numeriska värde 1 till 4:
Dual('Q' & Ceil(Month(Date)/3), Ceil(Month(Date)/3)) as QuarterSom i tidigare exempel skapas fältet Quarter med textvärdena Q1 till Q4, och tilldelas de numeriska värdena 1 till 4. För att kunna använda detta i skriptet måste värdena för Date laddas.
Dual(WeekYear(Date) & '-W' & Week(Date), WeekStart(Date)) as YearWeekDet här exemplet skapar ett fält YearWeek med textvärden i formen 2012-W22 och tilldelar samtidigt ett numeriskt värde som motsvarar datumnumret för veckans första dag, exempelvis: 41057. För att kunna använda detta i skriptet måste värdena för Date laddas.

Exempel – grunderna i dual

Exempel – Dual-scenario

Var den här sidan till hjälp för dig?

Om du hittar några fel på denna sida eller i innehållet – ett stavfel, ett steg som saknas eller ett tekniskt fel – berätta för oss så att vi kan blir bättre!