27.12.2007, 10:28 | #1 |
Участник
|
Отображение списка контактов на вкладке организации
Вопрос собственно в следующем, можно ли для Организации вывести список Контактов на одной из вкладок? Есть идея сделать это через iframe, но какую ссылку указывать пока додумать не могу.
Примерный вид итоговой формы изображен на рисунке ниже |
|
27.12.2007, 12:30 | #2 |
Moderator
|
А чем не устраивают контактные лица на боковой панели?
|
|
27.12.2007, 12:58 | #3 |
Участник
|
|
|
27.12.2007, 15:56 | #4 |
Участник
|
Я подобную задачу (только вместо контактов - платежи на возможной сделке) решил с помощью фрэймика. Где фрэймик в CRM ставите не забудьте галочки - чтобы параметры в фрэймик передавались, и снять галочку ограничивающую использование сценариев.
Вобщем на фрэмик передастся Id компании. А там, в DataSet, или как вы организуете, должен быть запрос типа select тра-та-та from SWT_ MSCRM.dbo.Contact where ParentCustomerId=[параметр ID] Если не ParentCustomerId, то какой нибудь AccountId - вобщем посмотрите по базе. Если непонятно, пишите, я разьясню. |
|
28.12.2007, 07:52 | #5 |
Moderator
|
И все же это дублирование. Надо все в одном месте - пользуйте отчет "Обзор организации"
|
|
28.12.2007, 08:49 | #6 |
Участник
|
Цитата:
Сообщение от tatra
Я подобную задачу (только вместо контактов - платежи на возможной сделке) решил с помощью фрэймика. Где фрэймик в CRM ставите не забудьте галочки - чтобы параметры в фрэймик передавались, и снять галочку ограничивающую использование сценариев.
Вобщем на фрэмик передастся Id компании. А там, в DataSet, или как вы организуете, должен быть запрос типа select тра-та-та from SWT_ MSCRM.dbo.Contact where ParentCustomerId=[параметр ID] Если не ParentCustomerId, то какой нибудь AccountId - вобщем посмотрите по базе. Если непонятно, пишите, я разьясню. |
|
28.12.2007, 09:14 | #7 |
Участник
|
Фрэймик - это обычное Web приложение (Web сайт если совсем грубо). Или если короче Web-страница, на которой находится одна лишь таблица.
Организацию приема никак не нужно делать (все само делается). А извлечь параматры можно так: string Account_ID = this.Request.QueryString["id"].Substring(1, 36); (это в серверном коде ASP.Net приложения) Визуально все может выглядеть именно так как вы нарисовали (потребуется настройка Gridа). А на счет создания новых контактов в этом месте - вполне можно, проанализируйте адрес открытой странички для нового контакта (CTRL+N чтоб увидеть), и вызывайте ее с нужными параметрами (window.open('адрес URL ')) со своего фрэймика в нужный момент. А вобще, нужно иметь ввиду, что скорее всего все эти доработки будут выглядеть КУСТАРНО. И прежде чем что то делать, нужно выяснить нет ли встроенной функциональности (как правило она бывает) Последний раз редактировалось tatra; 28.12.2007 в 09:26. |
|
28.12.2007, 09:57 | #8 |
Участник
|
Цитата:
Сообщение от tatra
Фрэймик - это обычное Web приложение (Web сайт если совсем грубо). Или если короче Web-страница, на которой находится одна лишь таблица.
Организацию приема никак не нужно делать (все само делается). А извлечь параматры можно так: string Account_ID = this.Request.QueryString["id"].Substring(1, 36); (это в серверном коде ASP.Net приложения) Визуально все может выглядеть именно так как вы нарисовали (потребуется настройка Gridа). А на счет создания новых контактов в этом месте - вполне можно, проанализируйте адрес открытой странички для нового контакта (CTRL+N чтоб увидеть), и вызывайте ее с нужными параметрами (window.open('адрес URL ')) со своего фрэймика в нужный момент. А вобще, нужно иметь ввиду, что скорее всего все эти доработки будут выглядеть КУСТАРНО. И прежде чем что то делать, нужно выяснить нет ли встроенной функциональности (как правило она бывает) |
|
28.12.2007, 14:54 | #9 |
Moderator
|
Решение проблемы:
1. Создаем на форме фрейм IFRAME_con; 2. На событие загрузки формы ставим: Код: function loadArea(sArea) { var url = "areas.aspx?"; url += "oId=" + crmFormSubmit.crmFormSubmitId.value; url += "&oType=" + crmFormSubmit.crmFormSubmitObjectType.value; url += "&security=" + crmFormSubmit.crmFormSubmitSecurity.value; url += "&tabSet=" + sArea; crmForm.all.IFRAME_con.src = url; } loadArea("areaContacts"); |
|
|
За это сообщение автора поблагодарили: if_maks (1), SLK (1), Likefire (1), igla (1). |
28.12.2007, 15:16 | #10 |
Участник
|
Цитата:
Сообщение от Enot Poloskun
Решение проблемы:
1. Создаем на форме фрейм IFRAME_con; 2. На событие загрузки формы ставим: Код: function loadArea(sArea) { var url = "areas.aspx?"; url += "oId=" + crmFormSubmit.crmFormSubmitId.value; url += "&oType=" + crmFormSubmit.crmFormSubmitObjectType.value; url += "&security=" + crmFormSubmit.crmFormSubmitSecurity.value; url += "&tabSet=" + sArea; crmForm.all.IFRAME_con.src = url; } loadArea("areaContacts"); Отлично! То что нужно! Автору большое спасибо, работает как надо! Последний раз редактировалось SLK; 28.12.2007 в 15:20. |
|
28.12.2007, 15:48 | #11 |
Moderator
|
Не за что! Не забудьте простировать работает ли эта приблуда на новых формах, и как обновляется. Мне было лень.
|
|
29.12.2007, 11:41 | #12 |
Заноза в заднице
|
Подскажите, кто знает, а что за конструкция такая: "crmFormSubmit". В документации по SDK не обнаружилось упоминаний о подобной...
|
|
04.01.2008, 14:42 | #13 |
Moderator
|
Хороший вопрос. Приведенный выше код я из скриптов выпоторошил... Похоже что crmFormSubmit - некий приватный аналог crmForm. Явного определения я, конечно же, не нашел.
|
|
09.01.2008, 13:42 | #14 |
Участник
|
|
|
10.01.2008, 07:55 | #15 |
Moderator
|
Читайте SDK!!!!!!!!!!!!!!!!!!!!
var UndefinedFormType = 0; var CreateForm = 1; var UpdateForm = 2; var ReadOnlyForm = 3; var DisabledForm = 4; var QuickCreateForm = 5; var BulkEditForm = 6; if (crmForm.FormType != ReadOnlyForm) { ... } |
|
11.01.2008, 12:33 | #16 |
Заноза в заднице
|
Следующий вопрос: как бы организовать так, чтобы отображаемый в приведенном примере грид редактировался бы прямо в списке?
|
|
11.01.2008, 12:43 | #17 |
Заноза в заднице
|
В связи с процитированным возник такой вопрос: как настроить стандартный грид в студии, чтобы он выглядел аналогично гриду CRM, при создании собственной странички? По-моему, ту не всё так просто: нужно иметь в наличии библиотеку компонентов, применяемых в MS CRM, ну либо хотя бы сам грид из такой бибилиотеки... доступны ли вообще такие компоненты для использования при разработке?
|
|
11.01.2008, 14:00 | #18 |
Moderator
|
Компонентами с нами, насколько я знаю, не поделились, хотя могу и ошибаться. Для оформления можно воспользоваться таблицами стилей, поставляемых с SDK или как обычно - отработать из каталога с веб сайтом CRM
|
|
11.01.2008, 14:14 | #19 |
Заноза в заднице
|
2 Enot Poloskun: А по поводу редактирования записей прямо в списке можешь что-нибудь поведать?
|
|
11.01.2008, 16:22 | #20 |
Moderator
|
|
|