Uitwisselprofiel Zorgkantoren Inkoopondersteuning en beleidsontwikkeling

Over Uitwisselprofiel Zorgkantoren Inkoopondersteuning en beleidsontwikkeling


Publicatiedatum:
18-06-2026

Inwerkingtreding:
18-06-2026

19.4 Liquiditeit - wat is de quick ratio?

Concepten

Relaties

Eigenschappen

SPARQL query

Code gekopieerd

...

Kopieer naar klembord

1# Indicator: Zorgkantoren 19.4.0
2# Parameters: ?peildatum
3# Ontologie: versie 3.0.0 of nieuwer
4
5PREFIX onz-fin: <http://purl.org/ozo/onz-fin#>
6prefix onz-zorg:  <http://purl.org/ozo/onz-zorg#>
7PREFIX onz-g: <http://purl.org/ozo/onz-g#>
8PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
9
10SELECT ?Kental ?Waarde
11WHERE {
12    {
13         SELECT (IF(SUM(IF(?jaarrekeningpost = "G Kortlopende schulden", ?bedrag, 0)) = 0,
14                "Ongedefinieerd"^^xsd:string,
15                ROUND(SUM(IF(?jaarrekeningpost = "Teller", ?bedrag, 0)) /
16                SUM(IF(?jaarrekeningpost = "G Kortlopende schulden", ?bedrag, 0)) * 100) / 100) AS ?quick_ratio)
17        WHERE {
18            {
19                SELECT ?jaarrekeningpost (SUM(?bedrag_rubriek) AS ?bedrag)
20                WHERE {
21                    # BIND("2024-12-31"^^xsd:date AS ?peildatum)
22                    BIND(?peildatum AS ?peildatum_argument)
23                    {
24                        SELECT  # totaal per rubriek
25                            (SUM(?geld_bedrag) + SUM(?saldo_waarde)/count(?saldo_waarde) AS ?bedrag_rubriek) ?rubriek ?categorie
26                        WHERE {
27                            {
28                                SELECT  # bereken het meest recente saldo per rubriek, 0 indien geen saldo
29                                    ?rubriek ?categorie
30                                    (IF(BOUND(?saldo_bedrag), ?saldo_bedrag, 0) AS ?saldo_waarde)
31                                    ?peildatum_argument
32                                    (IF(BOUND(?saldo_datum), ?saldo_datum, ?unbound) AS ?begin_datum)
33                                    ?saldo_datum ?saldo
34                                WHERE {
35                                    # BIND("2024-12-31"^^xsd:date AS ?peildatum)
36									BIND(?peildatum as ?peildatum_argument)
37                                    # Bind categorie op basis van rubriekCode
38                                    {
39                                        # Prismant: prefix-mapping, want Prismant consolideert niet dus we willen onderliggende rubrieken
40                                        {
41                                            ?rubriek a onz-fin:Grootboekrubriek .
42                                        }
43                                        UNION
44                                        {
45                                            ?rubriek a onz-fin:Grootboekrekening .
46                                        }
47                                        BIND(STRAFTER(STR(?rubriek), STR(onz-fin:)) AS ?rubriekCode)
48
49                                        VALUES (?prismantPrefix ?categorie) {
50                                            ("12"    "B.II")
51                                            ("131"   "B.III")
52                                            ("132"   "B.IV")
53                                            ("14"    "G")
54                                            ("15"    "G")
55                                        }
56                                        FILTER(STRSTARTS(?rubriekCode, ?prismantPrefix))
57                                    }
58                                    UNION
59                                    {
60                                        # RGS: exacte mapping, want RGS consolideert zelf onderliggende rubrieken
61                                        VALUES (?rubriekCode ?categorie) {
62                                            ("BVor"    "B.II")
63                                            ("BVfi"    "B.II")
64                                            ("BEff"    "B.III")
65                                            ("BLim"    "B.IV")
66                                            ("BSch"    "G")
67                                        }
68                                        BIND(IRI(CONCAT(STR(onz-fin:), ?rubriekCode)) AS ?rubriek)
69                                        {
70                                            ?rubriek a onz-fin:Grootboekrubriek .
71                                        }
72                                        UNION
73                                        {
74                                            ?rubriek a onz-fin:Grootboekrekening .
75                                        }
76                                    }
77
78                                    OPTIONAL {
79                                        ?rubriek onz-g:isAbout ?saldo .
80                                        ?saldo
81                                            a onz-fin:EindSaldo ;
82                                            onz-fin:heeftGeldBedrag ?saldo_bedrag ;
83                                            onz-g:hasDate ?saldo_datum .
84                                        FILTER (?saldo_datum <= ?peildatum_argument)
85
86                                        FILTER NOT EXISTS {
87                                            ?rubriek onz-g:isAbout ?saldo2 .
88                                            ?saldo2
89                                                a onz-fin:EindSaldo ;
90                                                onz-g:hasDate ?saldo_datum2 .
91                                            FILTER(?saldo2 != ?saldo)
92                                            FILTER (?saldo_datum2 <= ?peildatum_argument)
93                                            FILTER (
94                                                ?saldo_datum2 > ?saldo_datum 
95                                                || (
96                                                    ?saldo_datum2 = ?saldo_datum 
97                                                    && STR(?saldo2) > STR(?saldo)
98                                                )
99                                            )
100                                        }
101                                    }
102                                }
103                            }
104                            OPTIONAL {
105                                ?grootboek_post
106                                    a onz-fin:Grootboekpost ;
107                                    onz-g:partOf ?rubriek ;
108                                    onz-g:hasDate ?datum ;
109                                    onz-fin:heeftGeldBedrag ?geld_bedrag_temp .
110                                # Behoud de grootboek post alleen voor de meest specifieke rubriek, 
111                                # om dubbeltelling bij meerdere rubrieken te voorkomen
112                                FILTER NOT EXISTS {
113                                    ?grootboek_post onz-g:partOf ?specifiekereRubriek .
114                                    ?specifiekereRubriek onz-g:partOf+ ?rubriek .
115                                }
116                                FILTER (?datum <= ?peildatum_argument && (?datum > ?begin_datum || !BOUND(?begin_datum)))
117                            }
118                            BIND(IF(BOUND(?geld_bedrag_temp), ?geld_bedrag_temp, 0) AS ?geld_bedrag)
119
120                        } GROUP BY ?rubriek ?categorie
121                    }
122
123                    VALUES (?categorie ?jaarrekeningpost){
124                   		("B.II"   "Teller")
125        				("B.III"  "Teller")
126        				("B.IV"   "Teller")
127                        ("G"      "G Kortlopende schulden")
128                    }
129                } GROUP BY ?jaarrekeningpost
130            }
131        }
132    }
133    
134    BIND("Quick ratio" AS ?Kental)
135    BIND(?quick_ratio AS ?Waarde)
136}
137ORDER BY ?Kental
138