AXForum  
Вернуться   AXForum > Microsoft Dynamics CRM > Dynamics CRM: Разработка
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 02.09.2009, 09:15   #1  
Tarasov E is offline
Tarasov E
Участник
Аватар для Tarasov E
 
100 / 11 (1) +
Регистрация: 01.09.2009
Plugin: сканирование web-ресурсов
Доброго времени суток! Только начинаю изучение CRM и столкнулся вот с какой задачей:
Написал приложение под винду, которое сканирует определенные ресурсы и выдирает интересующий контент. Теперь нужно это же реализовать, но как плагин к Microsoft Dynamics CRM.
Выглядеть все это должно примерно следующим образом:
Есть таблица, в которой отображается список субъектов для сканирования. Каждому субъекту может соответствовать несколько URL(например разделы новостей, администрации и т.п). При выборе субъекта либо про контекстному меню при нажатии мышкой, либо на тулбаре по нажатию кнопкой должно открываться окно настроек для сканирования и там же находиться кнопочка "сканировать", по нажатию на которую открывается в новом окне html страница с уже выбранным контентом.
С примером плагина тут уже разбирался, разобрался и с регистрацией плагинов. Но поскольку это мой первый плагин да и задача по мне так не особо простая, прошу совета с чего начать. Может алгоритм действий посоветуете, документацию по методам..
Заранее всем спасибо!
Старый 02.09.2009, 09:59   #2  
Bondonello is offline
Bondonello
Kostya Afendikov
Аватар для Bondonello
MCBMSS
Лучший по профессии 2009
 
510 / 106 (5) +++++
Регистрация: 06.06.2008
Адрес: Украина
Вам больше подойдет не плагин а создание своего веб-сайта.
Редактируете ISV.config и добавляете кнопку куда вам необходимо, осуществляете вызов своей aspx странички по нажатию ну а дальше свой алгоритм по сканированию web-ресурса.
Старый 02.09.2009, 10:24   #3  
Tarasov E is offline
Tarasov E
Участник
Аватар для Tarasov E
 
100 / 11 (1) +
Регистрация: 01.09.2009
Как раз таки такой вариант не подходит. Все это должно делаться в рамках CRM. Данные(URL) брать оттуда же - скажем из таблицы интересы. Да и в дальнейшем нужно будет создать бизнес процесс, который будет отслеживать изменения на всех ресурсов через определенные интервалы времени, производить сканирование по расписанию...
Старый 02.09.2009, 10:44   #4  
a33ik is offline
a33ik
Чайный пьяница
Аватар для a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,151 / 849 (35) +++++++
Регистрация: 02.07.2008
Адрес: Greenville, SC
Цитата:
Сообщение от Tarasov E Посмотреть сообщение
Как раз таки такой вариант не подходит. Все это должно делаться в рамках CRM. Данные(URL) брать оттуда же - скажем из таблицы интересы. Да и в дальнейшем нужно будет создать бизнес процесс, который будет отслеживать изменения на всех ресурсов через определенные интервалы времени, производить сканирование по расписанию...
Ничего не мешает Вам при помощи Веб Сервисов CRM получать доступ к данным CRM.

Предполагаю, что для Вас наложились понятия плагин для CRM и плагин для какой-нибудь CMS, Это абсолютно разные вещи. Плагины в CRM используются для работы с данными CRM и не имеют визуальной части как таковой. Если проводить аналогию между CRM как системой и скажем Базой Данных, то плагины для CRM - всё равно что триггеры для Базы Данных.

Добавление свои визуальніх частей возможно только при помощи кастомных ASPX страниц, так что я абсолютно солидарен с предложение Bondonello.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 02.09.2009, 10:57   #5  
Tarasov E is offline
Tarasov E
Участник
Аватар для Tarasov E
 
100 / 11 (1) +
Регистрация: 01.09.2009
То есть на данный момент наиболее оптимальным вариантом для меня будет:
создать 2 кнопки - по первой вызываются настройки сканирования в виде aspx страницы для данного URL адреса для выбранной записи из таблицы в CRM, а по другой кнопке будет запускаться алгоритм сканирования с заданными настройками для выделенного субъекта - и как срезультат - aspx страница с выделенным контентом? Забыл упомянуть, что все настройки и архив обновления для субъекта будет хранитсья в XML документе.
Если я правильно понял, то при выборе такого пути - возможно сделать автоматическое сканирование скажем каждые 24 часа?
Старый 15.09.2009, 09:13   #6  
Tarasov E is offline
Tarasov E
Участник
Аватар для Tarasov E
 
100 / 11 (1) +
Регистрация: 01.09.2009
На данном этапе вот что имею: Создал сущность, разместил там, где надо, сделал нужные кнопки отредактировав ISV.config. Далее нужно, чтобы по нажатию на кнопку сканировать открывалась aspx страница, на которой бы при загрузке выполнялся алгоритм сканирования с переданными параметрами из CRM формы(см.скриншот) и выдавался результат. Как эти параметры передать странице?
Миниатюры
Нажмите на изображение для увеличения
Название: AXforum2.JPG
Просмотров: 345
Размер:	61.7 Кб
ID:	5125  
Старый 15.09.2009, 09:32   #7  
slivka_83 is offline
slivka_83
Консультант-джедай
Аватар для slivka_83
MCBMSS
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
1,683 / 374 (16) ++++++
Регистрация: 18.12.2008
Адрес: default city
например, на кнопку вешаете скрипт, который формирует строку URL(подцепляет ей нужные поля) и использует метод window.open (http://javascript.ru/window.open) для открытия вашей страницы.
__________________
Крокодил, крокожу и буду крокодить.
Человек человеку - волк , а зомби зомби - зомби.
Экстремал и буду экстремать!
Блога
За это сообщение автора поблагодарили: Tarasov E (1).
Старый 15.09.2009, 09:46   #8  
Tarasov E is offline
Tarasov E
Участник
Аватар для Tarasov E
 
100 / 11 (1) +
Регистрация: 01.09.2009
Цитата:
Сообщение от slivka_83 Посмотреть сообщение
...который формирует строку URL(подцепляет ей нужные поля)...
Вот как раз это и интересует: как подцепить указанные поля? Пригодились бы какие-нибудь простые примеры и т.п...
Спасибо!
Старый 15.09.2009, 09:51   #9  
slivka_83 is offline
slivka_83
Консультант-джедай
Аватар для slivka_83
MCBMSS
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
1,683 / 374 (16) ++++++
Регистрация: 18.12.2008
Адрес: default city
ну как обычно это делается в CRM http://mmcrm.ru/?p=706

crmFrom.all.<имя_поля>.DataValue
__________________
Крокодил, крокожу и буду крокодить.
Человек человеку - волк , а зомби зомби - зомби.
Экстремал и буду экстремать!
Блога
Старый 15.09.2009, 09:55   #10  
slivka_83 is offline
slivka_83
Консультант-джедай
Аватар для slivka_83
MCBMSS
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
1,683 / 374 (16) ++++++
Регистрация: 18.12.2008
Адрес: default city
скриптик бы выглядел примерно так
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  
Tarasov E is offline
Tarasov E
Участник
Аватар для Tarasov E
 
100 / 11 (1) +
Регистрация: 01.09.2009
Цитата:
Сообщение от 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  
slivka_83 is offline
slivka_83
Консультант-джедай
Аватар для slivka_83
MCBMSS
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
1,683 / 374 (16) ++++++
Регистрация: 18.12.2008
Адрес: default city
Да через строку браузера на второй вопрос не могу ответить, т.к. не знаком с вашим алгоритмом (впрочем как и с aspx) В любом случаи из строки можно вытащить параметры и распарсить (возможно в вашем языке есть уже готовые функции для этого)
__________________
Крокодил, крокожу и буду крокодить.
Человек человеку - волк , а зомби зомби - зомби.
Экстремал и буду экстремать!
Блога

Последний раз редактировалось slivka_83; 15.09.2009 в 11:38.
Старый 15.09.2009, 11:38   #13  
Bondonello is offline
Bondonello
Kostya Afendikov
Аватар для Bondonello
MCBMSS
Лучший по профессии 2009
 
510 / 106 (5) +++++
Регистрация: 06.06.2008
Адрес: Украина
Цитата:
Сообщение от Tarasov E Посмотреть сообщение
Тоесть это в принципе передача параметров через строку браузера? А я смогу использовать все переданные таким образом параметры в алгоритме сканирования?
Request.Params["<имя параметра>"] по идеи так в aspx можете получить параметры из строки браузера
За это сообщение автора поблагодарили: Tarasov E (1).
Старый 15.09.2009, 15:26   #14  
Tarasov E is offline
Tarasov E
Участник
Аватар для Tarasov E
 
100 / 11 (1) +
Регистрация: 01.09.2009
Цитата:
Сообщение от slivka_83 Посмотреть сообщение
Да через строку браузера
В IE стоит ограничение на URL в 2048 символов. А передаваемые параметры - это довольно длинные строки. Есть какой-нибудь альтернативный вариант передачи параметров aspx странице, если все таки эта ситуация вызовет подобные сложности?
Старый 15.09.2009, 15:35   #15  
a33ik is offline
a33ik
Чайный пьяница
Аватар для a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,151 / 849 (35) +++++++
Регистрация: 02.07.2008
Адрес: Greenville, SC
Цитата:
Сообщение от Tarasov E Посмотреть сообщение
В IE стоит ограничение на URL в 2048 символов. А передаваемые параметры - это довольно длинные строки. Есть какой-нибудь альтернативный вариант передачи параметров aspx странице, если все таки эта ситуация вызовет подобные сложности?
Используйте POST(через формы) метод передачи данных вместо Get (через строку).

Посмотрите для примера:
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 is offline
Tarasov E
Участник
Аватар для Tarasov E
 
100 / 11 (1) +
Регистрация: 01.09.2009
Спасибо! С передаче параметров из формы более-менее разобрался! А как быть в случае если мне нужно передать эти параметры от выделенной записи при нажатии на кнопку аспх странице, не открывая формы самой записи. Ниже привел скрин
Изображения
Тип файла: bmp AXforum3.bmp (100.3 Кб, 381 просмотров)

Последний раз редактировалось Tarasov E; 21.09.2009 в 11:37.
Старый 21.09.2009, 11:55   #17  
a33ik is offline
a33ik
Чайный пьяница
Аватар для a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,151 / 849 (35) +++++++
Регистрация: 02.07.2008
Адрес: Greenville, SC
Цитата:
Сообщение от Tarasov E Посмотреть сообщение
Спасибо! С передаче параметров из формы более-менее разобрался! А как быть в случае если мне нужно передать эти параметры от выделенной записи при нажатии на кнопку аспх странице, не открывая формы самой записи. Ниже привел скрин
В JavaScript - обработчике нажатия на данную кнопку используйте примерно такой код:

Код:
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  
Tarasov E is offline
Tarasov E
Участник
Аватар для Tarasov E
 
100 / 11 (1) +
Регистрация: 01.09.2009
Должно выдаваться что-то вроде того что в прикрепленном файле?
Если да, то хорошо - идентификатор записи мы получили, как обратиться к полям этой записи?
Изображения
 
Старый 21.09.2009, 12:50   #19  
a33ik is offline
a33ik
Чайный пьяница
Аватар для a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,151 / 849 (35) +++++++
Регистрация: 02.07.2008
Адрес: Greenville, SC
Цитата:
Сообщение от Tarasov E Посмотреть сообщение
Должно выдаваться что-то вроде того что в прикрепленном файле?
Если да, то хорошо - идентификатор записи мы получили, как обратиться к полям этой записи?
Да это идентификатор одной из выделенной записей.

Продолжаем изучать SDK. Рекомендую скачать и изучить SDK.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit

Последний раз редактировалось a33ik; 21.09.2009 в 12:56.
Старый 22.09.2009, 15:01   #20  
Tarasov E is offline
Tarasov E
Участник
Аватар для Tarasov E
 
100 / 11 (1) +
Регистрация: 01.09.2009
Цитата:
Сообщение от a33ik Посмотреть сообщение
Да это идентификатор одной из выделенной записей.

Продолжаем изучать SDK. Рекомендую скачать и изучить SDK.
Что-то тяжеловато с примером...(
Неужели нельзя просто обратиться к нужным полям что-то вроде: selected[i].<имя_поля>.value как это было в первом случае, когда кнопка находилась непосредственно на самой форме?
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
haditeo: Is it possible to register different event handlers in only one assembly to be registered in Dynamics CRM Plugin ? Blog bot Dynamics CRM: Blogs 0 13.08.2009 15:05
Microsoft Dynamics CRM Team Blog: CRM Online: ‘Contact Us’ Web Form Made Easy Blog bot Dynamics CRM: Blogs 0 20.05.2009 05:05
Microsoft Dynamics CRM Team Blog: List Web Part for Microsoft Dynamics CRM 4.0 Deployment Scenarios Blog bot Dynamics CRM: Blogs 0 30.01.2009 22:05
Microsoft Dynamics CRM Team Blog: List Web Part for Microsoft Dynamics CRM 4.0: Understanding Connections Blog bot Dynamics CRM: Blogs 0 20.01.2009 02:07
Microsoft Dynamics CRM Team Blog: Announcing List Web Part for Microsoft Dynamics CRM 4.0 Blog bot Dynamics CRM: Blogs 0 18.12.2008 06:06
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 23:59.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.