2009-12-22 3 views
0

В Crystal Reports XI Я пытаюсь создать поле выражения SQL с помощью функции Oracle 10g wm_concat (column_name). Похоже, что Crystal Reports XI неправильно обрабатывает эту функцию. Если я выполняю функцию wm_concat() в базе данных, она работает нормально, однако при попытке использовать ее в Crystal Reports она отображает пустую страницу. Интересно, что это поле находится в суб-отчете, но весь отчет отображается как пустая страница.Crystal Reports XI с функцией Oracle wm_concat()

Crystal Reports может указывать во время разработки, что эта функция действительна (это не позволяет вам сохранять выражение SQL, если оно недействительно). Таким образом, это ошибка времени выполнения. Я также тестировал различные функции Oracle, такие как TO_CHAR() и REPLACE(), и все это прекрасно работает с Crystal Report SQL Expressions. Есть идеи?

ответ

0

Я не мог заставить WM_CONCAT работать; Поскольку запросы выполняются безупречно в Oracle, но не в Crystal Reports, я бы предположил, что это что-то в Crystal Reports. В итоге мне пришлось выполнить хранимую процедуру PL/SQL и вызвать ее из Crystal Report. Я вызвал хранимую процедуру из поля выражения SQL в Crystal Reports.

3

WM_CONCAT не является встроенной функцией и не обязательно устанавливается с базой данных. Вы можете попробовать WMSYS.WM_CONCAT, так как функция фактически принадлежит схеме WMSYS.

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

+0

+1 для получения дополнительной информации о WM_CONCAT – contactmatt

Смежные вопросы