Разное поведение на разных машинах
Добавлено: 24 июн 2017, 08:43
Здравствуйте.
У нас есть приложение, которое работает на stireport 2010 года выпуска. В отчётах используются запросы к базе (oracle). В каких-то отчётах используются формы для запроса параметров, но в коде формы нет явного вызова метода Connect источников данных. Когда отчёт формируется, то источники самостоятельно подключаются к базе, несмотря на то что их свойство ConnectOnStart установлено в false. Более того, в некоторых отчётах есть источники с выключенным свойством ConnectOnStart, которые вызывают хранимки и эти источники никак в отчёте не используются. Но такое поведение наблюдается только у некоторых пользователей, т.е. у одних в отчёте есть данные, а у других нет, потому что отчёт запросы не делает.
Решили обновится до версии 2017.1.6, все источники, у которых свойство ConnectOnStart установлено в false больше не подключаются, пока явно не вызвать метод Connect. Увидел что появилось свойство Запрашивать только необходимые данные. Решил им воспользоваться, сделал простой отчёт с одним источником, у источника выключил свойство ConnectOnStart, данные из источника вывел на страницу, в результате на предпросмотре пусто. Включаем свойство "Запрашивать только необходимые данные", в предпросмотре данные появляются, хотя явного вызова метода Connect не было. Добавляем в отчёт форму, форма заполняет переменную, которая используется в запросе источника. На предпросмотре получаем ошибку, т.к. отчёт пытается выполнить запрос, а переменная ещё не инициализирована.
Что я делаю не так? Почему отчёт запрашивает данные до того, как закроется форма?
Пример отчёта во вложении
У нас есть приложение, которое работает на stireport 2010 года выпуска. В отчётах используются запросы к базе (oracle). В каких-то отчётах используются формы для запроса параметров, но в коде формы нет явного вызова метода Connect источников данных. Когда отчёт формируется, то источники самостоятельно подключаются к базе, несмотря на то что их свойство ConnectOnStart установлено в false. Более того, в некоторых отчётах есть источники с выключенным свойством ConnectOnStart, которые вызывают хранимки и эти источники никак в отчёте не используются. Но такое поведение наблюдается только у некоторых пользователей, т.е. у одних в отчёте есть данные, а у других нет, потому что отчёт запросы не делает.
Решили обновится до версии 2017.1.6, все источники, у которых свойство ConnectOnStart установлено в false больше не подключаются, пока явно не вызвать метод Connect. Увидел что появилось свойство Запрашивать только необходимые данные. Решил им воспользоваться, сделал простой отчёт с одним источником, у источника выключил свойство ConnectOnStart, данные из источника вывел на страницу, в результате на предпросмотре пусто. Включаем свойство "Запрашивать только необходимые данные", в предпросмотре данные появляются, хотя явного вызова метода Connect не было. Добавляем в отчёт форму, форма заполняет переменную, которая используется в запросе источника. На предпросмотре получаем ошибку, т.к. отчёт пытается выполнить запрос, а переменная ещё не инициализирована.
Что я делаю не так? Почему отчёт запрашивает данные до того, как закроется форма?
Пример отчёта во вложении