Esempio n. 1
0
        public void ShowCRMVersion()
        {
            RetrieveVersionRequest  versionRequest  = new RetrieveVersionRequest();
            RetrieveVersionResponse versionResponse =
                (RetrieveVersionResponse)CRMOrganizationService.Execute(versionRequest);

            Logger(String.Format("Microsoft Dynamics CRM version {0}.", versionResponse.Version));
        }
Esempio n. 2
0
        public string GetOptionSetValueLabel(string entityName, string fieldName, int optionSetValue)
        {
            var attReq = new RetrieveAttributeRequest();

            attReq.EntityLogicalName     = entityName;
            attReq.LogicalName           = fieldName;
            attReq.RetrieveAsIfPublished = true;

            var attResponse = (RetrieveAttributeResponse)CRMOrganizationService.Execute(attReq);
            var attMetadata = (EnumAttributeMetadata)attResponse.AttributeMetadata;

            return(attMetadata.OptionSet.Options.Where(x => x.Value == optionSetValue).FirstOrDefault().Label.UserLocalizedLabel.Label);
        }
Esempio n. 3
0
        public void CreateBulkDeleteJob(string entityName, int executeTimePerday)
        {
            var  req  = new WhoAmIRequest();
            var  res  = (WhoAmIResponse)CRMOrganizationService.Execute(req);
            Guid guid = res.UserId;

            var condition = new ConditionExpression("statecode", ConditionOperator.NotNull);
            var filter    = new FilterExpression();

            filter.AddCondition(condition);
            var query = new QueryExpression
            {
                EntityName = entityName,
                Distinct   = false,
                Criteria   = filter
            };
            DateTime now   = DateTime.Now;
            DateTime start = new DateTime(now.Year, now.Month, now.Day, now.Hour, 0, 0).AddHours(1);
            int      steps = 24 * 60 / executeTimePerday;

            for (int i = 0; i < executeTimePerday; i++)
            {
                var request = new BulkDeleteRequest
                {
                    JobName               = "Bulk Delete " + entityName + start.ToString(" HH-mm-ss"),
                    QuerySet              = new[] { query },
                    StartDateTime         = start,
                    SendEmailNotification = false,
                    RecurrencePattern     = "FREQ=DAILY;INTERVAL=1;",
                    ToRecipients          = new Guid[] { guid },
                    CCRecipients          = new Guid[] { }
                };
                CRMOrganizationService.Execute(request);
                start = start.AddMinutes(steps);
            }
        }