/* Делаем SELECT с JOIN из БД и отдаем данные двумя List, чтобы потом вставить в одну таблицу * при чем, вставляем коряво (смотри SetProductTypesToList), но это потому, что у нас ProductModel имеет * только 5 полей и туда одним методом вставить не получится. Плюс всё равно нужно будет получать данные * всех ProductTypes * */ private int Execute_SELECTJOIN_Command(SqlCommand _command) { pList = new List <ProductsModel> { }; ptList = new List <ProductTypesModel> { }; mpList = new List <MarketplaceModel> { }; try { connection.Open(); SqlDataReader reader = _command.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { SetProductsToList((IDataRecord)reader); SetProductTypesToList((IDataRecord)reader); SetMarketPlacesToList((IDataRecord)reader); } } else { Console.WriteLine("No rows found."); } reader.Close(); connection.Close(); if (controlFormProductsView != null) //вызывает нужный метод в зависимости, из какой формы нас вызывают { controlFormProductsView.GetProductsFromDB(pList); controlFormProductsView.GetProductTypesFromDB(ptList); controlFormProductsView.GetMarketPlacesFromDB(mpList); } else if (controlFormAdvertisingUploadReportView != null) { controlFormAdvertisingUploadReportView.GetProductsFromDB(pList); } else if (controlAdvertisingReportFilterView != null) { controlAdvertisingReportFilterView.GetProductsFromDB(pList); } else if (controlReportBusinessUploadView != null) { controlReportBusinessUploadView.GetProductsFromDB(pList); } else if (controlReportBusinessFilterView != null) { controlReportBusinessFilterView.GetProductsFromDB(pList); } else if (controlReportSessionsView != null) { controlReportSessionsView.GetProductsFromDB(pList); } else if (controlAdvreport7days != null) { controlAdvreport7days.GetProductsFromDB(pList); } else if (controlAnalyzeAdvertisingReport != null) { controlAnalyzeAdvertisingReport.GetProductsFromDB(pList); } else if (controlReportStockUploadView != null) { controlReportStockUploadView.GetProductsFromDB(pList); } else if (controlReportStockView != null) { controlReportStockView.GetProductsFromDB(pList); } else if (controlReportSalesView != null) { controlReportSalesView.GetProductsFromDB(pList); } return(1); } catch (Exception ex) { connection.Close(); return(ex.HResult); } }
/* Выполняем запрос к БД и заносим полученные данные в List<SemCoreModel> */ private int Execute_SELECT_Command(SqlCommand _command) { mpList = new List <MarketplaceModel> { }; try { connection.Open(); SqlDataReader reader = _command.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { SetProductsToList((IDataRecord)reader); } } else { Console.WriteLine("No rows found."); } reader.Close(); connection.Close(); if (controlProductsView != null) { controlProductsView.GetMarketPlacesFromDB(mpList); } else if (controlMarketPlaceView != null) { controlMarketPlaceView.GetMarketPlacesFromDB(mpList); } else if (controlSemCoreView != null) { controlSemCoreView.GetMarketPlacesFromDB(mpList); } else if (controlLoggerView != null) { controlLoggerView.GetMarketPlacesFromDB(mpList); } else if (controlLoggerAdd != null) { controlLoggerAdd.GetMarketPlacesFromDB(mpList); } else if (controlAdvertisingUploadReport != null) { controlAdvertisingUploadReport.GetMarketPlacesFromDB(mpList); } else if (controlAdvertisingReportFilterView != null) { controlAdvertisingReportFilterView.GetMarketPlacesFromDB(mpList); } else if (controlReportBusinessUploadView != null) { controlReportBusinessUploadView.GetMarketPlacesFromDB(mpList); } else if (controlReportBusinessFilterView != null) { controlReportBusinessFilterView.GetMarketPlacesFromDB(mpList); } else if (controlReportSessionsView != null) { controlReportSessionsView.GetMarketPlacesFromDB(mpList); } else if (controlAdvreport7days != null) { controlAdvreport7days.GetMarketPlacesFromDB(mpList); } return(1); } catch (Exception ex) { connection.Close(); return(ex.HResult); } }