Adding or removing tagged values in your model - using the model debugger
m ((username removed) (log details removed): Moving to Documentation namespace)
No edit summary
Line 1: Line 1:
For background, see: [[Using the model debugger to change the model itself|Using the model debugger to change the model itself.]]
For background, see: [[Training:Using the model debugger to change the model itself|Using the model debugger to change the model itself.]]


==== To find all ViewModels with a specific tag: ====
==== To find all ViewModels with a specific tag: ====

Revision as of 06:42, 10 January 2024

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