Показать сообщение отдельно
Старый 22.04.2014, 12:58   #1  
Lavdislav is offline
Lavdislav
Участник
 
34 / 10 (1) +
Регистрация: 28.02.2014
Подсчёт записей
Добрый день!

В опросе есть токены и ниже есть поля (показано на картинке), нужно сосчитать сколько всего токенов, сколько стартовавших и сколько финишировало. Нужно сделать именно плагин, вот этот код поставил на post-operation, но ошибка (прикрепил лог):
Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xrm.Sdk;
using Bum.Survey.CRM.Plugin.BaseLib;
using Microsoft.Xrm.Sdk.Query;

namespace Bum.Survey.CRM.Plugin
{
    public class SurveyAIU : IPlugin
    {
        public void Execute(IServiceProvider serviceProvider)
        {
            var process = new SurveyAIUProcess(serviceProvider);
            process.LoadEntity();
            if (!process.ValidateEntityName("bf_survey")) return;
            if (!process.ValidateMessage(MessageName.Create, MessageName.Update)) return;
            process.Run();
        }
    }

    class SurveyAIUProcess : bf_PluginProcess
    {
        public override void Execute()
        {
            Entity survey = crmService.Retrieve(TargetEntity.LogicalName, TargetEntity.Id, new ColumnSet(true));

            QueryExpression token = new QueryExpression()
            {
                EntityName = "bf_surveytoken",
                ColumnSet = new ColumnSet(true)
            };

            token.Criteria.AddCondition("bf_surveytoken_survey", ConditionOperator.Equal, TargetKey.Id);
                
            List<Entity> surveyTokens = crmService.RetrieveMultiple(token).Entities.ToList();

            if (surveyTokens.Count > 0)
            {
                survey["bf_survey_tkcnt"] = surveyTokens.Count.ToString();
                crmService.Update(survey);
            }
        }

        public SurveyAIUProcess(IServiceProvider serviceProvider)
            : base(serviceProvider)
        {
        }
    }
}
Но в итоге вот такая хрень если к примеру меняю название опроса. Может есть другие варианты (но нужен именно плагин).
Миниатюры
Нажмите на изображение для увеличения
Название: surv.jpg
Просмотров: 362
Размер:	41.7 Кб
ID:	8832  
Вложения
Тип файла: txt ErrorDetails.txt (4.7 Кб, 399 просмотров)