Справочное руководство по TDMS 7.0 API
Example
Смотри также Отправить замечание

Glossary Item Box

Исходный текст

Option Explicit
Call TestClsProperties()

'=====================================================================
'Протестировать свойства и методы объекта TDMSClassifier.
'Для выполнения скрипта необходимы права системного администратора.
'=====================================================================
Sub TestClsProperties()
    
        Dim clsCol, cls, clsNew, RetVal, usersNum, objectsNum, SelectClassifDlg

'Получить ссылку на первый по порядку узел классификатора и его содержание (коллекцию)
    Set cls = ThisApplication.Classifiers(0)
        Set clsCol = cls.Classifiers    
        
        If cls.CanAssign <> False Then
                'Если узел присваиваемый, проверить - есть ли ссылающиеся на него 
                'пользователи или объекты
                objectsNum = cls.AssignedObjects.Count
                usersNum = cls.AssignedUsers.Count
                If usersNum > 0 Or objectsNum > 0  Then
                        MsgBox "Классификатор " & cls.Description & _ 
                        " назначен для " & usersNum & " пользователей." & Chr(13) &_
                        "На классификатор " & cls.Description & _
                        " ссылаются атрибуты " & objectsNum & " объектов.", vbInformation
                Else: MsgBox "Классификатор " & cls.Description & Chr(13) &_ 
                        "не присвоен ни одному объекту/пользователю системы.", vbInformation
                End If
        Else 
                'Если узел неприсваиваемый, скорее всего это узел-"папка",
                'содержащий подразделы. Создадим новый классификатор в его составе
                Set clsNew = clsCol.Create 
                clsNew.Description = "New classifier for test"
                clsNew.Code = "NT"
                clsNew.Comments(0) = "Тестовый комментарий"
                RetVal = MsgBox ("Создан новый классификатор " & clsNew.Description & Chr(13) & _
                    "Родительский узел: " & clsNew.Parent.Description & Chr(13) & _
                    "Корневой узел: " & clsNew.Root.Description & Chr(13) & _
                    "Системное имя (по умолчанию): " & clsNew.SysName & Chr(13) & _
                    "Дескриптор (handle): " & clsNew.Handle & Chr(13) & Chr(13) & _
                    "Удалить его из коллекции?", vbInformation + vbYesNo)
                If RetVal <> vbNo Then clsNew.Erase
        End If
End Sub
'=====================================================================

© 2023 CSoft Development. Все права защищены.