Не знаю что ошибается

Стартовая страница Форумы Ошибки в работе Не знаю что ошибается

Просмотр 10 сообщений - с 1 по 10 (из 10 всего)
  • Автор
    Сообщения
  • #43424
    Sem13@nxt.ru
    Участник

    Здравствуйте.
    Канал входной/выходной, выходная формула SetVal(CnlNum, Cmd). При создании канала отображается прочерк, но ладно не так страшно. Ставлю во входной формуле 0, передаю конфигурацию, убираю 0 передаю конфигурацию, теперь команды отправляются и отображаются.
    Но сегодня увидел, что все каналы данного типа показывают прочерк, а их около 50 ти, так же каналы которые берут из них данные стали 0 вместо значения что должны были быть, например 150. Что нужно сделать что бы такое не повторилось?

    #43429
    manjey73
    Участник

    во входной формуле использовать Data() или Val() или была формула, которая проверяет и выставляет значение по умолчанию, если необходимо.
    я чаще всего Val() использую, но возможно это не всегда правильно.

    Канал так понимаю расчетный/выходной?
    Если входной, он должен получать значение от Коммуникатора, то есть должна быть привязка

    • Ответ изменён 3 недели назад пользователем manjey73.
    #43432
    Sem13@nxt.ru
    Участник

    Точно. Ошибся, расчётный/выходной, а второй канал расчётный с входной формулой Val().
    Я бы обошолся одним каналом расчётный/выходной, но он показывает прочерки и при отправке команды, но при этом во втором канале меняются данные.

    #43433
    manjey73
    Участник

    так вы в одном канале все сделайте, зачем два то?
    SetVal(CnlNum, Cmd) — это работает в канале, куда вы прописали эту формулу.

    второй канал зачем?

    • Ответ изменён 3 недели назад пользователем manjey73.
    #43435
    Sem13@nxt.ru
    Участник

    — Вот так показывает канал. Я бы рад одним каналом обойтись, но не получается.
    Расчётный/выходной выходная формула SetVal(CnlNum, Cmd).

    #43436
    manjey73
    Участник

    CnlNum предполагает запись в себя же, а не в другой канал.
    То есть в текущий, где прописана формула.

    #43437
    Sem13@nxt.ru
    Участник

    Возможно разобрался, но почему в этих каналах со временем появились прочерки не понял и повторится ли это в будущем не знаю.
    Сейчас канал такой и вроде работает, а так же отпала необходимость в двух канала.
    Расчётный/выходной №канала 238, входная формула Val(238), выходная формула SetVal(CnlNum, Cmd).

    #43438
    manjey73
    Участник

    1. Сервер через время выставляет канал недостоверным. Это одна ситуация
    2. Сервер ещё не знает, что там после перезапуска например. Это вторая ситуация.

    Может быть связано, если бд текущих данных находится на рам диске и он при перезапуска х ПК обнуляется.

    Надо смотреть по ситуации.

    #43442
    Romiros
    Участник

    Канал расчетный выходной, входная формула пустая, выходная SetData(). Так должно работать как вам нужно.

    #43446
    Mikhail
    Модератор

    Добрый день!
    Формула SetVal не устанавливает статус. Возможно, проблема в этом. Поэтому используйте SetData() как написано в предыдущем сообщении.

Просмотр 10 сообщений - с 1 по 10 (из 10 всего)
  • Для ответа в этой теме необходимо авторизоваться.