public ActionResult DataSniffer() { DataSnifferObject dataSnifferObject = new DataSnifferObject(); ConnectionObject connectionObject = new ConnectionObject(); connectionObject.isConnected = false; if (Session["ConnectionObject"] != null) { connectionObject = Session["ConnectionObject"] as ConnectionObject; } dataSnifferObject.connectionObject = connectionObject; return(View(dataSnifferObject)); }
public ActionResult DataSniffer(DataSnifferObject dataSnifferObject) { List <string> parameterList = new List <string>(); parameterList.Add(dataSnifferObject.connectionObject.DatabaseSelectedName); parameterList.Add(dataSnifferObject.parameter2.ToString()); if (dataSnifferObject.runProcedure == true) { dataSnifferObject.connectionObject = connection.executeStoredProcedure(dataSnifferObject.connectionObject , "Library_model_ccc.dbo.DataSniffer_2" , parameterList , false); } string connectionString = connection.GetConnectionString(dataSnifferObject.connectionObject); string sql = " SELECT DISTINCT TableName, TableCriticality," + " SUM(CASE WHEN DataElementCriticality = 'Mandatory' and DataPresentInFile = 0 AND COALESCE(Override,0) <> 1 THEN 1 ELSE 0 END) as MandatoryFieldMissingCount, " + " SUM(CASE WHEN COALESCE(ResolvedInPostLoad,0) <> 1 THEN CAST(DataPresentInFile as int) ELSE 0 END ) as DataPresentInFileCount, " + " SUM(CASE WHEN IssuePresent = 1 AND DataPresentInFile > 0 AND COALESCE(ResolvedInPostLoad,0) <> 1 THEN 1 ELSE 0 END) as IssuePresentInFileCount," + " COUNT(*) as TotalFieldCount" + " FROM (SELECT DISTINCT TableName, TableCriticality, DataElementCriticality, DataPresentInFile, DataElement, IssuePresent , Override " + " FROM reference.DataSniffer WHERE IsActive = 1 AND COALESCE(ResolvedInPostLoad,0) <> 1 ) x GROUP BY TableName, TableCriticality "; using (SqlConnection conn2 = new SqlConnection(connectionString)) { SqlCommand cmd2 = new SqlCommand(sql, conn2); conn2.Open(); SqlDataReader rdr2 = cmd2.ExecuteReader(); List <DataSnifferParent> model2 = new List <DataSnifferParent>(); while (rdr2.Read()) { var record2 = new DataSnifferParent(); record2.TableName = rdr2["TableName"].ToString(); record2.TableCriticality = rdr2["TableCriticality"].ToString(); record2.MandatoryFieldMissingCount = Convert.ToInt32(rdr2["MandatoryFieldMissingCount"]); record2.DataPresentInFileCount = Convert.ToInt32(rdr2["DataPresentInFileCount"]); record2.IssuePresentInFileCount = Convert.ToInt32(rdr2["IssuePresentInFileCount"]); record2.TotalFieldCount = Convert.ToInt32(rdr2["TotalFieldCount"]); if (record2.DataPresentInFileCount > 0) { record2.CriticalPercent = Decimal.Round(100 * Decimal.Divide(record2.MandatoryFieldMissingCount, (record2.TotalFieldCount))); record2.CautionaryPercent = Decimal.Round(100 * Decimal.Divide(record2.IssuePresentInFileCount, (record2.TotalFieldCount))); record2.AcceptablePercent = Decimal.Round((100 - record2.CautionaryPercent - record2.CriticalPercent)); } else { record2.CriticalPercent = 0; record2.CautionaryPercent = 0; record2.AcceptablePercent = 0; } model2.Add(record2); } conn2.Close(); dataSnifferObject.dataSnifferParents = model2; } return(View(dataSnifferObject)); }