Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - shaman

Страницы: [1]
1
Ваши вопросы / Re: Список он же ComboBox V2
« : 09 Июня 2020, 10:39:13 »
Здравствуйте.

Видимо равенство не выполняется, т.к. Вы сравниваете разные типы строк UTF8String и string.
Нет, это не сработало. Результат точно такой же, с латиницей все работает как надо, а русский текст не фильтруется.


Исключить дублирующие записи можно следующим SQL-запросом:
А вот это сработало! pan2000, спасибо! И код лаконичней и время выполнения скрипта меньше.

2
Ваши вопросы / Re: Список он же ComboBox V2
« : 08 Июня 2020, 15:21:54 »
Добрый день. Дабы не плодить темы напишу здесь.
Идея абсолютно та же. Есть таблица, содержимым одного из столбцов необходимо заполнить ComboBox.
Основа алгоритма взята из поста №1, но доработано до такой логики: Мы не просто добавляем очередной пункт в ComboBox, а сравниваем содержимое очередной ячейки таблицы с уже существующими пунктами в ComboBox, т.к. содержимое ячеек в таблице может повторяться.
Сам запрос:
Код: (delphi)
RunSQL('SELECT `ProdName` FROM `archive` ', ComboBox3, 10);

Его обработка:
Код: (delphi)
if DataSet.Tag = 10 then
begin
  with DataSet.Sender as TM_ComboBox do
  begin
    Clear;                                     // очистить список
    AddItem(DataSet.Fields[0].AsStr);
    DataSet.Next;
    while not DataSet.EOF do
    begin
      flag := true;
      for i:= 0 to ItemsCount do
        if Items[i].Text = DataSet.Fields[0].AsUTF8String then
          flag := false;

      if flag then AddItem(DataSet.Fields[0].AsStr);        // заполнение списка
      DataSet.Next;                            // следующая запись
    end;
    Enabled := not DataSet.IsEmpty;            // список заполнен, разрешить доступ для непустого списка
  end;
end;
             
Все работает, за исключением одного момента, если ячейка таблицы содержит строку на русском языке, равенство Items.Text = DataSet.Fields[0].AsUTF8String не выполняется, хотя со строками с латинскими буквами все работает прекрасно. Подскажите, куда смотреть?

3
Спасибо огромное! Это действительно решило проблему. Сервер у меня 2.3.6.3, а на рабочей машине для отладки стоит 2.3.6.9 (Time limit)
Поставил ту же версию и все заработало.

4
Добрый день. Столкнулся с проблемой, есть основная офисная локальная сеть предприятия и есть локальная сеть в которой находится сервер Simple-Scada и OPC сервера оборудования. Сети разделены маршрутизатором. Задача, предоставить доступ к серверу за маршрутизатором, клиентам из офисной локальной сети.
На данный момент проброшены порты 8750, 8757 и для web доступа 8755.  Web доступ работает превосходно, вопросов нет, а вот с клиентом не могу разобраться. Клиент находит сервер, видит проекты на сервере и пытается подключится к серверу. Останавливается на "Статус: проект загружается (9%)...;" и висит так какое-то время. Далее, видимо по таймауту перестает подключаться. Вопрос, возможно необходимы еще какие-то порты для нормальной работы? Или я что то делаю не так?

Страницы: [1]