# networkdays Skript- och diagramfunktion

Funktionen networkdays returnerar antalet arbetsdagar (måndag-fredag) mellan och inklusive start\_date och end\_date med hänsyn till eventuella holiday.

Syntax:

networkdays (start\_date, end\_date [, holiday])

Returnerad datatyp: heltal

Kalenderdiagram som visar det datumintervall som har returnerats av networkdays-funktionen.

Kalenderdiagram som visar det datumintervall som har returnerats av networkdays-funktionen.

Kalenderdiagram som visar det datumintervall som har returnerats av networkdays-funktionen. ![LÄGG TILL ALT-TEXT HÄR.....!!!!!!](https://help.qlik.com/sv-SE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-networkdays-general-calendar.png)

`networkdays`-funktionen har följande begränsningar:

* Det finns inget sätt att ändra arbetsdagar. Med andra ord finns det inget sätt att ändra funktionen för regioner eller situationer som omfattar någonting annat än arbete mellan måndag och fredag.

* `holiday`-parametern måste vara en strängkonstant. Uttryck accepteras inte.

Argument

| Argument | Beskrivning |
| --- | --- |
| start\_date | Startdatum som ska utvärderas. |
| end\_date | Slutdatumn som ska utvärderas. |
| holiday | Ledighetsperioder som ska undantas från arbetsdagar. En helgdag anges som ett strängkonstant datum. Du kan ange flera semesterdatum, avgränsade med kommatecken.<br><br>Exempel: `  '12/25/2013', '12/26/2013', '12/31/2013', '01/01/2014' ` |

## Användning

`networkdays()`-funktionen används vanligtvis som en del av ett uttryck när användaren vill att beräkningen ska använda det antal arbetsdagar som finns mellan två datum. Om en användare exempelvis vill beräkna den totala lönen som en anställd kommer tjäna på ett PAYE-avtal (pay as you earn).

Exempel på funktioner

| Exempel | Resultat |
| --- | --- |
| `networkdays ('12/19/2013', '01/07/2014')` | Returnerar 14. Detta exempel tar inte hänsyn till semester. |
| `networkdays ('12/19/2013', '01/07/2014', '12/25/2013', '12/26/2013')` | Returnerar 12. Detta exempel tar hänsyn till semester 12/25/2013 till 12/26/2013. |
| `networkdays ('12/19/2013', '01/07/2014', '12/25/2013', '12/26/2013', '12/31/2013', '01/01/2014')` | Returnerar 10. I detta exempel beaktas två ledighetsperioder. |

## 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 – Grundläggande exempel

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

#### Laddningsskript och resultat

Översikt

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

Laddningsskriptet innehåller:

* En datauppsätting som innehåller projekt-ID, deras startdatum och slutdatum. Denna information laddas i en tabell som heter `Projects`.

* Datumfältet tillhandahålls i formatet (ÅÅÅÅ-MM-DD) i `DateFormat`-systemvariabeln.

* Ytterligare ett fält, `net_work_days`, skapas för att beräkna antalet arbetsdagar som behövs i varje projekt.

Laddningsskript

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

Projects:
    Load
        *,
        networkdays(start_date,end_date) as net_work_days
        ;
Load
id,
start_date,
end_date
Inline 
[	
id,start_date,end_date
1,01/01/2022,01/18/2022
2,02/10/2022,02/17/2022
3,05/17/2022,07/05/2022
4,06/01/2022,06/12/2022
5,08/10/2022,08/26/2022
];
```

Resultat

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

* `id`

* `start_date`

* `end_date`

* `net_work_days`

Resultattabell

| id | startdatum | slutdatum | nettoarbetsdagar |
| --- | --- | --- | --- |
| 1 | 01/01/2022 | 2022-01-18 | 12 |
| 2 | 2022-02-10 | 2022-02-17 | 6 |
| 3 | 2022-05-17 | 07/05/2022 | 36 |
| 4 | 2022-06-01 | 2022-06-12 | 8 |
| 5 | 2022-08-10 | 26/08/2022 | 13 |

Eftersom det inte finns några schemalagda semesterdagar (de hade funnits i det tredje argumentet i `networkdays()`-funktionen) subtraherar funktionen `start_date` från `end_date` samt alla helger för att beräkna antalet arbetsdagar mellan de två datumen.

Kalenderdiagram som framhäver arbetsdagarna för projekt 5 (inga semesterdagar)

Kalenderdiagram som framhäver arbetsdagarna för projekt 5 (inga semesterdagar)

Kalenderdiagram som framhäver arbetsdagarna för projekt 5 (inga semesterdagar) ![Kalenderdiagram för augusti månad som visar arbetsdagarna för projektet från datauppsättningen med ID 5. Här framhävs alla veckodagar (måndag-fredag) från 10 till 26 augusti 2022, med lördagar och söndagar uteslutna.](https://help.qlik.com/sv-SE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-networkdays-example-basic.png)

Ovanstående kalender ger en visuell sammanfattning av projektet med `id` av 5. Projekt 5 börjar onsdag 10 augusti 2022 och slutar 26 augusti 2022. När alla lördagar och söndagar har ignorerats finns det 13 arbetsdagar mellan och inklusive de här två datumen.

## Exempel 2 – enstaka semesterdag

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/networkdays.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 föregående exempel.

* Datumfältet tillhandahålls i formatet (ÅÅÅÅ-MM-DD) i systemvariabeln `DateFormat`.

* Ytterligare ett fält, `net_work_days`, skapas för att beräkna antalet arbetsdagar som behövs i varje projekt.

I det här exemplet finns det en semesterdag som är schemalagd 19 augusti 2022.

Laddningsskript

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

Projects:
    Load
        *,
        networkdays(start_date,end_date,'08/19/2022') as net_work_days
        ;
Load
id,
start_date,
end_date
Inline 
[	
id,start_date,end_date
1,01/01/2022,01/18/2022
2,02/10/2022,02/17/2022
3,05/17/2022,07/05/2022
4,06/01/2022,06/12/2022
5,08/10/2022,08/26/2022
];
```

Resultat

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

* `id`

* `start_date`

* `end_date`

* `net_work_days`

Resultattabell

| id | startdatum | slutdatum | nettoarbetsdagar |
| --- | --- | --- | --- |
| 1 | 01/01/2022 | 2022-01-18 | 12 |
| 2 | 2022-02-10 | 2022-02-17 | 6 |
| 3 | 2022-05-17 | 07/05/2022 | 36 |
| 4 | 2022-06-01 | 2022-06-12 | 8 |
| 5 | 2022-08-10 | 26/08/2022 | 12 |

Den enda schemalagda semesterdagen anges som det tredje argumentet i `networkdays()`-funktionen.

Kalenderdiagram som framhäver arbetsdagarna för projekt 5 (en semesterdag)

Kalenderdiagram som framhäver arbetsdagarna för projekt 5 (en semesterdag)

Kalenderdiagram som framhäver arbetsdagarna för projekt 5 (en semesterdag) ![Kalenderdiagram för augusti månad som visar arbetsdagarna för projektet från datauppsättningen med ID 5. Här framhävs alla veckodagar (måndag-fredag) från 10 till 26 augusti 2022, undantaget 19 augusti 2022 (semesterdagen) som är utesluten.](https://help.qlik.com/sv-SE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-networkdays-example-single-holiday.png)

Den ovanstående kalendern beskriver projekt 5 visuellt, så att modifieringen för att inkludera semesterdagen framgår. För projekt 5 inträffar den här semesterdagen fredagen 19 augusti 2022. Resultatet blir att det totala `net_work_days`-värdet för projekt 5 minskar med en dag från 13 till 12 dagar.

## Exempel 3 – flera semesterdagar

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/networkdays.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.

* Datumfältet tillhandahålls i formatet (ÅÅÅÅ-MM-DD) i systemvariabeln `DateFormat`.

* Ytterligare ett fält, `net_work_days`, skapas för att beräkna antalet arbetsdagar som behövs i varje projekt.

Men i det här exemplet finns det fyra schemalagda semesterdagar, från 18 till 21 augusti 2022.

Laddningsskript

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

Projects:
    Load
        *,
        networkdays(start_date,end_date,'08/18/2022','08/19/2022','08/20/2022','08/21/2022') as net_work_days
        ;
Load
id,
start_date,
end_date
Inline 
[	
id,start_date,end_date
1,01/01/2022,01/18/2022
2,02/10/2022,02/17/2022
3,05/17/2022,07/05/2022
4,06/01/2022,06/12/2022
5,08/10/2022,08/26/2022
];
```

Resultat

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

* `id`

* `start_date`

* `end_date`

* `net_work_days`

Resultattabell

| id | startdatum | slutdatum | nettoarbetsdagar |
| --- | --- | --- | --- |
| 1 | 01/01/2022 | 2022-01-18 | 12 |
| 2 | 2022-02-10 | 2022-02-17 | 6 |
| 3 | 2022-05-17 | 07/05/2022 | 36 |
| 4 | 2022-06-01 | 2022-06-12 | 8 |
| 5 | 2022-08-10 | 26/08/2022 | 11 |

De fyra schemalagda semesterdagarna anges som en kommaseparerad lista från det tredje argumentet framåt i `networkdays()`-funktionen.

Kalenderdiagram som framhäver arbetsdagarna för projekt 5 (flera semesterdagar)

Kalenderdiagram som framhäver arbetsdagarna för projekt 5 (flera semesterdagar)

Kalenderdiagram som framhäver arbetsdagarna för projekt 5 (flera semesterdagar) ![Kalenderdiagram för augusti månad som visar arbetsdagarna för projektet från datauppsättningen med ID 5. Här framhävs alla veckodagar (måndag-fredag) från 10 till 26 augusti 2022, undantaget 18 och 19 augusti 2022 (semesterdagarna) som är uteslutna.](https://help.qlik.com/sv-SE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-networkdays-example-multiple-holidays.png)

Den ovanstående kalendern beskriver projekt 5 visuellt, så att modifieringen för att inkludera semesterdagarna framgår. Den här perioden med schemalagda semesterdagar inträffar under projekt 5, med två av dagarna på en torsdag och fredag. Resultatet blir att det totala `net_work_days`-värdet för projekt 5 minskar från 13 till 11 dagar.

## Exempel 4 – enstaka semesterdag

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

#### Laddningsskript och diagramuttryck

Ö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.

* Datumfältet tillhandahålls i formatet (ÅÅÅÅ-MM-DD) i systemvariabeln DateFormat.

Det finns en semesterdag som är schemalagd 19 augusti 2022.

I det här exemplet har dock den oförändrade datauppsättningen laddats till programmet. net\_work\_days-fältet beräknas via ett mått i ett diagramobjekt.

Laddningsskript

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

Projects:
Load
id,
start_date,
end_date
Inline 
[	
id,start_date,end_date
1,01/01/2022,01/18/2022
2,02/10/2022,02/17/2022
3,05/17/2022,07/05/2022
4,06/01/2022,06/12/2022
5,08/10/2022,08/26/2022
];
```

Resultat

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

* id

* start\_date

* end\_date

Skapa följande mått:

= networkdays(start\_date,end\_date,’08/19/2022’)

Resultattabell

| id | startdatum | slutdatum | nettoarbetsdagar |
| --- | --- | --- | --- |
| 1 | 01/01/2022 | 2022-01-18 | 12 |
| 2 | 2022-02-10 | 2022-02-17 | 6 |
| 3 | 2022-05-17 | 07/05/2022 | 36 |
| 4 | 2022-06-01 | 2022-06-12 | 8 |
| 5 | 2022-08-10 | 26/08/2022 | 12 |

Den enda schemalagda semesterdagen anges som det tredje argumentet i networkdays()-funktionen.

Kalenderdiagramet som visar nettoarbetsdagar med en semesterdag (diagramobjekt)

Kalenderdiagramet som visar nettoarbetsdagar med en semesterdag (diagramobjekt)

Kalenderdiagramet som visar nettoarbetsdagar med en semesterdag (diagramobjekt) ![Kalenderdiagram för augusti månad som visar arbetsdagarna för projektet från datauppsättningen med ID 5. Här framhävs alla veckodagar (måndag-fredag) från 10 till 26 augusti 2022, undantaget 19 augusti 2022 (semesterdagen) som är utesluten.](https://help.qlik.com/sv-SE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-networkdays-example-chart-single-holiday.png)

Den ovanstående kalendern beskriver projekt 5 visuellt, så att modifieringen för att inkludera semesterdagen framgår. För projekt 5 inträffar den här semesterdagen fredagen 19 augusti 2022. Resultatet blir att det totala net\_work\_days-värdet för projekt 5 minskar med en dag från 13 till 12 dagar.