parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ответ

G_Z 29.09.2008 15:16 / 29.09.2008 15:26

По конкретной ошибке я вам пояснил что происходит.
Вы написали конструкцию не по синтаксису, отчего получили ошибку.

Она не зависит от того, верно вы используете класс «опросника» или нет.

Если решили использовать SQL-классы делайте обращения к базе через созданный объект, например ^oSQL.void{..} вместо ^void:sql{...}.
Будет проще.

Что до класса poll, в этой ветке его лучше не обсуждать.
Создайте новую, где по порядку распишите вопросы.
Что именно вы сделали, что не получилось.
Придёт Юджин, и как автор этого класса, возможно, вам что-то подскажет.

Вдогонку.
Пошёл поглядел этот «опросник» и увидел там тот самый кусок
^void:sql{
	UPDATE $pi_table SET status = 0 
	WHERE status = 1
	AND dt_finish IS NOT NULL 
	AND dt_finish < ^MAIN:pSQL.now[]
}
.
Я считал, что это вы его написали, а это изначально в классе.
Это ошибка.
Там по всему коду вперемешку вызовы через oSQL-объект и напрямую.

Поправить это, думаю, можно, опять же, двумя путями.
Заключить инициализацию и работу класса «опросника» в ^oSQL.server{}, чтобы sql-операторы находились внутри установленного соединения.
Или исправить все прямые вызовы (void:sql, int:sql и т.п.) на аналогичные методы oSQL-объекта (^oSQL.void{}, ^oSQL.int{} и т.д.).