А то пока ответ в духе, так не задумывалось - делай по -другому.
Вы можете делать как угодно, в том числе так, как не задумывалось, результат будет зависеть от того, что Вы напишете. Мы просто отвечаем как нужно решить задачу о которой Вы спрашиваете. Корректное готовое решение, без лишних скриптов, было описано в нашем первом ответе. Компонент поле выводит значение привязанной к нему переменной, в этом его смысл и причина по которой вместо текста Вы видите число. Скрипты к этому отношения не имеют.
Вы так и не ответили почему не отрабатывает данный конкретный скрипт
Как писали в предыдущем ответе, все скрипты отрабатывают и выполнятся как описаны. Скрипт OnInit выполняется также, как и OnShow, только в разное время. OnInit в момент запуска проекта, а OnShow в момент когда Вы открываете окно. Поэтому OnInit назначает текстовое значение в поле, затем переменная инициализируется и поле автоматически берёт числовое значение переменной. А OnShow заменяет значение на текст после инициализации переменной и вы успеваете увидеть в поле текст, который затем всё равно изменится на значение переменной. Не обязательно знать это, чтобы решить описанную Вами задачу.
Еще какие-то скрытые скрипты будут это значение возвращать?
В скаде не используются скрытые скрипты. Если Вы имеете в виду работу компонентов, то они все работают по-разному. Кнопка автоматически меняет своё состояние в зависимости от значения привязанной переменной, заслонка меняет цвет, поле отображает значение привязанной переменной и так далее. Ничего "скрытого" в этом нет.
И кстати у Вас же написано в мануале при любой возможности использовать поле вместо текста, не я это придумал...
Верно, прочтите внимательно в руководстве, для вывода
значения переменной нужно использовать поле, без использования скриптов. Для вывода текста нужно использовать компонент Текст, для вывода изображений компонент "Изображение" и т.д.
Рассмотрите использование других SCADA-систем, возможно Вам лучше подойдут системы в которых компоненты работают по-другому.