Uitwisselprofiel Zorgkantoren Inkoopondersteuning en beleidsontwikkeling

Versie:

Publicatiedatum:23-12-2024

Inwerkingtreding:23-12-2024




Bekijk bron...

22.1 - Groei, Omzetgroei

Concepten

Relaties

Eigenschappen

SPARQL query

Code gekopieerd

...

Kopieer naar klembord

1# Indicator: Zorgkantoren 22.1.0
2# Parameters: $(start_periode), $(eind_periode)
3# Ontologie: 
4
5PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
6PREFIX onz-fin: <http://purl.org/ozo/onz-fin#>
7PREFIX onz-g: <http://purl.org/ozo/onz-g#>
8
9PREFIX time: <http://www.w3.org/2006/time#>
10SELECT *
11WHERE {
12    {   
13        SELECT  ("Omzetgroei" AS ?Kental) 
14        (IF(sum(?bedrag_P_sum_old) != 0,SUM(?bedrag_P_sum)/SUM(?bedrag_P_sum_old),"undefined") AS ?waarde) 
15        WHERE {
16            ?grootboek_post 
17                a onz-fin:Grootboekpost ;
18                onz-g:partOf ?rubriek ;
19                onz-g:hasDate ?datum ; 
20                onz-g:isAbout [
21                    a onz-g:FinancialEntity ;
22                    onz-g:hasQuality / onz-g:hasQualityValue / onz-g:hasDataValue ?geld_bedrag 
23                ] .
24            BIND($(start_periode) AS ?start_periode)
25            BIND($(eind_periode) AS ?eind_periode)
26
27        
28            # Omzetgroei = "P Som der bedrijfsopbrengsten", in meetperiode verslagjaar / "P Som der bedrijfsopbrengsten", in meetperiode vergelijkingsjaar
29            # Omzetgroei% = Omzetgroei * 100
30            #Vind numeriek voor start en eind datum en haal datum van voorgaand jaar op
31            BIND (xsd:date(CONCAT(STR(YEAR(?start_periode) - 1), '-', SUBSTR(STR(?start_periode),6,2), '-', SUBSTR(STR(?start_periode),9,2))) AS ?start_periode_old)
32            BIND (xsd:date(CONCAT(STR(YEAR(?eind_periode) - 1), '-', SUBSTR(STR(?eind_periode),6,2), '-', SUBSTR(STR(?eind_periode),9,2))) AS ?eind_periode_old)
33
34            
35            
36            #Rubrieken tussen geselecteerd start en eind datum
37            BIND(IF(?datum >= ?start_periode && ?datum <= ?eind_periode,IF(?rubriek IN ( 
38                    # P.I Netto omzet
39                    onz-fin:811000,
40            
41                    # P.II, P.II leeg
42                    # P.IV Overige bedrijfsopbrengsten
43                    onz-fin:821000, onz-fin:822000, onz-fin:825000, onz-fin:826000, onz-fin:827000, onz-fin:828000, onz-fin:829000,
44                    onz-fin:831000, onz-fin:832000, onz-fin:833000, onz-fin:835000, 
45                    onz-fin:891000, onz-fin:919000, onz-fin:920000, onz-fin:930000
46                        ), ?geld_bedrag, 0),0) AS ?bedrag_P_sum)
47    
48            #Rubrieken tussen geselecteerd voorgaandstart en eind datum
49            BIND(IF(?datum >= ?start_periode_old && ?datum <= ?eind_periode_old,IF(?rubriek IN ( 
50                    # P.I Netto omzet
51                    onz-fin:811000,
52            
53                    # P.II, P.II leeg
54                    # P.IV Overige bedrijfsopbrengsten
55                    onz-fin:821000, onz-fin:822000, onz-fin:825000, onz-fin:826000, onz-fin:827000, onz-fin:828000, onz-fin:829000,
56                    onz-fin:831000, onz-fin:832000, onz-fin:833000, onz-fin:835000, 
57                    onz-fin:891000, onz-fin:919000, onz-fin:920000, onz-fin:930000
58                        ), ?geld_bedrag, 0),0) AS ?bedrag_P_sum_old)
59        
60            
61        }
62    }
63    UNION
64    {   
65        SELECT     ("Omzetgroei %" AS ?Kental) 
66        (IF(sum(?bedrag_P_sum_old) != 0,100*SUM(?bedrag_P_sum)/SUM(?bedrag_P_sum_old),"undefined") AS ?waarde) 
67        WHERE {
68            ?grootboek_post 
69                a onz-fin:Grootboekpost ;
70                onz-g:partOf ?rubriek ;
71                onz-g:hasDate ?datum ; 
72                onz-g:isAbout [
73                    a onz-g:FinancialEntity ;
74                    onz-g:hasQuality / onz-g:hasQualityValue / onz-g:hasDataValue ?geld_bedrag 
75                ] .
76            BIND($(start_periode) AS ?start_periode)
77            BIND($(eind_periode) AS ?eind_periode)
78        
79            # Omzetgroei = "P Som der bedrijfsopbrengsten", in meetperiode verslagjaar / "P Som der bedrijfsopbrengsten", in meetperiode vergelijkingsjaar
80            # Omzetgroei% = Omzetgroei * 100
81            #Vind numeriek voor start en eind datum en haal datum van voorgaand jaar op
82            BIND (xsd:date(CONCAT(STR(YEAR(?start_periode) - 1), '-', SUBSTR(STR(?start_periode),6,2), '-', SUBSTR(STR(?start_periode),9,2))) AS ?start_periode_old)
83            BIND (xsd:date(CONCAT(STR(YEAR(?eind_periode) - 1), '-', SUBSTR(STR(?eind_periode),6,2), '-', SUBSTR(STR(?eind_periode),9,2))) AS ?eind_periode_old)
84
85            
86            
87            #Rubrieken tussen geselecteerd start en eind datum
88            BIND(IF(?datum >= ?start_periode && ?datum <= ?eind_periode,IF(?rubriek IN ( 
89                    # P.I Netto omzet
90                    onz-fin:811000,
91            
92                    # P.II, P.II leeg
93                    # P.IV Overige bedrijfsopbrengsten
94                    onz-fin:821000, onz-fin:822000, onz-fin:825000, onz-fin:826000, onz-fin:827000, onz-fin:828000, onz-fin:829000,
95                    onz-fin:831000, onz-fin:832000, onz-fin:833000, onz-fin:835000, 
96                    onz-fin:891000, onz-fin:919000, onz-fin:920000, onz-fin:930000
97                        ), ?geld_bedrag, 0),0) AS ?bedrag_P_sum)
98            
99            #Rubrieken tussen geselecteerd voorgaandstart en eind datum
100            BIND(IF(?datum >= ?start_periode_old && ?datum <= ?eind_periode_old,IF(?rubriek IN ( 
101                    # P.I Netto omzet
102                    onz-fin:811000,
103            
104                    # P.II, P.II leeg
105                    # P.IV Overige bedrijfsopbrengsten
106                    onz-fin:821000, onz-fin:822000, onz-fin:825000, onz-fin:826000, onz-fin:827000, onz-fin:828000, onz-fin:829000,
107                    onz-fin:831000, onz-fin:832000, onz-fin:833000, onz-fin:835000, 
108                    onz-fin:891000, onz-fin:919000, onz-fin:920000, onz-fin:930000
109                        ), ?geld_bedrag, 0),0) AS ?bedrag_P_sum_old)
110        }
111    } 
112}

Heb je feedback?

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