protected void dgSalidaMaterialDetalle_BatchUpdate(object sender, DevExpress.Web.Data.ASPxDataBatchUpdateEventArgs e) { try { NumeroSalidaMaterial = Request.QueryString["Id"]; using (var db = new UnidadDeTrabajo()) { if (NumeroSalidaMaterial == "Nuevo") { int? idClienteN = null, IdClienteJ = null; SalidaMaterial sm = new SalidaMaterial(); sm.Fecha = DateTime.Now; sm.FechaCreacion = DateTime.Now; if (cmbTipoSalida.Value.ToString() == "PrestamoMateriales") { if (int.Parse(rbOpciones.Value.ToString()) == 1) { idClienteN = int.Parse(hfIdCliente["IdPersona"].ToString()); } if (int.Parse(rbOpciones.Value.ToString()) == 2) { IdClienteJ = int.Parse(hfIdCliente["IdPersona"].ToString()); } sm.IdClienteNatural = idClienteN; sm.IdClienteJuridico = IdClienteJ; } else { sm.IdEmpleado = int.Parse(cmbEmpleado.Value.ToString()); sm.IdOrdenTrabajo = int.Parse(cmbOrdenesTrabajo.Value.ToString()); } sm.IdUsuario = Session["IdUserActive"] != null?int.Parse(Session["IdUserActive"].ToString()) : 1; sm.TipoSalidaMaterial = cmbTipoSalida.Value.ToString(); sm.DocumentoReferencia = ""; sm.IdEstado = 60; db.SalidaMaterial.Insertar(sm); db.Grabar(); foreach (var item in e.InsertValues) { db.SalidaMaterialesDetalle.InsertarValoresSalidaMaterialDetalle(item.NewValues, sm.Id, 0); } NumeroSalidaMaterial = sm.Id.ToString(); string url = "SalidaMateriales.aspx?Id=" + NumeroSalidaMaterial; Response.RedirectLocation = url; } else { foreach (var item in e.InsertValues) { db.SalidaMaterialesDetalle.InsertarValoresSalidaMaterialDetalle(item.NewValues, int.Parse(NumeroSalidaMaterial.ToString()), 0); } foreach (var item in e.UpdateValues) { db.SalidaMaterialesDetalle.ActualizarSalidaMaterialesDetalle(item.Keys, item.NewValues, 0); } foreach (var item in e.DeleteValues) { db.SalidaMaterialesDetalle.EliminarSalidaMaterialDetalle(item.Keys); } } dgSalidaMaterialDetalle.DataSource = db.SalidaMaterialesDetalle.ObtenerDetalleSalidaMateriales(int.Parse(NumeroSalidaMaterial)); dgSalidaMaterialDetalle.DataBind(); } dgSalidaMaterialDetalle.JSProperties["cpOperacionGrid"] = "Operación realizada con éxito"; //cargarSalidaMateriales(); } catch (Exception ex) { dgSalidaMaterialDetalle.JSProperties["cpOperacionGrid"] = "Ha ocurrido un error inesperado: " + ex.Message; } e.Handled = true; pcEditorSalidaMateriales.ShowOnPageLoad = false; }
protected void Page_Load(object sender, EventArgs e) { UnidadDeTrabajo wu = new UnidadDeTrabajo(); cmbOrdenesTrabajo.DataSource = wu.OrdenTrabajo.ObtenerListaOrdenesTrabajo_SalidaMateriales(); cmbOrdenesTrabajo.ValueField = "Id"; cmbOrdenesTrabajo.DataBind(); NumeroSalidaMaterial = Request.QueryString["Id"]; cargarSalidaMateriales(); if (pcListadoEmpresas.IsCallback || dgEmpresas.IsCallback) { dgEmpresas.DataSource = wu.Empresa.ObtenerListaEmpresas(); dgEmpresas.DataBind(); } if (pcListadoClientes.IsCallback || dgClientes.IsCallback) { dgClientes.DataSource = wu.Cliente.ObtenerListaClientes(); dgClientes.DataBind(); } if (NumeroSalidaMaterial == "Nuevo") { //rbOpciones.Value = 1; dgSalidaMaterialDetalle.DataSource = wu.SalidaMaterialesDetalle.ObtenerDetalleSalidaMateriales(0); dgSalidaMaterialDetalle.DataBind(); cmbEmpleado.DataSource = wu.Empleado.ObtenerListaEmpleados(); cmbEmpleado.DataBind(); pcEditorSalidaMateriales.ShowOnPageLoad = true; } if (NumeroSalidaMaterial != null && NumeroSalidaMaterial != "Nuevo") { cmbEmpleado.DataSource = wu.Empleado.ObtenerListaEmpleados(); cmbEmpleado.DataBind(); hfIdSalidaMaterial["IdSalidaMaterial"] = NumeroSalidaMaterial; if (int.Parse(NumeroSalidaMaterial) > 0) { int?[] estateBad = { 36, 47, 67 }; SalidaMaterial cot = new SalidaMaterial(); using (var bd = new UnidadDeTrabajo()) { cot = bd.SalidaMaterial.ObtenerPorId(int.Parse(NumeroSalidaMaterial)); cmbTipoSalida.Value = cot.TipoSalidaMaterial; if (cot.TipoSalidaMaterial == "PrestamoMateriales") { if (cot.IdClienteNatural > 0) { Cliente cliente = bd.Cliente.ObtenerPorId(cot.IdClienteNatural); txtApelNomRazSoc.Text = cliente.Persona.ApellidoPaterno + " " + cliente.Persona.ApellidoMaterno + ", " + cliente.Persona.Nombres; txtRucDni.Text = cliente.Persona.DNI; hfRucDni["rucDni"] = cliente.Persona.DNI; rbOpciones.Value = 1; lblApelNomRazSoc.Text = "Apell. Nombres:"; lblRucDni.Text = "DNI:"; } else { Empresa empresa = bd.Empresa.ObtenerPorId(cot.IdClienteJuridico); txtApelNomRazSoc.Text = empresa.Persona.RazonSocial; txtRucDni.Text = empresa.Persona.Ruc; hfRucDni["rucDni"] = empresa.Persona.Ruc; rbOpciones.Value = 2; lblApelNomRazSoc.Text = "Razón Social:"; lblRucDni.Text = "RUC:"; } } else { cmbOrdenesTrabajo.Value = cot.IdOrdenTrabajo; cmbEmpleado.Value = cot.IdEmpleado; } hfOt["IdOt"] = cot.IdOrdenTrabajo; cmbOrdenesTrabajo.ReadOnly = true; if (estateBad.Contains(cot.IdEstado)) { dgSalidaMaterialDetalle.SettingsEditing.Mode = DevExpress.Web.GridViewEditingMode.Inline; dgSalidaMaterialDetalle.Columns[0].Visible = false; } dgSalidaMaterialDetalle.DataSource = bd.SalidaMaterialesDetalle.ObtenerDetalleSalidaMateriales(int.Parse(NumeroSalidaMaterial)); dgSalidaMaterialDetalle.DataBind(); } txtApelNomRazSoc.ClientEnabled = false; txtRucDni.ClientEnabled = false; rbOpciones.ClientEnabled = false; } pcEditorSalidaMateriales.ShowOnPageLoad = true; } using (var ut = new UnidadDeTrabajo()) { if (Session["IdUserActive"] != null) { if (ut.ComprobarSoloLectura(int.Parse(Session["IdUserActive"].ToString()), 27) == true) { btnBuscarPersonas.ClientEnabled = false; addSalidaMateriales.ClientEnabled = false; dgSalidaMaterialDetalle.SettingsEditing.Mode = DevExpress.Web.GridViewEditingMode.Inline; dgSalidaMaterialDetalle.Columns[0].Visible = false; } } } }