Ввод String

Просмотр 12 сообщений - с 1 по 12 (из 12 всего)
  • Автор
    Записи
  • #30941
    Algomus
    Участник

    5 версия. Как оптимально записать String в БД SCADA? Нужно записать серийный номер прибора вида 12345ABC, дату установки и т.д. посредством мнемосхемы. При замене эти данные обновляются.

    #30947
    manjey73
    Участник

    думаю лучше использовать версию 6, там есть массивы. В 5-й версии последовательные каналы можно представить как массив, но придется колдовать с формулами, чтобы вообще получилось, даже не уверен в результате…

    #30948
    a80808
    Участник

    А может проще — записать все это во всплывающую подсказку пр наведении на параметр или объект? Это в редакторе схем. Я так делал…

    #30949
    manjey73
    Участник

    @a80808 а изменить тогда никак. Все же рассматривал бы 6-ю версию, там такое вроде возможно.
    Надо поставить параллельно и потренироваться, используя массивы. Скрипты все равно писать, так как чистых string переменных в Scada нет.
    Опять к ним возвращаемся уже который год 🙂

    #30950
    a80808
    Участник

    Так 8 символов вроде и в пятерке есть. И формулы вроде для преобразования string-double туда/сюда…

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

    В 5-й версии в канале можно хранить строку до 8 символов в формате ASCII.
    Можно попробовать в формуле канала управления данные команды CmdData (массив байт) преобразовать в тип double и записать во входной канал. Для преобразования используйте BitConverter.ToDouble
    Нужно смотреть побайтно, что там будет записываться, с первого раза, наверное, не получится.

    #30955
    Algomus
    Участник

    Спасибо за идеи. Буду пробовать. Надо чтоб данные мог вносить оператор.
    На 6 руки пока не доходят перейти. Проект не маленький, много графики.

    #30958
    manjey73
    Участник

    Графика вроде как пока полностью соответствует 5-й версии.

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

    Подтверждаю. Мнемосхемы пока идентичны.

    #30965
    Algomus
    Участник

    Просто в планах переверстать проект. 4 года спустя на реализацию по другому смотрю уже. А на это надо время.

    #30966
    manjey73
    Участник

    В 5-й версии будет большой проблемой сделать ввод строки больше 8-ми символов ASCII, если вообще будет возможно.
    В 6-й можно использовать массивы.

    #35257
    Algomus
    Участник

    Вышел из положения в 5 версии следующим образом:
    Т.к. любой серийник это прежде всего номер, решил буквенные данные игнорировать.
    Создал:
    ВхК (123) ДорТИ с формулой CnlValGet(123) Купр (123)
    КУпр (123) Стандартная команда с формулой CnlValSet(123)
    Номера ВхК и КУпр для удобства имеют одинаковые номера.
    Теперь однажды введенный номер отображается в текущих, сохраняется в таблице и отображается на мнемосхеме. Но при переустановке SCADA (после экспериментов с https://rapidscada.net/store/Module/ru/ScadaSchemeEditorPatch перестал корректно работать редактор схем) в текущих оказались 0. Номера пришлось вводить заново.

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