# inweektodate Skript- och diagramfunktion

Denna funktion returnerar True om timestamp ligger inom den del av veckan som innehåller base\_date fram till och inklusive den sista millisekunden av base\_date.

Syntax:

InWeekToDate (timestamp, base\_date, period\_no [, first\_week\_day])

Returnerad datatyp: Booleansk

Anteckning om information

I Qlik Sense, representeras det booleska sanna värdet av -1, och det falska värdet representeras av 0.

Diagram för inquartertodate-funktionen

Diagram för inquartertodate-funktionen

Diagram för inquartertodate-funktionen ![Exempeldiagram över det datumintervall inom vilket inquartertodate-funktionen returnerar värdet TRUE.](https://help.qlik.com/sv-SE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-inweektodate-general.png)

`inweektodate()`-funktionen använder `base_date`-parametern för att identifiera ett maximalt gränsdatum för ett veckosegment, såväl som dess motsvarande datum för veckans början, vilket är baserat på systemvariabeln `FirstWeekDay` (eller användardefinierad `first_week_day`-parameter ). När detta veckosegment har definierats returnerar funktionen ett booleskt resultat när du jämför de föreskrivna datumvärdena med det segmentet.

## Användning

Funktionen `inweektodate()` returnerar ett booleskt resultat. Vanligtvis kommer denna typ av funktion att användas som ett villkor i ett `if`-uttryck. Detta returnerar en aggregering eller beräkning beroende på om ett utvärderat datum inträffade i veckan till och med ett specifikt datum.

`inweektodate()`-funktionen kan till exempel användas för att beräkna alla försäljningar gjorda under en angiven vecka fram till ett visst datum.

Argument

| Argument | Beskrivning |
| --- | --- |
| timestamp | Det datum du vill jämföra mot base\_date. |
| base\_date | Datum som används för att utvärdera veckan. |
| period\_no | Veckans startpunkt kan flyttas med period\_no. period\_no är ett heltal där värdet 0 anger den vecka som innehåller base\_date. Negativa värden i period\_no anger föregående veckor och positiva värden anger efterföljande veckor. |
| first\_week\_day | Som standard är den första dagen i veckan söndag (vilket bestäms av systemvariabeln FirstWeekDay), med start vid midnatt mellan lördag och söndag. first\_week\_day-parametern ersätter FirstWeekDay-variabeln. Om du vill att veckan ska starta en annan dag anger du en flagga mellan 0 och 6.<br><br>För en vecka som börjar på måndag och slutar på söndag, använd flaggan 0 för måndag, 1 för tisdag, 2 för onsdag, 3 för torsdag, 4 för fredag, 5 för lördag och 6 för söndag. |

Exempel på funktioner

| Exempel | Interaktion |
| --- | --- |
| `inweektodate('01/12/2006', '01/12/2006', 0)` | Returnerar `TRUE`. |
| `inweektodate('01/12/2006', '01/11/2006', 0)` | Returnerar `FALSE`. |
| ` inweektodate('01/12/2006', '01/18/2006', -1)  ` | Returnerar `FALSE`.<br>Eftersom `period_no` är angett som -1, är de faktiska data som `timestamp` jämförs med 01/11/2006. |
| ` inweektodate('01/11/2006', '01/12/2006', 0, 3 )  ` | Returnerar `FALSE`, eftersom `first_week_day` har angetts som `3` (torsdag), vilket gör 01/12/2006 till den första dagen i veckan efter veckan som innehåller 01/12/2006. |

Dessa ämnen kan hjälpa dig att arbeta med den här funktionen:

Relaterade ämnen

| Avsnitt | Standardflagga/värde | Beskrivning |
| --- | --- | --- |
| [FirstWeekDay](https://help.qlik.com/sv-SE/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/FirstWeekDay.htm) | 6/söndag | Definierar startdagen för varje vecka. |

## Lokala inställningar

Om inget annat anges använder exemplen i detta ämne följande datumformat: MM/DD/YYYY. Datumformatet anges i `SET DateFormat`-satsen i datainläsningsskriptet. Förvald datumformatering kan vara annorlunda i ditt system, på grund av dina regionala inställningar och andra faktorer. Du kan ändra formaten i exemplen nedan så att det passar dina krav. Eller så kan du ändra formaten i ditt laddningsskript så att de matchar dessa exempel.

Standardregionalinställningar i program baseras på de regionala systeminställningarna för datorn eller servern där Qlik Sense är installerad. Om Qlik Senseservern du ansluter till är inställd på Sverige så kommer Dataladdningsredigeraren att använda svenska regionala inställningar för datum, tid och valuta. Dessa regionala formatinställningar är inte relaterade till språket som visas i Qlik Sense användargränssnittet. Qlik Sense kommer att visas på samma språk som webbläsaren du använder.

## Exempel 1 – inga ytterligare argument

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

#### Laddningsskript och resultat

Översikt

Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.

Laddningsskriptet innehåller:

* En datauppsättning som innehåller transaktioner för månaden januari 2022 som laddas i en tabell som heter `Transactions`.

* Datafältet tillhandahålls i `TimestampFormat='M/D/YYYY h:mm:ss[.fff]'`-formatet.

* Skapandet av ett fält, `in_week_to_date`, som bestämmer vilka transaktioner som ägde rum under kvartalet fram till den 14 januari 2022.

* Skapande av ett ytterligare fält benämnt `weekday`, med användning av `weekday()`-funktionen. Detta nya fält skapas för att visa vilken veckodag som motsvarar varje datum.

Laddningsskript

```
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff]';
SET FirstWeekDay=6;
Transactions:
    Load
        *,
        weekday(date) as week_day,
        inweektodate(date,'01/14/2022', 0) as in_week_to_date
        ;
Load
*
Inline
[
id,date,amount
8188,'2022-01-02 12:22:06',37.23
8189,'2022-01-05 01:02:30',17.17
8190,'2022-01-06 15:36:20',88.27
8191,'2022-01-08 10:58:35',57.42
8192,'2022-01-09 08:53:32',53.80
8193,'2022-01-10 21:13:01',82.06
8194,'2022-01-11 00:57:13',40.39
8195,'2022-01-12 09:26:02',87.21
8196,'2022-01-13 15:05:09',95.93
8197,'2022-01-14 18:44:57',45.89
8198,'2022-01-15 06:10:46',36.23
8199,'2022-01-16 06:39:27',25.66
8200,'2022-01-17 10:44:16',82.77
8201,'2022-01-18 18:48:17',69.98
8202,'2022-01-26 04:36:03',76.11
8203,'2022-01-27 08:07:49',25.12
8204,'2022-01-28 12:24:29',46.23
8205,'2022-01-30 11:56:56',84.21
8206,'2022-01-30 14:40:19',96.24
8207,'2022-01-31 05:28:21',67.67
];
```

Resultat

Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:

* `date`

* `week_day`

* `in_week_to_date`

Resultattabell

| datum | week\_day | hittills under veckan |
| --- | --- | --- |
| 2022-01-02 12:22:06 | sön | 0 |
| 2022-01-05 01:02:30 | ons | 0 |
| 2022-01-06 15:36:20 | tors | 0 |
| 2022-01-08 10:58:35 | lör | 0 |
| 2022-01-09 08:53:32 | sön | -1 |
| 2022-01-10 21:13:01 | mån | -1 |
| 2022-01-11 00:57:13 | tis | -1 |
| 2022-01-12 09:26:02 | ons | -1 |
| 2022-01-13 15:05:09 | tors | -1 |
| 2022-01-14 18:44:57 | fre | -1 |
| 2022-01-15 06:10:46 | lör | 0 |
| 2022-01-16 06:39:27 | sön | 0 |
| 2022-01-17 10:44:16 | mån | 0 |
| 2022-01-18 18:48:17 | tis | 0 |
| 2022-01-26 04:36:03 | ons | 0 |
| 2022-01-27 08:07:49 | tors | 0 |
| 2022-01-28 12:24:29 | fre | 0 |
| 2022-01-30 11:56:56 | sön | 0 |
| 2022-01-30 14:40:19 | sön | 0 |
| 2022-01-31 05:28:21 | mån | 0 |

`in_week_to_date`-fältet skapas i föregående LOAD-sats med hjälp av funktionen `inweektodate()`. Det första argumentet som anges identifierar vilket fält som utvärderas. Det andra argumentet är ett hårdkodat datum för den 14 januari, vilket är `base_date` som identifierar vilken vecka som ska segmenteras samt definierar slutgränsen för det segmentet. `period_no`-värdet 0 är det sista argumentet, vilket betyder att funktionen inte jämför veckorna före eller efter den segmenterade veckan.

Systemvariabeln `FirstWeekDay` bestämmer att veckor börjar på en söndag och slutar på en lördag. Därför skulle januari delas upp i veckor enligt diagrammet nedan, där datumen mellan 9 och 14 januari ger den giltiga perioden för `inweekdodate()`-beräkningen:

Kalenderdiagram som visar transaktionsdatum som skulle returnera det booleska resultatet TRUE

Kalenderdiagram som visar transaktionsdatum som skulle returnera det booleska resultatet TRUE

Kalenderdiagram som visar transaktionsdatum som skulle returnera det booleska resultatet TRUE ![Diagram som visar datumintervall inom vilket inweektodate-funktionen returnerar värdet TRUE.](https://help.qlik.com/sv-SE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-inweektodate-no-add-arg-calendar.png)

Alla transaktioner som sker mellan 9 och 14 januari returnerar det booleska resultatet `TRUE`. Transaktioner före och efter datumen ger det booleska resultatet `FALSE`.

## Exampel 2 – period\_no

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

#### Laddningsskript och resultat

Översikt

Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.

Laddningsskriptet innehåller:

* Samma datauppsättning och scenario som i det första exemplet.

* Skapandet av ett fält, `prev_week_to_date`, som bestämmer vilka transaktioner som ägde rum en hel vecka innan veckosegmentet som avslutas den 14 januari 2022.

* Skapande av ett ytterligare fält benämnt `weekday`, med användning av `weekday()`-funktionen. Detta nya fält skapas för att visa vilken veckodag som motsvarar varje datum.

Laddningsskript

```
SET FirstWeekDay=6;
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff]';
Transactions:
    Load
        *,
        weekday(date) as week_day,
        inweektodate(date,'01/14/2022', -1) as prev_week_to_date
        ;
Load
*
Inline
[
id,date,amount
8188,'2022-01-02 12:22:06',37.23
8189,'2022-01-05 01:02:30',17.17
8190,'2022-01-06 15:36:20',88.27
8191,'2022-01-08 10:58:35',57.42
8192,'2022-01-09 08:53:32',53.80
8193,'2022-01-10 21:13:01',82.06
8194,'2022-01-11 00:57:13',40.39
8195,'2022-01-12 09:26:02',87.21
8196,'2022-01-13 15:05:09',95.93
8197,'2022-01-14 18:44:57',45.89
8198,'2022-01-15 06:10:46',36.23
8199,'2022-01-16 06:39:27',25.66
8200,'2022-01-17 10:44:16',82.77
8201,'2022-01-18 18:48:17',69.98
8202,'2022-01-26 04:36:03',76.11
8203,'2022-01-27 08:07:49',25.12
8204,'2022-01-28 12:24:29',46.23
8205,'2022-01-30 11:56:56',84.21
8206,'2022-01-30 14:40:19',96.24
8207,'2022-01-31 05:28:21',67.67
];
```

Resultat

Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:

* `date`

* `week_day`

* `prev_week_to_date`

Resultattabell

| datum | week\_day | föregående\_vecka\_hittills |
| --- | --- | --- |
| 2022-01-02 12:22:06 | sön | -1 |
| 2022-01-05 01:02:30 | ons | -1 |
| 2022-01-06 15:36:20 | tors | -1 |
| 2022-01-08 10:58:35 | lör | 0 |
| 2022-01-09 08:53:32 | sön | 0 |
| 2022-01-10 21:13:01 | mån | 0 |
| 2022-01-11 00:57:13 | tis | 0 |
| 2022-01-12 09:26:02 | ons | 0 |
| 2022-01-13 15:05:09 | tors | 0 |
| 2022-01-14 18:44:57 | fre | 0 |
| 2022-01-15 06:10:46 | lör | 0 |
| 2022-01-16 06:39:27 | sön | 0 |
| 2022-01-17 10:44:16 | mån | 0 |
| 2022-01-18 18:48:17 | tis | 0 |
| 2022-01-26 04:36:03 | ons | 0 |
| 2022-01-27 08:07:49 | tors | 0 |
| 2022-01-28 12:24:29 | fre | 0 |
| 2022-01-30 11:56:56 | sön | 0 |
| 2022-01-30 14:40:19 | sön | 0 |
| 2022-01-31 05:28:21 | mån | 0 |

`period_no`-värdet -1 indikerar att `inweektodate ()`-funktionen jämför det ingående kvartalssegmentet med föregående vecka. Veckosegmentet motsvarar initialt mellan 9 januari och 14 januari. `period_no` förskjuter sedan både start- och slutgränsen för detta segment till en vecka tidigare, vilket gör att datumgränserna blir 2 januari till 7 januari.

Kalenderdiagram som visar transaktionsdatum som skulle returnera det booleska resultatet TRUE

Kalenderdiagram som visar transaktionsdatum som skulle returnera det booleska resultatet TRUE

Kalenderdiagram som visar transaktionsdatum som skulle returnera det booleska resultatet TRUE ![Diagram som visar datumintervall inom vilket inweektodate-funktionen returnerar värdet TRUE.](https://help.qlik.com/sv-SE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-inweektodate-period-no-calendar.png)

Därför kommer alla transaktioner som sker mellan 2 och 8 januari (exklusive 8 janiari) att returnera det booleska resultatet är `TRUE`.

## Exempel 3 – first\_week\_day

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

#### Laddningsskript och resultat

Översikt

Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.

Laddningsskriptet innehåller:

* Samma datauppsättning och scenario som i det första exemplet.

* Skapandet av ett fält, `in_week_to_date`, som bestämmer vilka transaktioner som ägde rum under kvartalet fram till den 14 januari 2022.

* Skapande av ett ytterligare fält benämnt `weekday`, med användning av `weekday()`-funktionen. Detta nya fält skapas för att visa vilken veckodag som motsvarar varje datum.

I det här exemplet har vi använt måndag som den första dagen i veckan.

Laddningsskript

```
SET FirstWeekDay=6;
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff]';

Transactions:
    Load
        *,
        weekday(date) as week_day,
        inweektodate(date,'01/14/2022', 0, 0) as in_week_to_date
        ;
Load
*
Inline
[
id,date,amount
8188,'2022-01-02 12:22:06',37.23
8189,'2022-01-05 01:02:30',17.17
8190,'2022-01-06 15:36:20',88.27
8191,'2022-01-08 10:58:35',57.42
8192,'2022-01-09 08:53:32',53.80
8193,'2022-01-10 21:13:01',82.06
8194,'2022-01-11 00:57:13',40.39
8195,'2022-01-12 09:26:02',87.21
8196,'2022-01-13 15:05:09',95.93
8197,'2022-01-14 18:44:57',45.89
8198,'2022-01-15 06:10:46',36.23
8199,'2022-01-16 06:39:27',25.66
8200,'2022-01-17 10:44:16',82.77
8201,'2022-01-18 18:48:17',69.98
8202,'2022-01-26 04:36:03',76.11
8203,'2022-01-27 08:07:49',25.12
8204,'2022-01-28 12:24:29',46.23
8205,'2022-01-30 11:56:56',84.21
8206,'2022-01-30 14:40:19',96.24
8207,'2022-01-31 05:28:21',67.67
];
```

Resultat

Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:

* `date`

* `week_day`

* `in_week_to_date`

Resultattabell

| datum | week\_day | hittills under veckan |
| --- | --- | --- |
| 2022-01-02 12:22:06 | sön | 0 |
| 2022-01-05 01:02:30 | ons | 0 |
| 2022-01-06 15:36:20 | tors | 0 |
| 2022-01-08 10:58:35 | lör | 0 |
| 2022-01-09 08:53:32 | sön | 0 |
| 2022-01-10 21:13:01 | mån | -1 |
| 2022-01-11 00:57:13 | tis | -1 |
| 2022-01-12 09:26:02 | ons | -1 |
| 2022-01-13 15:05:09 | tors | -1 |
| 2022-01-14 18:44:57 | fre | -1 |
| 2022-01-15 06:10:46 | lör | 0 |
| 2022-01-16 06:39:27 | sön | 0 |
| 2022-01-17 10:44:16 | mån | 0 |
| 2022-01-18 18:48:17 | tis | 0 |
| 2022-01-26 04:36:03 | ons | 0 |
| 2022-01-27 08:07:49 | tors | 0 |
| 2022-01-28 12:24:29 | fre | 0 |
| 2022-01-30 11:56:56 | sön | 0 |
| 2022-01-30 14:40:19 | sön | 0 |
| 2022-01-31 05:28:21 | mån | 0 |

Genom att använda 0 som `first_week_day`-argument i `inweektodate()`-funktionen, ersätter funktionsargumentet systemvariabeln `FirstWeekDay` och anger måndag som den första dagen i veckan.

Kalenderdiagram som visar transaktionsdatum som skulle returnera det booleska resultatet TRUE

Kalenderdiagram som visar transaktionsdatum som skulle returnera det booleska resultatet TRUE

Kalenderdiagram som visar transaktionsdatum som skulle returnera det booleska resultatet TRUE ![Diagram som visar transaktionsdatum inom vilket inweektodate-funktionen returnerar värdet TRUE.](https://help.qlik.com/sv-SE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-inweektodate-first-week-day-calendar.png)

Därför kommer alla transaktioner som sker mellan 1o och 14 januari returnera det booleska resultatet `TRUE`, medan transaktioner med datum utanför dessa gränser kommer att returnera värdet `FALSE`.

## Exempel 4 – Diagramobjektexempel

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

#### Laddningsskript och diagramuttryck

Översikt

Öppna skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.

Laddningsskriptet innehåller samma datauppsättning och scenario som i det första exemplet. I det här exemplet har dock den oförändrade datauppsättningen laddats till programmet. Beräkningen som avgör om transaktioner har skett i veckan fram till den 14 januari 2022 skapas som ett mått i diagramobjektet.

Laddningsskript

```
SET DateFormat='MM/DD/YYYY';

Transactions:
Load
*
Inline
[
id,date,amount
8188,'2022-01-02 12:22:06',37.23
8189,'2022-01-05 01:02:30',17.17
8190,'2022-01-06 15:36:20',88.27
8191,'2022-01-08 10:58:35',57.42
8192,'2022-01-09 08:53:32',53.80
8193,'2022-01-10 21:13:01',82.06
8194,'2022-01-11 00:57:13',40.39
8195,'2022-01-12 09:26:02',87.21
8196,'2022-01-13 15:05:09',95.93
8197,'2022-01-14 18:44:57',45.89
8198,'2022-01-15 06:10:46',36.23
8199,'2022-01-16 06:39:27',25.66
8200,'2022-01-17 10:44:16',82.77
8201,'2022-01-18 18:48:17',69.98
8202,'2022-01-26 04:36:03',76.11
8203,'2022-01-27 08:07:49',25.12
8204,'2022-01-28 12:24:29',46.23
8205,'2022-01-30 11:56:56',84.21
8206,'2022-01-30 14:40:19',96.24
8207,'2022-01-31 05:28:21',67.67
];
```

Resultat

Gör följande:

1. Ladda data och öppna ett ark. Skapa en ny tabell och lägg till det här fältet som en dimension: date.

2. För att beräkna om transaktioner ägde rum under samma vecka fram till den 14 januari skapar du följande åtgärd:

   =inweektodate(date,'01/14/2022',0)

3. För att visa vilken veckodag som motsvarar varje datum skapar du ett ytterligare mått:

   =weekday(date)

Resultattabell

| datum | week\_day | hittills under veckan |
| --- | --- | --- |
| 2022-01-02 12:22:06 | sön | 0 |
| 2022-01-05 01:02:30 | ons | 0 |
| 2022-01-06 15:36:20 | tors | 0 |
| 2022-01-08 10:58:35 | lör | 0 |
| 2022-01-09 08:53:32 | sön | -1 |
| 2022-01-10 21:13:01 | mån | -1 |
| 2022-01-11 00:57:13 | tis | -1 |
| 2022-01-12 09:26:02 | ons | -1 |
| 2022-01-13 15:05:09 | tors | -1 |
| 2022-01-14 18:44:57 | fre | -1 |
| 2022-01-15 06:10:46 | lör | 0 |
| 2022-01-16 06:39:27 | sön | 0 |
| 2022-01-17 10:44:16 | mån | 0 |
| 2022-01-18 18:48:17 | tis | 0 |
| 2022-01-26 04:36:03 | ons | 0 |
| 2022-01-27 08:07:49 | tors | 0 |
| 2022-01-28 12:24:29 | fre | 0 |
| 2022-01-30 11:56:56 | sön | 0 |
| 2022-01-30 14:40:19 | sön | 0 |
| 2022-01-31 05:28:21 | mån | 0 |

in\_week\_to\_date-fältet skapas som ett mått i ett diagramobjekt med hjälp av inweektodate()-funktionen. Det första argumentet som anges identifierar vilket fält som utvärderas. Det andra argumentet är ett hårdkodat datum för den 14 januari, vilket är base\_date som identifierar vilken vecka som ska segmenteras samt definierar slutgränsen för det segmentet. period\_no-värdet 0 är det sista argumentet, vilket betyder att funktionen inte jämför veckorna före eller efter den segmenterade veckan.

Systemvariabeln FirstWeekDay bestämmer att veckor börjar på en söndag och slutar på en lördag. Därför skulle januari delas upp i veckor enligt diagrammet nedan, där datumen mellan 9 och 14 januari ger den giltiga perioden för inweekdodate()-beräkningen:

Kalenderdiagram som visar transaktionsdatum som skulle returnera det booleska resultatet TRUE

Kalenderdiagram som visar transaktionsdatum som skulle returnera det booleska resultatet TRUE

Kalenderdiagram som visar transaktionsdatum som skulle returnera det booleska resultatet TRUE ![Diagram som visar datumintervall inom vilket inweektodate-funktionen returnerar värdet TRUE.](https://help.qlik.com/sv-SE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-inweektodate-chart-object-calendar.png)

Alla transaktioner som sker mellan 9 och 14 januari returnerar det booleska resultatet TRUE. Transaktioner före och efter datumen ger det booleska resultatet FALSE.

## Exempel 5 – Scenario

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

#### Laddningsskript och diagramuttryck

Översikt

Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.

Laddningsskriptet innehåller:

* En datauppsättning läses in i en tabell som heter Products.

* Information om produkt-ID, tillverkningsdatum och självkostnadspris.

I det här exemplet har man identifierat att utrustningsfel var orsaken till att produkter som tillverkades den 12 januari var defekta. Frågan löstes den 13 januari. Slutanvändaren vill ha ett diagramobjekt som visar, efter vecka, status för vilka produkter som tillverkades som var "defekta" eller "felfria", samt kostnaden för de produkter som tillverkades den veckan.

Laddningsskript

```
Products:
Load
*
Inline
[
product_id,manufacture_date,cost_price
8188,'2022-01-02 12:22:06',37.23
8189,'2022-01-05 01:02:30',17.17
8190,'2022-01-06 15:36:20',88.27
8191,'2022-01-08 10:58:35',57.42
8192,'2022-01-09 08:53:32',53.80
8193,'2022-01-10 21:13:01',82.06
8194,'2022-01-11 00:57:13',40.39
8195,'2022-01-12 09:26:02',87.21
8196,'2022-01-13 15:05:09',95.93
8197,'2022-01-14 18:44:57',45.89
8198,'2022-01-15 06:10:46',36.23
8199,'2022-01-16 06:39:27',25.66
8200,'2022-01-17 10:44:16',82.77
8201,'2022-01-18 18:48:17',69.98
8202,'2022-01-26 04:36:03',76.11
8203,'2022-01-27 08:07:49',25.12
8204,'2022-01-28 12:24:29',46.23
8205,'2022-01-30 11:56:56',84.21
8206,'2022-01-30 14:40:19',96.24
8207,'2022-01-31 05:28:21',67.67
];
```

Resultat

Gör följande:

1. Ladda data och öppna ett ark. Skapa en ny tabell. Skapa en dimension för att visa veckonamnen.

   =weekname(manufacture\_date)

2. Skapa sedan en dimension för att identifiera vilka av produkterna som är defekta och vilka som är felfria:

   =if(inWeektodate(manufacture\_date,makedate(2022,01,12),0),'Defective','Faultless')

3. Skapa ett mått för att summera cost\_price av produkterna:

   =sum(cost\_price)

4. Ange måttens Nummerformatering till Pengar.

Resultattabell

| veckonamn(tillverkningsdatum) | if(inweektodate(manufacture\_date,makedate(2022,01,12),0),'Defekt','Felfri') | =sum(cost\_price) |
| --- | --- | --- |
| 2022/02 | Felfri | $200.09 |
| 2022/03 | Defekt | $263.46 |
| 2022/03 | Felfri | $178.05 |
| 2022/04 | Felfri | $178.41 |
| 2022/05 | Felfri | $147.46 |
| 2022/06 | Felfri | $248.12 |

Funktionen inweektodate() returnerar ett booleskt värde vid utvärdering av tillverkningsdatumen för var och en av produkterna. För de som returnerar ett booleskt värde på TRUE, markerar det produkterna som 'Defective'. För alla produkter som returnerar värdet FALSE, och därför inte tillverkas i veckan fram till och med den 12 januari, markeras produkterna som ‘Faultless’.