Example #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));
        }
Example #2
0
        public void CreateOpportunity(string name, Guid accountID, Guid contactID)
        {
            Entity opp = new Entity();

            opp.LogicalName        = "opportunity";
            opp["name"]            = name;
            opp["customerid"]      = new EntityReference("account", accountID);
            opp["parentcontactid"] = new EntityReference("contact", contactID);
            CRMOrganizationService.Create(opp);
        }
Example #3
0
        public Entity[] RetriveAllActiveEntity(string entityName, params string[] cols)
        {
            QueryExpression query = new QueryExpression
            {
                EntityName = entityName,
                ColumnSet  = new ColumnSet(cols),
            };

            //query.Criteria.AddCondition(new ConditionExpression("statuscode",ConditionOperator.Equal,0));
            DataCollection <Entity> arr = CRMOrganizationService.RetrieveMultiple(query).Entities;

            return(arr.ToArray());
        }
Example #4
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);
        }
Example #5
0
        public Entity CreateAccount(Entity account, string companyName, string City, string Address, string Zip, string State,
                                    string phone, string phone1, string extId, string email, Money revenue, params object[] custom)
        {
            bool create_mode = false;

            if (account == null)
            {
                account             = new Entity();
                account.LogicalName = "account";
                create_mode         = true;
            }
            account["name"] = companyName;
            setStrValue(account, "address1_line1", Address);
            setStrValue(account, "address1_city", City);
            account["address1_postalcode"]      = Zip;
            account["address1_stateorprovince"] = State;
            account["telephone1"] = phone;
            account["telephone2"] = phone1;
            account["msdyn_externalaccountid"] = extId;
            account["emailaddress1"]           = email;
            account["revenue"] = revenue;

            string fileName = null;

            foreach (object s in custom)
            {
                if (fileName == null)
                {
                    fileName = s as string;
                }
                else
                {
                    account[fileName] = s;
                    fileName          = null;
                }
            }

            if (create_mode)
            {
                account.Id = CRMOrganizationService.Create(account);
            }
            else
            {
                CRMOrganizationService.Update(account);
            }
            return(account);
        }
Example #6
0
        public Entity[] RetrvieAllEntitiesIn(string entityName, string fieldName, string containValue, params string[] cols)
        {
            QueryExpression query = new QueryExpression
            {
                EntityName = entityName,
                ColumnSet  = new ColumnSet(cols)
            };

            query.Criteria.AddCondition(new ConditionExpression {
                AttributeName = fieldName,
                Operator      = ConditionOperator.Like,
                Values        = { containValue + "%" }
            });

            DataCollection <Entity> arr = CRMOrganizationService.RetrieveMultiple(query).Entities;

            Log("Result count: {0}", arr.Count);

            return(arr.ToArray());
        }
Example #7
0
        public Entity CreateContact(Entity contact, string firstName, string lastName, string email, string phoneNumber, string title, Entity account, bool isPrimary)
        {
            bool create_mode = false;

            if (contact == null)
            {
                contact             = new Entity();
                contact.LogicalName = "contact";
                create_mode         = true;
            }

            if (!string.IsNullOrEmpty(firstName))
            {
                contact["firstname"] = firstName;
            }
            if (!string.IsNullOrEmpty(lastName))
            {
                contact["lastname"] = lastName;
            }
            contact["emailaddress1"] = email;
            contact["telephone1"]    = phoneNumber;
            contact["jobtitle"]      = title;

            contact["parentcustomerid"] = new EntityReference("account", account.Id);
            if (create_mode)
            {
                contact.Id = CRMOrganizationService.Create(contact);
            }
            else
            {
                CRMOrganizationService.Update(contact);
            }
            if (isPrimary)
            {
                account["primarycontactid"] = new EntityReference("contact", contact.Id);
                CRMOrganizationService.Update(account);
            }
            Logger("contact created, id= " + contact.Id);
            return(contact);
        }
Example #8
0
        public Entity CreateEntity(string logicalName, params object[] nameValuePair)
        {
            Entity entity = new Entity();

            entity.LogicalName = logicalName;
            string fieldName = null;

            foreach (var val in nameValuePair)
            {
                if (fieldName == null)
                {
                    fieldName = val as string;
                }
                else
                {
                    entity[fieldName] = val;
                    fieldName         = null;
                }
            }
            entity.Id = CRMOrganizationService.Create(entity);
            return(entity);
        }
Example #9
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);
            }
        }
Example #10
0
        public Entity[] RetriveAllEntity(string entityName, Tuple <string, object>[] arrTuple, params string[] cols)
        {
            QueryExpression query = new QueryExpression
            {
                EntityName = entityName,
                ColumnSet  = new ColumnSet(cols),
            };

            foreach (Tuple <string, object> tuple in arrTuple)
            {
                query.Criteria.AddCondition(new ConditionExpression
                {
                    AttributeName = tuple.Item1,
                    Operator      = ConditionOperator.Equal,
                    Values        = { tuple.Item2 }
                });
                Log("Retrieve from {0}: {1} == {2}", entityName, tuple.Item1, tuple.Item2);
            }

            DataCollection <Entity> arr = CRMOrganizationService.RetrieveMultiple(query).Entities;

            Log("Result count: {0}", arr.Count);
            return(arr.ToArray());
        }
Example #11
0
 public Entity RetrieveByID(string entityName, Guid id, params string[] cols)
 {
     return(CRMOrganizationService.Retrieve(entityName, id, new ColumnSet(cols)));
 }
Example #12
0
 public void Create(Entity entity)
 {
     CRMOrganizationService.Create(entity);
 }
Example #13
0
 public void Update(Entity entity)
 {
     CRMOrganizationService.Update(entity);
 }