Добрый день!
Отчет на випе формируется на основании запроса, алгоритм приблизительно следующий: выполняется запрос, результаты записываются во временную таблицу, таблица выводится в Excel без использования FR.
Проблема в том, что при запуске запроса выводит только 202 строки и отчет обрезается. Сразу была мысль, что есть какой-то параметр, который ограничивает кол-во строк во временной таблице. Проверила - может содержать и 400 записей.
Затем выяснилось, что на этапе выполнения запроса, запрос возвращает 202 записи. т.е. проблема при выполнении запроса на випе. И хочу отметить, если запустить запрос в саппорте - выводит > 1000 значений.
В чем может быть проблема? может быть значения буфера, настройки Галки, параметр какой-то?
Со вторым отчетом похожая проблема, выводит мало строк да значения какие-то странные, например, наименование контрагента обрезает, склеивает с другим названием.
До переезда на новый сервер отчет формировался как положено, возможно, какие-то настройки надо подредактировать..
Кто-нибудь сталкивался с подобным?
Отчет, запрос на VIP возвращает меньшее кол-во строк
Модераторы: m0p3e, edward_K, Модераторы
-
- Сообщения: 7
- Зарегистрирован: 09 дек 2021, 18:14
Re: Отчет, запрос на VIP возвращает меньшее кол-во строк
Можете показать текст запроса в випе?
Re: Отчет, запрос на VIP возвращает меньшее кол-во строк
Добрый день.
У нас была подобная проблема на СУБД Oracle:
1. В полях типа Comp (varcahr2) хранились данные, которые не могли быть преобразованы к Comp, поэтому при выборке такие строки отсекались движком атлантиса;
2. Некоторые индексы на таблицах были битыми, помогло удаление индексов на проблемной таблице на сервере СУБД с последующим восстановлением через саппорт (Восстановление-Операции-ПроверкаТаблицБД:ПроверкаКорректностиИндексов + режим исправления ошибок).
У нас была подобная проблема на СУБД Oracle:
1. В полях типа Comp (varcahr2) хранились данные, которые не могли быть преобразованы к Comp, поэтому при выборке такие строки отсекались движком атлантиса;
2. Некоторые индексы на таблицах были битыми, помогло удаление индексов на проблемной таблице на сервере СУБД с последующим восстановлением через саппорт (Восстановление-Операции-ПроверкаТаблицБД:ПроверкаКорректностиИндексов + режим исправления ошибок).
-
- Местный житель
- Сообщения: 1844
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
- Контактная информация:
Re: Отчет, запрос на VIP возвращает меньшее кол-во строк
Запрос в VIP параметризированный , наверное.Irina1234567 писал(а):Добрый день!
И хочу отметить, если запустить запрос в саппорте - выводит > 1000 значений.
Скопипастите запрос из саппорт в VIp и выполнить попробуйте . Опять разница будет ?
-
- Сообщения: 7
- Зарегистрирован: 09 дек 2021, 18:14
Re: Отчет, запрос на VIP возвращает меньшее кол-во строк
Спасибо всем за внимание и предложенные варианты!
При записи в одно из полей временной таблицы, данные заносились не из запроса, а был цикл по таблице объявленной в view.
Если заполнять это поле вне цикла по запросу, а после формирования таблицы апдейтя значение, то проблема исчезает и выводятся нужное кол-во строк с корректными данными.
Получается, дело не в запросе, а в формировании временной таблицы в коде.
Ранее ресурс был рабочим.
Никогда такого не было, и вот снова
При записи в одно из полей временной таблицы, данные заносились не из запроса, а был цикл по таблице объявленной в view.
Если заполнять это поле вне цикла по запросу, а после формирования таблицы апдейтя значение, то проблема исчезает и выводятся нужное кол-во строк с корректными данными.
Получается, дело не в запросе, а в формировании временной таблицы в коде.
Ранее ресурс был рабочим.
Никогда такого не было, и вот снова
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
Re: Отчет, запрос на VIP возвращает меньшее кол-во строк
Null для атлантиса является исключением в большинстве случаев. И если для визуальной част это игнорируется, то при использовании этого не валидного поля есть шанс получить ошибку.
Для DSQL используйте COALESCEN, для VIP SQL - isValidAll.
Более точно можно сказать только по коду.
Для DSQL используйте COALESCEN, для VIP SQL - isValidAll.
Более точно можно сказать только по коду.