private void Frm_PropertySelected(object sender, MyPropertyInfo e, RadTreeViewItem parentItem) { MyProjectManager.GetMyProjectManager.CloseDialog(sender); FormulaItemDTO fItem = FormulaHelper.ToFormulaItem(e); AddNode(parentItem == null ? treeParameters.Items : parentItem.Items, fItem); }
//////internal List<FormulaItemDTO> GetFormulaItems(FormulaDefinitionInstance formulaInstance, string expressionStr) //////{ ////// FormulaItems.Clear(); ////// //if (MainFormulaObject is FormulaObject) ////// //{ ////// //////formulaInstance.PropertyGetCalled += FormulaInstance_PropertyGetCalled; ////// //} ////// //else if (mainFormulaObjectOrList is IList) ////// //{ ////// // foreach (FormulaObject item in (mainFormulaObjectOrList as IList)) ////// // { ////// // item.PropertyGetCalled += FormulaInstance_PropertyGetCalled; ////// // } ////// //} ////// // GetExpression(expressionStr); ////// //////formulaInstance.CalculateExpression(expressionStr); ////// //////formulaInstance.PropertyGetCalled -= FormulaInstance_PropertyGetCalled; ////// return FormulaItems; //////} private void FormulaInstance_PropertyGetCalled(object sender, PropertyGetArg e) { //var parentItem = GetParentFormulaItem(FormulaItems, e); if (FormulaItemExists(e.PropertyInfo, e.PropertyInfo.ID)) { return; } FormulaItemDTO newItem = new FormulaItemDTO(); newItem.ItemType = GetFormulaItemType(e.PropertyInfo.PropertyType); if (newItem.ItemType == FormuaItemType.None) { return; } newItem.ItemID = e.PropertyInfo.ID; newItem.ItemTitle = e.PropertyInfo.Name; newItem.RelationshipIDTail = e.PropertyInfo.RelationshipTail; newItem.RelationshipNameTail = e.PropertyInfo.RelationshipPropertyTail; //if (parentItem == null) FormulaItems.Add(newItem); //else // parentItem.ChildFormulaItems.Add(newItem); }
private RadTreeViewItem AddNode(ItemCollection items, FormulaItemDTO item) { RadTreeViewItem node = new RadTreeViewItem(); node.Header = item.ItemTitle; node.DataContext = item; items.Add(node); return(node); }
internal static FormulaItemDTO ToFormulaItem(MyPropertyInfo calledProperty) { var newItem = new FormulaItemDTO(); newItem.ItemType = GetFormulaItemType(calledProperty.PropertyType); if (newItem.ItemType == FormuaItemType.None) { return(null); } newItem.ItemID = calledProperty.ID; newItem.ItemTitle = calledProperty.Name; newItem.RelationshipIDTail = calledProperty.RelationshipTail; newItem.RelationshipNameTail = calledProperty.RelationshipPropertyTail; return(newItem); }
//private void RemoveFormulaItem(MyProjectEntities projectContext, FormulaItems formulaItems) //{ // while (formulaItems.Any()) // { // projectContext.FormulaItems.Remove(formulaItems); // } //} private FormulaItems ToFormualaItem(FormulaItemDTO formulaItem, Formula dbFormula) { FormulaItems dbItem = new FormulaItems(); dbItem.ID = formulaItem.ID; dbItem.RelationshipIDTail = formulaItem.RelationshipIDTail; dbItem.RelationshipNameTail = formulaItem.RelationshipNameTail; dbItem.ItemTitle = formulaItem.ItemTitle; if (formulaItem.ItemType == FormuaItemType.Column) { dbItem.ColumnID = formulaItem.ItemID; } else if (formulaItem.ItemType == FormuaItemType.FormulaParameter) { dbItem.FormulaParameterID = formulaItem.ItemID; } else if (formulaItem.ItemType == FormuaItemType.Relationship) { dbItem.RelationshipID = formulaItem.ItemID; } else if (formulaItem.ItemType == FormuaItemType.DatabaseFunction) { dbItem.DatabaseFunction_TableDrivedEntityID = formulaItem.ItemID; } else if (formulaItem.ItemType == FormuaItemType.Code) { dbItem.CodeFunction_TableDrivedEntityID = formulaItem.ItemID; } else if (formulaItem.ItemType == FormuaItemType.State) { dbItem.TableDrivedEntityStateID = formulaItem.ItemID; } //foreach (var citem in formulaItem.ChildFormulaItems) //{ // var sendRelationshipTail = relationshipTail; // if (dbItem.RelationshipID != null) // sendRelationshipTail = (sendRelationshipTail == "" ? dbItem.RelationshipID.ToString() : sendRelationshipTail + "," + dbItem.RelationshipID); // var childItem = ToFormualaItem(citem, dbFormula, sendRelationshipTail); // dbItem.FormulaItems1.Add(childItem); //} return(dbItem); }
private void LokCodeFunctionEntity_SelectionChanged(object sender, MyCommonWPFControls.SelectionChangedArg e) { if (lokCodeFunctionEntity.SelectedItem != null) { //Formula.FormulaItems.Clear(); //Formula.FormulaItems = e.FormulaItems; var codeEntity = bizCodeFunction.GetCodeFunctionEntity(MyProjectManager.GetMyProjectManager.GetRequester(), (int)lokCodeFunctionEntity.SelectedValue); cmbTypes.SelectedItem = codeEntity.CodeFunction.RetrunDotNetType; List <FormulaItemDTO> list = new List <FormulaItemDTO>(); foreach (var item in codeEntity.CodeFunctionEntityColumns.Where(x => x.ColumnID != 0)) { var rItem = new FormulaItemDTO(); rItem.ItemID = item.ColumnID; rItem.ItemType = FormuaItemType.Column; rItem.ItemTitle = item.ColumnName; list.Add(rItem); } ShowTreeParameters(treeParameters.Items, list); } }
private FormulaItemDTO ToFormualaItemDTO(int entityID, FormulaItems dbFormulaItem) { FormulaItemDTO formulaItem = new FormulaItemDTO(); formulaItem.ID = dbFormulaItem.ID; formulaItem.RelationshipIDTail = dbFormulaItem.RelationshipIDTail; if (!string.IsNullOrEmpty(formulaItem.RelationshipIDTail)) { var bizEntityRelationshipTail = new BizEntityRelationshipTail(); formulaItem.RelationshipTail = bizEntityRelationshipTail.ToEntityRelationshipTailDTO(entityID, formulaItem.RelationshipIDTail); } formulaItem.RelationshipNameTail = dbFormulaItem.RelationshipNameTail; formulaItem.FormulaID = dbFormulaItem.FormulaID ?? 0; formulaItem.ItemTitle = dbFormulaItem.ItemTitle; if (dbFormulaItem.ColumnID != null) { formulaItem.ItemID = dbFormulaItem.ColumnID.Value; formulaItem.ItemType = FormuaItemType.Column; } else if (dbFormulaItem.FormulaParameterID != null) { formulaItem.ItemID = dbFormulaItem.FormulaParameterID.Value; formulaItem.ItemType = FormuaItemType.FormulaParameter; } else if (dbFormulaItem.RelationshipID != null) { formulaItem.ItemID = dbFormulaItem.RelationshipID.Value; formulaItem.ItemType = FormuaItemType.Relationship; } //foreach (var dbcItem in dbFormulaItem.FormulaItems1) //{ // formulaItem.ChildFormulaItems.Add(ToFormualaItemDTO(dbcItem)); //} return(formulaItem); }