private void PopulateGrid() { _dsDetalle = SolicitudDetalleDAC.GetData(_currentRow["CodSucursal"].ToString(), _currentRow["NumSolicitud"].ToString()); _dtDetalle = _dsDetalle.Tables[0]; this.dtgDetalle.DataSource = _dtDetalle; // this.dtNavigator.DataSource = _dtDetalle; }
private void MasterDetailSeparateGrid_Load(object sender, EventArgs e) { try { _dtSolicitud = SolicitudDAC.GetData("*", "*").Tables["Data"]; _dtSolicitudDetalle = SolicitudDetalleDAC.GetData("*", "*").Tables[0]; PopulateGrid(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void frmMasterDetail_Load(object sender, EventArgs e) { try { _dsSolicitud = new DataSet(); _dsSolicitud.Tables.Add(SolicitudDAC.GetData("*", "*").Tables["Data"].Copy()); _dsSolicitud.Tables.Add(SolicitudDetalleDAC.GetData("*", "*").Tables[0].Copy()); PopulateGrid(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void btnGuardar_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { if (Accion == "Edit") { lblStatusBar.Caption = "Actualizando : " + _currentRow["NumSolicitud"].ToString(); Application.DoEvents(); _currentRow.BeginEdit(); _currentRow["NumSolicitud"] = this.txtNumSolicitud.Text.Trim(); _currentRow["CodSucursal"] = this.txtCodSucursal.Text.Trim(); _currentRow["CodCategoria"] = this.slkupCategoria.EditValue; _currentRow["Descripcion"] = this.txtDescr.Text.Trim(); _currentRow["Estado"] = this.txtEstado.Text.Trim(); _currentRow["UsuarioSolicitud"] = this.txtUsuario.Text.Trim(); _currentRow["FechaSolicitud"] = this.txtFecha.Text.Trim(); _currentRow.EndEdit(); DataSet _dsChanged = _dsSolicitud.GetChanges(DataRowState.Modified | DataRowState.Added); bool okFlag = true; if (_dsChanged != null && _dsChanged.HasErrors) { okFlag = false; string msg = "Error en la fila con el tipo Id"; foreach (DataTable tb in _dsChanged.Tables) { if (tb.HasErrors) { DataRow[] errosRow = tb.GetErrors(); foreach (DataRow dr in errosRow) { msg = msg + dr["NumSolicitud"].ToString(); } } } this.lblStatusBar.Caption = msg; } //Si no hay errores if (okFlag) { ConnectionManager.BeginTran(); SolicitudDAC.SetTransactionToAdaptador(true); SolicitudDetalleDAC.SetTransactionToAdaptador(true); SolicitudDAC.oAdaptador.Update(_dsChanged, "Data"); SolicitudDetalleDAC.oAdaptador.Update(_dsDetalle, "Data"); this.lblStatusBar.Caption = "Actualizado " + _currentRow["Numsolicitud"].ToString(); Application.DoEvents(); _dsSolicitud.AcceptChanges(); _dsDetalle.AcceptChanges(); ConnectionManager.CommitTran(); SolicitudDAC.SetTransactionToAdaptador(false); SolicitudDetalleDAC.SetTransactionToAdaptador(false); PopulateGrid(); HabilitarControles(false); } else { _dsSolicitud.RejectChanges(); } } else { //nuevo registro _currentRow["NumSolicitud"] = this.txtNumSolicitud.Text.Trim(); _currentRow["CodSucursal"] = this.txtCodSucursal.Text.Trim(); _currentRow["CodCategoria"] = this.slkupCategoria.EditValue; _currentRow["Descripcion"] = this.txtDescr.Text.Trim(); _currentRow["Estado"] = this.txtEstado.Text.Trim(); _currentRow["UsuarioSolicitud"] = this.txtUsuario.Text.Trim(); _currentRow["FechaSolicitud"] = this.txtFecha.Text.Trim(); _dtSolicitud.Rows.Add(_currentRow); try { ConnectionManager.BeginTran(); SolicitudDAC.SetTransactionToAdaptador(true); SolicitudDetalleDAC.SetTransactionToAdaptador(true); SolicitudDAC.oAdaptador.Update(_dsSolicitud, "Data"); _dsSolicitud.AcceptChanges(); //Agregar el detalle SolicitudDetalleDAC.oAdaptador.Update(_dsDetalle, "Data"); _dsDetalle.AcceptChanges(); ConnectionManager.CommitTran(); SolicitudDAC.SetTransactionToAdaptador(false); SolicitudDetalleDAC.SetTransactionToAdaptador(false); this.lblStatusBar.Caption = "Se ha ingresado un nuevo registro"; Application.DoEvents(); PopulateGrid(); HabilitarControles(false); } catch (System.Data.SqlClient.SqlException ex) { _dsSolicitud.RejectChanges(); _dsDetalle.RejectChanges(); ConnectionManager.RollBackTran(); MessageBox.Show(ex.Message); } } }