public frmProgramacion(int Cliente, String Usuario, bool PermiteDesactivar, SC.enumTipoOperacionProgramacion TipoOperacion, SigaMetClasses.cUserInfo UserInfo, bool ForzarCapturaObservaciones) { InitializeComponent(); this.cboPCDiaSemana.CargaDiasSemana(); _Cliente = Cliente; _PermiteDesactivar = PermiteDesactivar; _TipoOperacion = TipoOperacion; _UserInfo = UserInfo; _Usuario = Usuario; _ForzarCapturaObservaciones = ForzarCapturaObservaciones; this.chkProgramacion.Enabled = PermiteDesactivar; lstProgramacion.Items.Clear(); Programacion oPrograma; SigaMetClasses.cCliente oCliente; oPrograma = new Programacion(_Cliente); foreach (Programacion oProg in oPrograma.ProgramacionesAsignadas) { lstProgramacion.Items.Add(oProg); if (_TipoPrograma == "") { _TipoPrograma = oProg.Programa.ToString(); } } try { oCliente = new SigaMetClasses.cCliente(_Cliente); this.lblCliente.Text = _Cliente.ToString(); this.lblNombre.Text = oCliente.Nombre; this.chkProgramacion.Checked = oCliente.Programacion; this.txtObservacionesProgramacion.Text = oCliente.ObservacionesProgramacion; } catch (Exception ex) { MessageBox.Show(ex.Message, ex.Source, MessageBoxButtons.OK, MessageBoxIcon.Error); } // finally // { // oCliente.Dispose(); // } }
private void btnAceptar_Click(object sender, System.EventArgs e) { String _ObservacionesInactivacion = ""; if (this.lstProgramacion.Items.Count <= 0) { chkProgramacion.Checked = false; } if (!this.chkProgramacion.Checked) { String strMensaje = "***PRECAUCIÓN***: La programación quedará INACTIVA y su proximo pedido programado será borrado." + (char)13 + "¿Desea continuar?"; if (MessageBox.Show(strMensaje, this._Titulo, MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.No) { return; } //TODO: Forzar la captura de observaciones de inactivación de programación if (_ForzarCapturaObservaciones) { frmObservacionesInactivacion frmObservacionesInactivacion = new frmObservacionesInactivacion(); if (frmObservacionesInactivacion.ShowDialog() == DialogResult.OK) { _ObservacionesInactivacion = frmObservacionesInactivacion.Observaciones; this._SeHaModificado = true; //'MsgBox(_ObservacionesInactivacion) } else { chkProgramacion.Checked = true; chkProgramacion.ForeColor = Color.Navy; return; } } } Cursor = Cursors.WaitCursor; Programacion oProgramacion; SigaMetClasses.cCliente oCliente; try { oProgramacion = new Programacion(_Cliente); oProgramacion.ProgramacionesAsignadas.Clear(); foreach (Programacion oProg in this.lstProgramacion.Items) { oProgramacion.ProgramacionesAsignadas.Add(oProg); } try { SigaMetClasses.frmWait oSplash = new SigaMetClasses.frmWait(); oSplash.Show(); oSplash.Refresh(); oProgramacion.Observaciones = _ObservacionesInactivacion; oProgramacion.ActualizaProgramaCliente(this._SeHaModificado, this._UserInfo, _Usuario); oCliente = new SigaMetClasses.cCliente(); oCliente.Modifica(_Cliente, this.chkProgramacion.Checked, txtObservacionesProgramacion.Text.Trim(), this._UserInfo, _Usuario, _ObservacionesInactivacion); // if(this._SeHaModificado) // { // oProgramacion.RegistraBitacoraProgramacion(_Usuario, _ObservacionesInactivacion); // } oSplash.Close(); oSplash.Dispose(); MessageBox.Show(SigaMetClasses.Main.M_DATOS_OK, _Titulo, MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (Exception ex) { MessageBox.Show(ex.InnerException.Message, ex.Source, MessageBoxButtons.OK, MessageBoxIcon.Error); } this.DialogResult = DialogResult.OK; } catch (Exception ex) { MessageBox.Show(ex.InnerException.Message, ex.Source, MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { Cursor = Cursors.Default; // if (oCliente != null) // { // oCliente.Dispose(); // } } }