Closed basvanbemmel closed 5 months ago
De valuesUnit van de rekenregel
condition ? thenExpr : elseExpr
wordt nu bepaald door de values unit van de thenExpr
. Er wordt nog wel eerst gecontroleerd of de values unit van de elseExpr
compatible is met de values unit van de thenExpr
, waarbij een default unit als compatible wordt verondersteld.
Dit is inderdaad niet symmetrische en ik begrijp dat je dat redelijkerwijs wel zou verwachten. Ik zal een wijziging overwegen waarbij condition ? 0/0 : categorischeExpr
wel tot een resultaat met values unit van categorischeExpr
zal leiden, maar dat dan eerst door de release-test laten gaan om compatibility impact te schatten. Target: v15.
Dit geeft nu (vanaf 14.17.0) geen rode items meer:
Ik heb een meer algemene vraag dan echt een bug
Het gaat om het expression deel van een for_each_nedv statement.
De volgende code werkt
'Src_subsector_rel_org/' + Variant/name + '<>Classifications/Actor/Sector/XSubsector/V/Zon_Totaal && Src_subsector_rel_org/' + Variant/name + '<>Classifications/Actor/Sector/XSubsector/V/Wind_Totaal ? Src_subsector_rel_org/' + Variant/name + ' : 0/0',
Als ik enkel en alleen true en false om draai krijg ik een foutmelding
'Src_subsector_rel_org/' + Variant/name + '<>Classifications/Actor/Sector/XSubsector/V/Zon_Totaal && Src_subsector_rel_org/' + Variant/name + '<>Classifications/Actor/Sector/XSubsector/V/Wind_Totaal ? 0/0 : Src_subsector_rel_org/' + Variant/name,
Domain mismatch between the specified categorical ValuesUnit (/Classifications/Actor/Sector/XSubsector : UInt32) and the noncategorical calculation results ( : UInt32) (different CheckedKeyExpr)
ik moet het true deel casten om de omgedraaide situatie werkend te krijgen
'Src_subsector_rel_org/' + Variant/name + '<>Classifications/Actor/Sector/XSubsector/V/Zon_Totaal && Src_subsector_rel_org/' + Variant/name + '<>Classifications/Actor/Sector/XSubsector/V/Wind_Totaal ? (0/0)[Actor/Sector/XSubsector] : Src_subsector_rel_org/' + Variant/name,
Vraag is eigenlijk waarom enkel bij het omdraaien van het true en false deel er wel ineens gecast dient te worden. Is het true en false deel anders geprogrammeerd dan? Ik had verwacht dat het gedrag gelijk zou zijn.