public static object Eval(object sentObject, string propertyname) { try { return(DataBinder.Eval(sentObject, propertyname)); } catch { string answer = String.Empty; try { using (MainDataContext db = new MainDataContext()) { CRM_FormFieldAnswer Answer = db.CRM_FormFieldAnswers.FirstOrDefault(f => f.CRM_FormField.ID.ToString() == propertyname && f.TargetReference == ((ICustomField)sentObject).Reference); string answers = ""; foreach (CRM_FormFieldResponse response in db.CRM_FormFieldResponses.Where(r => r.CRM_FormFieldID.ToString() == propertyname && r.TargetReference == ((ICustomField)sentObject).Reference)) { if (response.CRM_FormFieldItemID != null) { answers += response.CRM_FormFieldItem.Label + "<br/>"; } else if (!String.IsNullOrEmpty(response.Answer)) { answers += response.Answer + "<br/>"; } } answer = answers; } } catch (InvalidCastException ex) { } return(answer); } }
public void RunImport(int startLine, int endLine) { MainDataContext db = new MainDataContext(); HttpServerUtility Server = HttpContext.Current.Server; string path = "/TaskScript/ConstTypes.csv"; using (StreamReader reader = new StreamReader(Server.MapPath(path))) { lineNumber = 0; while (!reader.EndOfStream) { lineNumber++; string contents = reader.ReadLine(); if (lineNumber >= startLine && lineNumber <= endLine) { string[] contentsSplit = contents.Split(','); string errorMessage = ""; CRM_FormFieldItem ffItem = db.CRM_FormFieldItems.FirstOrDefault(f => f.CRM_FormFieldID == 1 && f.Label.ToLower() == contentsSplit[(int)accountPos.ConstDesc].ToLower()); if (ffItem == null) { ffItem = new CRM_FormFieldItem() { Label = contentsSplit[(int)accountPos.ConstDesc], CRM_FormFieldID = 1, OrderNo = Code.Utils.Ordering.Ordering.GetNextOrderID(db.CRM_FormFieldItems), IsActive = true, IsArchived = false }; db.CRM_FormFieldItems.InsertOnSubmit(ffItem); db.SubmitChanges(); } CRM_Person person = db.CRM_Persons.SingleOrDefault(s => s.LegacyID.ToString() == contentsSplit[(int)accountPos.ConstID]); if (person != null) { CRM_FormFieldAnswer answer = db.CRM_FormFieldAnswers.FirstOrDefault(f => f.TargetReference == person.Reference && f.CRM_FormFieldID == 1); if (answer == null) { answer = new CRM_FormFieldAnswer() { Answer = contentsSplit[(int)accountPos.ConstDesc], CRM_FormFieldID = ffItem.CRM_FormFieldID, TargetReference = person.Reference }; db.CRM_FormFieldAnswers.InsertOnSubmit(answer); db.SubmitChanges(); } else { string[] items = answer.Answer.Split(new string[] { "<br/>" }, StringSplitOptions.None); if (!items.Any(i => i == contentsSplit[(int)accountPos.ConstDesc])) { answer.Answer += "<br/>" + contentsSplit[(int)accountPos.ConstDesc]; } db.SubmitChanges(); } } else { HttpContext.Current.Response.Write("Person not in system - " + contentsSplit[(int)accountPos.ConstID] + "<br/>"); } } } } }
public void RunImport(int startLine, int endLine) { MainDataContext db = new MainDataContext(); HttpServerUtility Server = HttpContext.Current.Server; string path = "/TaskScript/FinalListforCoalFace.csv"; using (StreamReader reader = new StreamReader(Server.MapPath(path))) { lineNumber = 0; while (!reader.EndOfStream) { lineNumber++; string contents = reader.ReadLine(); if (lineNumber >= startLine && lineNumber <= endLine) { string[] contentsSplit = contents.Split(','); string errorMessage = ""; CRM_FormFieldItem ffItem = db.CRM_FormFieldItems.FirstOrDefault(f => f.Label == contentsSplit[(int)accountPos.Constituent]); if (ffItem == null) { ffItem = new CRM_FormFieldItem() { Label = contentsSplit[(int)accountPos.Constituent], CRM_FormFieldID = 1, OrderNo = Code.Utils.Ordering.Ordering.GetNextOrderID(db.CRM_FormFieldItems), IsActive = true, IsArchived = false }; db.CRM_FormFieldItems.InsertOnSubmit(ffItem); db.SubmitChanges(); } CRM_Person person = db.CRM_Persons.FirstOrDefault(f => f.LegacyID != null && f.LegacyID.ToString() == contentsSplit[(int)accountPos.LegacyID]); if (person == null) { CRM_Address address = new CRM_Address(); address.AddressLine1 = contentsSplit[(int)accountPos.Address1]; address.AddressLine2 = contentsSplit[(int)accountPos.Address2]; address.AddressLine3 = contentsSplit[(int)accountPos.Address3]; address.AddressLine4 = contentsSplit[(int)accountPos.Address4]; address.AddressLine5 = contentsSplit[(int)accountPos.Address5]; address.Town = contentsSplit[(int)accountPos.City]; address.County = contentsSplit[(int)accountPos.County]; address.Postcode = contentsSplit[(int)accountPos.Postcode]; address.CountryID = 1; db.CRM_Addresses.InsertOnSubmit(address); db.SubmitChanges(); person = new CRM_Person(); db.CRM_Persons.InsertOnSubmit(person); if (contentsSplit[(int)accountPos.AddressType] == "Business") { person.AddressType = (byte)CRM_Address.Types.Business; } person.AddressType = (byte)CRM_Address.Types.Home; person.DateAdded = UKTime.Now; person.DateModified = UKTime.Now; person.IsArchived = false; person.IsChild = false; person.IsCarerMinder = false; person.PreviousNames = ""; person.PrimaryEmail = ""; person.PrimaryTelephone = ""; person.Telephone2 = ""; person.IsDoNotMail = false; person.LegacyID = Convert.ToInt32(contentsSplit[(int)accountPos.LegacyID]); person.CRM_AddressID = address.ID; person.Password = ""; person.TempCode = ""; } person.Title = contentsSplit[(int)accountPos.Title]; person.Firstname = contentsSplit[(int)accountPos.Firstname]; person.Lastname = contentsSplit[(int)accountPos.Surname]; if (contentsSplit[(int)accountPos.Gender] == "Male") { person.IsMale = true; } else if (contentsSplit[(int)accountPos.Gender] == "Female") { person.IsMale = false; } else { person.IsMale = null; } if (contentsSplit[(int)accountPos.NoEmail] == "Yes") { person.IsDoNotEmail = true; } db.SubmitChanges(); CRM_FormFieldAnswer answer = new CRM_FormFieldAnswer() { Answer = contentsSplit[(int)accountPos.Constituent], CRM_FormFieldID = ffItem.CRM_FormFieldID, TargetReference = person.Reference }; db.CRM_FormFieldAnswers.InsertOnSubmit(answer); db.SubmitChanges(); if (contentsSplit[(int)accountPos.PhoneNumber11].Contains("@")) { person.PrimaryEmail = contentsSplit[(int)accountPos.PhoneNumber11]; } else { person.PrimaryTelephone = contentsSplit[(int)accountPos.PhoneNumber11]; person.PrimaryEmail = contentsSplit[(int)accountPos.PhoneNumber12]; } if (!contentsSplit[(int)accountPos.PhoneNumber12].Contains("@")) { person.Telephone2 = contentsSplit[(int)accountPos.PhoneNumber12]; } db.SubmitChanges(); if (!String.IsNullOrEmpty(contentsSplit[(int)accountPos.MembershipID].Trim())) { CRM_AnnualPassCard card = new CRM_AnnualPassCard() { MembershipNumber = Convert.ToInt32(contentsSplit[(int)accountPos.MembershipID]) }; db.CRM_AnnualPassCards.InsertOnSubmit(card); db.SubmitChanges(); CRM_AnnualPass pass = new CRM_AnnualPass(); pass.CRM_AnnualPassCardID = card.ID; pass.AmountPaid = 0; pass.CRM_AnnualPassTypeID = 15; pass.IsArchived = false; pass.DiscountApplied = ""; pass.PrimaryContactReference = person.Reference; try { if (!String.IsNullOrEmpty(contentsSplit[(int)accountPos.MembershipExpiry]) && String.IsNullOrEmpty((contentsSplit[(int)accountPos.MembershipLastRenew]))) { pass.StartDate = Code.Utils.Text.Text.FormatInputDate(contentsSplit[(int)accountPos.MembershipExpiry]); } else { pass.StartDate = Code.Utils.Text.Text.FormatInputDate(contentsSplit[(int)accountPos.MembershipExpiry]).AddYears(-1); } } catch { pass.StartDate = UKTime.Now; } try { pass.ExpiryDate = Code.Utils.Text.Text.FormatInputDate(contentsSplit[(int)accountPos.MembershipExpiry]); } catch { pass.ExpiryDate = new DateTime(2075, 12, 31); } db.CRM_AnnualPasses.InsertOnSubmit(pass); db.SubmitChanges(); CRM_AnnualPassPerson passPerson = new CRM_AnnualPassPerson() { CRM_AnnualPassID = pass.ID, CRM_PersonID = person.ID, IsArchived = false }; db.CRM_AnnualPassPersons.InsertOnSubmit(passPerson); db.SubmitChanges(); } if (!String.IsNullOrEmpty(contentsSplit[(int)accountPos.OrgName])) { CRM_Organisation org = db.CRM_Organisations.FirstOrDefault(f => f.Name == contentsSplit[(int)accountPos.OrgName]); if (org == null) { CRM_Address orgAddress = new CRM_Address() { AddressLine1 = contentsSplit[(int)accountPos.OrgAddr1], AddressLine2 = contentsSplit[(int)accountPos.OrgAddr2], AddressLine3 = contentsSplit[(int)accountPos.OrgAddr3], AddressLine4 = contentsSplit[(int)accountPos.OrgAddr4], AddressLine5 = "", County = "", Town = contentsSplit[(int)accountPos.OrgAddrCity], Postcode = contentsSplit[(int)accountPos.Postcode], CountryID = 1 }; db.CRM_Addresses.InsertOnSubmit(orgAddress); db.SubmitChanges(); org = new CRM_Organisation() { CRM_OrganisationTypeID = 1, CRM_AddressID = orgAddress.ID, Name = contentsSplit[(int)accountPos.OrgName], IsArchived = false, PrimaryContactReference = person.Reference }; db.CRM_Organisations.InsertOnSubmit(org); db.SubmitChanges(); } CRM_Role role = db.CRM_Roles.FirstOrDefault(f => f.Name == contentsSplit[(int)accountPos.OrgPosition]); if (role == null) { role = new CRM_Role(); db.CRM_Roles.InsertOnSubmit(role); role.Name = contentsSplit[(int)accountPos.OrgPosition]; db.SubmitChanges(); } CRM_PersonOrganisation personOrg = new CRM_PersonOrganisation() { CRM_OrganisationID = org.ID, CRM_RoleID = role.ID, IsArchived = false, Email = "", Telephone = "", CRM_PersonID = person.ID }; db.CRM_PersonOrganisations.InsertOnSubmit(personOrg); db.SubmitChanges(); } } } } }
public void RunImport(int startLine, int endLine) { MainDataContext db = new MainDataContext(); HttpServerUtility Server = HttpContext.Current.Server; string path = "/TaskScript/relationships.csv"; using (StreamReader reader = new StreamReader(Server.MapPath(path))) { lineNumber = 0; while (!reader.EndOfStream) { lineNumber++; string contents = reader.ReadLine(); if (lineNumber >= startLine && lineNumber <= endLine) { string[] contentsSplit = contents.Split(','); string errorMessage = ""; CRM_Person person = db.CRM_Persons.FirstOrDefault(f => f.Firstname.Trim().ToLower() == contentsSplit[(int)accountPos.firstname].Trim().ToLower() && f.Lastname.Trim().ToLower() == contentsSplit[(int)accountPos.surname].Trim().ToLower() && f.Firstname.Trim() != ""); CRM_RelationCode unknownRelationCode = db.CRM_RelationCodes.Single(s => s.Name == "");; CRM_Person personB = db.CRM_Persons.FirstOrDefault(f => f.Firstname.Trim().ToLower() == contentsSplit[(int)accountPos.relfirstname].Trim().ToLower() && f.Lastname.Trim().ToLower() == contentsSplit[(int)accountPos.relsurname].Trim().ToLower()); if (person != null && personB == null) { CRM_Address relationAddress = person.PrimaryAddress; CRM_Address address = new CRM_Address() { AddressLine1 = relationAddress.AddressLine1, AddressLine2 = relationAddress.AddressLine2, AddressLine3 = relationAddress.AddressLine3, AddressLine4 = relationAddress.AddressLine4, AddressLine5 = relationAddress.AddressLine5, Town = relationAddress.Town, CountryID = relationAddress.CountryID, County = relationAddress.County, Postcode = relationAddress.Postcode }; db.CRM_Addresses.InsertOnSubmit(address); db.SubmitChanges(); personB = new CRM_Person() { Title = "", Firstname = contentsSplit[(int)accountPos.relfirstname], Lastname = contentsSplit[(int)accountPos.relsurname], DateAdded = UKTime.Now, DateModified = UKTime.Now, DateOfBirth = null, IsArchived = false, IsMale = null, PrimaryEmail = "", PrimaryTelephone = "", IsContactEmail = false, IsContactPost = true, IsChild = false, IsConcession = false, IsCarerMinder = false, IsDeceased = false, IsGiftAid = false, IsDoNotEmail = false, IsDoNotMail = false, Telephone2 = "", PreviousNames = "", CRM_AddressID = address.ID, Password = "", TempCode = "" }; db.CRM_Persons.InsertOnSubmit(personB); db.SubmitChanges(); CRM_FormFieldAnswer originAnswer = new CRM_FormFieldAnswer() { Answer = "Import", CRM_FormFieldID = 2, TargetReference = personB.Reference }; db.CRM_FormFieldAnswers.InsertOnSubmit(originAnswer); db.SubmitChanges(); } if (person != null && personB != null && contentsSplit[(int)accountPos.relcode] != "Daughter" && contentsSplit[(int)accountPos.relcode] != "Son") { CRM_RelationCode relCode = db.CRM_RelationCodes.FirstOrDefault(f => f.Name.Trim().ToLower() == contentsSplit[(int)accountPos.relcode].Trim().ToLower()); if (relCode != null) { CRM_PersonRelationship personRel = new CRM_PersonRelationship(); personRel.PersonA = person; personRel.PersonB = personB; personRel.CRM_PersonIDAddress = person.ID; personRel.PersonACode = relCode; personRel.PersonBCode = unknownRelationCode; string salutation = ""; // mr and mrs somebody if (person.Lastname.Trim().ToLower() == personB.Lastname.Trim().ToLower() && person.Title != "" && personB.Title != "") { if (person.Title == "Mr") { salutation = person.Title + " and " + personB.Title + " " + person.Lastname; } else { salutation = personB.Title + " and " + person.Title + " " + person.Lastname; } } else if ((person.Lastname.Trim().ToLower() != personB.Lastname.Trim().ToLower()) && person.Title != "" && personB.Title != "") { // mr smith and mrs somebody if (person.Title == "Mr") { salutation = person.Title + " " + person.Lastname + " and " + personB.Title + " " + personB.Lastname; } else { salutation = personB.Title + " " + personB.Lastname + " and " + person.Title + " " + person.Lastname; } } else if (person.Lastname.Trim().ToLower() == personB.Lastname.Trim().ToLower()) { salutation = person.Firstname + " and " + personB.Firstname + " " + person.Lastname; } else { salutation = person.Firstname + " " + person.Lastname + " and " + personB.Firstname + " " + personB.Lastname; } personRel.Salutation = salutation; db.CRM_PersonRelationships.InsertOnSubmit(personRel); db.SubmitChanges(); } } } } } }
protected void RunImport(int startLine, int endLine) { MainDataContext db = new MainDataContext(); HttpServerUtility Server = HttpContext.Current.Server; string path = "/TaskScript/Art_Booking.csv"; using (StreamReader reader = new StreamReader(Server.MapPath(path))) { lineNumber = 0; while (!reader.EndOfStream) { lineNumber++; string contents = reader.ReadLine(); if (lineNumber >= startLine && lineNumber <= endLine) { string[] contentsSplit = contents.Split(','); string errorMessage = ""; CRM_Person person = db.CRM_Persons.FirstOrDefault(f => f.PrimaryEmail.Trim().ToLower() == contentsSplit[(int)accountPos.Email].Trim().ToLower() && f.Lastname.Trim().ToLower() == contentsSplit[(int)accountPos.Lastname].Trim().ToLower()); if (person == null) { CRM_Address address = new CRM_Address(); address.AddressLine1 = contentsSplit[(int)accountPos.Address1]; address.AddressLine2 = contentsSplit[(int)accountPos.Address2]; address.AddressLine3 = contentsSplit[(int)accountPos.Address3]; address.AddressLine4 = contentsSplit[(int)accountPos.Address4]; address.AddressLine5 = ""; address.Town = ""; address.County = contentsSplit[(int)accountPos.Address4]; address.Postcode = contentsSplit[(int)accountPos.Postcode]; address.CountryID = 1; db.CRM_Addresses.InsertOnSubmit(address); db.SubmitChanges(); person = new CRM_Person(); db.CRM_Persons.InsertOnSubmit(person); person.AddressType = (byte)CRM_Address.Types.Home; person.DateAdded = UKTime.Now; person.IsArchived = false; person.IsChild = false; person.IsCarerMinder = false; person.PreviousNames = ""; person.PrimaryEmail = contentsSplit[(int)accountPos.Email]; person.PrimaryTelephone = contentsSplit[(int)accountPos.Phone1]; person.Telephone2 = contentsSplit[(int)accountPos.Phone2]; person.IsDoNotMail = false; person.LegacyID = null; person.CRM_AddressID = address.ID; person.Password = ""; person.TempCode = ""; } person.DateModified = UKTime.Now; person.Title = ""; person.Firstname = contentsSplit[(int)accountPos.Firstname]; person.Lastname = contentsSplit[(int)accountPos.Lastname]; person.IsMale = null; person.IsDoNotEmail = false; db.SubmitChanges(); if (!String.IsNullOrEmpty(contentsSplit[(int)accountPos.Company])) { CRM_Organisation org = db.CRM_Organisations.FirstOrDefault(f => f.Name.Trim().ToLower() == contentsSplit[(int)accountPos.Company].Trim().ToLower()); if (org == null) { CRM_Address orgAddress = new CRM_Address() { AddressLine1 = contentsSplit[(int)accountPos.Address1], AddressLine2 = contentsSplit[(int)accountPos.Address2], AddressLine3 = contentsSplit[(int)accountPos.Address3], AddressLine4 = contentsSplit[(int)accountPos.Address4], AddressLine5 = "", County = "", Town = "", Postcode = contentsSplit[(int)accountPos.Postcode], CountryID = 1 }; db.CRM_Addresses.InsertOnSubmit(orgAddress); db.SubmitChanges(); org = new CRM_Organisation() { CRM_OrganisationTypeID = 1, CRM_AddressID = orgAddress.ID, Name = contentsSplit[(int)accountPos.Company], IsArchived = false, PrimaryContactReference = person.Reference, }; db.CRM_Organisations.InsertOnSubmit(org); db.SubmitChanges(); } CRM_Role role = db.CRM_Roles.FirstOrDefault(f => f.Name == ""); CRM_PersonOrganisation personOrg = new CRM_PersonOrganisation() { CRM_OrganisationID = org.ID, CRM_RoleID = role.ID, IsArchived = false, Email = "", Telephone = "", CRM_PersonID = person.ID }; db.CRM_PersonOrganisations.InsertOnSubmit(personOrg); db.SubmitChanges(); } //constituent type CRM_FormFieldAnswer consTypeAnswer = db.CRM_FormFieldAnswers.FirstOrDefault(f => f.TargetReference == person.Reference && f.CRM_FormFieldID == 1); //origin CRM_FormFieldAnswer originAnswer = db.CRM_FormFieldAnswers.FirstOrDefault(f => f.TargetReference == person.Reference && f.CRM_FormFieldID == 2); if (consTypeAnswer == null) { consTypeAnswer = new CRM_FormFieldAnswer() { Answer = "Group Booking", CRM_FormFieldID = 1, TargetReference = person.Reference }; db.CRM_FormFieldAnswers.InsertOnSubmit(consTypeAnswer); db.SubmitChanges(); } else { string[] items = consTypeAnswer.Answer.Split(new string[] { "<br/>" }, StringSplitOptions.None); if (!items.Any(i => i == "Group Booking")) { consTypeAnswer.Answer += "<br/>Group Booking"; } db.SubmitChanges(); } if (originAnswer == null) { originAnswer = new CRM_FormFieldAnswer() { Answer = "Import", CRM_FormFieldID = 2, TargetReference = person.Reference }; db.CRM_FormFieldAnswers.InsertOnSubmit(originAnswer); db.SubmitChanges(); } else { string[] items = originAnswer.Answer.Split(new string[] { "<br/>" }, StringSplitOptions.None); if (!items.Any(i => i == "Import")) { consTypeAnswer.Answer += "<br/>Import"; } db.SubmitChanges(); } } } } }