Ошибка при компилировании исходного кода формул

Стартовая страница Форумы Ошибки в работе Ошибки Сервера Ошибка при компилировании исходного кода формул

Просмотр 15 сообщений - с 46 по 60 (из 63 всего)
  • Автор
    Сообщения
  • #13356
    manjey73
    Участник

    Номера каналов во Входных должны быть разными, так же как и в Выходных. Это разные базы. На 2 DO Адама у вас должны быть и Входные каналы для контроля их состояния.

    Не понимаю, почему у вас нет данных в расчетных каналах, это смотреть надо, что вы там навертели… Опять же, Может у вас в Интерфейсах что-то перепутано, после того, как вы переделывали базы.

    #13357
    Taw
    Участник



    #13358
    Taw
    Участник

    я имел в виду что номер входного канала в скаде был таким же как и номер выходного канала в скаде для АДАМ6017

    #13359
    manjey73
    Участник

    У вас каналы 220, 221 не расчетные а реальные из приборов.
    По английски они там что-то Extra channel

    Еще раз. База входных каналов от 1 до 65535 это одна база.
    Выходные так же от 1 до 65535 это другая база. Не важно, что одинаковые номера разных баз несут разные сущности, главное настройка правильная, чтобы Выходной канал одной сущности не писал во Входной канал другой сущности.

    Ну типа не писать BOOL во Float…

    То есть вы настроили Входной канал на получение Float а прописали ему Выходной канал, который пишет куда-то Int например вместо Float

    • Этот ответ был изменен 4 года, 8 месяцев назад от manjey73.
    #21521
    p2n
    Участник

    Подскажите пожалуйста — по какой причине не компилируются штатные формулы из дистрибутива? Каталог C:\WINDOWS\TEMP\%random% создается, но никаких файлов в нем нет.

    Логи сервера:
    <СИСТЕМА><ACT> Служба ScadaServerService 5.1.4.2 запущена
    <СИСТЕМА><ACT> Загружен модуль из файла D:\SCADA\ScadaServer\Mod\ModDbExport.dll
    <СИСТЕМА><ACT> Проверка существования директорий данных выполнена успешно
    <СИСТЕМА><ACT> Проверка существования файлов базы конфигурации выполнена успешно
    <СИСТЕМА><ACT> Входные каналы считаны из базы конфигурации. Количество активных каналов: 40
    <СИСТЕМА><ACT> Каналы управления считаны из базы конфигурации
    <СИСТЕМА><ACT> Пользователи считаны из базы конфигурации
    <СИСТЕМА><ACT> Формулы считаны из базы конфигурации
    <СИСТЕМА><EXC> Ошибка при компилировании исходного кода формул: Файл ‘C:\WINDOWS\TEMP\in2b30xt\in2b30xt.dll’ не найден.
    <СИСТЕМА><ERR> Нормальная работа программы невозможна

    #21525
    manjey73
    Участник

    in2b30xt.dll так определитесь, что это за dll которая вызывается из формул?

    Файл самих формул вроде как совсем в другом месте должен лежать.

    #21526
    a80808
    Участник

    Ой не хочется пугать, но на вирус похоже…

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

    Проверьте исходный код формул во входных каналах и таблице Формулы. Для каких целей используется in2b30xt.dll?
    Вариант с вирусом возможен.

    #21708
    gnumeric
    Участник

    Пишу прям от безысходности. Очень хочется разобраться как работают формулы и как использовать шаблоны формул, но нигде нет никакой информации как этим пользоваться. В справке вообще ничего нет-смотрите синтаксис С# и всё, а там этого синтаксиса на 300 страниц..если не больше.И даже если я этот синтаксис изучу, но как вставлять шаблоны, чтобы они работали-нигде информации нет. На форумах только сами шаблоны и формулы, а как их использовать и к проекту приляпать нигде не описано. Я, конечно, много не знаю, но с чего начать?? Литературы вообще нет никакой, видео тоже почти нет. Где можно прочитать нормальное описание..справку, как пользоваться формулами и их шаблонами. Направьте, пожалуйста

    #21709
    manjey73
    Участник

    @gnumeric литература это MSDN, там вполне все годно, вы просто ищите те или иные вещи, которые хотите сделать.

    На счет Scada
    1. Если вам необходимо использовать формулу внутри другой формулы в канале, то обязательно возвращайте double и конвертирование выполняйте внутри
    public double myFormula (double inParam)
    {

    return Convert.ToDouble(myPeremennaya);
    }

    Так же и подавать внутрь формулы double, так как передача значения канала является double

    Вызов формулы в канале myFormula(Val(1030))

    На форуме есть примеры различных формул, можно посмотреть их структуру, как и что делать. Если формула возвращает bool и вы точно понимаете, что внутрь другой формулы не будете ее вставлять, то можно сделать по классике

    public bool meNewFormula(int status)
    {
    return «расчетный bool»;
    }

    #21710
    a80808
    Участник

    Пишите сюда задачу, совместным разумом решим и вам понятно будет, где,как и что

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

    Лучше всего написать конкретную задачу по формулам в отдельную тему.


    @p2n
    , решилась ли проблема с компилированием формул?

    #21713
    OlegSol
    Участник

    Поймал такую же ошибку.
    Ошибка при компилировании исходного кода формул: Файл ‘C:\WINDOWS\TEMP\in2b30xt\in2b30xt.dll’ не найден.
    Сервер не запускается. Вопрос знатокам — что делать

    • Этот ответ был изменен 2 года, 2 месяца назад от OlegSol.
    #21715
    Mikhail
    Модератор

    Есть предположение, что файл создаётся средой .NET при компилировании формул, а антивирус его убивает, соответственно Сервер не стартует. Какой антивирус у Вас?

    #21717
    OlegSol
    Участник

    Виндоус Дефендер

Просмотр 15 сообщений - с 46 по 60 (из 63 всего)
  • Вы должны авторизироваться для ответа в этой теме.