public void Load(int IdProduct) { try { ProductDataSet dataset = new ProductDataSet(); ProductDataSetTableAdapters.ProductsTableAdapter TableProduct = new ProductDataSetTableAdapters.ProductsTableAdapter(); ProductDataSet.ProductsDataTable dataTable = TableProduct.GetDataProductById(IdProduct); if (dataTable.Rows.Count > 0) { ProductDataSetTableAdapters.Products_ObsTableAdapter Product_obs = new ProductDataSetTableAdapters.Products_ObsTableAdapter(); ProductDataSet.Products_ObsDataTable dataTable_Obs = Product_obs.GetDataProductr_ObsById(IdProduct); _row = (ProductDataSet.ProductsRow)dataTable.Rows[0]; RaisePropertyChanged(nameof(Name)); RaisePropertyChanged(nameof(Code)); RaisePropertyChanged(nameof(Density)); RaisePropertyChanged(nameof(MeasureUnit)); RaisePropertyChanged(nameof(Enabled)); _row_obs = (ProductDataSet.Products_ObsRow)dataTable_Obs.Rows[0]; RaisePropertyChanged(nameof(Observations)); } FormLoadFinished?.Invoke(); } catch (Exception e) { FormLoadError?.Invoke(e); } }
public ProductFormViewModel() { ProductDataSet dataset = new ProductDataSet(); ProductDataSetTableAdapters.ProductsTableAdapter Product = new ProductDataSetTableAdapters.ProductsTableAdapter(); ProductDataSetTableAdapters.Products_ObsTableAdapter Product_obs = new ProductDataSetTableAdapters.Products_ObsTableAdapter(); _row = dataset.Products.NewProductsRow(); _row_obs = dataset.Products_Obs.NewProducts_ObsRow(); //Producto _row.Code = ""; _row.Density = 0; _row.Name = ""; _row.MeasureUnit = 0; _row.ModifiedDate = DateTime.Now; _row.CreatedDate = DateTime.Now; _row.Enabled = true; _row.Id = 0; //observaciones usuasrio _row_obs.Observations = ""; SaveCommand = new RelayCommand(Save, CanSave); }
public void Save() { bool validate = true; int indentificadorProduct = 0; try { ProductDataSet dataset = new ProductDataSet(); ProductDataSetTableAdapters.Products_ObsTableAdapter tableAdapterProductObs = new ProductDataSetTableAdapters.Products_ObsTableAdapter(); ProductDataSetTableAdapters.ProductsTableAdapter TableProduct = new ProductDataSetTableAdapters.ProductsTableAdapter(); validate = validateDatas(_row.Code, _row.Name, this.FirstTime, dataset, TableProduct); if (validate) { ProductDataSet.ProductsDataTable dataTable = TableProduct.GetDataProductById(_row.Id); //actualizamnos si existe el registro if (dataTable.Rows.Count > 0) { var rowproduct = dataset.Products.NewProductsRow(); rowproduct = dataTable[0]; rowproduct["Code"] = _row.Code; rowproduct["Name"] = _row.Name; rowproduct["CreatedDate"] = DateTime.Now; rowproduct["ModifiedDate"] = DateTime.Now; rowproduct["Density"] = _row.Density; rowproduct["MeasureUnit"] = 1; rowproduct["Enabled"] = _row.Enabled; int numeroderegistros = TableProduct.Update(rowproduct); //si se actualizado el user actualizamos las observaciones if (numeroderegistros > 0) { //actualizamos la observacion tableAdapterProductObs.UpdateProductObs(_row_obs.Observations, _row.Id); } } //insertamos el nuevo products y las observaciones (product_obs) else { TableProduct = new ProductDataSetTableAdapters.ProductsTableAdapter(); //obtenemos de la tabla product el nuevo registro que se introducira var rowProduct = dataset.Products.NewProductsRow(); rowProduct.Code = _row.Code; rowProduct.Name = _row.Name; rowProduct.CreatedDate = DateTime.Now; rowProduct.ModifiedDate = DateTime.Now; rowProduct.Density = _row.Density; rowProduct.MeasureUnit = 1; rowProduct.Enabled = _row.Enabled; //agregamos la nueva fila dataset.Products.AddProductsRow(rowProduct); //actualizamos la tabla Products en el dataset TableProduct.Update(dataset.Products); //al insertar el registro nuevo en la tabla User Id se actualiza indentificadorProduct = Convert.ToInt32(rowProduct.Id); // a continuación insertamos el resto de datos en la tabla User_obs cepsa con el indentificador del User recient introduzido tableAdapterProductObs = new ProductDataSetTableAdapters.Products_ObsTableAdapter(); //obtenemos de la tabla User_obs el nuevo registro que se introducira var rowProduct_obs = dataset.Products_Obs.NewProducts_ObsRow(); //Id rowProduct_obs.Id = indentificadorProduct; //observations rowProduct_obs.Observations = _row_obs.Observations; //agregamos la nueva fila a tabla User_obs dataset.Products_Obs.AddProducts_ObsRow(rowProduct_obs); //actualizamos la tabla User_obs en el dataset tableAdapterProductObs.Update(dataset.Products_Obs); } FormSaveFinished?.Invoke(); } } catch (Exception e) { FormSaveError?.Invoke(e); } }