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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 10.03.2009, 16:54   #1  
xany is offline
xany
Участник
 
57 / 14 (1) ++
Регистрация: 03.03.2009
Адрес: Беларусь, Минск
Добавление ссылки на объект в нотификациях
Привет. Есть задача. Во всех нотификациях, которые система отправляет пользователям, в письмах должна быть ссылка на объект.
Фактически та ссылка, которая генерируются если воспользоваться стандартной функцией Send shortcut.
Никто с такой задачей не сталкивался?
Система MS CRM 4.0.
Старый 10.03.2009, 17:39   #2  
AlekseyS is offline
AlekseyS
Участник
 
77 / 13 (1) ++
Регистрация: 30.07.2008
Адрес: Киев
Тема была на сайте + есть примеры на http://stunnware.com/
Старый 10.03.2009, 18:30   #3  
IgorF is offline
IgorF
Учаснег
Аватар для IgorF
Ex AND Project
Лучший по профессии 2011
Лучший по профессии 2009
 
307 / 37 (2) +++
Регистрация: 23.07.2007
Адрес: Поребрик сити
http://www.crmworld.ru/?p=27
__________________
http://about.me/fedorovigor
Старый 18.03.2009, 14:04   #4  
maxim_ufa is offline
maxim_ufa
Участник
 
27 / 16 (1) ++
Регистрация: 03.07.2008
Есть универсальное воркфлоу, возможно уже и обсуждалось на форуме, извиняйте, если повторюсь (решение из Working With Microsoft Dynamics CRM 4.0)
Создаем workflow activity library проект под .Net Framework 3 со следующим кодом
Код:
using System;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Collections;
using System.Drawing;
using System.Workflow.ComponentModel;
using System.Workflow.ComponentModel.Design;
using System.Workflow.ComponentModel.Compiler;
using System.Workflow.ComponentModel.Serialization;
using System.Workflow.Runtime;
using System.Workflow.Activities;
using System.Workflow.Activities.Rules;
using Microsoft.Crm.Sdk;
using Microsoft.Crm.Sdk.Query;
using Microsoft.Crm.SdkTypeProxy;
using Microsoft.Crm.Workflow;


namespace WorkingWithDynamicsCrm4.Workflow
{
    [CrmWorkflowActivity("Url Builder", "Utilities")]
    public partial class UrlBuilder : SequenceActivity
    {
        // Override this method with our custom logic
        protected override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext)
        {
            //Get context
            IContextService contextService = (IContextService)executionContext.GetService(typeof(IContextService));
            IWorkflowContext ctx = contextService.Context;

            // Get the record id
            Guid id = ctx.PrimaryEntityId;

            // Configure the Url and pass back to the output parameter
            string fullUrl = this.RecordUrl = this.Url + id;
            this.RecordUrl = string.Format(@"<a href=""{0}"">{0}</a>", fullUrl);

            return base.Execute(executionContext);
        }

        // Allow the user to set the Url wiht this input parameter
        public static DependencyProperty UrlProperty = DependencyProperty.Register("Url", typeof(string), typeof(UrlBuilder));
        [CrmInput("Url")]
        public string Url
        {
            get
            {
                return (string)base.GetValue(UrlProperty);
            }
            set
            {
                base.SetValue(UrlProperty, value);
            }
        }

        // Returns the final record Url to the workflow rule for use
        public static DependencyProperty RecordUrlProperty = DependencyProperty.Register("RecordUrl", typeof(string), typeof(UrlBuilder));
        [CrmOutput("RecordUrl")]
        public string RecordUrl
        {
            get
            {
                return (string)base.GetValue(RecordUrlProperty);
            }
            set
            {
                base.SetValue(RecordUrlProperty, value);
            }
        }
    }
}
При регистрации используем
Код:
 <Solution SourceType="0" Assembly="\Source\WorkingWithDynamicsCrm4.Workflow.dll">

        <!--
        Tag: WorkflowTypes
        Description: Container for one or more WorkflowType tags. -->

    <WorkflowTypes>
      <WorkflowType TypeName="WorkingWithDynamicsCrm4.Workflow.UrlBuilder" FriendlyName="Lead Url Builder"/>
    </WorkflowTypes>
    </Solution>
Затем для любой сущности в workflow добавляем шаг, где указываем часть адреса для этой сущности. Например, для заказа это будет выглядеть следующим образом:
Код:
http://crmserver:5555/demo/sfa/salesorder/edit.aspx?id=
А в workflow это будет выглядеть (см.вложение)
Чтобы узнать эту часть адреса, необходимо открыть какую-либо уже созданную такую же сущность, жмем Ctrl+N и смотрим в адресной строке нужную нам инфу.

Вроде бы все)
Для кастомных сущностей по умолчанию:
Код:
http://crmserver:5555/demo/userdefined/edit.aspx?id={A87E0C01-AB13-DE11-907F-003048749F89}&etc=10000#
Но в workflow нужно писать:
Код:
http://crmserver:5555/demo/userdefined/edit.aspx?etc=10000&id=
Теперь вроде все.
Миниатюры
Нажмите на изображение для увеличения
Название: DemoURL.GIF
Просмотров: 608
Размер:	18.8 Кб
ID:	4410  
За это сообщение автора поблагодарили: mistah (1).
Старый 06.12.2011, 11:14   #5  
mistah is offline
mistah
Участник
 
169 / 13 (1) ++
Регистрация: 11.11.2011
Адрес: Коньково
а для 2011 нет, случаем, варианта?)
Старый 06.12.2011, 12:03   #6  
slivka_83 is offline
slivka_83
Консультант-джедай
Аватар для slivka_83
MCBMSS
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
1,683 / 374 (16) ++++++
Регистрация: 18.12.2008
Адрес: default city
Если не ошибаюсь, 5 ролап для CRM 2011 позволяет делать такие ссылки с помощью стандартного функционала
__________________
Крокодил, крокожу и буду крокодить.
Человек человеку - волк , а зомби зомби - зомби.
Экстремал и буду экстремать!
Блога
Старый 09.02.2012, 11:56   #7  
mistah is offline
mistah
Участник
 
169 / 13 (1) ++
Регистрация: 11.11.2011
Адрес: Коньково
slivka_83, а как на счет 6ого?) поставил - пока не нашел
Старый 09.02.2012, 12:09   #8  
slivka_83 is offline
slivka_83
Консультант-джедай
Аватар для slivka_83
MCBMSS
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
1,683 / 374 (16) ++++++
Регистрация: 18.12.2008
Адрес: default city
http://www.powerobjects.com/blog/201...ia-a-workflow/

ролапы комулятивны, т.е. каждый полседующий содержит все что содержат предыдущие.
__________________
Крокодил, крокожу и буду крокодить.
Человек человеку - волк , а зомби зомби - зомби.
Экстремал и буду экстремать!
Блога
Старый 09.02.2012, 12:48   #9  
mistah is offline
mistah
Участник
 
169 / 13 (1) ++
Регистрация: 11.11.2011
Адрес: Коньково
slivka_83, о, спасибо, работает!
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Как востановить объект MS CRM? pkost Dynamics CRM: Разработка 6 08.07.2008 10:46
Программное добавление примечание Jonano Dynamics CRM: Разработка 5 30.01.2008 21:51
Ошибка при создании веб-ссылки в MS VS? Alexey-IT Dynamics CRM: Разработка 1 12.01.2008 03:24
связь через новый объект valk Dynamics CRM: Разработка 3 07.12.2007 08:56
связь через новый объект valk Dynamics CRM: Разработка 0 06.12.2007 12:09

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 03:48.