Uitwisselprofiel Zorgkantoren Inkoopondersteuning en beleidsontwikkeling
Over Uitwisselprofiel Zorgkantoren Inkoopondersteuning en beleidsontwikkeling
- Publicatiedatum:
- 15-07-2026
- Inwerkingtreding:
- 16-07-2026
23.2 Kapitaal - wat is de net-debt / EBITDA?
Concepten
Relaties
Eigenschappen
SPARQL query
Code gekopieerd
...Kopieer naar klembord
1# Indicator: Zorgkantoren 23.2.0 2# Parameters: ?peildatum 3# Ontologie: versie 3.0.0 of nieuwer 4# Werkt voor Prismant én RGS grootboekrubrieken 5 6PREFIX onz-fin: <http://purl.org/ozo/onz-fin#> 7PREFIX onz-g: <http://purl.org/ozo/onz-g#> 8PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 9 10SELECT 11 ("Net-debt/EBITDA" AS ?Kental) 12 # Eindresultaat afronden op twee decimalen 13 (IF(?ebitda = 0, "Ongedefinieerd"^^xsd:string, ROUND((xsd:decimal(?netDebt) / xsd:decimal(?ebitda)) * 100) / 100) AS ?Waarde) 14WHERE { 15 # ================================================================ 16 # Net-debt = F Langlopende schulden + G Kortlopende schulden 17 # Berekend op peildatum (saldo + mutaties na saldo) 18 # ================================================================ 19 { 20 SELECT 21 ( (SUM(IF(?jaarrekeningpost = "F Langlopende schulden", ?bedrag, 0)) 22 + SUM(IF(?jaarrekeningpost = "G Kortlopende schulden", ?bedrag, 0)) 23 ) AS ?netDebt ) 24 WHERE { 25 { 26 SELECT ?jaarrekeningpost (SUM(?bedrag_rubriek) AS ?bedrag) 27 WHERE { 28 { 29 SELECT ?rubriek ?categorie 30 (SUM(?geld_bedrag_post) + SUM(?saldo_waarde) / COUNT(?saldo_waarde) AS ?bedrag_rubriek) 31 WHERE { 32 #BIND("2024-12-31"^^xsd:date AS ?peildatum) 33 BIND(?peildatum AS ?peildatum_argument) 34 35 { 36 { 37 ?rubriek a onz-fin:Grootboekrubriek . 38 } 39 UNION 40 { 41 ?rubriek a onz-fin:Grootboekrekening . 42 } 43 BIND(STRAFTER(STR(?rubriek), STR(onz-fin:)) AS ?rubriekCode) 44 VALUES (?prismantPrefix ?categorie) { 45 ("07" "F") 46 ("14" "G") 47 ("15" "G") 48 } 49 FILTER(STRSTARTS(?rubriekCode, ?prismantPrefix)) 50 } 51 UNION 52 { 53 VALUES (?rubriekCode ?categorie) { 54 ("BLas" "F") 55 ("BSch" "G") 56 } 57 BIND(IRI(CONCAT(STR(onz-fin:), ?rubriekCode)) AS ?rubriek) 58 { 59 ?rubriek a onz-fin:Grootboekrubriek . 60 } 61 UNION 62 { 63 ?rubriek a onz-fin:Grootboekrekening . 64 } 65 } 66 67 OPTIONAL { 68 ?rubriek onz-g:isAbout ?saldo . 69 ?saldo a onz-fin:EindSaldo ; 70 onz-fin:heeftGeldBedrag ?saldo_bedrag ; 71 onz-g:hasDate ?saldo_datum . 72 FILTER(?saldo_datum <= ?peildatum_argument) 73 FILTER NOT EXISTS { 74 ?rubriek onz-g:isAbout ?saldo2 . 75 ?saldo2 a onz-fin:EindSaldo ; 76 onz-g:hasDate ?saldo_datum2 . 77 FILTER(?saldo2 != ?saldo) 78 FILTER(?saldo_datum2 <= ?peildatum_argument) 79 FILTER( 80 ?saldo_datum2 > ?saldo_datum 81 || ( 82 ?saldo_datum2 = ?saldo_datum 83 && STR(?saldo2) > STR(?saldo) 84 ) 85 ) 86 } 87 } 88 BIND(IF(BOUND(?saldo_bedrag), ?saldo_bedrag, 0) AS ?saldo_waarde) 89 BIND(IF(BOUND(?saldo_datum), ?saldo_datum, ?unbound) AS ?begin_datum) 90 91 OPTIONAL { 92 ?grootboek_post a onz-fin:Grootboekpost ; 93 onz-g:partOf ?rubriek ; 94 onz-g:hasDate ?datum ; 95 onz-fin:heeftGeldBedrag ?geld_bedrag_temp . 96 FILTER NOT EXISTS { 97 ?grootboek_post onz-g:partOf ?specifiekereRubriek . 98 ?specifiekereRubriek onz-g:partOf+ ?rubriek . 99 } 100 FILTER(?datum <= ?peildatum_argument && (?datum > ?begin_datum || !BOUND(?begin_datum))) 101 } 102 BIND(IF(BOUND(?geld_bedrag_temp), ?geld_bedrag_temp, 0) AS ?geld_bedrag_post) 103 } 104 GROUP BY ?rubriek ?categorie 105 } 106 VALUES (?categorie ?jaarrekeningpost) { 107 ("F" "F Langlopende schulden") 108 ("G" "G Kortlopende schulden") 109 } 110 } 111 GROUP BY ?jaarrekeningpost 112 } 113 } 114 } 115 116 # ================================================================ 117 # EBITDA = P Som der bedrijfsopbrengsten - Q Som der bedrijfslasten 118 # + Q.VI Afschrijvingen op immateriële vaste activa en materiële vaste activa 119 # Berekend over meetperiode (startperiode t/m eindperiode) 120 # ================================================================ 121 { 122 SELECT ((?p_totaal - ?q_totaal + COALESCE(?q_vi, 0)) AS ?ebitda) 123 WHERE { 124 { 125 SELECT (SUM(?p_bedrag) AS ?p_totaal) (SUM(?q_bedrag) AS ?q_totaal) 126 WHERE { 127 #BIND("2024-12-31"^^xsd:date AS ?peildatum) 128 BIND( 129 IF( 130 MONTH(?peildatum) = 12 && DAY(?peildatum) = 31, 131 xsd:date(CONCAT(STR(YEAR(?peildatum)), "-01-01")), 132 xsd:date(CONCAT(STR(YEAR(?peildatum)-1), "-07-01")) 133 ) 134 AS ?startperiode) 135 BIND(?peildatum AS ?eindperiode) 136 137 ?post a onz-fin:Grootboekpost ; 138 onz-g:partOf ?rubriek ; 139 onz-g:hasDate ?datum ; 140 onz-fin:heeftGeldBedrag ?geld_bedrag . 141 142 # Match directe ouder: Grootboekrekening (RGS) of Grootboekrubriek (Prismant) 143 { 144 { ?rubriek a onz-fin:Grootboekrekening } 145 UNION 146 { ?rubriek a onz-fin:Grootboekrubriek } 147 } 148 # Anti-dubbeltelling: houd alleen het bladniveau 149 FILTER NOT EXISTS { 150 ?post onz-g:partOf ?child . 151 ?child onz-g:partOf ?rubriek . 152 FILTER(?child != ?rubriek) 153 { { ?child a onz-fin:Grootboekrekening } UNION { ?child a onz-fin:Grootboekrubriek } } 154 } 155 FILTER(STRSTARTS(STR(?rubriek), STR(onz-fin:))) 156 BIND(STRAFTER(STR(?rubriek), STR(onz-fin:)) AS ?rubriekCode) 157 158 FILTER(?datum >= ?startperiode && ?datum <= ?eindperiode) 159 160 # --- P: Som der bedrijfsopbrengsten --- 161 # Prismant: 81/82/83/89/919/920/930 162 # RGS: WOmz/WRev/WRvi/WRgr/WWvv/WNoa/WLbe/WBat/WWiv/WOvb 163 BIND( 164 IF( 165 STRSTARTS(?rubriekCode, "81") || STRSTARTS(?rubriekCode, "82") 166 || STRSTARTS(?rubriekCode, "83") || STRSTARTS(?rubriekCode, "89") 167 || STRSTARTS(?rubriekCode, "919") || STRSTARTS(?rubriekCode, "920") 168 || STRSTARTS(?rubriekCode, "930") 169 || STRSTARTS(?rubriekCode, "WOmz") || STRSTARTS(?rubriekCode, "WRev") 170 || STRSTARTS(?rubriekCode, "WRvi") || STRSTARTS(?rubriekCode, "WRgr") 171 || STRSTARTS(?rubriekCode, "WWvv") || STRSTARTS(?rubriekCode, "WNoa") 172 || STRSTARTS(?rubriekCode, "WLbe") || STRSTARTS(?rubriekCode, "WBat") 173 || STRSTARTS(?rubriekCode, "WWiv") || STRSTARTS(?rubriekCode, "WOvb"), 174 ?geld_bedrag, 0 175 ) AS ?p_bedrag 176 ) 177 178 # --- Q: Som der bedrijfslasten --- 179 # Prismant: 411-419/420/4221/4223-4225/4229/4226/480-484/423/43-47/486/489/905/911-915/921/931 180 # RGS: WKpr/WPer/WAfs/WWvi/WBwv/WBed/WOok/WKol/WVkf/WAkf 181 BIND( 182 IF( 183 STRSTARTS(?rubriekCode, "417") || STRSTARTS(?rubriekCode, "418") 184 || STRSTARTS(?rubriekCode, "411") || STRSTARTS(?rubriekCode, "412") 185 || STRSTARTS(?rubriekCode, "413") || STRSTARTS(?rubriekCode, "414") 186 || STRSTARTS(?rubriekCode, "415") || STRSTARTS(?rubriekCode, "416") 187 || STRSTARTS(?rubriekCode, "419") || STRSTARTS(?rubriekCode, "420") 188 || STRSTARTS(?rubriekCode, "4221") || STRSTARTS(?rubriekCode, "4223") 189 || STRSTARTS(?rubriekCode, "4224") || STRSTARTS(?rubriekCode, "4225") 190 || STRSTARTS(?rubriekCode, "4229") || STRSTARTS(?rubriekCode, "4226") 191 || STRSTARTS(?rubriekCode, "480") || STRSTARTS(?rubriekCode, "481") 192 || STRSTARTS(?rubriekCode, "482") || STRSTARTS(?rubriekCode, "483") 193 || STRSTARTS(?rubriekCode, "484") || STRSTARTS(?rubriekCode, "423") 194 || STRSTARTS(?rubriekCode, "43") || STRSTARTS(?rubriekCode, "44") 195 || STRSTARTS(?rubriekCode, "45") || STRSTARTS(?rubriekCode, "46") 196 || STRSTARTS(?rubriekCode, "47") || STRSTARTS(?rubriekCode, "486") 197 || STRSTARTS(?rubriekCode, "489") || STRSTARTS(?rubriekCode, "905") 198 || STRSTARTS(?rubriekCode, "911") || STRSTARTS(?rubriekCode, "912") 199 || STRSTARTS(?rubriekCode, "913") || STRSTARTS(?rubriekCode, "914") 200 || STRSTARTS(?rubriekCode, "915") || STRSTARTS(?rubriekCode, "921") 201 || STRSTARTS(?rubriekCode, "931") 202 || STRSTARTS(?rubriekCode, "WKpr") || STRSTARTS(?rubriekCode, "WPer") 203 || STRSTARTS(?rubriekCode, "WAfs") || STRSTARTS(?rubriekCode, "WWvi") 204 || STRSTARTS(?rubriekCode, "WBwv") || STRSTARTS(?rubriekCode, "WBed") 205 || STRSTARTS(?rubriekCode, "WOok") || STRSTARTS(?rubriekCode, "WKol") 206 || STRSTARTS(?rubriekCode, "WVkf") || STRSTARTS(?rubriekCode, "WAkf"), 207 ?geld_bedrag, 0 208 ) AS ?q_bedrag 209 ) 210 } 211 } 212 { 213 # --- Q.VI: Afschrijvingen (wordt teruggeteld bij EBITDA) --- 214 # Prismant: 480-484 215 # RGS: WAfs 216 SELECT (SUM(?geld_bedrag) AS ?q_vi) 217 WHERE { 218 # Bereken startperiode en eindperiode op basis van peildatum 219 BIND( 220 IF( 221 MONTH(?peildatum) = 12 && DAY(?peildatum) = 31, 222 xsd:date(CONCAT(STR(YEAR(?peildatum)), "-01-01")), 223 xsd:date(CONCAT(STR(YEAR(?peildatum)-1), "-07-01")) 224 ) 225 AS ?startperiode) 226 BIND(?peildatum AS ?eindperiode) 227 228 ?post a onz-fin:Grootboekpost ; 229 onz-g:partOf ?rubriek ; 230 onz-g:hasDate ?datum ; 231 onz-fin:heeftGeldBedrag ?geld_bedrag . 232 233 # Match directe ouder: Grootboekrekening (RGS) of Grootboekrubriek (Prismant) 234 { 235 { ?rubriek a onz-fin:Grootboekrekening } 236 UNION 237 { ?rubriek a onz-fin:Grootboekrubriek } 238 } 239 # Anti-dubbeltelling: houd alleen het bladniveau 240 FILTER NOT EXISTS { 241 ?post onz-g:partOf ?child . 242 ?child onz-g:partOf ?rubriek . 243 FILTER(?child != ?rubriek) 244 { { ?child a onz-fin:Grootboekrekening } UNION { ?child a onz-fin:Grootboekrubriek } } 245 } 246 FILTER(STRSTARTS(STR(?rubriek), STR(onz-fin:))) 247 BIND(STRAFTER(STR(?rubriek), STR(onz-fin:)) AS ?rubriekCode) 248 249 FILTER( 250 STRSTARTS(?rubriekCode, "480") || STRSTARTS(?rubriekCode, "481") 251 || STRSTARTS(?rubriekCode, "482") || STRSTARTS(?rubriekCode, "483") 252 || STRSTARTS(?rubriekCode, "484") || STRSTARTS(?rubriekCode, "WAfs") 253 ) 254 FILTER(?datum >= ?startperiode && ?datum <= ?eindperiode) 255 } 256 } 257 } 258 } 259} 260ORDER BY ?Kental 261