Let op: dit is een oudere versie van deze publicatie. Ga naar de laatste versie

Uitwisselprofiel Zorgkantoren Inkoopondersteuning en beleidsontwikkeling

Versie:

Publicatiedatum:04-10-2023

Inwerkingtreding:04-10-2023




Bekijk bron...

8.1.0 Percentage ingezette uren personeel niet in loondienst (PNIL).

Concepten

Relaties

Eigenschappen

SPARQL query

Code gekopieerd

...

Kopieer naar klembord

1# Indicator: Zorgkantoren 8.1
2# Parameters: ($kwartaal)
3# Ontologie: versie 2.0.0 of nieuwer
4
5PREFIX onz-g: <http://purl.org/ozo/onz-g#>
6PREFIX onz-pers: <http://purl.org/ozo/onz-pers#>
7PREFIX onz-org: <http://purl.org/ozo/onz-org#>
8PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
9PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
10PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
11
12SELECT 
13    ?vestiging
14    (SUM(?pil_uren)AS ?pil_uren_tot) 
15    (SUM(?pnil_uren)AS ?pnil_uren_tot) 
16    (((SUM(?pnil_uren)/SUM(?uren))*100) AS ?percentage_pnil)
17WHERE 
18{
19    SELECT DISTINCT 
20        ?vestiging
21        ?gewerkteperiode 
22        ?uren 
23        ?pnil_uren
24        ?pil_uren
25    WHERE 
26    { 
27        # definieer kwartaal waarin overeenkomst geldig moet zijn
28        BIND(($kwartaal) AS ?kwartaal)
29        BIND(
30            IF(?kwartaal = 'Q1', '2022-01-01'^^xsd:date, 
31            IF(?kwartaal = 'Q2', '2022-04-01'^^xsd:date,
32            IF(?kwartaal = 'Q3', '2022-07-01'^^xsd:date,
33            IF(?kwartaal = 'Q4', '2022-10-01'^^xsd:date, 
34            '')))) AS ?start_periode)
35        BIND((?start_periode + "P3M"^^xsd:duration - "P1D"^^xsd:duration) AS ?eind_periode)
36
37        # selecteer overeenkomst met start en eind
38        ?overeenkomst 
39            onz-g:startDatum ?start_overeenkomst ;
40        	onz-g:isAbout ?locatie .         
41        OPTIONAL {?overeenkomst onz-g:eindDatum ?eind_overeenkomst}
42        FILTER(?start_overeenkomst <= ?eind_periode && ((?eind_overeenkomst >= ?start_periode) || (!BOUND(?eind_overeenkomst))))
43
44        # bepaal de vestiging waar de werkzaamheden verricht worden volgens de werkovereenkomst
45        {
46            ?locatie onz-g:partOf* ?vestiging_uri .
47            ?vestiging_uri 
48                a onz-org:Vestiging ;
49                onz-g:identifiedBy ?vest_nr.
50            ?vest_nr a onz-org:Vestigingsnummer ;
51                onz-g:hasDataValue ?vestiging .
52        } UNION {
53            #Includeer ook de organisatie als geheel en label deze als vestiging
54            ?locatie onz-g:partOf*/onz-org:vestigingVan ?organisatie_uri .
55            ?organisatie_uri 
56                a onz-g:Business ;
57                rdfs:label ?organisatie .
58            BIND(CONCAT('Totaal ',?organisatie) AS ?vestiging)
59        }
60
61        # selecteer uren van gewerkte periode
62        ?gewerkteperiode 
63            a onz-pers:GewerktePeriode ;
64            onz-g:definedBy ?overeenkomst ;
65            onz-g:hasBeginTimeStamp ?start_werkDT ;
66            onz-g:hasEndTimeStamp ?eind_werkDT ;
67            onz-g:hasQuality / onz-g:hasQualityValue / onz-g:hasDataValue ?uren ;
68        BIND(STRDT(SUBSTR(STR(?start_werkDT),1,10), xsd:date) AS ?start_werk)
69        BIND(STRDT(SUBSTR(STR(?eind_werkDT),1,10), xsd:date) AS ?eind_werk)
70
71        # filter in gewenste tijsdperiode
72        FILTER(?start_werk >= ?start_periode && ?eind_werk <= ?eind_periode)
73		
74        # filter de gewenste overeenkomsten
75        VALUES ?type_overeenkomst {onz-pers:ArbeidsOvereenkomst onz-pers:InhuurOvereenkomst onz-pers:UitzendOvereenkomst onz-pers:OproepOvereenkomst }
76        ?overeenkomst a ?type_overeenkomst .
77        	
78        # ken PNIL uren toe aan inhuur- en uitzendovereenkomsten
79        BIND(IF(?type_overeenkomst = onz-pers:InhuurOvereenkomst || ?type_overeenkomst = onz-pers:UitzendOvereenkomst, ?uren, 0) AS ?pnil_uren)
80        BIND(IF(?type_overeenkomst = onz-pers:ArbeidsOvereenkomst || ?type_overeenkomst = onz-pers:OproepOvereenkomst, ?uren, 0) AS ?pil_uren)
81    } 
82}
83GROUP BY ?vestiging

Heb je feedback?

Loopt u tegen een issue of vraag aan bij het KIK-V product? Neem dan contact met ons op!