internal void UpdateFormulaUsage(List <QueryItem> allQueryItems, InternaleEditResult result) { BizDataItem bizDataItem = new BizDataItem(); BizFormulaUsage bizFormulaUsage = new BizFormulaUsage(); foreach (var editQuertyResult in result.EditQueryResults) { try { var queryItem = editQuertyResult.QueryItem; if (queryItem.DataItem.GetProperties().Any(x => x.FormulaID != 0)) { var dataItemID = bizDataItem.GetOrCreateDataItem(queryItem.DataItem); foreach (var property in queryItem.DataItem.GetProperties().Where(x => x.FormulaID != 0)) { FormulaUsageDTO usage = new FormulaUsageDTO(); usage.DataItemID = dataItemID; usage.ColumnID = property.ColumnID; usage.FormulaID = property.FormulaID; usage.FormulaUsageParemeters = property.FormulaUsageParemeters; bizFormulaUsage.UpdateFormulaUsage(usage); } } } catch (Exception ex) { editQuertyResult.ForumulaUsageResult = Enum_DR_ResultType.ExceptionThrown; editQuertyResult.ForumulaUsageMessage = ex.Message; } } }
private void AddLogInternal(DataLogDTO message, MyIdeaDataDBEntities context, DR_Requester requester) { var dbLog = new DataLog(); if (message.DatItem.DataItemID == 0) { dbLog.MyDataItemID = bizDataItem.GetOrCreateDataItem(message.DatItem); } else { dbLog.MyDataItemID = message.DatItem.DataItemID; } // dbLog.DataInfo = message.DatItem.ViewInfo; dbLog.Date = DateTime.Now; dbLog.Time = DateTime.Now.ToString("HH:mm:ss"); dbLog.Duration = message.Duration; dbLog.MajorFunctionException = message.MajorException; dbLog.MinorFunctionException = message.MinorException; dbLog.MajorFunctionExceptionMessage = message.MajorFunctionExceptionMessage; dbLog.LocationInfo = message.LocationInfo; dbLog.RelatedItemID = message.RelatedItemID; dbLog.PackageGuid = message.PackageGuid; dbLog.MainType = (short)message.MainType; dbLog.UserID = requester.Identity; if (message.EditDataItemExceptionLog != null) { dbLog.EditDataItemExceptionLog = new EditDataItemExceptionLog(); dbLog.EditDataItemExceptionLog.AfterSaveActionExceptionMessage = message.EditDataItemExceptionLog.AfterSaveActionExceptionMessage; //dbLog.EditDataItemExceptionLog.BeforeSaveActionExceptionMessage = message.EditDataItemExceptionLog.BeforeSaveActionExceptionMessage; //dbLog.EditDataItemExceptionLog.DataUpdateExceptionMessage = message.EditDataItemExceptionLog.DataUpdateExceptionMessage; //dbLog.EditDataItemExceptionLog.FormulaUsageExceptionMessage = message.EditDataItemExceptionLog.ForumulaUsageExceptionMessage; dbLog.EditDataItemExceptionLog.DataUpdateQuery = message.EditDataItemExceptionLog.DataUpdateQuery; } if (message.EditDataItemColumnDetails != null) { foreach (var messageCol in message.EditDataItemColumnDetails) { EditDataItemColumnDetails dbCol = new EditDataItemColumnDetails(); dbCol.ColumnID = messageCol.ColumnID; dbCol.Info = messageCol.Info; dbCol.NewValue = messageCol.NewValue == null ? "<Null>" : messageCol.NewValue.ToString(); dbCol.OldValue = messageCol.OldValue == null ? "<Null>" : messageCol.OldValue.ToString(); dbCol.FormulaException = messageCol.FormulaException; dbCol.FormulaID = messageCol.FormulaID; dbLog.EditDataItemColumnDetails.Add(dbCol); foreach (var formulaParam in messageCol.FormulaUsageParemeters) { FormulaUsageParemeters paramDB = new FormulaUsageParemeters(); paramDB.ID = formulaParam.ID; paramDB.ParameterName = formulaParam.ParameterName; paramDB.ParameterValue = formulaParam.ParameterValue; paramDB.RelationshipKeyColumnTail = formulaParam.RelationshipPropertyTail; dbCol.FormulaUsageParemeters.Add(paramDB); } } } //if (message.ArchiveItemLog != null) //{ // dbLog.ArchiveItemLog = new ArchiveItemLog(); // dbLog.ArchiveItemLog.Exception = message.ArchiveItemLog.Exception; //} context.DataLog.Add(dbLog); }