Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.04.2013, 12:48   #21
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

Цитата:
но из него может получить Report Builder набор полей - для Вас это тоже ни о чем не говорит?
если я прав насчет билдера, то даже картинку покажу
Изображения
Тип файла: jpg Untitled.jpg (44.9 Кб, 141 просмотров)
eval вне форума Ответить с цитированием
Старый 23.04.2013, 13:46   #22
BioVR
Пользователь
 
Регистрация: 21.02.2011
Сообщений: 18
По умолчанию

Да, определяет, но стоит добавить параметр, который будет конкретизировать запрос, как перестает выдавать набор:
Код:
DECLARE @txt nvarchar(1000)
SET @txt='SELECT * FROM Kotex.[Анкета] where ArchiveName in (' + @FMonth + ')'
print @txt 
EXEC sp_executesql @txt
где @FMonth это запрос:
Код:
select distinct ArchiveName
from Kotex.Анкета
который успешно возвращает набор.

А при выполнении запроса в конструкторе он просит указать значение параметра @FMonth, я указываю NULL (можно ввести и реальное значение), и далее набор полей пуст.
BioVR вне форума Ответить с цитированием
Старый 23.04.2013, 14:14   #23
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

уж не знаю на каком языке говорить, буду картинками
Изображения
Тип файла: jpg Untitled.jpg (53.4 Кб, 124 просмотров)

Последний раз редактировалось eval; 23.04.2013 в 14:18.
eval вне форума Ответить с цитированием
Старый 23.04.2013, 15:17   #24
BioVR
Пользователь
 
Регистрация: 21.02.2011
Сообщений: 18
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
уж не знаю на каком языке говорить, буду картинками

Так работает, но данный параметр должен определиться заранее и выбираться в фильтре отчета, скрины ниже
Изображения
Тип файла: jpg определение периода.jpg (42.0 Кб, 122 просмотров)
Тип файла: jpg запрос на выборку.jpg (35.1 Кб, 113 просмотров)
BioVR вне форума Ответить с цитированием
Старый 23.04.2013, 15:38   #25
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

вы в профайлере посмотрите, какой реальный запрос идет в базу
eval вне форума Ответить с цитированием
Старый 23.04.2013, 15:53   #26
BioVR
Пользователь
 
Регистрация: 21.02.2011
Сообщений: 18
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
вы в профайлере посмотрите, какой реальный запрос идет в базу
В общем удалось получить набор полей, но потребовалось указать фактическое значение, чтобы RB смог получить набор. Конечно когда это 10 входящих значений это не удобно... Плюс получилось, что в фильтре можно выбрать только одно значение (это видимо из-за '''), но по другому не выходит:
Код:
DECLARE @txt nvarchar(1000)
SET @txt='SELECT * FROM Kotex.[Анкета] where ArchiveName in (''' + @FMonth + ''')'
EXEC sp_executesql @txt
Но при таком коде можно выбирать несколько значений:
Код:
SELECT * FROM Kotex.[Анкета] where ArchiveName in (@FMonth)
Кстати, если указать так
Код:
DECLARE @txt nvarchar(1000)
SET @txt='SELECT * FROM Kotex.[Анкета] where ArchiveName in (' + @FMonth + ')'
EXEC sp_executesql @txt
то @txt получается равным, например
Код:
SELECT * FROM Kotex.[Анкета] where ArchiveName in (1 волна (15.10 - 28.10.12))
- а это уже вернет ошибку по не корректному значению

Последний раз редактировалось BioVR; 23.04.2013 в 15:55.
BioVR вне форума Ответить с цитированием
Старый 23.04.2013, 16:31   #27
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

Цитата:
(это видимо из-за '''), но по другому не выходит:
вот потому я и привел вам без параметра, почувствовать так сказать разницу..
а сделать с этим можно - завернуть все в процедуру

только я еще раз, последний, говорю, дин поля - криво.
eval вне форума Ответить с цитированием
Старый 23.04.2013, 16:45   #28
BioVR
Пользователь
 
Регистрация: 21.02.2011
Сообщений: 18
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
вот потому я и привел вам без параметра, почувствовать так сказать разницу..
а сделать с этим можно - завернуть все в процедуру

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

А Вы говорите говнокод
Рабочий код, да еще и быстро работающий (обработка массива в 600,000 строк с 3 расчетными полями и полное открытие отчета за 20 сек) с учетом динамичности выбора данных.
BioVR вне форума Ответить с цитированием
Старый 23.04.2013, 17:11   #29
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

Цитата:
В принципе выходит что процедура будет возвращать примерно тот же вариант, что и у меня получился через CASE.
Это уже частности, кейс или ифы, не принципиально, процедура решает несколько другие проблемы

рабочий понятие относительное, можно к примеру в париж добраться и через пекин и на оленях, рабочий? да, только вот смысла в это мало... ну разве что экстрим понюхать, не более
eval вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
group by ts-alan C# (си шарп) 2 21.03.2013 21:22
Узнать имя листа, если известно кодовое имя tae1980 Microsoft Office Excel 3 20.03.2011 21:57
Group by and Having Progsenya SQL, базы данных 1 19.02.2011 19:18
GROUP BY Syltan SQL, базы данных 1 03.11.2009 13:39