haorenhui
2023-10-30 6d6cc10d9e8e242661da7fd655dec155a09d676c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Quintiq file version 2.0
#parent: #root
Method AddMetadata (Type type, NamedValueTree nvt, NamedValue nv)
{
  TextBody:
  [*
    traverse( nv.Children(), Elements, child )
    {
      children := child.Children();
      if( children.Size() = 0 )
      {
        attr := select( LibOpt_Utility::GetTypeAncestors( type ), Elements.MdlAttrElements.astype( MdlModeledAttrElement ), a, a.Name() = child.Name() );
        
        if( isnull( attr ) )
        {
          LibSE_SettingsContainer::Exclude( nvt, child );
        }
        else
        {
          LibSE_SettingsContainer::AddMetadata( nvt, child, attr, type );
        }
      }
      else
      {
        rel := select( LibOpt_Utility::GetTypeAncestors( type ), Elements.MdlRelSideElements, rel, rel.Name() = child.Name() );
        this.AddMetadata( rel.OtherSide().Type(), nvt, child );
      }
    }
  *]
  InterfaceProperties { Accessibility: 'Module' }
}