admin
2025-01-22 7e31442f0e9b07764e9c6a9680d3d4aeba5fe1de
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
32
33
Quintiq file version 2.0
#parent: #root
StaticMethod GenerateIds (NamedValue nvtNode, String parentId)
{
  Description: 'Re-generates IDs for all NVT tree nodes to avoid type index errors at process import.'
  TextBody:
  [*
    fieldId := LibWiz_NVTTools::Id();
    fieldParentId := LibWiz_NVTTools::ParentId();
    
    if( LibWiz_NVTTools::HasField( nvtNode, fieldId ) )
    {
      // Generate new node ID
      oldId := LibWiz_NVTTools::GetFieldValue( nvtNode, fieldId );
      nodeId := ifexpr( oldId <> '', LibWiz_Wizard::GenerateId(), '' );
    
      traverse( nvtNode.Children(), Elements, e,
                LibWiz_NVTTools::HasField( e, fieldId ) )
      {
        LibWiz_NVTTools::GenerateIds( e, nodeId );
      }
      
      // Set node ID
      LibWiz_NVTTools::SetFieldValue( nvtNode, fieldId, nodeId );
      
      // Update parent ID
      LibWiz_NVTTools::SetFieldValue( nvtNode, fieldParentId, parentId );
    }
    
    
    
  *]
}