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

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

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

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


Сообщения - dima_k

Страницы: [1] 2
1
Здравствуйте.
Использую Demo версию программы для разработки проектов.
Недавно редактор отчётов начал ругаться, что "Срок Вашей пробной версии истек".
Переустановка не помогла. Что делать?

2
move(www,iii,2);

это ли не инициализация.
Я в переменную www записал значение.
И при помощи move записал его в iii.

Вопрос в том, что переменная iii должна была стать равна "-5536" а стала 60000 - чего не должно быть

3
Код
var iii : SmallInt;
    www : word;
begin
  www:=60000;
  move(www,iii,2);
  TextWWW.Text:=IntToStr(www)+#13#10+IntToStr(iii);
end.

в данном коде в переменной iii по идее должно быть "-5536" а получается 60000.
Чего в принципе быть не может т.к. у SmallInt диапазон значений -32768…32767

4
Если в скрипт "Выполнен SQL запрос" придет пустой набор данных,
то в коде

Код
        
        DataSet.First;
        while not DataSet.EOF do begin
          .....какой-то код
          DataSet.Next;
        end;
DataSet.EOF с первого раза вернёт true или только после вызова DataSet.Next;



5
Если при помощи Ctrl+Space в открывшемся списке что-нибудь выбрать, а потом начать выделение  при помощи Shift+стрелки, то
выделяться текст начнет не с текущей позиции курсора, а с позиции, в которой была нажата комбинация Ctrl+Space.
Т.е. набран текст: varName.Va
Нажат Ctrl+Space
Из списка выбрали "Value". Курсор находится в конце "Value" (после "e").
Теперь начать выделение Shift+стрелка влево 5 раз, будет выделено поочереди "lu", "l", "", "a", "Va", хотя должно было быть
"e", "ue", lue"", "alue", "Value"

И ещё.
При сдвиге нескольких строк при помощи Tab или Shift+Tab, если курсор находится в начале строки надо было бы чтобы он не сдвигался
и не сдвигалась не выделенная строка, которая находится сразу-же за выделенным фрагментом.

6
Ошибки / Проблема в поиске
« : 06 Мая 2021, 13:47:49 »
В последней версии Вы исправили, чтобы при редактировании строки поиска сразу происходил поиск, но
если при не пустом поле поиска перейти из него в редактор, а потом при помощи мышки опять перейти в поиск,
то на экране появляется 2 курсора. 1й-в поле поиска, 2й-в редакторе кода и вместо изменений в поле поиска происходят
неадекватные изменения в редакторе кода. Лечится только переходом в скрипт, в котором поиск ничего не находит.
Если в поле поиска перейти по Ctrl+F - поведение будет нормальным.

И ещё. Поиск производится сразу после помещения курсора в поле поиска. А хотелось бы, чтобы поиск происходил только после изменения в поле поиска.

Спасибо.

7
если в строке скрипта есть комментарий в фигурной скобке {} и перед комментарием нет пробела, то предыдущее слово перед комментарием будет подсвечено как комментарий.
Т.е. в строке (после end нет пробела)
end{ else j:=0}; - end будет подсвечен зеленым цветом, но откомпилируется правильно
а в строке (после end есть пробел)
end { else j:=0}; - end будет подсвечен правильным цветом


8
Можно, но оно будет не модальным. Иногда надо, чтобы пока ответа не получено, оператор не мог бы ничего сделать. А так он может управлять элементами, находящимися за окном.
Да, собственное модальное окно сейчас создать нельзя. Возможно добавим модальные окна в будущем.


Ждем с нетерпением.

9
Можно, но оно будет не модальным. Иногда надо, чтобы пока ответа не получено, оператор не мог бы ничего сделать. А так он может управлять элементами, находящимися за окном.

10
Здравствуйте.

Предложение. Сделайте у TM_ComboBox свойство, которое вызывалось бы, когда пользователь выбрал элемент из списка.
Даже, если он выбрал уже выбранный элемент. Просто нужна реакция именно на выбор пользователя, а не на изменение
привязанной переменной.
Спасибо.

И вопрос.
При вызове ShowMessageClient можно ли как-то изменить ширину окна и шрифт сообщения?

И косячок.
В редакторе скриптов, при задании поиска не происходит скролирование к первому вхождению, если оно не на экране.
Подсветка происходит, но где оно - не понятно.
Если вхождений больше одного, то хотя бы работают клавиши перехода к следующему/предыдущему вхождению.
А если одно - придется самому скролом крутить. А скрипт длинный бывает. И строка поиска короткая бывает - это выделение и не заметишь.

11
отправил

12
Куда высылать?

13
Долго я экспериментировал.
SQL запрос, чтобы отвязавться от базы заменил на "select 1". Ошибка исчезала только при капитальном облегчении скрипта "Выполнен SQL-запрос", что меня не устраивает, т.к. там всё нужно и полезное. И к тому времени я был уверен, что это косяк компиляции скрипта.

В этом скрипте в структуре
  case DataSet.Tag of

  end;

индексы у меня идут по порядку. Косяк проявляется в индексе 230. Нашел, что если не меняя кода, просто переместить проблемный 230 индекс выше 225 или ниже 232 - косяк исчезает.

Во вложении весь скрипт.

Если надо могу весь проект отослать на email

14

Во-вторых зачем вообще в скрипте промежуточная переменная "s"? Вроде она нигде больше не используется, может просто вписать запрос в процедуру RunSQL?


я её завел, чтобы в text записать и увидеть, что же я шлю в RunSQL.
Потому-что в начале была ошибка при выполнении RunSQL.

P.S. Спасибо, что ткнули в auto increment поле.

15
Судя по имеющейся информации и т.к. приведённый Вами код всегда правильно работает на наших ПК, причина может связана с таблицей "pp", её структурой и данными  в ней.

Не думаю. К моменту выполнения
RunSQL(s,nil,231);
Переменная s уже приходит с кучей начальных кавычек. А ведь переменная s формируется буквально в предыдущей строке скрипта.

Вы, наверно суть проблемы не поняли.
Упрощаю код.

s:='select * from pp';
RunSQL(s,nil,0);  <--- вот здесь s содержит не <select * from pp> а <''''''''''''select * from pp>, что, естественно воспринимается сервером MySql как ошибка.

Если я слегка изменю код:
s:='ля-ля-ля';
s:='select * from pp';
RunSQL(s,nil,0);  <--- вот здесь s содержит <select * from pp>

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