Стартовая страница › Форумы › Понять, как работает ПО › Формулы › Ввести в команде дату
- В этой теме 5 ответов, 2 участника, последнее обновление 1 год, 9 месяцев назад сделано
manjey73.
-
АвторСообщения
-
28.08.2024 в 17:10 #34383
manjey73УчастникСобственно нюанс. Канал Calculated/Output имеет Формат Дата.
Какие должны быть формулы для получения даты в канале?вот опять немного возвращаемся к формулам и их написанию…
Мне кажется было бы более правильным неФункция _______ Тип данных ____ Описание
SetVal(n, val) double ______Устанавливает текущее значение канала nа SetVal(n, val) ___ object __ Устанавливает текущее значение канала n
И уже в зависимости от Типа данных, Формата делать соответствующие преобразования.
29.08.2024 в 08:55 #34384
manjey73УчастникКак ввести дату в канал по аналогии с формулами
Val() — SetVal(CnlNum, Cmd) ???
Уже второй день бьюсь. При выборе входной и выходной типах Date и указанных формулах получаю ошибку «Команда отменена» в WEB
В Журнале
Невозможно отправить команду: Команда отменена — ПОЧЕМУ ?В каком виде передается Серверу выбранная дата ?
29.08.2024 в 09:28 #34389
manjey73УчастникПредупреждать надо 🙂
В общем при выставлении Формата канала и команды — Date команда отправляется в виде строки CmdDataStr.
Зачем? если DateTime прекрасно преобразуется в double
В общем в выходную формулу добавил
SetVal(CnlNum, GetDT(CmdDataStr))
где GetDt это скриптpublic double GetDT(string cmdstr) { DateTime dt = DateTime.Parse(cmdstr); return EncodeDate(dt); }з.ы. Все же подумайте над типом объект для формул, чтобы спокойно можно было пользоваться одной формулой в каналах, а система, в зависимости от типа канала или команды самостоятельно преобразовывала в нужное.
Типа SetVal(CmdNum, CmdObj) когда это не связано с цифрами, байтовыми массивами и строками. Для тех же Дат, Времени и чего там еще может добавиться.29.08.2024 в 15:32 #34404
MikhailМодераторФормат канала влияет только на отображение данных и не влияет на их хранение и расчёт.
Посмотреть, как кодирует значение команды веб-форма отправки команды можно здесь.29.08.2024 в 15:40 #34410
MikhailМодераторОт веб-формы приходит строка, поэтому как её интерпретировать, решать разработчику проекта с помощью формул.
29.08.2024 в 15:47 #34413
manjey73Участникз.ы. ну штатные механизмы ядра это ведь должны понимать. я все про то же
SetVal(CmdNum, Что-то) и мы получаем в нужном канале значение для формата Дата, если у нас есть команда на указанном канале для ввода даты, времени и т.д.а так, нажали, ввели дату, чета куда-то отправилось в неизведанные дали…
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.