// last execution: Thu Sep 21 2023 13:14:37 GMT+0200 (Midden-Europese zomertijd) $contact_ids = Record\FindMany('Contact', 'lidnummer', 'asc', 'lidnummer=', 1649); //$contact_ids = array\push($contact_ids, array\at($monique, 0)); //$hans = Record\FindMany('Contact', 'lidnummer', 'asc', 'lidnummer=', 1935); //$contact_ids = array\push($contact_ids, array\at($hans, 0)); $grens_jaar = configGet('berekening-methode-1-tot-en-met'); $n = array\length($contact_ids); $i = 0; logAdd(log); logAdd(log, 'hi!'); logAdd(log, 'info', 'Contacts found: ', $n); while($i < $n, $contact_id = array\at($contact_ids, $i); $contact = Entity\Get('Contact', $contact_id); $i = $i + 1; $in_calc_key = string\concatenate('nascholingstotalen-in-berekening-voor', $contact_id); global\set('nascholingstotalen-niet-herberekenen', true); global\set($in_calc_key, true); $totalen = Entity\GetRelated($contact, 'nascholingstotalen', 10000, 'jaar', 'desc'); $m = array\length($totalen); $j = 0; logAdd(log, 'info', 'Contact :', attr($contact, 'name'), ', nascholingstotalen: ', $m); $z = 2; while($j < $m, $bepaald = 'Definitief resultaat'; ifThen($z > 0, $bepaald = 'Voorlopig resultaat'; ); $z = $z - 1; $totaal = array\at($totalen, $j); $jaar = attr($totaal, 'jaar'); $hom = attr($totaal, 'dagenHomeopathie'); $med = attr($totaal, 'dagenMedisch'); $dag = attr($totaal, 'dagen'); $homsaldo = attr($totaal, 'homeopathieSaldo'); $medsaldo = attr($totaal, 'medischSaldo'); $homsurpl = attr($totaal, 'surplusHomeopathie'); $medsurpl = attr($totaal, 'surplusMedisch'); $dagsaldo = attr($totaal, 'dagenSaldo'); $dagsurpl = attr($totaal, 'surplus'); logAdd(log, 'info', 'jaar:', attr($totaal, 'jaar'), ': hom=', $hom, ', med=', $med, ', homsaldo=', $homsaldo, ', medsaldo=', $medsaldo, ', homsurplus=', $homsurpl, ', medsurplus=', $medsurpl); $homk = toInt($homsurpl * 1000); $homi = toInt($homsurpl) * 1000; ifThenElse($homk == $homi, $hompos = 0, $hompos = 1); $medk = toInt($medsurpl * 1000); $medi = toInt($medsurpl) * 1000; ifThenElse($medk == $medi, $medpos = 0, $medpos = 1); $dagk = toInt($dagsurpl * 1000); $dagi = toInt($dagsurpl) * 1000; ifThenElse($dagk == $dagi, $dagpos = 0, $dagpos = 1); ifThenElse($homsurpl >= 0, ifThenElse($homsurpl == 0.0, $hom_dashb = "Homeopathie voldoende" , ifThenElse($homsurpl == 1.0, $dg = "dag", $dg = "dagen"); $homsurpl = number\format($homsurpl, $hompos); $hom_dashb = string\concatenate("Homeopathie surplus: ", $homsurpl, " ", $dg); ); $hom_span = "goed"; , ifThenElse($homsurpl == -1.0, $dg = "dag", $dg = "dagen"); $homsurpl = number\format(-1 * $homsurpl, $hompos); $hom_dashb = string\concatenate("Homeopathie tekort: ", $homsurpl, " ", $dg); $hom_span = "tekort"; ); ifThenElse($jaar > $grens_jaar, ifThenElse($medsurpl >= 0, ifThenElse($medsurpl == 0.0, $med_dashb = "Medisch voldoende" , ifThenElse($medsurpl == 1.0, $dg = "dag"; $pos = 0, $dg = "dagen"; $pos = 1); $medsurpl = number\format($medsurpl, $medpos); $med_dashb = string\concatenate("Medisch surplus: ", $medsurpl, " ", $dg); ); $med_span = "goed"; , ifThenElse($medsurpl == -1.0, $dg = "dag", $dg = "dagen"); $medsurpl = number\format(-1 * $medsurpl, $medpos); $med_dashb = string\concatenate("Medisch tekort: ", $medsurpl, " ", $dg); $med_span = "tekort"; ); , $med_dashb = ""; $med_span = "nvt"; ); ifThenElse($dagsurpl >= 0, $dag_dashb = "Totaal voldoende"; ifThenElse($dagsurpl == 0.0, $dag_dashb = "Totaal voldoende" , ifThenElse($dagsurpl == 1.0, $dg = "dag", $dg = "dagen"); $dagsurpl = number\format($dagsurpl, $dagpos); $dag_dashb = string\concatenate("Totaal surplus: ", $dagsurpl, " ", $dg); ); $dag_span = "goed"; , ifThenElse($dagsurpl == -1.0, $dg = "dag", $dg = "dagen"); $dagsurpl = number\format(-1 * $dagsurpl, $dagpos); $dag_dashb = string\concatenate("Totaal tekort: ", $dagsurpl, " ", $dg); $dag_span = "tekort"; ); $hom_html = string\concatenate('', $hom_dashb, ''); $med_html = string\concatenate('', $med_dashb, ''); $dag_html = string\concatenate('', $dag_dashb, ''); setAttr($totaal, 'dashboard', string\concatenate( $bepaald, $hom_html, $med_html, $dag_html ) ); Entity\Save($totaal); $j = $j + 1; ); global\unset('nascholingstotalen-niet-herberekenen'); global\unset($in_calc_key); );