На досуге занимался отчетами и собрал несколько полезных примеров кода на T-SQL, которые можно использовать в отчетах для Microsoft Dynamics CRM 4.0.
1. Получение дня недели

 CASE DATEDIFF(DAY,0, createdon)%7
WHEN 0 THEN 'Понедельник'
WHEN 1 THEN 'Вторник'
WHEN 2 THEN 'Среда'
WHEN 3 THEN 'Четверг'
WHEN 4 THEN 'Пятница'
WHEN 5 THEN 'Суббота'
WHEN 6 THEN 'Воскресенье'
END as 'Дата, день недели'

2. Функция для получения списка фамилий контактов через точку с запятой. Параметры: guid организации.
Основную работу выполняет стандартная функция COALESCE, которая позволяет объединить строки через разделитель.

CREATE FUNCTION [dbo].[GetContactList](@AccountID varchar(40))
RETURNS varchar(max) AS
BEGIN
DECLARE @StringList varchar(max)
SELECT @StringList = COALESCE(@StringList + '; ', '') + c.fullname
from account a
left join contact c
	on c.parentcustomerid = @AccountID
IF @StringList IS NULL
SET @StringList = 'Нет контактов'
RETURN @StringList
END

Пример вызова:

[DB_Name].[dbo].[GetContactList](accountid) as 'Контакты'

Результат : Иванов; Петров; Сидоров

3. Конвертирование даты в формате дд.мм.гггг
3.1 T-SQL

(CONVERT(varchar(10),createdon, 104)

3.2 в SQL Server Business Intelligence Development Studio: Format(Parameters!startdate.Value,»dd.MM.yyyy»)

4. Форматирование поля типа money, float с разрядами
Format(Sum(Fields!Сумма.Value),»### ### ##0.0#»)

Прошлая небольшая подборка здесь: Полезные SQL-функции для использования в отчетах MS CRM

Вышел новый Rollup 11 для Microsoft Dynamics CRM 4.0. Как всегда Rollup 11 содержит исправления для сервера Microsoft Dynamics CRM 4.0, приложения Microsoft Dynamics CRM для Microsoft Office Outlook и маршрутизатора электронной почты Microsoft Dynamics CRM 4.0. Посмотреть список исправления можете здесь

Скачать Rollup 10 для Microsoft Dynamics CRM 4.0 можно здесь: английский и русский


© 2009-2012 Microsoft Dynamics CRM | Авторы: Афендиков Константин и Головчан Екатерина |