Exemple #1
0
        /// <summary>
        /// Sets the value.
        /// </summary>
        /// <param name="value">The value.</param>
        /// <param name="data">The data.</param>
        public override void SetValue(string value, params string[] data)
        {
            if (this.Adaptee is StateProperty)
            {
                ((StateProperty)this.Adaptee).Value = value;
                return;
            }

            if (this.Adaptee is StringProperty)
            {
                ((StringProperty)this.Adaptee).Value = value;
                return;
            }

            if (this.Adaptee is UniqueIdentifierProperty)
            {
                ID idValue;
                if (ID.TryParse(value, out idValue))
                {
                    var identifier = new UniqueIdentifier {
                        Value = idValue.Guid
                    };
                    ((UniqueIdentifierProperty)this.Adaptee).Value = identifier;
                }

                return;
            }

            if (this.Adaptee is StatusProperty)
            {
                int intValue;
                if (int.TryParse(value, out intValue))
                {
                    var status = new Status {
                        Value = intValue
                    };
                    ((StatusProperty)this.Adaptee).Value = status;
                }

                return;
            }

            if (this.Adaptee is PicklistProperty)
            {
                string   picklistValue = value;
                Picklist list          = null;
                int      intValue;

                if (!string.IsNullOrEmpty(picklistValue) && int.TryParse(picklistValue, out intValue))
                {
                    list = new Picklist {
                        Value = intValue
                    };
                }
                else
                {
                    picklistValue = null;
                }

                if (string.IsNullOrEmpty(picklistValue))
                {
                    list = new Picklist
                    {
                        IsNull          = true,
                        IsNullSpecified = true
                    };
                }

                ((PicklistProperty)this.Adaptee).Value = list;
                return;
            }

            if (this.Adaptee is OwnerProperty)
            {
                ID idValue;
                if (ID.TryParse(value, out idValue))
                {
                    var owner = new Owner {
                        Value = idValue.Guid, type = data[0]
                    };
                    ((OwnerProperty)this.Adaptee).Value = owner;
                }

                return;
            }

            if (this.Adaptee is LookupProperty)
            {
                ID idValue;
                if (ID.TryParse(value, out idValue))
                {
                    var lookup = new Lookup {
                        Value = idValue.Guid, type = data[0]
                    };
                    ((LookupProperty)this.Adaptee).Value = lookup;
                }

                return;
            }

            if (this.Adaptee is KeyProperty)
            {
                ID idValue;
                if (ID.TryParse(value, out idValue))
                {
                    var key = new Key {
                        Value = idValue.Guid
                    };
                    ((KeyProperty)this.Adaptee).Value = key;
                }

                return;
            }

            if (this.Adaptee is EntityNameReferenceProperty)
            {
                var reference = new EntityNameReference {
                    Value = value
                };
                ((EntityNameReferenceProperty)this.Adaptee).Value = reference;
                return;
            }

            if (this.Adaptee is DynamicEntityArrayProperty)
            {
                var dynamycProperty = (DynamicEntityArrayProperty)this.Adaptee;

                dynamycProperty.Value = new[]
                {
                    new DynamicEntity
                    {
                        Name       = "activityparty",
                        Properties = new[]
                        {
                            new LookupProperty
                            {
                                Name  = "partyid",
                                Value = new Lookup
                                {
                                    Value = new Guid(value),
                                    type  = data[0]
                                }
                            }
                        }
                    }
                };
            }

            if (this.Adaptee is CustomerProperty)
            {
                ID idValue;
                if (ID.TryParse(value, out idValue))
                {
                    var customer = new Customer {
                        Value = idValue.Guid, type = data[0]
                    };
                    ((CustomerProperty)this.Adaptee).Value = customer;
                }

                return;
            }

            if (this.Adaptee is CrmNumberProperty)
            {
                int intValue;
                if (int.TryParse(value, out intValue))
                {
                    var number = new CrmNumber {
                        Value = intValue
                    };
                    ((CrmNumberProperty)this.Adaptee).Value = number;
                }

                return;
            }

            if (this.Adaptee is CrmMoneyProperty)
            {
                decimal decimalValue;
                if (decimal.TryParse(value, out decimalValue))
                {
                    var money = new CrmMoney {
                        Value = decimalValue
                    };
                    ((CrmMoneyProperty)this.Adaptee).Value = money;
                }

                return;
            }

            if (this.Adaptee is CrmFloatProperty)
            {
                float decimalValue;
                if (float.TryParse(value, out decimalValue))
                {
                    var crmFloat = new CrmFloat {
                        Value = decimalValue
                    };
                    ((CrmFloatProperty)this.Adaptee).Value = crmFloat;
                }

                return;
            }

            if (this.Adaptee is CrmDecimalProperty)
            {
                decimal decimalValue;
                if (decimal.TryParse(value, out decimalValue))
                {
                    var crmDecimal = new CrmDecimal {
                        Value = decimalValue
                    };
                    ((CrmDecimalProperty)this.Adaptee).Value = crmDecimal;
                }

                return;
            }

            if (this.Adaptee is CrmDateTimeProperty)
            {
                DateTime parsedValue;
                if (value.TryParseDateTime(out parsedValue))
                {
                    ((CrmDateTimeProperty)this.Adaptee).Value = new CrmDateTime {
                        Value = parsedValue.ToCrmDateTimeString()
                    };
                }
            }

            if (this.Adaptee is CrmBooleanProperty)
            {
                var boolValue = MainUtil.GetBool(value, false);
                var crmBool   = new CrmBoolean {
                    Value = boolValue
                };
                ((CrmBooleanProperty)this.Adaptee).Value = crmBool;
            }
        }
        //public static void CreateLead(CrmService service, LeadInfo leadDetails, Guid leadID, DynamicEntity crmLeadInfo)
        //{
        //    string firstName = string.Empty;
        //    string lastName = string.Empty;

        //    try
        //    {
        //        var lead = new lead();

        //        foreach (Property p in crmLeadInfo.Properties)
        //        {
        //            if (p.Name == "firstname")
        //            {
        //                firstName = CrmHelper.GetSourceValue(p.GetType().Name, p);
        //            }
        //            if (p.Name == "lastname")
        //            {
        //                lastName = CrmHelper.GetSourceValue(p.GetType().Name, p);
        //            }
        //        }

        //        if (leadDetails.LeadOriginatorName == string.Concat(firstName, " ", lastName))
        //        {
        //            //lead.ms_bdm= matched CRM user
        //            lead.ms_staffreferrer = null;
        //            lead.ms_referralname = null;
        //        }
        //        else
        //        {
        //            lead.ms_bdm = null;
        //            lead.ms_staffreferrer = null;
        //            lead.ms_referralname = leadDetails.LeadOriginatorName;
        //        }


        //        var crmBrand = new Picklist();
        //        if (leadDetails.Brand.ToLower() == "maxxia")
        //        {
        //            crmBrand.Value = 0;
        //        }
        //        else { crmBrand.Value = 1; }
        //        lead.ms_brand = crmBrand;

        //        //var crmProductType = new Picklist();
        //        //crmProductType.Value = Convert.ToInt32("Fully Maintained Novated Lease");
        //        //lead.ms_producttype = crmProductType;

        //        //var crmOwnLead = new Picklist();
        //        //crmOwnLead.Value = Convert.ToInt32("No");
        //        //lead.ms_willyouownthelead = crmOwnLead;

        //        //var crmRating = new Picklist();
        //        //if (string.IsNullOrEmpty(leadDetails.LeadRating))
        //        //{
        //        //    crmRating.Value = Convert.ToInt32("Warm");
        //        //}
        //        //else
        //        //{
        //        //    crmRating.Value = Convert.ToInt32(leadDetails.LeadRating);
        //        //}
        //        //lead.leadqualitycode = crmRating;

        //        //var crmLeadSource = new Picklist();
        //        //crmLeadSource.Value = Convert.ToInt32(leadDetails.LeadSource);
        //        //lead.leadsourcecode = crmLeadSource;

        //        //var crmEnquirySource = new Picklist();
        //        //crmEnquirySource.Value = Convert.ToInt32(leadDetails.ActivityType);
        //        //lead.ms_enquirysource = crmEnquirySource;

        //        //var crmCampaignSource = new Picklist();
        //        //if (string.IsNullOrEmpty(leadDetails.CampaignSource ))
        //        //{
        //        //    crmCampaignSource.Value = Convert.ToInt32("None");
        //        //}
        //        //else
        //        //{
        //        //    crmCampaignSource.Value = Convert.ToInt32(leadDetails.CampaignSource);
        //        //}
        //        //lead.ms_campaignsource = crmCampaignSource;

        //        //if (!string.IsNullOrEmpty(leadDetails.VehicleType))
        //        //{
        //        //    var crmVehicleType = new Picklist();
        //        //    if (leadDetails.VehicleType == "New Car")
        //        //    {
        //        //        crmVehicleType.Value = Convert.ToInt32("New");
        //        //    }
        //        //    else if(leadDetails.VehicleType == "Used Car")
        //        //    {
        //        //        crmVehicleType.Value = Convert.ToInt32("Used(Dealer)");
        //        //    }
        //        //    else if(leadDetails.VehicleType == "Refinance Existing")
        //        //    {
        //        //        crmVehicleType.Value = Convert.ToInt32("Sales & Leaseback");
        //        //    }
        //        //    lead.ms_vehicletype = crmVehicleType;
        //        //}

        //        //if (!string.IsNullOrEmpty(leadDetails.EmployerCode))
        //        //{
        //        //var emp = new account { accountnumber = leadDetails.EmployerCode };
        //        //    var crmEmployer = new Lookup();
        //        //    if (emp.accountid != null)
        //        //    {
        //        //        //crmEmployer.Value = emp;
        //        //    }
        //        //    else
        //        //    {
        //        //        emp = new account { name = leadDetails.EmployerName };
        //        //        if (emp.accountid != null)
        //        //        {
        //        //            // crmEmployer.Value = emp;
        //        //        }
        //        //        else
        //        //        {
        //        //            // crmEmployer.Value = TestEmployer;
        //        //            //lead.TemPMessage;
        //        //        }
        //        //    }
        //        //    lead.ms_employer = crmEmployer;

        //        //    lead.ms_salarypackager = emp.ms_salarypackager1;
        //        //}

        //        //var crmState = new Picklist();
        //        //crmState.Value = Convert.ToInt32(leadDetails.State);
        //        //lead.ms_homeaddressstate = crmState;

        //        lead.firstname = leadDetails.Firstname;
        //        lead.lastname = leadDetails.Surname;
        //        lead.emailaddress2 = leadDetails.Email;
        //        lead.mobilephone = leadDetails.MobilePhone;

        //        //var crmPrefferedPhone = new Picklist();
        //        //if (leadDetails.MobilePreferredContact)
        //        //{
        //        //    crmPrefferedPhone.Value = Convert.ToInt32("Mobile");
        //        //}
        //        //else
        //        //{
        //        //    crmPrefferedPhone.Value = Convert.ToInt32("Work");
        //        //}
        //        //lead.ms_preferredphone = crmPrefferedPhone;

        //        if (!string.IsNullOrEmpty(leadDetails.OtherPhone)) lead.telephone1 = leadDetails.OtherPhone;

        //        lead.ms_preferredcontacttime = leadDetails.PreferredCallBackTime;

        //        var crmAnnualGS = new CrmDecimal();
        //        if (leadDetails.AnnualGrossSalary.ToString() != "")
        //        {
        //            crmAnnualGS.Value = leadDetails.AnnualGrossSalary;

        //            var crmRefferalSplit = new CrmDecimal();
        //            if (leadDetails.AnnualGrossSalary < 110000)
        //            {
        //                crmRefferalSplit.Value = (decimal)999.00;
        //            }
        //            else
        //            {
        //                //crmRefferalSplit.Value = null;
        //            }
        //            lead.ms_referralsplit = crmRefferalSplit;
        //        }
        //        else
        //        {
        //            crmAnnualGS.Value = 0;
        //        }
        //        lead.ms_annualgrosssalary = crmAnnualGS;


        //        //lead.siteid


        //        lead.ms_salesmessages = "Year: " + leadDetails.VehicleYear + "/ Make: " + leadDetails.VehicleMake + "/ Model: " + leadDetails.VehicleType + "\r\n" + "Lease Term: " + leadDetails.LeaseTerm + "\r\n * **\r\n" + leadDetails.OtherInformation;

        //        //var emp = new account { ownerid = new Owner { Value = "" }; };
        //        //lead.ownerid=



        //        var oppKey = new WebReferences.CrmSdk.Key { Value = leadID };
        //        lead.leadid = oppKey;

        //        service.Update(lead);
        //    }
        //    catch (Exception ex)
        //    {
        //        throw ex;
        //    }
        //}

        public static void ReactivateLead(CrmService service, MetadataService metaDataService, LeadInfo leadDetails, Guid leadID, DynamicEntity crmLeadInfo)
        {
            string firstName = string.Empty;
            string lastName  = string.Empty;

            try
            {
                var lead = new lead();

                foreach (Property p in crmLeadInfo.Properties)
                {
                    if (p.Name == "firstname")
                    {
                        firstName = CrmHelper.GetSourceValue(p.GetType().Name, p);
                    }
                    if (p.Name == "lastname")
                    {
                        lastName = CrmHelper.GetSourceValue(p.GetType().Name, p);
                    }
                }

                if (leadDetails.LeadOriginatorName == string.Concat(firstName, " ", lastName))
                {
                    //lead.ms_bdm= matched CRM user
                    lead.ms_staffreferrer = null;
                    lead.ms_referralname  = null;
                }
                else
                {
                    lead.ms_bdm           = null;
                    lead.ms_staffreferrer = null;
                    lead.ms_referralname  = leadDetails.LeadOriginatorName;
                }


                //var crmBrand = new Picklist();
                //if (leadDetails.Brand.ToLower() == DALConstants.BrandM)
                //{
                //    crmBrand.Value = Convert.ToInt32(DALConstants.Brand.Maxxia) ;
                //}
                //else { crmBrand.Value = Convert.ToInt32(DALConstants.Brand.Remserv); }
                //lead.ms_brand = crmBrand;

                //var crmProductType = new Picklist
                //{
                //    name = "ms_producttype",
                //    Value = CrmHelper.GetPickListCode(metaDataService, "ms_producttype", "ms_producttype", DALConstants.ProductTypeFMNL)
                //};
                //lead.ms_producttype = crmProductType;


                //var crmOwnLead = new Picklist();
                //crmOwnLead.Value = Convert.ToInt32(DALConstants.OwnTheLead.No);
                //lead.ms_willyouownthelead = crmOwnLead;


                //var crmRating = new Picklist();
                //if (string.IsNullOrEmpty(leadDetails.LeadRating))
                //{
                //    crmRating.Value = Convert.ToInt32("Warm");
                //}
                //else
                //{
                //    crmRating.Value = Convert.ToInt32(leadDetails.LeadRating);
                //}
                //lead.leadqualitycode = crmRating;


                //var crmLeadSource = new Picklist
                //{
                //    name = "ms_leadsourcename",
                //    Value = CrmHelper.GetPickListCode(metaDataService, "ms_leadsource", "ms_leadsourcename", leadDetails.LeadSource)
                //};
                //lead.leadsourcecode = crmLeadSource;

                //leadsourceid required
                //var crmEnquirySource = new Picklist
                //{
                //    name = "ms_enquirysourcename",
                //    Value = CrmHelper.GetPickListCode(metaDataService, "ms_enquirysource", "ms_enquirysourcename", leadDetails.ActivityType )
                //};
                //lead.ms_enquirysource = crmEnquirySource;


                //string csName = string.Empty;
                //if (string.IsNullOrEmpty(leadDetails.CampaignSource))
                //{
                //    csName = "None";
                //}
                //else
                //{
                //    csName = leadDetails.CampaignSource;
                //}

                //var crmCampaignSource = new Picklist
                //{
                //    name = "ms_campaignsourcename",
                //    Value = CrmHelper.GetPickListCode(metaDataService, "ms_campaignsource", "ms_campaignsourcename", csName)
                //};
                //lead.ms_campaignsource = crmCampaignSource;


                //string vehicleType = string.Empty;
                //if (!string.IsNullOrEmpty(leadDetails.VehicleType))
                //{
                //    if (leadDetails.VehicleType == "New Car")
                //    {
                //        vehicleType="New";
                //    }
                //    else if (leadDetails.VehicleType == "Used Car")
                //    {
                //        vehicleType="Used(Dealer)";
                //    }
                //    else if (leadDetails.VehicleType == "Refinance Existing")
                //    {
                //        vehicleType="Sales & Leaseback";
                //    }

                //    var crmVehicleType = new Picklist()
                //    {
                //        name = "ms_vehicletype1",
                //        Value = CrmHelper.GetPickListCode(metaDataService, "ms_vehicletype", "ms_vehicletype1", vehicleType)
                //    };
                //    lead.ms_vehicletype = crmVehicleType;
                //}


                //if (!string.IsNullOrEmpty(leadDetails.EmployerCode))
                //{
                //var emp = new account { accountnumber = leadDetails.EmployerCode };
                //    var crmEmployer = new Lookup();
                //    if (emp.accountid != null)
                //    {
                //        //crmEmployer.Value = emp;
                //    }
                //    else
                //    {
                //        emp = new account { name = leadDetails.EmployerName };
                //        if (emp.accountid != null)
                //        {
                //            // crmEmployer.Value = emp;
                //        }
                //        else
                //        {
                //            // crmEmployer.Value = TestEmployer;
                //            //lead.TemPMessage;
                //        }
                //    }
                //    lead.ms_employer = crmEmployer;

                //    lead.ms_salarypackager = emp.ms_salarypackager1;
                //}

                //var crmState = new Picklist();
                //crmState.Value = Convert.ToInt32(leadDetails.State);
                //lead.ms_homeaddressstate = crmState;

                lead.firstname     = leadDetails.Firstname;
                lead.lastname      = leadDetails.Surname;
                lead.emailaddress2 = leadDetails.Email;
                lead.mobilephone   = leadDetails.MobilePhone;

                //var crmPrefferedPhone = new Picklist();
                //if (leadDetails.MobilePreferredContact)
                //{
                //    crmPrefferedPhone.Value = Convert.ToInt32("Mobile");
                //}
                //else
                //{
                //    crmPrefferedPhone.Value = Convert.ToInt32("Work");
                //}
                //lead.ms_preferredphone = crmPrefferedPhone;

                if (!string.IsNullOrEmpty(leadDetails.OtherPhone))
                {
                    lead.telephone1 = leadDetails.OtherPhone;
                }

                lead.ms_preferredcontacttime = leadDetails.PreferredCallBackTime;

                var crmAnnualGS = new CrmDecimal();
                if (leadDetails.AnnualGrossSalary.ToString() != "")
                {
                    crmAnnualGS.Value = leadDetails.AnnualGrossSalary;

                    var crmRefferalSplit = new CrmDecimal();
                    if (leadDetails.AnnualGrossSalary < 110000)
                    {
                        crmRefferalSplit.Value = (decimal)999.00;
                    }
                    else
                    {
                        //crmRefferalSplit.Value = null;
                    }
                    lead.ms_referralsplit = crmRefferalSplit;
                }
                else
                {
                    crmAnnualGS.Value = 0;
                }
                lead.ms_annualgrosssalary = crmAnnualGS;


                //lead.siteid


                lead.ms_salesmessages = "Year: " + leadDetails.VehicleYear + "/ Make: " + leadDetails.VehicleMake + "/ Model: " + leadDetails.VehicleType + "\r\n" + "Lease Term: " + leadDetails.LeaseTerm + "\r\n * **\r\n" + leadDetails.OtherInformation;

                //var emp = new account { ownerid = new Owner { Value = "" }; };
                //lead.ownerid=



                var oppKey = new WebReferences.CrmSdk.Key {
                    Value = leadID
                };
                lead.leadid = oppKey;

                service.Update(lead);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
 public static decimal?Convert(CrmDecimal obj)
 {
     return(obj.IsNull == false ? (decimal?)obj.Value : null);
 }
        public virtual void SetPropertyValue(Property property, string value, params string[] data)
        {
            Assert.ArgumentNotNull(property, "property");

            if (property is StateProperty)
            {
                ((StateProperty)property).Value = value;
                return;
            }

            if (property is StringProperty)
            {
                ((StringProperty)property).Value = value;
                return;
            }

            if (property is UniqueIdentifierProperty)
            {
                ID idValue = null;
                if (ID.TryParse(value, out idValue))
                {
                    var identifier = new UniqueIdentifier {
                        Value = idValue.Guid
                    };
                    ((UniqueIdentifierProperty)property).Value = identifier;
                }
                return;
            }

            if (property is StatusProperty)
            {
                int intValue = 0;
                if (int.TryParse(value, out intValue))
                {
                    var status = new Status {
                        Value = intValue
                    };
                    ((StatusProperty)property).Value = status;
                }

                return;
            }

            if (property is PicklistProperty)
            {
                string   picklistValue = value;
                Picklist list          = null;
                int      intValue      = 0;

                if (!string.IsNullOrEmpty(picklistValue) && int.TryParse(picklistValue, out intValue))
                {
                    list = new Picklist {
                        Value = intValue
                    };
                }
                else
                {
                    picklistValue = null;
                }

                if (string.IsNullOrEmpty(picklistValue))
                {
                    list = new Picklist
                    {
                        IsNull          = true,
                        IsNullSpecified = true
                    };
                }

                ((PicklistProperty)property).Value = list;
                return;
            }

            if (property is OwnerProperty)
            {
                ID idValue = null;
                if (ID.TryParse(value, out idValue))
                {
                    var owner = new Owner {
                        Value = idValue.Guid, type = data[0]
                    };
                    ((OwnerProperty)property).Value = owner;
                }
                return;
            }

            if (property is LookupProperty)
            {
                ID idValue = null;
                if (ID.TryParse(value, out idValue))
                {
                    var lookup = new Lookup {
                        Value = idValue.Guid, type = data[0]
                    };
                    ((LookupProperty)property).Value = lookup;
                }
                return;
            }

            if (property is KeyProperty)
            {
                ID idValue = null;
                if (ID.TryParse(value, out idValue))
                {
                    var key = new CrmCampaignIntegration.Services.Key {
                        Value = idValue.Guid
                    };
                    ((KeyProperty)property).Value = key;
                }
                return;
            }

            if (property is EntityNameReferenceProperty)
            {
                var reference = new EntityNameReference {
                    Value = value
                };
                ((EntityNameReferenceProperty)property).Value = reference;
                return;
            }

            if (property is DynamicEntityArrayProperty)
            {
                var dynamycProperty = (DynamicEntityArrayProperty)property;

                dynamycProperty.Value = new[]
                {
                    new DynamicEntity {
                        Name       = "activityparty",
                        Properties = new []
                        {
                            new LookupProperty
                            {
                                Name  = "partyid",
                                Value = new Lookup
                                {
                                    Value = new Guid(value),
                                    type  = data[0]
                                }
                            }
                        }
                    }
                };
            }

            if (property is CustomerProperty)
            {
                ID idValue = null;
                if (ID.TryParse(value, out idValue))
                {
                    var customer = new Customer {
                        Value = idValue.Guid, type = data[0]
                    };
                    ((CustomerProperty)property).Value = customer;
                }
                return;
            }

            if (property is CrmNumberProperty)
            {
                int intValue = 0;
                if (int.TryParse(value, out intValue))
                {
                    var number = new CrmCampaignIntegration.Services.CrmNumber {
                        Value = intValue
                    };
                    ((CrmNumberProperty)property).Value = number;
                }
                return;
            }

            if (property is CrmMoneyProperty)
            {
                decimal decimalValue = 0;
                if (decimal.TryParse(value, out decimalValue))
                {
                    var money = new CrmMoney {
                        Value = decimalValue
                    };
                    ((CrmMoneyProperty)property).Value = money;
                }
                return;
            }

            if (property is CrmFloatProperty)
            {
                float decimalValue = 0;
                if (float.TryParse(value, out decimalValue))
                {
                    var crmFloat = new CrmCampaignIntegration.Services.CrmFloat {
                        Value = decimalValue
                    };
                    ((CrmFloatProperty)property).Value = crmFloat;
                }
                return;
            }

            if (property is CrmDecimalProperty)
            {
                decimal decimalValue = 0;
                if (decimal.TryParse(value, out decimalValue))
                {
                    var crmDecimal = new CrmDecimal {
                        Value = decimalValue
                    };
                    ((CrmDecimalProperty)property).Value = crmDecimal;
                }
                return;
            }

            if (property is CrmDateTimeProperty)
            {
                var dateTime = Sitecore.CrmCampaignIntegrations.Core.Utility.DateUtil.ToCrmDateTime(value);
                if (dateTime != null)
                {
                    var crmDateTime = new CrmCampaignIntegration.Services.CrmDateTime {
                        Value = dateTime.Value
                    };
                    ((CrmDateTimeProperty)property).Value = crmDateTime;
                }
            }

            if (property is CrmBooleanProperty)
            {
                var boolValue = MainUtil.GetBool(value, false);
                var crmBool   = new CrmCampaignIntegration.Services.CrmBoolean {
                    Value = boolValue
                };
                ((CrmBooleanProperty)property).Value = crmBool;
                return;
            }
        }