Dual - script- en diagramfunctie
Dual() combineert een getal en een tekenreeks tot één record, zodat de nummerweergave van de record kan worden gebruikt voor sorterings- en berekeningsdoeleinden, terwijl de tekenreekswaarde kan worden gebruikt voor weergavedoeleinden.
Syntaxis:
Dual(text, number)
Retourgegevenstypen: dubbele waarde
Argument | Beschrijving |
---|---|
text | De tekenreekswaarde die moet worden gebruikt in combinatie met het getalargument. |
number | Het getal dat moet worden gebruikt in combinatie met het tekenreeksargument. |
In Qlik Sense zijn alle veldwaarden mogelijk dubbele waarden. Dit betekent dat de veldwaarden zowel een numerieke waarde als een tekstuele waarde kunnen hebben. Een voorbeeld is een datum die een numerieke waarde 40908 en de tekstuele representatie '2011-12-31' zou kunnen hebben.
Voorbeeld | Beschrijving |
---|---|
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) | Het veld DayOfWeek kan als dimensie in een visualisatie worden gebruikt. In een tabel met de weekdagen worden de dagen automatisch gesorteerd op juiste getalvolgorde in plaats van op alfabetische volgorde. |
Dual(Pick( Priority , 'Low','Medium','High'), Priority) | Het veld Priority kan als dimensie in een visualisatie worden gebruikt. In een tabel wordt het veld Priority automatisch gesorteerd op juiste getalvolgorde in plaats van op alfabetische volgorde. |
Dual('Q' & Ceil(Month(Date)/3), Ceil(Month(Date)/3)) | Het veld Date kan als dimensie in een visualisatie worden gebruikt. De tekstwaarden Q1 tot Q4 worden aangemaakt en krijgen de numerieke waarden 1 tot 4 toegewezen. |
Dual(WeekYear(Date) & '-W' & Week(Date), WeekStart(Date)) | Het veld Date kan als dimensie in een visualisatie worden gebruikt. In dit voorbeeld worden tekstwaarden van het formulier '2012-W22' gemaakt en wordt tegelijkertijd een numerieke waarde toegewezen die overeenkomt met het datumnummer van de eerste dag van de week, bijvoorbeeld: 41057. |
Voorbeeld | Beschrijving |
---|---|
Voeg de volgende voorbeelden toe aan uw script en voer het uit. Load dual ( NameDay,NumDay ) as DayOfWeek inline [ NameDay,NumDay Monday,0 Tuesday,1 Wednesday,2 Thursday,3 Friday,4 Saturday,5 Sunday,6 ]; | Het veld DayOfWeek kan bijvoorbeeld als dimensie in een visualisatie worden gebruikt. In een tabel met de weekdagen worden de dagen automatisch gesorteerd op juiste getalvolgorde in plaats van op alfabetische volgorde. |
Load Dual('Q' & Ceil(Month(Now())/3), Ceil(Month(Now())/3)) as Quarter AutoGenerate 1; | Dit voorbeeld retourneert het huidige kwartaal. Het wordt weergegeven als Q1 als de functie Now wordt uitgevoerd in de eerste drie maanden van het jaar, Q2 voor de tweede reeks van drie maanden enzovoort. Als het veld Quarter echter wordt gebruikt bij sorteren, gedraagt het zich als een numerieke waarde: 1 t/m 4. |
Dual('Q' & Ceil(Month(Date)/3), Ceil(Month(Date)/3)) as Quarter | Net als in het voorafgaande voorbeeld, wordt het veld Quarter gemaakt met de tekstwaarden Q1 t/m Q4 en worden hieraan de numerieke waarden 1 t/m 4 toegewezen. Als u dit in het script wilt gebruiken, moeten de waarden voor Date worden geladen. |
Dual(WeekYear(Date) & '-W' & Week(Date), WeekStart(Date)) as YearWeek | In dit voorbeeld wordt een veld YearWeek gemaakt met tekstwaarden van het formulier 2012-W22 en wordt tegelijkertijd een numerieke waarde toegewezen die overeenkomt met het datumnummer van de eerste dag van de week, bijvoorbeeld: 41057. Als u dit in het script wilt gebruiken, moeten de waarden voor Date worden geladen. |