Adding or removing tagged values in your model - using the model debugger
Hans Karlsen (talk | contribs) |
No edit summary |
||
Line 1: | Line 1: | ||
For background, see [[Using the model debugger to change the model itself]] | For background, see [[Using the model debugger to change the model itself]] | ||
==== To find all | ==== To find all ViewModels with a specific tag: ==== | ||
<code>Span.allInstances->select(s | s.TaggedValue->select(tv | tv.Tag.toUpper='MVC')->notEmpty)</code> | <code>Span.allInstances->select(s | s.TaggedValue->select(tv | tv.Tag.toUpper='MVC')->notEmpty)</code> | ||
==== To add the tag MVC to all | ==== To add the tag MVC to all ViewModels that don't already have it: ==== | ||
Span.allInstances->select(s | s.TaggedValue->select(tv | tv.Tag.toUpper='MVC')->isEmpty)->forEach(s | | Span.allInstances->select(s | s.TaggedValue->select(tv | tv.Tag.toUpper='MVC')->isEmpty)->forEach(s | | ||
Line 14: | Line 14: | ||
) | ) | ||
) | ) | ||
To add the tag '''Eco.BusinessDeleteRule''' to all association ends that don't already have it | To add the tag '''Eco.BusinessDeleteRule''' to all association ends that don't already have it, set it to '''NeedNotBeEmptyNoWarning:''' | ||
AssociationEnd.allInstances->select(s | s.TaggedValue->select(tv | tv.Tag='Eco.BusinessDeleteRule')->isEmpty)->forEach(s | | AssociationEnd.allInstances->select(s | s.TaggedValue->select(tv | tv.Tag='Eco.BusinessDeleteRule')->isEmpty)->forEach(s | | ||
let newtag = TaggedValue.Create in | let newtag = TaggedValue.Create in | ||
Line 23: | Line 23: | ||
) | ) | ||
) | ) | ||
[[Category:MDriven Designer]] |
Revision as of 06:55, 27 January 2023
For background, see Using the model debugger to change the model itself
To find all ViewModels with a specific tag:
Span.allInstances->select(s | s.TaggedValue->select(tv | tv.Tag.toUpper='MVC')->notEmpty)
To add the tag MVC to all ViewModels that don't already have it:
Span.allInstances->select(s | s.TaggedValue->select(tv | tv.Tag.toUpper='MVC')->isEmpty)->forEach(s | let newtag = TaggedValue.Create in ( newtag.Tag := 'MVC'; newtag.Value := 'True'; newtag.ModelElement := s ) )
To add the tag Eco.BusinessDeleteRule to all association ends that don't already have it, set it to NeedNotBeEmptyNoWarning:
AssociationEnd.allInstances->select(s | s.TaggedValue->select(tv | tv.Tag='Eco.BusinessDeleteRule')->isEmpty)->forEach(s | let newtag = TaggedValue.Create in ( newtag.Tag := 'Eco.BusinessDeleteRule'; newtag.Value := 'NeedNotBeEmptyNoWarning'; newtag.ModelElement := s ) )
This page was edited 97 days ago on 02/10/2024. What links here