protected void btnEdit_Click(object sender, EventArgs e) { try { if (Page.IsValid) { int id = -1; string _id = Request.QueryString["id"].ToString(); int.TryParse(_id, out id); int userId = CurrentEnvironment.LoggedUser.Id; HealthFacilityType o = HealthFacilityType.GetHealthFacilityTypeById(id); o.Name = txtName.Text.Replace("'", @"''"); o.Code = txtCode.Text.Replace("'", @"''"); o.Notes = txtNotes.Text.Replace("'", @"''"); o.IsActive = bool.Parse(rblIsActive.SelectedValue); o.ModifiedOn = DateTime.Now; o.ModifiedBy = userId; if (id == 1) { o.IsActive = true; } int i = HealthFacilityType.Update(o); if (i > 0) { lblSuccess.Visible = true; lblWarning.Visible = false; lblError.Visible = false; gvHealthFacilityType.DataBind(); //ClearControls(this); } else { lblSuccess.Visible = false; lblWarning.Visible = true; lblError.Visible = false; } } } catch (Exception ex) { lblSuccess.Visible = false; lblWarning.Visible = false; lblError.Visible = true; } }
protected void btnAdd_Click(object sender, EventArgs e) { try { if (Page.IsValid) { int userId = CurrentEnvironment.LoggedUser.Id; HealthFacilityType o = new HealthFacilityType(); o.Name = txtName.Text.Replace("'", @"''"); o.Code = txtCode.Text.Replace("'", @"''"); o.IsActive = bool.Parse(rblIsActive.SelectedValue); o.Notes = txtNotes.Text.Replace("'", @"''"); o.ModifiedOn = DateTime.Now; o.ModifiedBy = userId; int i = HealthFacilityType.Insert(o); if (i > 0) { lblSuccess.Visible = true; lblWarning.Visible = false; lblError.Visible = false; gvHealthFacilityType.DataBind(); ClearControls(this); } else { lblSuccess.Visible = false; lblWarning.Visible = true; lblError.Visible = false; } } } catch (Exception ex) { lblSuccess.Visible = false; lblWarning.Visible = false; lblError.Visible = true; } }
protected void btnRemove_Click(object sender, EventArgs e) { try { int id = -1; string _id = Request.QueryString["id"].ToString(); int.TryParse(_id, out id); int userId = CurrentEnvironment.LoggedUser.Id; int i = 0; if (id != 1) { i = HealthFacilityType.Remove(id); } if (i > 0) { lblSuccess.Visible = true; lblWarning.Visible = false; lblError.Visible = false; gvHealthFacilityType.DataBind(); ClearControls(this); } else { lblSuccess.Visible = false; lblWarning.Visible = false; lblError.Visible = true; } } catch (Exception ex) { lblSuccess.Visible = false; lblWarning.Visible = false; lblError.Visible = true; } }
protected void Page_Load(object sender, EventArgs e) { if (!this.Page.IsPostBack) { List <string> actionList = null; string sessionNameAction = ""; if (CurrentEnvironment.LoggedUser != null) { sessionNameAction = "__GIS_actionList_" + CurrentEnvironment.LoggedUser.Id; actionList = (List <string>)Session[sessionNameAction]; } if ((actionList != null) && actionList.Contains("ViewHealthFacilityType") && (CurrentEnvironment.LoggedUser != null)) { int userId = CurrentEnvironment.LoggedUser.Id; string language = CurrentEnvironment.Language; int languageId = int.Parse(language); Dictionary <string, string> wtList = (Dictionary <string, string>)HttpContext.Current.Cache["HealthFacilityType-dictionary" + language]; if (wtList == null) { List <WordTranslate> wordTranslateList = WordTranslate.GetWordByLanguage(languageId, "HealthFacilityType"); wtList = new Dictionary <string, string>(); foreach (WordTranslate vwt in wordTranslateList) { wtList.Add(vwt.Code, vwt.Name); } HttpContext.Current.Cache.Insert("HealthFacilityType-dictionary" + language, wtList); } //controls this.lblName.Text = wtList["HealthFacilityTypeName"]; this.lblCode.Text = wtList["HealthFacilityTypeCode"]; this.lblIsActive.Text = wtList["HealthFacilityTypeIsActive"]; this.lblNotes.Text = wtList["HealthFacilityTypeNotes"]; //grid header text gvHealthFacilityType.Columns[1].HeaderText = wtList["HealthFacilityTypeName"]; gvHealthFacilityType.Columns[2].HeaderText = wtList["HealthFacilityTypeCode"]; gvHealthFacilityType.Columns[3].HeaderText = wtList["HealthFacilityTypeNotes"]; gvHealthFacilityType.Columns[4].HeaderText = wtList["HealthFacilityTypeIsActive"]; // actions this.btnAdd.Visible = actionList.Contains("AddHealthFacilityType"); this.btnEdit.Visible = actionList.Contains("EditHealthFacilityType"); this.btnRemove.Visible = actionList.Contains("RemoveHealthFacilityType"); //buttons this.btnAdd.Text = wtList["HealthFacilityTypeAddButton"]; this.btnEdit.Text = wtList["HealthFacilityTypeEditButton"]; this.btnRemove.Text = wtList["HealthFacilityTypeRemoveButton"]; // message this.lblSuccess.Text = wtList["HealthFacilityTypeSuccessText"]; this.lblWarning.Text = wtList["HealthFacilityTypeWarningText"]; this.lblError.Text = wtList["HealthFacilityTypeErrorText"]; //Page Title this.lblTitle.Text = wtList["HealthFacilityTypePageTitle"]; //Selected object int id = -1; string _id = Request.QueryString["id"]; if (!String.IsNullOrEmpty(_id)) { int.TryParse(_id, out id); HealthFacilityType o = HealthFacilityType.GetHealthFacilityTypeById(id); txtName.Text = o.Name; txtCode.Text = o.Code; txtNotes.Text = o.Notes; rblIsActive.Items[0].Selected = o.IsActive; rblIsActive.Items[1].Selected = !o.IsActive; btnAdd.Visible = false; } else { btnEdit.Visible = false; btnRemove.Visible = false; } } else { Response.Redirect("Default.aspx", false); } } }
/// <summary> /// Initialize the test data /// </summary> public static void InitializeTestDataset() { /// Transaction type 999 = ID var transactionTypes = TransactionType.GetTransactionTypeList(); if (!transactionTypes.Exists(o => o.Name == "Allocation")) { TransactionType.Insert(new TransactionType() { Name = "Allocation" }); } if (!transactionTypes.Exists(o => o.Name == "Transfer")) { TransactionType.Insert(new TransactionType() { Name = "Transfer" }); } // GTIN 12345 - PHARMACO OPV if (ItemManufacturer.GetItemManufacturerByGtin(GTIN_UNDER_TEST) == null) { // Item Category 999 = Vaccine if (ItemCategory.GetItemCategoryById(VACCINE_CATEGORY_ID) == null) { VACCINE_CATEGORY_ID = ItemCategory.Insert(new ItemCategory() { Id = VACCINE_CATEGORY_ID, Code = "VACCINE", IsActive = true, ModifiedBy = 1, ModifiedOn = DateTime.Now, Name = "Vaccine" }); } // Item 999 - OPV if (Item.GetItemById(OPV_ITEM_ID) == null) { OPV_ITEM_ID = Item.Insert(new Item() { Code = "OPV", EntryDate = DateTime.Now, Id = OPV_ITEM_ID, ItemCategoryId = VACCINE_CATEGORY_ID, IsActive = true, ModifiedBy = 1, ModifiedOn = DateTime.Now, Name = "OPV" }); } // Unit of Measure if (Uom.GetUomById(DOSE_UOM_ID) == null) { DOSE_UOM_ID = Uom.Insert(new Uom() { Id = DOSE_UOM_ID, Name = "DOSE" }); } // Manufacturer 999 - PHARMACO if (Manufacturer.GetManufacturerById(PHARMACO_MANUFACTURER_ID) == null) { PHARMACO_MANUFACTURER_ID = Manufacturer.Insert(new Manufacturer() { Id = PHARMACO_MANUFACTURER_ID, Code = "PHX", IsActive = true, ModifiedBy = 1, ModifiedOn = DateTime.Now, Name = "PHARMACO INC." }); } ItemManufacturer.Insert(new ItemManufacturer() { Alt1QtyPer = 20, BaseUom = "DOSE", BaseUomChildPerBaseUomParent = 10, Gtin = GTIN_UNDER_TEST, IsActive = true, ItemId = OPV_ITEM_ID, ManufacturerId = PHARMACO_MANUFACTURER_ID, ModifiedBy = 1, ModifiedOn = DateTime.Now, Price = 9.99, StorageSpace = 1, Alt1Uom = "DOSE", Alt2QtyPer = 30, Alt2Uom = "DOSE" }); } if (ItemLot.GetItemLotByGtin(GTIN_UNDER_TEST) == null) { // Item 999 - OPV if (Item.GetItemById(OPV_ITEM_ID) == null) { OPV_ITEM_ID = Item.Insert(new Item() { Code = "OPV", EntryDate = DateTime.Now, Id = OPV_ITEM_ID, ItemCategoryId = VACCINE_CATEGORY_ID, IsActive = true, ModifiedBy = 1, ModifiedOn = DateTime.Now, Name = "OPV" }); } ItemLot.Insert(new ItemLot() { ExpireDate = DateTime.Now.AddDays(10), Gtin = GTIN_UNDER_TEST, ItemId = OPV_ITEM_ID, LotNumber = GTIN_LOT_USE_FIRST }); // Item Lot 2 - Will be more stock and expires later ItemLot.Insert(new ItemLot() { ExpireDate = DateTime.Now.AddDays(40), Gtin = GTIN_UNDER_TEST, ItemId = OPV_ITEM_ID, LotNumber = GTIN_LOT_USE_LAST }); // Item Lot 3 - Will trigger low stock ItemLot.Insert(new ItemLot() { ExpireDate = DateTime.Now.AddDays(80), Gtin = GTIN_UNDER_TEST, ItemId = OPV_ITEM_ID, LotNumber = GTIN_LOT_LOW_BAL }); } // Type 3 = DISTRICT if (HealthFacilityType.GetHealthFacilityTypeById(6) == null) { HealthFacilityType.Insert(new HealthFacilityType() { Id = 3, Code = "DISTRICT", IsActive = true, ModifiedBy = 1, ModifiedOn = DateTime.Now, Name = "DISTRICT LEVEL" }); } // Type 6 = SDP if (HealthFacilityType.GetHealthFacilityTypeById(6) == null) { HealthFacilityType.Insert(new HealthFacilityType() { Id = 6, Code = "SDP", IsActive = true, ModifiedBy = 1, ModifiedOn = DateTime.Now, Name = "SDP" }); } // HF888 = DISTRICT if (HealthFacility.GetHealthFacilityByCode("HF888") == null) { HealthFacility.Insert(new HealthFacility() { Id = 888, Code = "HF888", ColdStorageCapacity = 1000, IsActive = true, Leaf = false, ParentId = HealthFacility.GetHealthFacilityByParentId(0)[0].Id, TopLevel = false, TypeId = 3, VaccinationPoint = false, VaccineStore = true, ModifiedBy = 1, ModifiedOn = DateTime.Now }); } // GIVE HEALTH FACILITY SOME BALANCE var hf888Balances = HealthFacilityBalance.GetHealthFacilityBalanceByHealthFacilityCode("HF888"); HealthFacilityBalance useFirst = hf888Balances.Find(o => o.Gtin == GTIN_UNDER_TEST && o.LotNumber == GTIN_LOT_USE_FIRST), useLast = hf888Balances.Find(o => o.Gtin == GTIN_UNDER_TEST && o.LotNumber == GTIN_LOT_USE_LAST), lowStock = hf888Balances.Find(o => o.Gtin == GTIN_UNDER_TEST && o.LotNumber == GTIN_LOT_LOW_BAL); if (useFirst == null) { useFirst = new HealthFacilityBalance() { Allocated = 0, Balance = 500, Distributed = 0, Gtin = GTIN_UNDER_TEST, HealthFacilityCode = "HF888", LotNumber = GTIN_LOT_USE_FIRST, Received = 0, StockCount = 500, Used = 0, Wasted = 0 }; hf888Balances.Add(useFirst); HealthFacilityBalance.Insert(useFirst); } else { useFirst.Balance = 500; useFirst.StockCount = 500; HealthFacilityBalance.Update(useFirst); } if (useLast == null) { useLast = new HealthFacilityBalance() { Allocated = 0, Balance = 1000, Distributed = 0, Gtin = GTIN_UNDER_TEST, HealthFacilityCode = "HF888", LotNumber = GTIN_LOT_USE_LAST, Received = 0, StockCount = 1000, Used = 0, Wasted = 0 }; hf888Balances.Add(useLast); HealthFacilityBalance.Insert(useLast); } else { useLast.Balance = 1000; useLast.StockCount = 1000; HealthFacilityBalance.Update(useLast); } if (lowStock == null) { lowStock = new HealthFacilityBalance() { Allocated = 0, Balance = 10, Distributed = 0, Gtin = GTIN_UNDER_TEST, HealthFacilityCode = "HF888", LotNumber = GTIN_LOT_LOW_BAL, Received = 0, StockCount = 10, Used = 0, Wasted = 0 }; hf888Balances.Add(lowStock); HealthFacilityBalance.Insert(lowStock); } else { useLast.Balance = 10; useLast.StockCount = 10; HealthFacilityBalance.Update(lowStock); } // HF999 = SDP if (HealthFacility.GetHealthFacilityByCode("HF999") == null) { HealthFacility.Insert(new HealthFacility() { Id = 999, Code = "HF999", ColdStorageCapacity = 100, IsActive = true, Leaf = true, ParentId = HealthFacility.GetHealthFacilityByCode("HF888").Id, TopLevel = false, TypeId = 6, VaccinationPoint = true, VaccineStore = true, ModifiedOn = DateTime.Now, ModifiedBy = 1 }); } }
static void Main(string[] args) { // Concepts Console.WriteLine("Generating OpenIZ Concepts to support GIIS data"); DatasetInstall conceptDataset = new DatasetInstall() { Id = "Concepts to support TIIS data", Action = new List <DataInstallAction>() }; DataInsert healthFacilityTypes = new DataInsert() { Element = new ConceptSet() { Key = Guid.NewGuid(), Mnemonic = "HealthFacilityTypes", Oid = "1.3.6.1.4.1.45219.1.3.5.99.1", Name = "Health Facility Types", Url = "http://ivd.moh.go.tz/valueset/timr/HealthFacilityTypes" }, Association = new List <DataAssociation>() }, placeTypes = new DataInsert() { Element = new ConceptSet() { Key = Guid.NewGuid(), Mnemonic = "PlaceTypes", Oid = "1.3.6.1.4.1.45219.1.3.5.99.2", Name = "Place Sub-Classifications", Url = "http://openiz.org/valueset/timr/PlaceTypes" }, Association = new List <DataAssociation>() { new DataAssociation() { PropertyName = "Concepts", Element = new Concept() { Key = PT_DISTRICT, StatusConceptKey = StatusKeys.Active, IsSystemConcept = false, ClassKey = ConceptClassKeys.Other, Mnemonic = "PlaceType-District", ConceptNames = new List <ConceptName>() { new ConceptName() { Language = "en", Name = "District" } } } }, new DataAssociation() { PropertyName = "Concepts", Element = new Concept() { Key = PT_DISTRICT_COUNCIL, StatusConceptKey = StatusKeys.Active, IsSystemConcept = false, ClassKey = ConceptClassKeys.Other, Mnemonic = "PlaceType-DistrictCouncil", ConceptNames = new List <ConceptName>() { new ConceptName() { Language = "en", Name = "District Council" } } } }, new DataAssociation() { PropertyName = "Concepts", Element = new Concept() { Key = PT_REGION, StatusConceptKey = StatusKeys.Active, IsSystemConcept = false, ClassKey = ConceptClassKeys.Other, Mnemonic = "PlaceType-Region", ConceptNames = new List <ConceptName>() { new ConceptName() { Language = "en", Name = "Region" } } } }, new DataAssociation() { PropertyName = "Concepts", Element = new Concept() { Key = PT_TERRITORY, StatusConceptKey = StatusKeys.Active, IsSystemConcept = false, ClassKey = ConceptClassKeys.Other, Mnemonic = "PlaceType-Territory", ConceptNames = new List <ConceptName>() { new ConceptName() { Language = "en", Name = "Territory" } } } }, new DataAssociation() { PropertyName = "Concepts", Element = new Concept() { Key = PT_VILLAGE, StatusConceptKey = StatusKeys.Active, IsSystemConcept = false, ClassKey = ConceptClassKeys.Other, Mnemonic = "PlaceType-Village", ConceptNames = new List <ConceptName>() { new ConceptName() { Language = "en", Name = "Village" } } } } } }; foreach (var itm in HealthFacilityType.GetHealthFacilityTypeList().OrderBy(o => o.Id)) { facilityTypeId.Add(itm.Id, Guid.NewGuid()); healthFacilityTypes.Association.Add( new DataAssociation() { PropertyName = "Concepts", Element = new Concept() { Key = facilityTypeId[itm.Id], StatusConceptKey = StatusKeys.Active, IsSystemConcept = false, ClassKey = ConceptClassKeys.Other, Mnemonic = "Facility-" + itm.Name.Replace(" ", ""), ConceptNames = new List <ConceptName>() { new ConceptName() { Language = "en", Name = itm.Name } } } } ); } (healthFacilityTypes.Element as ConceptSet).ConceptsXml = healthFacilityTypes.Association.Select(o => o.Element.Key.Value).ToList(); (placeTypes.Element as ConceptSet).ConceptsXml = placeTypes.Association.Select(o => o.Element.Key.Value).ToList(); conceptDataset.Action.AddRange(healthFacilityTypes.Association.Select(o => new DataInsert() { Element = o.Element })); conceptDataset.Action.AddRange(placeTypes.Association.Select(o => new DataInsert() { Element = o.Element })); conceptDataset.Action.AddRange(new DataInstallAction[] { new DataInsert() { Element = new Concept() { Key = industryManufacturer, Mnemonic = "Industry-Manufacturing", ClassKey = ConceptClassKeys.Other, IsSystemConcept = false, StatusConceptKey = StatusKeys.Active, ConceptNames = new List <ConceptName>() { new ConceptName() { Language = "en", Name = "Manufacturing" } }, ConceptSetsXml = new List <Guid>() { Guid.Parse("d1597e50-845a-46e1-b9ae-6f99ff93d9db") } } }, new DataInsert() { Element = new Concept() { Key = industryOther, Mnemonic = "Industry-OtherUnknown", ClassKey = ConceptClassKeys.Other, IsSystemConcept = false, StatusConceptKey = StatusKeys.Active, ConceptNames = new List <ConceptName>() { new ConceptName() { Language = "en", Name = "Other/Unknown" } }, ConceptSetsXml = new List <Guid>() { Guid.Parse("d1597e50-845a-46e1-b9ae-6f99ff93d9db") } } }, new DataInsert() { Element = new Concept() { Key = industryHealthDelivery, Mnemonic = "Industry-HealthDelivery", ClassKey = ConceptClassKeys.Other, IsSystemConcept = false, StatusConceptKey = StatusKeys.Active, ConceptNames = new List <ConceptName>() { new ConceptName() { Language = "en", Name = "Healthcare" } }, ConceptSetsXml = new List <Guid>() { Guid.Parse("d1597e50-845a-46e1-b9ae-6f99ff93d9db") } } } }); healthFacilityTypes.Association.Clear(); placeTypes.Association.Clear(); conceptDataset.Action.Add(healthFacilityTypes); conceptDataset.Action.Add(placeTypes); // Facilities Console.WriteLine("Exporting GIIS Facilities to OpenIZ IMS Format"); DatasetInstall facilityDataset = new DatasetInstall() { Action = new List <DataInstallAction>() }; facilityDataset.Id = "Facilities from GIIS"; foreach (var itm in HealthFacility.GetHealthFacilityList().OrderBy(o => o.Id)) { facilityDataset.Action.Add(new DataInsert() { Element = MapFacility(itm) }); } // Places Console.WriteLine("Exporting GIIS Places to OpenIZ IMS Format"); DatasetInstall placeDataset = new DatasetInstall() { Action = new List <DataInstallAction>() }; placeDataset.Id = "Places from GIIS"; foreach (var itm in GIIS.DataLayer.Place.GetPlaceList().OrderBy(o => o.ParentId)) { placeDataset.Action.Add(new DataInsert() { Element = MapPlace(itm) }); } // Users Console.WriteLine("Exporting GIIS Users to OpenIZ IMS Format"); DatasetInstall userDataset = new DatasetInstall() { Action = new List <DataInstallAction>() }; userDataset.Id = "Users from TIIS"; foreach (var itm in User.GetUserList()) { if (userDataset.Action.Any(o => (o.Element as SecurityUser)?.UserName.Trim().ToLower() == itm.Username.Trim().ToLower()) || itm.Username.ToLower() == "administrator") { continue; /// Apparently user names are distinct based on case? } Guid userId = Guid.NewGuid(), entityId = Guid.NewGuid(); userMap.Add(itm.Id, userId); if (!userEntityMap.TryGetValue(itm.Id, out entityId)) { entityId = Guid.NewGuid(); userEntityMap.Add(itm.Id, entityId); } var securityUser = new SecurityUser() { Key = userId, UserName = itm.Username, Email = itm.Email, EmailConfirmed = !String.IsNullOrEmpty(itm.Email), LastLoginTime = itm.Lastlogin, SecurityHash = Guid.Empty.ToString(), Lockout = itm.IsActive ? null : (DateTime?)DateTime.MaxValue, PasswordHash = BitConverter.ToString(Convert.FromBase64String(itm.Password)).Replace("-", ""), UserClass = UserClassKeys.HumanUser, TwoFactorEnabled = false, ObsoletionTime = itm.Deleted ? (DateTime?)DateTime.Now : null, ObsoletedByKey = itm.Deleted ? (Guid?)Guid.Parse(AuthenticationContext.SystemUserSid) : null, }; var userEntity = new UserEntity() { Key = entityId, Names = new List <EntityName>() { new EntityName(NameUseKeys.OfficialRecord, itm.Lastname, itm.Firstname) }, SecurityUserKey = userId, Identifiers = new List <EntityIdentifier>() { new EntityIdentifier(new AssigningAuthority("TIIS_USER_ID", "TIIS User Identifiers", "1.3.6.1.4.1.45219.1.3.5.2"), itm.Id.ToString()) }, Tags = new List <EntityTag>() { new EntityTag("http://openiz.org/tags/contrib/importedData", "true") }, StatusConceptKey = itm.IsActive ? StatusKeys.Active : StatusKeys.Obsolete }; if (!String.IsNullOrEmpty(itm.Email)) { userEntity.Telecoms = new List <EntityTelecomAddress>() { new EntityTelecomAddress(TelecomAddressUseKeys.WorkPlace, itm.Email) } } ; Guid facilityId = Guid.Empty; if (facilityMap.TryGetValue(itm.HealthFacilityId, out facilityId)) { userEntity.Relationships.Add(new EntityRelationship(EntityRelationshipTypeKeys.Employee, new Entity() { Key = facilityId })); } // data element var securityUserData = new DataInsert() { Element = securityUser, Association = new List <DataAssociation>() }; // Role foreach (var r in Role.GetRolesOfUser(itm.Id)) { Guid roleId = Guid.Empty; if (!roleMap.TryGetValue(r.Id, out roleId)) { roleId = Guid.NewGuid(); roleMap.Add(r.Id, roleId); } var role = new SecurityRole() { Key = roleId, Name = r.Name, ObsoletionTime = r.IsActive ? null : (DateTime?)DateTime.Now, ObsoletedByKey = r.IsActive ? null : (Guid?)Guid.Parse(AuthenticationContext.SystemUserSid) }; // Add roles to the user securityUserData.Association.Add(new DataAssociation() { PropertyName = "Roles", Element = new SecurityRole() { Key = role.Key } }); // Add role userDataset.Action.Add(new DataInsert() { Element = role }); // Vaccinator? if (r.Name == "Vaccinator") { // Provider entity var providerEntity = new Provider() { Key = Guid.NewGuid(), Names = userEntity.Names, Telecoms = userEntity.Telecoms, Identifiers = userEntity.Identifiers.Select(o => new EntityIdentifier(new AssigningAuthority("PROVIDER_ID", "TImR Assigned Provider ID", "1.3.6.1.4.1.45219.1.3.5.80"), o.Value)).ToList(), Tags = new List <EntityTag>() { new EntityTag("http://openiz.org/tags/contrib/importedData", "true") }, StatusConceptKey = itm.IsActive ? StatusKeys.Active : StatusKeys.Obsolete }; userDataset.Action.Add(new DataInsert() { Element = providerEntity }); // Create a heath care provider userEntity.Relationships.Add(new EntityRelationship() { RelationshipTypeKey = EntityRelationshipTypeKeys.AssignedEntity, TargetEntityKey = providerEntity.Key }); } } userDataset.Action.Add(securityUserData); userDataset.Action.Add(new DataInsert() { Element = userEntity }); } var materialDataset = new DatasetInstall() { Id = "Manufactured Materials from GIIS" }; foreach (var il in ItemLot.GetItemLotList()) { var itm = MapMaterial(il, materialDataset); materialDataset.Action.Add(new DataUpdate() { InsertIfNotExists = true, Element = itm }); } // Write datasets XmlSerializer xsz = new XmlSerializer(typeof(DatasetInstall)); using (var fs = File.Create("990-tiis.concepts.dataset")) xsz.Serialize(fs, conceptDataset); using (var fs = File.Create("991-tiis.facilities.dataset")) xsz.Serialize(fs, facilityDataset); using (var fs = File.Create("992-tiis.places.dataset")) xsz.Serialize(fs, placeDataset); using (var fs = File.Create("993-tiis.users.dataset")) xsz.Serialize(fs, userDataset); using (var fs = File.Create("994-tiis.materials.dataset")) xsz.Serialize(fs, materialDataset); } }