Поля объектов
Список полей нужен в двух местах: в строке «Поле или ключ» у «Взять поле» и в графе свойства у условия отбора. Это подсказка, а не ограничение: имя всегда можно вписать руками, и на счёте поле читается по имени — промах даёт пустоту, а не обрыв.
Список полей склеен из двух источников
Section titled “Список полей склеен из двух источников”| Откуда | Что это | Нужен ли проект |
|---|---|---|
| Каталог типов | Свойства самой модели: InstanceName, ModbusDevice, ObjectType… Они разобраны из классов, а не выписаны руками, поэтому новое поле модели попадает в список само. | нет |
| Словарь проекта | Колонки листов, из которых собраны объекты: TAG, OBJTYPENAME, ADDR_MOD… Какие они, знает только открытый проект. | да |
Откуда колонка: пометка у пункта
Section titled “Откуда колонка: пометка у пункта”У каждой колонки в списке стоит пометка, откуда она. Это важно, потому что колонку с тем же именем объект читает из первого по этому порядку места — так же читает GAP.
| Пометка | Что означает |
|---|---|
колонка листа | Колонка листа объектов — InstanceData. |
доп. данные | Колонка дополнительных данных объекта — AdditionData. |
опции ПЛК | Колонка листа опций ПЛК. |
| SensorData | Колонка строки датчика. |
лист «имя» | Колонка дополнительного листа объекта. |
словари — брать целиком | Поле-словарь: обычным полем его не прочитать, его берут целиком. |
списки — разворачивать | Список-свойство: кадры, шаблоны, включения. Его не читают, а разворачивают в элементы. |
Четыре вида свойства
Section titled “Четыре вида свойства”От вида свойства зависит всё: что с ним можно сделать в условии, что даст «Взять поле» и чем можно продолжить схему.
| Вид | Что это | Что даёт «Взять поле» | Операции условия |
|---|---|---|---|
| значение | Читается строкой: текст, число, признак, дата, время. | текст (или число / да / нет — по типу) | По типу: у текста своё, у числа сравнения по величине, у признака только равно / не равно. |
| словарь | Набор «имя → значение»: InstanceData, SensorData. Заранее известных ключей нет. | словарь целиком. Ключ у словаря берут тем же «Взять поле», подав словарь в его вход. | Про ключи: есть ключ, значение ключа, есть такой у которого… |
| объект | Вложенный объект: ModbusDevice, настройки ПЛК. У него свои поля. | объект — и дальше с ним работают обычными объектными действиями. | Только пусто / не пусто: сравнивать объект нечем. |
| список | Список-свойство: кадры устройства, шаблоны, включения. | объекты — элементы, каждый со своими полями. Пустой список даёт ноль значений, а не одно пустое. | «есть такой, у которого» и пусто / не пусто. |
Вложенные свойства: путь через точку
Section titled “Вложенные свойства: путь через точку”Вложенные свойства показываются путём через точку: ObjectType.Name, ModbusDevice.ModbusIpAddress, ModbusDevice.Instance.AdditionData. Вглубь список идёт на три шага от объекта проекта — столько же, сколько раскрывается дерево свойств; дальше начинается внутренняя кухня моделей, которую инженер в схеме не называет.
Свойства объекта проекта
Section titled “Свойства объекта проекта”Всего 163 свойств. Это то же, что показывает разбор объекта в окне «подробнее…» и панель «Что пришло» в окне кода. Служебные свойства модели — путь к файлу, номер строки, признаки обработки — в список не идут: проекта они не описывают.
| Свойство | Вид | Тип значения | Ведёт к типу |
|---|---|---|---|
| AdditionData | словарь | словарь | — |
| AlarmLevels | список | список | alarm-levels-model (элемент) |
| CodesysModbusDevices | список | список | plc-open-channel-frame (элемент) |
| DeclaredJsm | список | список | include-model (элемент) |
| DeclaresJsm | значение | да / нет | — |
| DevStudionObjects | список | список | dev-studio-object (элемент) |
| ExtraDataSheets | список | список | key-value-pair2 (элемент) |
| FlConnections | список | список | fl-connection (элемент) |
| HmiData | список | список | hmi-model (элемент) |
| Includes | список | список | include-model (элемент) |
| InstanceData | словарь | словарь | — |
| InstanceName | значение | текст | — |
| IntegrationObjects | объект | объект | integration-objects-model |
IntegrationObjects.Channels | список | список | sheet-row-data (элемент) |
IntegrationObjects.Objects | список | список | sheet-row-data (элемент) |
| IsMapped | значение | да / нет | — |
| JsmConnections | список | список | jsm-connection (элемент) |
| ModbusDevice | объект | объект | modbus-devs-model |
ModbusDevice.AutoFrames | список | список | frame-model (элемент) |
ModbusDevice.Comment | значение | текст | — |
ModbusDevice.DeviceOriginalData | словарь | словарь | — |
ModbusDevice.Frames | список | список | frame-model (элемент) |
ModbusDevice.Instance | объект | объект | updated-instance |
ModbusDevice.Instance.AdditionData | словарь | словарь | — |
ModbusDevice.Instance.AlarmLevels | список | список | alarm-levels-model (элемент) |
ModbusDevice.Instance.CodesysModbusDevices | список | список | plc-open-channel-frame (элемент) |
ModbusDevice.Instance.CompletedAtSourcesVersion | значение | число | — |
ModbusDevice.Instance.DeclaredJsm | список | список | include-model (элемент) |
ModbusDevice.Instance.DeclaresJsm | значение | да / нет | — |
ModbusDevice.Instance.DevStudionObjects | список | список | dev-studio-object (элемент) |
ModbusDevice.Instance.ExtraDataSheets | список | список | key-value-pair2 (элемент) |
ModbusDevice.Instance.FilePath | значение | текст | — |
ModbusDevice.Instance.FlConnections | список | список | fl-connection (элемент) |
ModbusDevice.Instance.GroupInitializer | значение | текст | — |
ModbusDevice.Instance.HmiData | список | список | hmi-model (элемент) |
ModbusDevice.Instance.Includes | список | список | include-model (элемент) |
ModbusDevice.Instance.InstanceData | словарь | словарь | — |
ModbusDevice.Instance.InstanceName | значение | текст | — |
ModbusDevice.Instance.IntegrationObjects | объект | объект | integration-objects-model |
ModbusDevice.Instance.IntegrationObjects.Channels | список | список | sheet-row-data (элемент) |
ModbusDevice.Instance.IntegrationObjects.Objects | список | список | sheet-row-data (элемент) |
ModbusDevice.Instance.IsMapped | значение | да / нет | — |
ModbusDevice.Instance.JsmConnections | список | список | jsm-connection (элемент) |
ModbusDevice.Instance.ModbusDevice | объект | объект | modbus-devs-model |
ModbusDevice.Instance.ModbusDevice.AutoFrames | список | список | frame-model (элемент) |
ModbusDevice.Instance.ModbusDevice.Comment | значение | текст | — |
ModbusDevice.Instance.ModbusDevice.DeviceOriginalData | словарь | словарь | — |
ModbusDevice.Instance.ModbusDevice.Frames | список | список | frame-model (элемент) |
ModbusDevice.Instance.ModbusDevice.Instance | объект | объект | updated-instance |
ModbusDevice.Instance.ModbusDevice.L1 | значение | текст | — |
ModbusDevice.Instance.ModbusDevice.L2 | значение | текст | — |
ModbusDevice.Instance.ModbusDevice.L3 | значение | текст | — |
ModbusDevice.Instance.ModbusDevice.L4 | значение | текст | — |
ModbusDevice.Instance.ModbusDevice.MaxConnectOnOnePort | значение | число | — |
ModbusDevice.Instance.ModbusDevice.ModbusGate | значение | текст | — |
ModbusDevice.Instance.ModbusDevice.ModbusIpAddress | значение | текст | — |
ModbusDevice.Instance.ModbusDevice.ModbusIpAddressRes | значение | текст | — |
ModbusDevice.Instance.ModbusDevice.ModbusIpPort | значение | число | — |
ModbusDevice.Instance.ModbusDevice.ModbusIpPortRes | значение | число | — |
ModbusDevice.Instance.ModbusDevice.ModbusName | значение | текст | — |
ModbusDevice.Instance.ModbusDevice.ModbusTimeoutAnswer | значение | число | — |
ModbusDevice.Instance.ModbusDevice.ModbusTimeoutRequest | значение | число | — |
ModbusDevice.Instance.ModbusDevice.Mode | значение | число | — |
ModbusDevice.Instance.ModbusDevice.Name | значение | текст | — |
ModbusDevice.Instance.ModbusDevice.Num | значение | число | — |
ModbusDevice.Instance.ModbusDevice.Parity | значение | число | — |
ModbusDevice.Instance.ModbusDevice.Path | значение | текст | — |
ModbusDevice.Instance.ModbusDevice.RawFrames | список | список | key-value-pair2 (элемент) |
ModbusDevice.Instance.ModbusDevice.SensorDictData | список | список | sheet-row-data (элемент)sheet-model-data (сам список) |
ModbusDevice.Instance.ModbusDevice.SensorTypeData | список | список | key-value-pair2 (элемент) |
ModbusDevice.Instance.ModbusDevice.SerialPort | значение | число | — |
ModbusDevice.Instance.ModbusDevice.SerialPortRes | значение | число | — |
ModbusDevice.Instance.ModbusDevice.Slave | значение | число | — |
ModbusDevice.Instance.ModbusDevice.Speed | значение | число | — |
ModbusDevice.Instance.ModbusDevice.StopBits | значение | число | — |
ModbusDevice.Instance.ModbusDevice.Tag | значение | текст | — |
ModbusDevice.Instance.ModbusDevice.TimeoutAnswer | значение | число | — |
ModbusDevice.Instance.ModbusDevice.TimeoutBeforeAnswer | значение | число | — |
ModbusDevice.Instance.ModbusDevice.TimeoutBreach | значение | число | — |
ModbusDevice.Instance.ModbusDevice.Type | значение | число | — |
ModbusDevice.Instance.ModbusTemplate | значение | текст | — |
ModbusDevice.Instance.NetDiag | словарь | словарь | — |
ModbusDevice.Instance.ObjectType | список | список | sheet-row-data (элемент)resolved-object-type (сам список) |
ModbusDevice.Instance.ObjectTypeFilePath | значение | текст | — |
ModbusDevice.Instance.ObjectTypeName | значение | текст | — |
ModbusDevice.Instance.PlcName | значение | текст | — |
ModbusDevice.Instance.PlcOptions | объект | объект | plc-options-model |
ModbusDevice.Instance.PlcOptions.CLStartAddr | значение | число | — |
ModbusDevice.Instance.PlcOptions.DIStartAddr | значение | число | — |
ModbusDevice.Instance.PlcOptions.HRStartAddr | значение | число | — |
ModbusDevice.Instance.PlcOptions.IRStartAddr | значение | число | — |
ModbusDevice.Instance.PlcOptions.PlcName | значение | текст | — |
ModbusDevice.Instance.PlcOptions.PlcOptions | список | список | sheet-row-data (элемент) |
ModbusDevice.Instance.PlcOptions.StartIndex | значение | число | — |
ModbusDevice.Instance.PlcOptions.UnimodVersion | значение | текст | — |
ModbusDevice.Instance.PlcOptions.WeintekTypesPath | значение | текст | — |
ModbusDevice.Instance.PostUpdateApplied | значение | да / нет | — |
ModbusDevice.Instance.SensorData | словарь | словарь | — |
ModbusDevice.Instance.SheetName | значение | текст | — |
ModbusDevice.Instance.SourceDevStudioPath | значение | текст | — |
ModbusDevice.Instance.SourceFilePath | значение | текст | — |
ModbusDevice.Instance.SourceRow | значение | число | — |
ModbusDevice.Instance.StaburHmiData | список | список | stabur-hmi-model (элемент) |
ModbusDevice.Instance.StringList | список | список | string-list-model (элемент) |
ModbusDevice.Instance.TagChannels | список | список | weintek-tag-channel (элемент) |
ModbusDevice.Instance.Template | значение | текст | — |
ModbusDevice.Instance.Templates | список | список | object-type-template-model (элемент) |
ModbusDevice.Instance.UnresolvedConnections | список | список | unresolved-fl-connection (элемент) |
ModbusDevice.Instance.UnresolvedReported | значение | да / нет | — |
ModbusDevice.Instance.UseNewDev | значение | да / нет | — |
ModbusDevice.L1 | значение | текст | — |
ModbusDevice.L2 | значение | текст | — |
ModbusDevice.L3 | значение | текст | — |
ModbusDevice.L4 | значение | текст | — |
ModbusDevice.MaxConnectOnOnePort | значение | число | — |
ModbusDevice.ModbusGate | значение | текст | — |
ModbusDevice.ModbusIpAddress | значение | текст | — |
ModbusDevice.ModbusIpAddressRes | значение | текст | — |
ModbusDevice.ModbusIpPort | значение | число | — |
ModbusDevice.ModbusIpPortRes | значение | число | — |
ModbusDevice.ModbusName | значение | текст | — |
ModbusDevice.ModbusTimeoutAnswer | значение | число | — |
ModbusDevice.ModbusTimeoutRequest | значение | число | — |
ModbusDevice.Mode | значение | число | — |
ModbusDevice.Name | значение | текст | — |
ModbusDevice.Num | значение | число | — |
ModbusDevice.Parity | значение | число | — |
ModbusDevice.Path | значение | текст | — |
ModbusDevice.RawFrames | список | список | key-value-pair2 (элемент) |
ModbusDevice.SensorDictData | список | список | sheet-row-data (элемент)sheet-model-data (сам список) |
ModbusDevice.SensorTypeData | список | список | key-value-pair2 (элемент) |
ModbusDevice.SerialPort | значение | число | — |
ModbusDevice.SerialPortRes | значение | число | — |
ModbusDevice.Slave | значение | число | — |
ModbusDevice.Speed | значение | число | — |
ModbusDevice.StopBits | значение | число | — |
ModbusDevice.Tag | значение | текст | — |
ModbusDevice.TimeoutAnswer | значение | число | — |
ModbusDevice.TimeoutBeforeAnswer | значение | число | — |
ModbusDevice.TimeoutBreach | значение | число | — |
ModbusDevice.Type | значение | число | — |
| ModbusTemplate | значение | текст | — |
| NetDiag | словарь | словарь | — |
| ObjectType | список | список | sheet-row-data (элемент)resolved-object-type (сам список) |
| ObjectTypeName | значение | текст | — |
| PlcName | значение | текст | — |
| PlcOptions | объект | объект | plc-options-model |
PlcOptions.CLStartAddr | значение | число | — |
PlcOptions.DIStartAddr | значение | число | — |
PlcOptions.HRStartAddr | значение | число | — |
PlcOptions.IRStartAddr | значение | число | — |
PlcOptions.PlcName | значение | текст | — |
PlcOptions.PlcOptions | список | список | sheet-row-data (элемент) |
PlcOptions.StartIndex | значение | число | — |
PlcOptions.UnimodVersion | значение | текст | — |
PlcOptions.WeintekTypesPath | значение | текст | — |
| SensorData | словарь | словарь | — |
| StaburHmiData | список | список | stabur-hmi-model (элемент) |
| StringList | список | список | string-list-model (элемент) |
| TagChannels | список | список | weintek-tag-channel (элемент) |
| Template | значение | текст | — |
| Templates | список | список | object-type-template-model (элемент) |
| UnresolvedConnections | список | список | unresolved-fl-connection (элемент) |
Остальные типы и их свойства — на странице Типы объектов проекта.