# lastworkdate Skript- och diagramfunktion

Funktionen lastworkdate returnerar det tidigaste slutdatumet för att uppnå no\_of\_workdays (måndag-fredag) med början vid start\_date med hänsyn till alla eventuella holiday. start\_date och holiday ska vara giltiga datum eller tidsmarkörer.

Syntax:

lastworkdate(start\_date, no\_of\_workdays {, holiday})

Returnerad datatyp: heltal

En kalender som visar hur `lastworkdate()`-funktionen används.

En kalender som visar hur `lastworkdate()`-funktionen används.

En kalender som visar hur `lastworkdate()`lastworkdate()-funktionen används. ![Diagram som visar en kalender för en månad.](https://help.qlik.com/sv-SE/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-lastworkdate-diagram1.png)

Begränsningar

Det finns ingen metod för att ändra `lastworkdate()`-funktionen för regioner eller scenarier där någonting annat än en arbetsvecka som börjar på måndag och slutar på fredag ingår.

Semesterparametern måste vara en strängkonstant. Det accepterar inte ett uttryck.

När ska du använda lastworkdate

`lastworkdate()`-funktionen används vanligen som del av ett uttryck när användaren vill beräkna det föreslagna slutet för ett projekt eller en uppgift, baserat på när projektet börjar och de helgdagar/semesterdagar som inträffar under denna period..

## 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. Mer information finns i [Ändra regioninställningar för applikationer och skript](https://help.qlik.com/sv-SE/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/regional-settings-in-apps.htm).

Standardinställningar för region i applikationer baseras på användarprofilen. Dessa regionala formatinställningar är inte relaterade till språket som visas i Qlik Cloud användargränssnittet. Qlik Cloud kommer att visas på samma språk som webbläsaren du använder.

Om du är en applikationsskapare kan du ange standardregionen för applikationer du skapar. Mer information finns i [Ställa in önskade regioninställningar för att skapa appar och skript i Qlik Cloud-analys](https://help.qlik.com/sv-SE/cloud-services/Subsystems/Hub/Content/Sense_Hub/UserInterface/Languages.htm#Setting).

Argument

| Argument | Beskrivning |
| --- | --- |
| start\_date | Startdatum som ska utvärderas. |
| no\_of\_workdays | Antalet arbetsdagar som ska uppnås. |
| 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' ` |

## Exempel 1 – Grundläggande exempel

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/lastworkdate.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 projekt-ID, projektens startdatum och beräknad arbetsinsats i dagar för projekten. Datauppsättningen laddas i en tabell som heter `Projects`.

* En föregående laddning som innehåller funktionen `lastworkdate()` som är inställd som fältet `end_date` och identifierar när varje projekt beräknas avslutas.

Laddningsskript

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

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

Resultat

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

* `id`
* `start_date`
* `effort`
* `end_date`

Resultattabell

| id | startdatum | effort | slutdatum |
| --- | --- | --- | --- |
| 1 | 01/01/2022 | 14 | 01/20/2022 |
| 2 | 2022-02-10 | 17 | 2022-03-04 |
| 3 | 2022-05-17 | 5 | 05/23/2022 |
| 4 | 06/01/2022 | 12 | 06/16/2022 |
| 5 | 2022-08-10 | 26 | 09/14/2022 |

Eftersom det inte finns några schemalagda semesterdagar/helgdagar lägger funktionen till det definierade antalet arbetsdagar, måndag till fredag, till startdatumet för att hitta det tidigaste möjligaste slutdatumet.

I följande kalender visas start- och slutdatumet för projekt 3, med arbetsdagarna framhävda i grönt.

En kalender som visar start- och slutdatumet för projekt 3.

En kalender som visar start- och slutdatumet för projekt 3.

En kalender som visar start- och slutdatumet för projekt 3. ![Diagram som visar startdatumet för projekt 3 som 17 maj och det sista arbetsdatumet som 23 maj, totalt fem arbetsdagar.](https://help.qlik.com/sv-SE/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-lastworkdate-example1-diagram.png)

## Exempel 2 – enstaka semesterdag

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/lastworkdate.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 projekt-ID, projektens startdatum och beräknad arbetsinsats i dagar för projekten. Datauppsättningen laddas i en tabell som heter `Projects`.

* En föregående laddning som innehåller funktionen `lastworkdate()` som är inställd som fältet `end_date` och identifierar när varje projekt beräknas avslutas.

Men det finns en schemalagd semesterdag 18 maj 2022. I `lastworkdate()`-funktionen i den föregående laddningen ingår semesterdagen i dess tredje argument för att identifiera när varje projekt är schemalagt att avslutas.

Laddningsskript

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

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

Resultat

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

* `id`
* `start_date`
* `effort`
* `end_date`

Resultattabell

| id | startdatum | effort | slutdatum |
| --- | --- | --- | --- |
| 1 | 01/01/2022 | 14 | 01/20/2022 |
| 2 | 2022-02-10 | 17 | 2022-03-04 |
| 3 | 2022-05-17 | 5 | 05/24/2022 |
| 4 | 06/01/2022 | 12 | 06/16/2022 |
| 5 | 2022-08-10 | 26 | 09/14/2022 |

Den enda schemalagda semesterdagen anges som det tredje argumentet i `lastworkdate()`-funktionen. Till följd av detta skiftas slutdatumet för projekt 3 en dag framåt, eftersom semesterdagen äger rum på en av arbetsdagarna före slutdatumet.

Följande kalender visar start- och slutdatum för projekt 3 och visar att semesterdagen ändrar projektets slutdatum med en dag.

En kalender som visar start- och slutdatumet för projekt 3, med en semesterdag 18 maj

En kalender som visar start- och slutdatumet för projekt 3, med en semesterdag 18 maj

En kalender som visar start- och slutdatumet för projekt 3, med en semesterdag 18 maj ![Diagram som visar 17 maj som startdatum för projekt 3 med en semesterdag 18 maj.](https://help.qlik.com/sv-SE/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-lastworkdate-example2-diagram.png)

## Exempel 3 – flera semesterdagar

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/lastworkdate.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 projekt-ID, projektens startdatum och beräknad arbetsinsats i dagar för projekten. Datauppsättningen laddas i en tabell som heter `Projects`.

* En föregående laddning som innehåller funktionen `lastworkdate()` som är inställd som fältet `end_date` och identifierar när varje projekt beräknas avslutas.

Emellertid har fyra semesterdagar schemalagts för 19, 20, 21 och 22 maj. I `lastworkdate()`-funktionen i den föregående laddningen ingår var och en av semesterdagarna i dess tredje argument för att identifiera när varje projekt är schemalagt att avslutas.

Laddningsskript

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

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

Resultat

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

* `id`
* `start_date`
* `effort`
* `end_date`

Resultattabell

| id | startdatum | effort | slutdatum |
| --- | --- | --- | --- |
| 1 | 01/01/2022 | 14 | 01/20/2022 |
| 2 | 2022-02-10 | 17 | 2022-03-04 |
| 3 | 2022-05-17 | 5 | 05/25/2022 |
| 4 | 06/01/2022 | 12 | 06/16/2022 |
| 5 | 2022-08-10 | 26 | 09/14/2022 |

De fyra semesterdagarna anges som en lista med argument i `lastworkdate()`-funktionen efter startdatumet och antalet arbetsdatagar.

Följande kalender visar start- och slutdatum för projekt 3 och visar att semesterdagarna ändrar projektets slutdatum med tre dagar.

En kalender som visar start- och slutdatumet för projekt 3 med semesterdagar 19 till 22 maj

En kalender som visar start- och slutdatumet för projekt 3 med semesterdagar 19 till 22 maj

En kalender som visar start- och slutdatumet för projekt 3 med semesterdagar 19 till 22 maj ![Diagram som visar 17 maj som startdatum för projekt 3 och 25 maj  som sista arbetsdag, med fyra extra semesterdagar, vilket flyttar den sista arbetsdagen tre dagar, med två av semesterdagarna på lördag och söndag.](https://help.qlik.com/sv-SE/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-lastworkdate-example3-diagram.png)

## Exempel 4 – enstaka semesterdag (diagram)

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

#### Laddningsskript och diagramuttryck

Översikt

Samma datauppsättning och scenario som det första exemplet används.

I det här exemplet är dock datauppsättningen oförändrad och har lästs in i programmet. `end_date`-fältet beräknas via ett mått i ett diagramobjekt.

Laddningsskript

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

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

Resultat

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

* `id`
* `start_date`
* `effort`

Skapa följande mått för att beräkna end\_date:

* `=LastWorkDate(start_date,effort,'05/18/2022')`

Resultattabell

| id | startdatum | effort | =LastWorkDate(start\_date,effort,'05/18/2022') |
| --- | --- | --- | --- |
| 1 | 01/01/2022 | 14 | 01/20/2022 |
| 2 | 2022-02-10 | 17 | 2022-03-04 |
| 3 | 2022-05-17 | 5 | 05/23/2022 |
| 4 | 06/01/2022 | 12 | 06/16/2022 |
| 5 | 2022-08-10 | 26 | 09/14/2022 |

Den enda schemalagda semesterdagen anges som ett mått i diagrammet. Till följd av detta skiftas slutdatumet för projekt 3 en dag framåt, eftersom semesterdagen äger rum på en av arbetsdagarna före slutdatumet.

Följande kalender visar start- och slutdatum för projekt 3 och visar att semesterdagen ändrar projektets slutdatum med en dag.

En kalender som visar start- och slutdatumet för projekt 3, med en semesterdag 18 maj

En kalender som visar start- och slutdatumet för projekt 3, med en semesterdag 18 maj

En kalender som visar start- och slutdatumet för projekt 3, med en semesterdag 18 maj ![Diagram som visar 17 maj som startdatum för projekt 3 med en semesterdag 18 maj.](https://help.qlik.com/sv-SE/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-lastworkdate-example2-diagram.png)