Система  ActiveFrame использует драйвер, который обрабатывает запросы, передаваемые в систему в целях применения прав просмотра и корректной связи документов. Из-за этого могут возникнуть проблемы и ошибки при исполнении. Рассмотрим часто встречающиеся ошибки:

Далее приведен пример, где появляется ошибка синтаксиса в запросе и советы по обнаружению причины этой ошибки. Ранее рассматривался отчет Example3LP, в котором в запросе рассматривалась конструкцияin($P!{DocTypes}).

Рис.8.1.  Запрос отчета Example3LP с ошибкой.


В запросе $P!{DocTypes} означает, что передаётся напрямую список отобранных при выполнении отчета значений. При запуске отчета на выполнение выдаётся ошибка.

Рис. 8.2. Ошибка при выполнении отчета.


            В журнале cm_report.log найдем сообщения, которые относятся к выполнению данного отчета. На рисунке Рис.8.3. показан фрагмент журнала. Находим сообщение:

Sql query is not valid. Probably it contains some keyword used as column name, alias etc. In such cases keywords should be wrapped in parentheses.-

"Sql-запрос недопустим. Вероятно, он содержит какое-то ключевое слово, используемое в качестве имени столбца, псевдонима и т. д. В таких случаях ключевые слова должны быть заключены в круглые скобки".

В выражении :

and rkkbase.type  in 'Письмо', 'Извещение', 'Приказ'

видно, как отобранный список подставляется в запрос. Список должен быть заключён в круглые скобки.

Рис. 8.3. Фрагмент файла cm_report.log.


Рис. 8.4. Запрос отчёта с исправленной ошибкой.


Параметр ($P!{DocTypes})заключен в круглые скобки.