Code gekopieerd
...Kopieer naar klembord
1# Indicator: Zorgkantoren 12.2.3 2# Parameters: ($kwartaal) 3# Ontologie: versie 2.0.0 of nieuwer 4 5PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 6PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 7PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 8PREFIX onz-pers: <http://purl.org/ozo/onz-pers#> 9PREFIX onz-g: <http://purl.org/ozo/onz-g#> 10PREFIX onz-org: <http://purl.org/ozo/onz-org#> 11PREFIX onz-zorg: <http://purl.org/ozo/onz-zorg#> 12 13SELECT 14 ?vestiging 15 (COUNT(?overeenkomst) AS ?aantal_arbeidsovereenkomsten) 16 (SUM(?meldingen) AS ?aantal_meldingen) 17 (SUM(?meldingen) / COUNT(?overeenkomst) AS ?verzuimfrequentie) 18{ 19 { 20 SELECT 21 DISTINCT ?overeenkomst 22 ?vestiging 23 (SUM(?melding) AS ?meldingen) 24 { 25 BIND('Q3' AS ?kwartaal) 26 BIND(IF(?kwartaal = 'Q1', '2023-01-01'^^xsd:date, 27 IF(?kwartaal = 'Q2', '2023-04-01'^^xsd:date, 28 IF(?kwartaal = 'Q3', '2023-07-01'^^xsd:date, 29 IF(?kwartaal = 'Q4', '2023-10-01'^^xsd:date, 30 '')))) AS ?start_periode) 31 BIND(?start_periode + "P3M"^^xsd:duration - "P1D"^^xsd:duration AS ?eind_periode) 32 # Keuze in-/exclusief zwangerschapsverlog 33 VALUES ?type_verzuim 34 { 35 onz-pers:ZiektePeriode 36 onz-pers:ZwangerschapsVerlof 37 } 38 39 # Bepaal filter voor definitie van overeenkomsten die geldig zijn voor personeelsleden 40 VALUES ?personeels_overeenkomst 41 { 42 onz-pers:ArbeidsOvereenkomst 43 onz-pers:UitzendOvereenkomst 44 onz-pers:InhuurOvereenkomst 45 } 46 ?overeenkomst 47 a ?personeels_overeenkomst ; #Alleen personeel 48 onz-pers:heeftOpdrachtnemer ?werknemer ; 49 onz-g:isAbout ?locatie ; 50 onz-g:startDatum ?start_overeenkomst . 51 OPTIONAL {?overeenkomst onz-g:eindDatum ?eind_overeenkomst } 52 53 FILTER (?start_overeenkomst <= ?eind_periode && (!BOUND(?eind_overeenkomst) || ?eind_overeenkomst >= ?start_periode)) 54 55 OPTIONAL { 56 ?werknemer 57 ^onz-g:hasParticipant ?ziekteperiode . 58 ?ziekteperiode 59 a ?type_verzuim ; 60 onz-g:startDatum ?start_ziekte . 61 # Ziektemelding moet vallen binnen de meetperiode EN per overeenkomst binnen de geldigheid van die overeenkomst 62 FILTER (?start_ziekte >= ?start_periode && ?start_ziekte <= ?eind_periode) 63 FILTER (?start_ziekte >= ?start_overeenkomst && (?start_ziekte <= ?eind_overeenkomst || !BOUND(?eind_overeenkomst))) 64 } 65 BIND(IF(BOUND(?ziekteperiode), 1, 0) AS ?melding) 66 #Bepaal de vestiging waar de werkzaamheden verricht worden volgens de werkovereenkomst 67 { 68 ?locatie onz-g:partOf* ?vestiging_uri . 69 ?vestiging_uri 70 a onz-org:Vestiging ; 71 onz-g:identifiedBy ?vest_nr. 72 ?vest_nr 73 a onz-org:Vestigingsnummer ; 74 onz-g:hasDataValue ?vestiging . 75 } UNION { 76 #Includeer ook de organisatie als geheel en label deze als vestiging 77 ?locatie onz-g:partOf*/onz-org:vestigingVan ?organisatie_uri . 78 ?organisatie_uri 79 a onz-g:Business ; 80 rdfs:label ?Organisatie . 81 BIND(CONCAT('Totaal ',?Organisatie) AS ?vestiging) 82 } 83 } 84 GROUP BY ?overeenkomst ?vestiging 85 } 86} 87GROUP BY ?vestiging 88
Loopt u tegen een issue of vraag aan bij het KIK-V product? Neem dan contact met ons op!