25.03.2014, 19:00 | #1 |
Участник
|
Кастомный sql отчет
Всем привет. Работаю в BIDS, не могу запустить отчет для текущей формы. Он отображается в меню "Run on all Records", а нужно в "Run on current record". Не понимаю, что делаю не так. Добавил свойство в crm "Forms for related record types;Reports area", указал объект на котором надо отображать.
Не совсем понимаю как я могу получить CRMAF_FilteredCustomEntity, а точнее что нужно сделать чтобы crm передавала Guid текущей записи. Есть 2 запроса. 1 основной, достаёт марки автомобиля. (Select * from Filteredmarks where model = @Model) Второй запрос - запрос на заполнение параметра @Model (Select modelid from Filteredmodel AS CRMAF_Filteredmodels). Насколько я понимаю, сюда будет попадать только guid текущей формы(из за CRMAF) Запускать отчет я хочу для текущей модели машины. Объясните плиз что я делаю не так, и как правильно использовать CRMAF или может есть другие способы какие то. Заранее всем большое спасибо! CRM 2011 Последний раз редактировалось NoTimeToCry; 25.03.2014 в 19:50. |
|
25.03.2014, 20:43 | #2 |
Чайный пьяница
|
Не совсем понял зачем вам 2 запроса. Используйте один - Select * from Filteredmodel AS CRMAF_Filteredmodels
Если поменяете запрос на тот, который будет использовать предфильтрацию - удалите тот отчёт, который уже создали ранее. Создавайте с ноля не забыв указать скоп выполнение (формы) и тип записей в отношении которых будет выполняться запуск отчёта.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
За это сообщение автора поблагодарили: NoTimeToCry (1). |
25.03.2014, 20:54 | #3 |
Участник
|
Цитата:
Сообщение от a33ik
Не совсем понял зачем вам 2 запроса. Используйте один - Select * from Filteredmodel AS CRMAF_Filteredmodels
Если поменяете запрос на тот, который будет использовать предфильтрацию - удалите тот отчёт, который уже создали ранее. Создавайте с ноля не забыв указать скоп выполнение (формы) и тип записей в отношении которых будет выполняться запуск отчёта. |
|
25.03.2014, 21:27 | #4 |
Чайный пьяница
|
Когда вы загружаете отчёт в CRM, то конструкция типа
Код: Select * From FilteredAccount CRMAF_FilteredAccount Код: Select * From (Select * From FilteredAccount Where <условие, которое было сформировано в префильтрации>) В своё время когда копался в архитектуре - до этого дошёл. Просто следуйте правилам и позвольте CRM сделать за вас всю остальную работу.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
25.03.2014, 21:40 | #5 |
Участник
|
Цитата:
Сообщение от a33ik
Когда вы загружаете отчёт в CRM, то конструкция типа
Код: Select * From FilteredAccount CRMAF_FilteredAccount Код: Select * From (Select * From FilteredAccount Where <условие, которое было сформировано в префильтрации>) В своё время когда копался в архитектуре - до этого дошёл. Просто следуйте правилам и позвольте CRM сделать за вас всю остальную работу. Select * From (Select * From FilteredMarks Where model = guid) так? Прошу прощения за назойливость, просто хочу понять до конца. Большое спасибо! |
|
25.03.2014, 21:52 | #6 |
Чайный пьяница
|
Цитата:
Сообщение от NoTimeToCry
То есть получается я пишу запрос Select * From FilteredMarks AS CRMAF_FilteredMarks, указываю в crm, что запускаться надо со связанной сущности модель и crm сам подставит в условие where нужное поле? То есть в результате получится :
Select * From (Select * From FilteredMarks Where model = guid) так? Прошу прощения за назойливость, просто хочу понять до конца. Большое спасибо!
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
За это сообщение автора поблагодарили: NoTimeToCry (1). |
25.03.2014, 21:54 | #7 |
Участник
|
|
|
26.03.2014, 10:39 | #8 |
Участник
|
Я попробовал сделать так как вы сказали. Eсли запускать с марок, то он отрабатывает правильно, выводит ту марку в отчет, с карточки которой запущен отчет. А вот если запускать со связанных моделей, то отчет отображается в меню Run on All Records и в результате получаю все марки, а не ту которая связана с моделью с которой запущен отчет.
Вот запрос Select * From FilteredMarks CRMAF_FilteredMarks |
|
26.03.2014, 11:02 | #9 |
Участник
|
Цитата:
Сообщение от NoTimeToCry
Я попробовал сделать так как вы сказали. Eсли запускать с марок, то он отрабатывает правильно, выводит ту марку в отчет, с карточки которой запущен отчет. А вот если запускать со связанных моделей, то отчет отображается в меню Run on All Records и в результате получаю все марки, а не ту которая связана с моделью с которой запущен отчет.
Вот запрос Select * From FilteredMarks CRMAF_FilteredMarks |
|
|
|