[# sjabloon berekent de huwelijksduur van de persoon in het hoofdvenster en houdt rekening met scheiding en overlijden, eventueel van de partner mocht die eerder overleden zijn. Han Kortekaas 22 mei 2025 versie 1 #] [? _SETDEF(partner) _SETDEF(persoon) _SETDEF(tmp_1) _SETDEF(tmp_2) _SETDEF(event_date) _USES(DutchDateFormat,";;;;") ?] _METAPATH([:_FILEPATH[&relatieduur\&]:],"g") _FILENAME( "relatieduur.html" ) _FILEMODE( "html", "ifNewer" ) _WRITBEGI [:_s_style_standaard:] relatieduur

Relatieduur

[:_s_bepaal_voor_de_persoon_de_laatste_relatieduur:] _RELABEGI _RELAEND _ELSE _END
[?_RELA?]?_BEGI[:_s_persoon:] heeft [&[?_RELAAMOU==1?]een relatie&]|[&relaties&] met
 gebeurtenisdatumrelatieduur
[&[?_SWAPBEGI _RELAAMOU _SWAPEND==1?]&]|[:_NUMB :][:_s_persoon:] [:_s_relatieduur:] _SETEXP(event_date,1,_SETDATE) _SETEXP(tmp_1,0,_SETSTRI )
[:_s_persoon:] heeft geen relatie.
_WRITEND :. _FUNCBEGI(_s_persoon)[:_NAMEPREF :]_SURN|[&NN&][:[?_NAMEFIRS _NAMENICK?], _NAMEFIRS[:[?_NAMENICK?]?_BEGI (_NAMENICK)_END:]:]_FUNCEND:. :. _FUNCBEGI(_s_bepaal_voor_de_persoon_de_laatste_relatieduur) _SETCLR(persoon) _SETCLR(tmp_2) _RELABEGI _LAST? _BEGI [:[?_RELASTAR([:_Y:])?][?_MARCDATE([:_Y:])?][?_REREDATE([:_Y:])?]:]? _BEGI [:_s_bepaal_gebeurtenis_datum:]_END _END _RELAEND _s_bepaal_voor_de_persoon_relatieduur _FUNCEND :. _FUNCBEGI(_s_bepaal_voor_de_persoon_relatieduur) [:[?_DEATDATE([:_Y:])?][?_DEARDATE([:_Y:])?][?_BURIDATE([:_Y:])?]:]? _BEGI[:_s_bepaal_zelf_persoon_overleden:] _ELSE[:_s_bepaal_zelf_persoon_levend:] _END _FUNCEND :. _FUNCBEGI( _s_relatieduur) :. denk er aan dat deze functie in de loop staat van _RELABEGI/END _SETCLR(partner) _SETCLR(tmp_1) _SETCLR(event_date) :. BEGIN tijdlijn is _RELASTAR _MARCDATE _REREDATE [:[?_RELASTAR([:_Y:])?][?_MARCDATE([:_Y:])?][?_REREDATE([:_Y:])?]:]? _BEGI [:_s_bepaal_gebeurtenis_datum:] _END :. EINDE tijdlijn is _DIVDATE _DEATDATE _BURIDATE _DEARDATE _CURRDATE :. Is er sprake van een echtscheiding van deze relatie [?_DIV?]? _BEGI [:_s_bepaal_scheiding_relatie:] _ELSE [:[?_DEATDATE([:_Y:])?][?_DEARDATE([:_Y:])?][?_BURIDATE([:_Y:])?]:]? _BEGI[:_s_bepaal_partner_overleden:] _ELSE[:_s_bepaal_partner_levend:] _END _END _LAST? _BEGI [?_SETEXP(event_date,1,_SETDATE)?]? _BEGI [?_SETEXP(persoon,0,_SETSTRI)>_SETEXP(partner,0,_SETSTRI)?]? _BEGI [::] _ELSE _SETADD(tmp_1,[:_SETEXP(tmp_2,0,_SETSTRI ) :] ) _END _END _END _FUNCEND :. _FUNCBEGI(_s_bepaal_gebeurtenis_datum) [?_RELASTAR([:_Y:])?]? _BEGI _SETADD(event_date, "TIJDLIJN", _RELASTAR) _ELSE [?_MARCDATE([:_Y:])?]? _BEGI _SETADD(event_date, "TIJDLIJN", _MARCDATE) _ELSE [?_REREDATE([:_Y:])?]? _BEGI _SETADD(event_date, "TIJDLIJN", _REREDATE) _END[::]_END[::]_END _FUNCEND :. _FUNCBEGI(_s_bepaal_scheiding_relatie) [?_DIVDATE([:_Y:])?]? _BEGI _SETADD(tmp_1,[:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_DIVDATE)_Y|[&0&][&jr&] _M|[&0&][&mnd&] _D|[&0&][&dgn&] :]) :]) _SETADD(partner,[:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_DIVDATE)_Y._FILL("0",4)_M._FILL("0",2)_D._FILL("0",2):]):]) :._DIALINFO([:scheiding _s_persoon _SURN _DIVDATE _SETEXP(tmp_1,0,_SETSTRI) _SETEXP(partner,0,_SETSTRI):]) _END _FUNCEND :. _FUNCBEGI(_s_bepaal_partner_overleden) [?_DEATDATE([:_Y:])?]? _BEGI _SETADD(tmp_1, [:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_DEATDATE)_Y|[&0&][&jr&] _M|[&0&][&mnd&] _D|[&0&][&dgn&] :]):]) _SETADD(partner,[:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_DEATDATE)_Y._FILL("0",4)_M._FILL("0",2)_D._FILL("0",2):]):]) _ELSE [?_DEARDATE([:_Y:])?]? _BEGI _SETADD(tmp_1,[:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_DEARDATE)_Y|[&0&][&jr&] _M|[&0&][&mnd&] _D|[&0&][&dgn&] :]):]) _SETADD(partner,[:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_DEARDATE)_Y._FILL("0",4)_M._FILL("0",2)_D._FILL("0",2):]):]) _ELSE [?_BURIDATE([:_Y:])?]? _BEGI _SETADD(tmp_1,[:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_BURIDATE)_Y|[&0&][&jr&] _M|[&0&][&mnd&] _D|[&0&][&dgn&] :]):]) _SETADD(partner,[:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_BURIDATE)_Y._FILL("0",4)_M._FILL("0",2)_D._FILL("0",2):]):]) _END[::]_END[::]_END _FUNCEND :. _FUNCBEGI(_s_bepaal_partner_levend) _SETADD(tmp_1,[:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_CURRDATE)_Y|[&0&][&jr&] _M|[&0&][&mnd&] _D|[&0&][&dgn&] :]):]) _SETADD(partner,[:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_CURRDATE)_Y._FILL("0",4)_M._FILL("0",2)_D._FILL("0",2):]):]) _FUNCEND :. _FUNCBEGI(_s_bepaal_zelf_persoon_overleden) [:[?_DEATDATE([:_Y:])?][?_DEARDATE([:_Y:])?][?_BURIDATE([:_Y:])?]:]? _BEGI [?_DEATDATE([:_Y:])?]? _BEGI _SETADD(tmp_2,[:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_DEATDATE)_Y|[&0&][&jr&] _M|[&0&][&mnd&] _D|[&0&][&dgn&] :]):]) _SETADD(persoon,[:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_DEATDATE)_Y._FILL("0",4)_M._FILL("0",2)_D._FILL("0",2):]):]) _ELSE [?_DEARDATE([:_Y:])?]? _BEGI _SETADD(tmp_2,[:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_DEARDATE)_Y|[&0&][&jr&] _M|[&0&][&mnd&] _D|[&0&][&dgn&] :]):]) _SETADD(persoon,[:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_DEARDATE)_Y._FILL("0",4)_M._FILL("0",2)_D._FILL("0",2):]):]) _ELSE [?_BURIDATE([:_Y:])?]? _BEGI _SETADD(tmp_2,[:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_BURIDATE)_Y|[&0&][&jr&] _M|[&0&][&mnd&] _D|[&0&][&dgn&] :]):]) _SETADD(persoon,[:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_BURIDATE)_Y._FILL("0",4)_M._FILL("0",2)_D._FILL("0",2):]):]) _END[::]_END[::]_END _END _FUNCEND :. _FUNCBEGI(_s_bepaal_zelf_persoon_levend) _SETADD(tmp_2,[:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_CURRDATE)_Y|[&0&][&jr&] _M|[&0&][&mnd&] _D|[&0&][&dgn&] :]):]) _SETADD(persoon,[:_SETEXP(event_date,1,_SETDATE)([:_DIFFDATE(_CURRDATE)_Y._FILL("0",4)_M._FILL("0",2)_D._FILL("0",2):]):]) _FUNCEND :. _FUNCBEGI(_s_style_standaard) _FUNCEND :. _FUNCBEGI(_s_style_font) [&[?_PREFFONTSIZE>14?]14&]|[:_PREFFONTSIZE:]:. _FUNCEND :. _FUNCBEGI(_s_table_size) [&[?_PREFFONTSIZE>14?]850&]|[&700&]:. _FUNCEND :.