26.06.2009, 15:02 | #1 |
Участник
|
Lookup-фильтр для связанного списка (grid) в форме по значению поля а не GUID объекта
Возможно несколько туманно назвал тему, задача состоит в следующем.
Есть сущность, у которой есть отношения типа N:1 с собственными реализациями.Чтобы было понятней: договоры (1) <-- дополнения к договорам (N), записи договоров и дополений однотипные и храняться в одной и той же сущности. У сущности типа договор (дополнение) есть связанная сущность платеж, связь типа N:1 (по договору или дополнению может быть несколько платежей). В форме договора в иФреймах вывожу списки связанных записей: дополнений и платежей. Но платежи, естественно, выводятся только по основному договору, а нужно в этот же список включить также и платежи по всем дополнениям. Основной атрибут - номер договора - у основной записи и связанных совпадает. Можно ли это реализовать с минимумом програмирования (на уровне клиентских скриптов)? |
|
26.06.2009, 15:31 | #2 |
Moderator
|
Малой кровью, боюсь не отделаетесь, но задача вполне решаемая. Два варианта: делать свою страницу и рисовать на ней все что угодно. И второй: взять за основу этот пример: http://mscrm4ever.blogspot.com/2008/...in-iframe.html
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
|
За это сообщение автора поблагодарили: alsherin (1). |
26.06.2009, 17:09 | #3 |
Участник
|
Своя страница - это ансаппорт?
|
|
26.06.2009, 17:12 | #4 |
Чайный пьяница
|
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
26.06.2009, 17:31 | #5 |
Участник
|
Простите за "ламерский" вопрос: на странице, которая стандартно выводит лукап грид на форму, аж одна строка:
<%@ Page language="c#" Inherits="Microsoft.Crm.Application.Pages.UserDefined.AreaPage" %> При этом эта страница принимает параметры и рисует грид. Подозреваю, что весь основной код находится где-то в другом месте. Где его искать? P.S. Visual Studio уже поставил, понял что одними Jsripts не обойтись. |
|
26.06.2009, 17:46 | #6 |
Чайный пьяница
|
Цитата:
Сообщение от alsherin
Простите за "ламерский" вопрос: на странице, которая стандартно выводит лукап грид на форму, аж одна строка:
<%@ Page language="c#" Inherits="Microsoft.Crm.Application.Pages.UserDefined.AreaPage" %> При этом эта страница принимает параметры и рисует грид. Подозреваю, что весь основной код находится где-то в другом месте. Где его искать? P.S. Visual Studio уже поставил, понял что одними Jsripts не обойтись.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
26.06.2009, 18:21 | #7 |
Участник
|
Нашел DLL, открыл object browser'ом.. все что доступно - это внешний интерфейс.. мне бы до собственно "кодебихайнд" добраться
|
|
26.06.2009, 18:49 | #8 |
Чайный пьяница
|
Пользуйтесь рефлектором.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
26.06.2009, 19:15 | #9 |
Участник
|
Буду признателен за более подробный ответ, я ведь сразу признался в своем "ламерстве"
Уже нашел, разбираюсь. Да уж, это совсем не "два пальца об асфальт", тут копать и копать однако Последний раз редактировалось alsherin; 26.06.2009 в 20:07. |
|
01.07.2009, 21:08 | #10 |
Участник
|
После поисков вернулся к этому посту (спасибо Артему): Display Fetch in IFRAME – Part 2 и реализовал с его помощью нужный механизм.
Теперь возник следующий вопрос: при выводе грида указанным методом (через расширенный запрос) набор кнопок на гриде отличается от того, который выводится через "areas.aspx". Записи можно видеть только в списке - при вызове на редактирование отркывается форма для создания новой записи. И нет кнопки "добавить существующий объект...". Подозреваю, что это как-то связано с типом грида. SDK дает описание грида только для вывода результатов Fetch-запроса. Есть где-то иформация о других типах доступных гридов? |
|
02.07.2009, 12:28 | #11 |
Moderator
|
Боюсь что эта модификация тоже не вполне поддерживаемая. Так что помощи ждать неоткуда.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
07.07.2009, 16:50 | #12 |
Участник
|
Поиски и различные попытки реализовать требуемую фнкциональность все же привели меня к необходимости писать какой-то код самому. Вот как я представляю последовательность действий:
Пишется плагин для события RetrieveMultiple и регистрируется как Pre-Event для целевой (т.е. запрашиваемой) сущности. Плагин проверяет источник события и модифицирует запрос. Далее работает сам CRM и выводит список в нужный грид. Поскольку в исходном запросе достаточно информации для его модификации, то нет необходимости в передаче внешних параметров и можно использовать стандартную aspx страницу. Поправьте, плиз, если я что-то не правильно понимаю. У меня CRM установлен на сервере, а Visual Studio на рабочем десктопе под Вистой. Подскажите по собственному опыту, как правильно сконфигурировать себе среду для разработки и отладки плагинов. SDK нужно копировать в папку проекта? P.S. Модератору - удалите плиз мою последнюю тему как дублирующую. Последний раз редактировалось alsherin; 07.07.2009 в 17:58. |
|
09.07.2009, 20:18 | #13 |
Участник
|
3 дня на изучение плагинов и написание и отладку собственного. Теперь все работает, как нужно.
Как всегда в процессе разрботки не все шло гладко и появились новые вопросы, которые буду задавать в отдельных темах, чтобы их легче было искать тем, кому могут понадобиться ответы. Всем спасибо за участие. |
|