Отладка отчетов

Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.

Изменения (4)

просмотр истории страницы
h2. При выполнении отчета ошибка "not enough arguments for format string"

Такая ошибка может возникнуть если Вы сделали отчет для выполнения в [конструкторе отчетов|CarbonBilling:Конструктор отчетов] и добавили в форму параметры для заполнения ("_Параметры полей формы_"), при этом где-то в отчете допущена ошибка - одна из выше описанных.
Такая ошибка может возникнуть если в отчете допущена любая ошибка, и при этом в тексте отчета есть символ процента "%" или другие спецсимволы.
Ниже приведены несколько примеров как решить такую проблему.

h3. Параметры заполнения формы
Если Вы сделали отчет для выполнения в [конструкторе отчетов|CarbonBilling:Конструктор отчетов] и добавили в форму параметры для заполнения ("_Параметры полей формы_"), то их нужно убрать чтобы увидеть реальную ошибку отчета.

Чтобы найти проблему:
# Замените все _заполняемые_ параметры статическими, например: \\ \\
# Выполните отчет и в выводе будет описана настоящая ошибка.

h3. Символ "%"

Если где-либо в отчёте Вы используете символ процента "%", его тоже необходимо убрать:
* Возможно Вы используете оператор "LIKE" чтобы найти подходящие строки, например:
{code:title=Было}when ABONENTS.NAME like '%Васильев%'{code}
Его можно заменить на оператор "CONTAINING" получив приблизительно тот же эффект
{code:title=Стало}when ABONENTS.NAME containing 'Васильев'{code}
В любом случае, исправив основную ошибку отчета, форму LIKE можно будет вернуть.
* Еще возможный вариант - Вы вывводите символ процента чтобы обозначить что в столбце отображаются именно проценты, например:
{code:title=Было}select '3% суммы всех платежей: ' sum(OP_SUMMA)/100*3 from FINANCE_OPERATIONS where OP_TYPE=2{code}
Просто уберите из отчета символ процента и в данном отчете увидите ошибку "arithmetic exception...":
{code:title=Стало}select '3 процента суммы всех платежей: ' sum(OP_SUMMA)/100*3 from FINANCE_OPERATIONS where OP_TYPE=2{code}
После исправления основной ошибки отчета, символ процента можно будет вернуть.



h2. Я не могу найти ошибку. Что делать?
+Локализуйте проблему+. Максимально упростите запрос и постепенно добавляйте объединения таблиц, или наоборот - постепенно удаляйте поля из исходного запроса.