/// <summary> /// Adds a record set. /// </summary> private void AddRecordSet() { IDataListItemModel recset = DataListItemModelFactory.CreateDataListModel(string.Empty); IDataListItemModel childItem = DataListItemModelFactory.CreateDataListModel(string.Empty); recset.IsExpanded = false; childItem.Parent = recset; recset.Children.Add(childItem); RecsetCollection.Add(recset); }
/// <summary> /// Sorts the recordsets. /// </summary> private void SortRecset(bool ascending) { IList <IDataListItemModel> newRecsetCollection = @ascending ? RecsetCollection.OrderBy(c => c.DisplayName).ToList() : RecsetCollection.OrderByDescending(c => c.DisplayName).ToList(); RecsetCollection.Clear(); foreach (var item in newRecsetCollection.Where(c => !c.IsBlank)) { RecsetCollection.Add(item); } AddRecordSet(); }
/// <summary> /// Sorts the recordsets. /// </summary> private void SortRecset() { IList <IDataListItemModel> newRecsetCollection = RecsetCollection.OrderBy(c => c.DisplayName).ToList(); RecsetCollection.Clear(); foreach (IDataListItemModel item in newRecsetCollection.Where(c => !c.IsBlank)) { RecsetCollection.Add(item); } AddRecordSet(); }
/// <summary> /// Converts a binary data list to list a data list item view models. /// </summary> /// <param name="dataListToConvert">The data list to convert.</param> /// <param name="errorString">The error string.</param> /// <returns></returns> private void ConvertBinaryDataListToListOfIDataListItemModels(IBinaryDataList dataListToConvert, out string errorString) { errorString = string.Empty; RecsetCollection.Clear(); ScalarCollection.Clear(); IList <IBinaryDataListEntry> listOfEntries = dataListToConvert.FetchAllEntries(); foreach (var entry in listOfEntries) { if (entry.IsRecordset) { var recset = DataListItemModelFactory.CreateDataListModel(entry.Namespace, entry.Description, entry.ColumnIODirection); recset.IsEditable = entry.IsEditable; foreach (var col in entry.Columns) { var child = DataListItemModelFactory.CreateDataListModel(col.ColumnName, col.ColumnDescription, col.ColumnIODirection); child.Parent = recset; child.IsEditable = col.IsEditable; recset.Children.Add(child); } RecsetCollection.Add(recset); } else { var scalar = DataListItemModelFactory.CreateDataListModel(entry.Namespace, entry.Description, entry.ColumnIODirection); scalar.IsEditable = entry.IsEditable; ScalarCollection.Add(scalar); } } }
public void AddMissingDataListItems(IList <IDataListVerifyPart> parts, bool async) { IList <IDataListItemModel> tmpRecsetList = new List <IDataListItemModel>(); foreach (var part in parts) { if (part.IsScalar) { if (ScalarCollection.FirstOrDefault(c => c.Name == part.Field) == null) { IDataListItemModel scalar = DataListItemModelFactory.CreateDataListModel(part.Field, part.Description, enDev2ColumnArgumentDirection .None); if (ScalarCollection.Count > ScalarCollection.Count - 1) { ScalarCollection.Insert(ScalarCollection.Count - 1, scalar); } else { ScalarCollection.Insert(ScalarCollection.Count, scalar); } } } else { IDataListItemModel recsetToAddTo = RecsetCollection. FirstOrDefault(c => c.Name == part.Recordset && c.IsRecordset); IDataListItemModel tmpRecset = tmpRecsetList.FirstOrDefault(c => c.Name == part.Recordset); if (recsetToAddTo != null) { if (recsetToAddTo.Children.FirstOrDefault(c => c.Name == part.Field) == null) { IDataListItemModel child = DataListItemModelFactory.CreateDataListModel(part.Field, part.Description, recsetToAddTo); if (recsetToAddTo.Children.Count > 0) { recsetToAddTo.Children.Insert(recsetToAddTo.Children.Count - 1, child); } else { recsetToAddTo.Children.Add(child); } } } else if (tmpRecset != null) { IDataListItemModel child = DataListItemModelFactory.CreateDataListModel (part.Field, part.Description, tmpRecset); child.Name = part.Recordset + "()." + part.Field; tmpRecset.Children.Add(child); } else { IDataListItemModel recset = DataListItemModelFactory.CreateDataListModel (part.Recordset, part.Description, enDev2ColumnArgumentDirection.None); tmpRecsetList.Add(recset); } } } foreach (var item in tmpRecsetList) { if (item.Children.Count == 0) { item.Children.Add(DataListItemModelFactory.CreateDataListModel(string.Empty, string.Empty, item)); } if (RecsetCollection.Count > 0) { RecsetCollection.Insert(RecsetCollection.Count - 1, item); } else { RecsetCollection.Add(item); } } WriteToResourceModel(); EventPublisher.Publish(new UpdateIntellisenseMessage()); RemoveBlankScalars(); RemoveBlankRecordsets(); RemoveBlankRecordsetFields(); if (parts.Count > 0) { AddBlankRow(null); } }
public void AddMissingDataListItems(IList <IDataListVerifyPart> parts, bool async) { IList <IDataListItemModel> tmpRecsetList = new List <IDataListItemModel>(); foreach (IDataListVerifyPart part in parts) { if (part.IsScalar) { IDataListItemModel scalar = DataListItemModelFactory.CreateDataListModel(part.Field, part.Description, enDev2ColumnArgumentDirection.None); ScalarCollection.Insert(ScalarCollection.Count - 1, scalar); Validator.Add(scalar); } else { IDataListItemModel recsetToAddTo = RecsetCollection.FirstOrDefault(c => c.Name == part.Recordset && c.IsRecordset); IDataListItemModel tmpRecset = tmpRecsetList.FirstOrDefault(c => c.Name == part.Recordset); if (recsetToAddTo != null) { IDataListItemModel child = DataListItemModelFactory.CreateDataListModel(part.Field, part.Description, recsetToAddTo); if (recsetToAddTo.Children.Count > 0) { recsetToAddTo.Children.Insert(recsetToAddTo.Children.Count - 1, child); } else { recsetToAddTo.Children.Add(child); } recsetToAddTo.Validator.Add(child); } else if (tmpRecset != null) { IDataListItemModel child = DataListItemModelFactory.CreateDataListModel(part.Field, part.Description, tmpRecset); tmpRecset.Children.Add(child); tmpRecset.Validator.Add(child); } else { IDataListItemModel recset = DataListItemModelFactory.CreateDataListModel(part.Recordset, part.Description, enDev2ColumnArgumentDirection.None); tmpRecsetList.Add(recset); } } } foreach (IDataListItemModel item in tmpRecsetList) { if (item.Children.Count == 0) { item.Children.Add(DataListItemModelFactory.CreateDataListModel(string.Empty, string.Empty, item)); } if (RecsetCollection.Count > 0) { RecsetCollection.Insert(RecsetCollection.Count - 1, item); } else { RecsetCollection.Add(item); } Validator.Add(item); } WriteToResourceModel(); Mediator.SendMessage(MediatorMessages.UpdateIntelisense, this); RemoveBlankScalars(); RemoveBlankRecordsets(); RemoveBlankRecordsetFields(); AddBlankRow(null); }