|  02.09.2009, 09:15 | #1 | 
| Участник | Plugin: сканирование web-ресурсов 
			
			Доброго времени суток! Только начинаю изучение CRM и столкнулся вот с какой задачей: Написал приложение под винду, которое сканирует определенные ресурсы и выдирает интересующий контент. Теперь нужно это же реализовать, но как плагин к Microsoft Dynamics CRM. Выглядеть все это должно примерно следующим образом: Есть таблица, в которой отображается список субъектов для сканирования. Каждому субъекту может соответствовать несколько URL(например разделы новостей, администрации и т.п). При выборе субъекта либо про контекстному меню при нажатии мышкой, либо на тулбаре по нажатию кнопкой должно открываться окно настроек для сканирования и там же находиться кнопочка "сканировать", по нажатию на которую открывается в новом окне html страница с уже выбранным контентом. С примером плагина тут уже разбирался, разобрался и с регистрацией плагинов. Но поскольку это мой первый плагин да и задача по мне так не особо простая, прошу совета с чего начать. Может алгоритм действий посоветуете, документацию по методам.. Заранее всем спасибо! | 
|  | 
|  02.09.2009, 09:59 | #2 | 
| Kostya Afendikov | 
			
			Вам больше подойдет не плагин а создание своего веб-сайта.  Редактируете ISV.config и добавляете кнопку куда вам необходимо, осуществляете вызов своей aspx странички по нажатию ну а дальше свой алгоритм по сканированию web-ресурса. | 
|  | 
|  02.09.2009, 10:24 | #3 | 
| Участник | 
			
			Как раз таки такой вариант не подходит. Все это должно делаться в рамках CRM. Данные(URL) брать оттуда же - скажем из таблицы интересы. Да и в дальнейшем нужно будет создать бизнес процесс, который будет отслеживать изменения на всех ресурсов через определенные интервалы времени, производить сканирование по расписанию...
		 | 
|  | 
|  02.09.2009, 10:44 | #4 | 
| Чайный пьяница | Цитата: 
		
			Сообщение от Tarasov E
			   Как раз таки такой вариант не подходит. Все это должно делаться в рамках CRM. Данные(URL) брать оттуда же - скажем из таблицы интересы. Да и в дальнейшем нужно будет создать бизнес процесс, который будет отслеживать изменения на всех ресурсов через определенные интервалы времени, производить сканирование по расписанию... Предполагаю, что для Вас наложились понятия плагин для CRM и плагин для какой-нибудь CMS, Это абсолютно разные вещи. Плагины в CRM используются для работы с данными CRM и не имеют визуальной части как таковой. Если проводить аналогию между CRM как системой и скажем Базой Данных, то плагины для CRM - всё равно что триггеры для Базы Данных. Добавление свои визуальніх частей возможно только при помощи кастомных ASPX страниц, так что я абсолютно солидарен с предложение Bondonello. 
				__________________ Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit | 
|  | 
|  02.09.2009, 10:57 | #5 | 
| Участник | 
			
			То есть на данный момент наиболее оптимальным вариантом для меня будет: создать 2 кнопки - по первой вызываются настройки сканирования в виде aspx страницы для данного URL адреса для выбранной записи из таблицы в CRM, а по другой кнопке будет запускаться алгоритм сканирования с заданными настройками для выделенного субъекта - и как срезультат - aspx страница с выделенным контентом? Забыл упомянуть, что все настройки и архив обновления для субъекта будет хранитсья в XML документе. Если я правильно понял, то при выборе такого пути - возможно сделать автоматическое сканирование скажем каждые 24 часа? | 
|  | 
|  15.09.2009, 09:13 | #6 | 
| Участник | 
			
			На данном этапе вот что имею: Создал сущность, разместил там, где надо, сделал нужные кнопки отредактировав ISV.config. Далее нужно, чтобы по нажатию на кнопку сканировать открывалась aspx страница, на которой бы при загрузке выполнялся алгоритм сканирования с переданными параметрами из CRM формы(см.скриншот) и выдавался результат. Как эти параметры передать странице?
		 | 
|  | 
|  15.09.2009, 09:32 | #7 | 
| Консультант-джедай | 
			
			например, на кнопку вешаете скрипт, который формирует строку URL(подцепляет ей нужные поля) и использует метод window.open (http://javascript.ru/window.open) для открытия вашей страницы.
		 
				__________________ Крокодил, крокожу и буду крокодить. Человек человеку - волк , а зомби зомби - зомби. Экстремал и буду экстремать!  Блога | 
|  | |
| За это сообщение автора поблагодарили: Tarasov E (1). | |
|  15.09.2009, 09:46 | #8 | 
| Участник | |
|  | 
|  15.09.2009, 09:51 | #9 | 
| Консультант-джедай | 
				__________________ Крокодил, крокожу и буду крокодить. Человек человеку - волк , а зомби зомби - зомби. Экстремал и буду экстремать!  Блога | 
|  | 
|  15.09.2009, 09:55 | #10 | 
| Консультант-джедай | 
			
			скриптик бы выглядел примерно так var params = "menubar=yes,location=yes,resizable=yes,scrollbars=yes,status=yes" window.open("http://ya.ru/?a=" + crmFrom.all.<имя_поля>.DataValue , "Yandex", params) 
				__________________ Крокодил, крокожу и буду крокодить. Человек человеку - волк , а зомби зомби - зомби. Экстремал и буду экстремать!  Блога | 
|  | 
|  15.09.2009, 11:10 | #11 | 
| Участник | Цитата: 
		
			Сообщение от slivka_83
			   скриптик бы выглядел примерно так var params = "menubar=yes,location=yes,resizable=yes,scrollbars=yes,status=yes" window.open("http://ya.ru/?a=" + crmFrom.all.<имя_поля>.DataValue , "Yandex", params) | 
|  | 
|  15.09.2009, 11:31 | #12 | 
| Консультант-джедай | 
			
			Да через строку браузера   на второй вопрос не могу ответить, т.к. не знаком с вашим алгоритмом (впрочем как и с aspx)  В любом случаи из строки можно вытащить параметры и распарсить (возможно в вашем языке есть уже готовые функции для этого) 
				__________________ Крокодил, крокожу и буду крокодить. Человек человеку - волк , а зомби зомби - зомби. Экстремал и буду экстремать!  Блога Последний раз редактировалось slivka_83; 15.09.2009 в 11:38. | 
|  | 
|  15.09.2009, 11:38 | #13 | 
| Kostya Afendikov | |
|  | |
| За это сообщение автора поблагодарили: Tarasov E (1). | |
|  15.09.2009, 15:26 | #14 | 
| Участник | |
|  | 
|  15.09.2009, 15:35 | #15 | 
| Чайный пьяница | Цитата: Посмотрите для примера: http://viralpatel.net/blogs/2008/12/...pt-jquery.html http://blog.coderlab.us/2008/09/22/u...ethod-in-ajax/ 
				__________________ Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit Последний раз редактировалось a33ik; 15.09.2009 в 15:39. | 
|  | |
| За это сообщение автора поблагодарили: Tarasov E (1). | |
|  21.09.2009, 11:35 | #16 | 
| Участник | 
			
			Спасибо! С передаче параметров из формы более-менее разобрался! А как быть в случае если мне нужно передать эти параметры от выделенной записи при нажатии на кнопку аспх странице, не открывая формы самой записи. Ниже привел скрин
		 Последний раз редактировалось Tarasov E; 21.09.2009 в 11:37. | 
|  | 
|  21.09.2009, 11:55 | #17 | 
| Чайный пьяница | Цитата: Код: var selected = getSelected('crmGrid');
for (var i = 0; i < selected.length; i++)
alert(selected[i]);
				__________________ Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit | 
|  | 
|  21.09.2009, 12:42 | #18 | 
| Участник | 
			
			Должно выдаваться что-то вроде того что в прикрепленном файле? Если да, то хорошо - идентификатор записи мы получили, как обратиться к полям этой записи? | 
|  | 
|  21.09.2009, 12:50 | #19 | 
| Чайный пьяница | Цитата: Продолжаем изучать SDK. Рекомендую скачать и изучить SDK. 
				__________________ Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit Последний раз редактировалось a33ik; 21.09.2009 в 12:56. | 
|  | 
|  22.09.2009, 15:01 | #20 | 
| Участник | Цитата: 
		
			Сообщение от a33ik
			   Да это идентификатор одной из выделенной записей. Продолжаем изучать SDK. Рекомендую скачать и изучить SDK. Неужели нельзя просто обратиться к нужным полям что-то вроде: selected[i].<имя_поля>.value как это было в первом случае, когда кнопка находилась непосредственно на самой форме? | 
|  | 
|  | 
| 
 |