Добрый день.
Несколько вопросов и предложений:
1. Можно ли как-то вызвать универсальный скрипт из другого скрипта?
2. У кнопок и полей есть полезное свойство подтверждение. Хотелось бы добавить такое свойство всем объектам у которых есть событие OnClick
3. Нет возможности сделать вертикальный текст. Нужно чтобы например подписать стоящие рядом вертикальные трубопроводы.
4. У объектов есть подсказки которые можно включать и отключать. Если сделать подсказки для большого числа объектов, то куда не передвинь курсор мышки постоянно показываться подсказка, закрывая тем самым интерфейс скады. Поэтому отображение подсказок приходится отключать. А вот в информации отображаемой при нажатии ПКМ на объектах нет текста подсказки. Хотелось бы добавить показ подсказки в окне информации отображаемой по ПКМ в клиенте, с выделением текста подсказки например жёлтым цветом. Или отображать подсказки при какой-нибудь зажатой клавише Alt, Shift или Ctrl.
5. Удобно, что во время редактирования часть объектов можно временно вынести за границы страницы. Но при редактировании шаблонов, окно редактора шаблона нельзя вынести за границы страницы. Окно редактора шаблонов и окон вообще лучше располагать справа или слева от области страницы, чтобы они не перекрывали рабочую область страницы
6. Поле описания переменной слишком короткое. Описание обычно длиннее, а в поле прочитать можно только 2-3 слова
7. Объединение переменных в группы в редакторе переменных удобно. Но иногда приходится менять свойства однотипных переменных в разных группах. Приходится поочередно заходить в каждую группу и редактировать поочередно по одной переменной. Хотелось бы возможность отключать группировку переменных, чтобы они отображались одним списком.
8. Поле найти при выборе переменной в свойствах объекта работает как фильтр и все переменные, не содержащие искомого текста, не отображаются. Хотелось бы такого же поведения при поиске в редакторе переменных и в редакторе скриптов.
9. Есть горячие клавиши для перехода в редактор переменных, трендов, скриптов и т.п. А для перехода в редактор страниц нет. Была бы удобна комбинация Alt-E.
10. Для создания резервной копии тоже нужна горячая клавиша (подошла бы комбинация Ctrl-Shift-S, но она уже занята) или добавить создание резервной копии в меню "Файл". Может сделать создание резервной копии по времени.
11. Меню "Пользователи" и "Переменные" состоят из одного подпункта "Редактировать". Можно сделать сразу переход в соответствующие редакторы без выбора подпункта. Еще перенести бы вызов редактора скриптов так же в главное меню. Или сделать в виде иконок справа от кнопок "Свернуть" и "Закрыть" редактор.
12. В параметры ярлыка клиента добавить ключи с именем пользователя и паролем. Т.к. при отладке приходится часто запускать клиент для проверки работы для каждого пользователя и постоянно вводить пароли.
13. После последних обновлений в редакторе отчетов нельзя изменить ширину окна свойств и окна выбора переменных проекта. Рабочая область редактора фактически занимает меньше половины экрана.
14. В одном из проектов я вместо нескольких отчетов сделал один, но на несколько страниц. При генерации проекта отключал доступность страниц. Так намного быстрее создавать отчеты, не надо в каждый проект добавлять одни и те же переменные и источники. Но заметил, что генерация многостраничных отчетов занимает очень много времени. Можно ли как-то оптимизировать генерацию многостраничных отчетов. Может для класса TM_Report добавить свойство содержащее информацию с номерами страниц, (до

включаемыми в отчет. И при генерации отчета получать данные из БД только для источников из включенных страниц. Многостраничные отчеты быстрее создавать, чем несколько отдельных.
15. В окно просмотра трендов слева от названия тренда добавить кнопки переключения следующий/предыдущий раздел и следующая/предыдущая группа.
16. Не раз уже писали на форуме, что нужна возможность редактирования шкалы переменной из скриптов.
17. С помощью универсальных скриптов можно менять цвета объектов, но для каждого цвета необходимо писать отдельный скрипт.
Можно добавить объектам свойство ColorList состоящее из массива типа Cardinal. Тогда для изменения цветов можно написать один скрипт, а в редакторе свойств объекта только выбирать нужные цвета. Так же можно добавить свойство TextList состоящее из массива String. В текст лист можно записывать различные тексты, работать с различными числовыми значениями.
// Пример как мог бы выглядеть скрипт
// по изменению цвета объекта при превышении определенного значения
begin
// Проверка, что свойства объекта заполнены
if TextList[0]=nil OR
TextColor[0]=nil OR
TextColor[1]=nil then
exit;
// Изменение цвета
if Sender is TM_Object then
with Sender as TM_Object do
If AsInt>TextList[0].AsInt then
Color := ColorList[0]
else
Color := ColorList[1];
end.