Breaking changes
No edit summary
No edit summary
Line 1: Line 1:
==== 2021-Feb, Issue with ViewModelActions ====
==== 2021 February, Issue With ViewModelActions ====
It was allowed to have self in ViewModelContextActions - but self is undefined and you are supposed to use vCurrent_ (class actions has self - ViewModelActions does not)
It was possible to have self in ViewModelContextActions - but self was undefined and you were supposed to use vCurrent_ (class actions have self but ViewModelActions do not).


Sometimes it worked anyway - but often it led to strange errors and view that did not show.
Sometimes it worked anyway, but it often led to strange errors and views that did not show.


After this change ''you may get a lot of Model errors.''
After this change, ''you may get a lot of Model errors.''


The fix is to replace "self" with "vCurrent_<TheViewOwningTheAction>".
The fix is to replace "self" with "vCurrent_<TheViewOwningTheAction>".


For the simple cases this in the [[Using the model debugger to change the model itself|Designer debugger]] may help:
For simple cases, doing this in the [[Using the model debugger to change the model itself|Designer debugger]] may help:
[[File:2021-02-02 13h54 47.png|none|thumb|666x666px]]
[[File:2021-02-02 13h54 47.png|none|thumb|666x666px]]


==== MDriven Framework : we now require legal ocl in all oclColumns ====
==== MDriven Framework: We Now Require Legal OCL in All oclColumns ====
Starting from 2018 and the support for VS2019 we made changes related to efficient load that make the framework check all oclColumns.
Since 2018 and with the support for VS2019, we made changes related to efficient load that make the Framework check all oclColumns.


Prior to this point oclColumns could be ignored if no-one ever used them - but now - we assume that they are all used and thus valid. This is inline with our shift from placed handles to compound declarative ViewModels that are statically checked along with the model.
Prior to this point, oclColumns could be ignored if no one ever used them, but now, we assume that they are all used and thus valid. This is in line with our shift from placed handles to compound declarative ViewModels that are statically checked along with the model.


We will now throw exception if a n illegal ocl is found in the derivation phase.
We will now throw an exception if an illegal OCL is found in the derivation phase.


If you would rather just log this with trace you can do so by setting the new variable:  
If you would rather log this with a trace, you can do so by setting the new variable:  
  /// <summary>
  /// <summary>
  /// Set this property to false (default true) if you only want trace logging of failing derivations
  /// Set this property to false (default true) if you only want trace logging of failing derivations
Line 24: Line 24:
  AbstractDeriver.ThrowExceptionOnFailedDerivation=false
  AbstractDeriver.ThrowExceptionOnFailedDerivation=false


==== MDriven Framework : VariableHandle changed default on AddDefaultNestings and AddDefaultProperties from true to false ====
==== MDriven Framework: VariableHandle Changed Default on AddDefaultNestings and AddDefaultProperties From True to False ====
Earlier we had AddDefaultNestings and AddDefaultProperties=true as default and this was introducing extra load that was not necessarily asked for. If you want to use "self" a better option is to set AddSelfColumn on the variableHandle
Earlier, we had AddDefaultNestings and AddDefaultProperties=true as default and this introduced an extra unnecessary load. If you want to use "self", a better option is to set AddSelfColumn on the variableHandle.
[[Category:View Model]]
[[Category:View Model]]

Revision as of 06:20, 21 February 2023

2021 February, Issue With ViewModelActions

It was possible to have self in ViewModelContextActions - but self was undefined and you were supposed to use vCurrent_ (class actions have self but ViewModelActions do not).

Sometimes it worked anyway, but it often led to strange errors and views that did not show.

After this change, you may get a lot of Model errors.

The fix is to replace "self" with "vCurrent_<TheViewOwningTheAction>".

For simple cases, doing this in the Designer debugger may help:

2021-02-02 13h54 47.png

MDriven Framework: We Now Require Legal OCL in All oclColumns

Since 2018 and with the support for VS2019, we made changes related to efficient load that make the Framework check all oclColumns.

Prior to this point, oclColumns could be ignored if no one ever used them, but now, we assume that they are all used and thus valid. This is in line with our shift from placed handles to compound declarative ViewModels that are statically checked along with the model.

We will now throw an exception if an illegal OCL is found in the derivation phase.

If you would rather log this with a trace, you can do so by setting the new variable:

/// <summary>
/// Set this property to false (default true) if you only want trace logging of failing derivations
/// </summary>
AbstractDeriver.ThrowExceptionOnFailedDerivation=false

MDriven Framework: VariableHandle Changed Default on AddDefaultNestings and AddDefaultProperties From True to False

Earlier, we had AddDefaultNestings and AddDefaultProperties=true as default and this introduced an extra unnecessary load. If you want to use "self", a better option is to set AddSelfColumn on the variableHandle.

This page was edited 99 days ago on 02/10/2024. What links here