/// <summary> /// Modifica el registro seleccionado de la grilla /// </summary> private void gbModificar_Click(object sender, System.EventArgs e) { // Si no hay item seleccionado -> salimos int l_iRow = grdDatos.CurrentRowIndex; if (l_iRow == -1) { return; } // Obtenemos la entidad del item seleccionado en la grilla App.ShowMsg("Recuperando Datos..."); m_entReparacion = Bll.Tablas.RepGet((string)grdDatos.GetMatrixValueObj(l_iRow, 1), false, m_smResult); if (MsgRuts.AnalizeError(this, m_smResult)) { return; } // Tenemos la entidad. Pasamos a modo de edicion y damos foco // al campo que corresponda SwitchTo(FormModes.Edit, GridOps.DontFill); if (m_entReparacion.EstaBorrada) { cmdCancelar.Focus(); } else { cmbCodcat.Focus(); } App.HideMsg(); }
/// <summary> /// Genera un Nuevo registro en la tabla /// </summary> private void gbNuevo_Click(object sender, System.EventArgs e) { // Creamos una nueva entidad, pasamos a modo de edicion y // damos foco al primer campo m_entReparacion = Bel.EReparacion.NewEmpty(); m_entReparacion.Cod = Bll.Tablas.RepNextKey(m_smResult); m_smResult.Reset(); SwitchTo(FormModes.Edit, GridOps.DontFill); txtDes.Focus(); }
// LLena una Entidad OrdenTrabajoITEM y nos la devuelve para poder aniadirla a nuestra lista entidad. private Bel.EOTItem LLenarOTItem(Bel.EReparacion p_eReparacion, int p_nroAgrupador, int p_nroItem, string p_sDescControl) { Bel.EOTItem l_entOTitem = Bel.EOTItem.NewEmpty(); l_entOTitem.Nroot = neOrdenTrabajo.Numero; l_entOTitem.Nroagrupador = p_nroAgrupador; l_entOTitem.Nroitem = p_nroItem; l_entOTitem.Codcategoria = p_eReparacion.Codcat; l_entOTitem.Desoperacion = p_sDescControl; l_entOTitem.Destarea = p_eReparacion.Des; l_entOTitem.Comentario = teComentario.Text; l_entOTitem.Importe = deImporte.Decimal; l_entOTitem.Importecierre = l_entOTitem.Importe; l_entOTitem.Codreparacion = p_eReparacion.Cod; return(l_entOTitem); }
// Agrega un control o una reparacion a nuestra listaEntidad de items private void gbAgregar_Click(object sender, EventArgs e) { if (rbControles.Checked) { // Obtenemos todas las reparaciones de el control seleccionado y el Control selecionado Bel.LEControlesRepa l_leControlReparaciones = Bll.Controles.CrepFGet(lstControlesReparaciones.SelectedStrCode, true, m_smResult); if (MsgRuts.AnalizeError(this, m_smResult)) { return; } Bel.EControl l_entControlSeleccionado = Bll.Controles.Get(lstControlesReparaciones.SelectedStrCode, true, m_smResult); if (MsgRuts.AnalizeError(this, m_smResult)) { return; } // Declaramos un contador para que numero en el agrupador int l_iContador = 1; // Por cada una de las reparaciones del control, llenamos una entidad foreach (Bel.EControlRepa controlRepa in l_leControlReparaciones) { Bel.EReparacion l_eRepaSelec = obtenerReparacion(controlRepa.Codrep); if (!hayTallerQueResuelvaTodo(l_eRepaSelec)) { return; } EOTItem itemToAdd = LLenarOTItem(l_eRepaSelec, m_intNumeroAgrupador, l_iContador, l_entControlSeleccionado.Des); // LLenamos la OTitem y lo agregamos a la lista entidad m_leOTItems.AddEntity(itemToAdd); // Aumentamos el contador de items l_iContador += 1; } } if (rbReparaciones.Checked) { Bel.EReparacion l_eRepaSelec = obtenerReparacion(lstControlesReparaciones.SelectedStrCode); if (!hayTallerQueResuelvaTodo(l_eRepaSelec)) { return; } EOTItem itemToAdd = LLenarOTItem(l_eRepaSelec, m_intNumeroAgrupador, 1, l_eRepaSelec.Des); // en una reparacion siempre la descripcion de control es la misma que la descripcion de reparacion // en una reparacion el numero de item siempre es 1, (porque es unica) m_leOTItems.AddEntity(itemToAdd); } // Si la lista no esta vacia habilitamos los Botones Quitar if (m_leOTItems.Count != 0) { HabilitarBotonesQuitar(true); } // LLenamos la grilla con lista entidad FillFromLEOTItemsConAnchoDeColumna(fgControlRepaSeleccionados, m_leOTItems); //aumentamos en uno al Agrupador m_intNumeroAgrupador += 1; // Reseteamos los campos de item. teComentario.Text = ""; deImporte.Decimal = 0; }