public void MostrarRequisicion()
        {
            dtDetalleEliminacion = ControllerCapturaPedido.MostrarRequisicionDetalle(Configuraciones.Configuraciones.idtienda, Convert.ToInt32(spinEditNumeroRequisicion.Value));
            dtDetalleInsercion   = ControllerCapturaPedido.MostrarRequisicionDetalle(Configuraciones.Configuraciones.idtienda, Convert.ToInt32(spinEditNumeroRequisicion.Value));


            if (dtDetalleInsercion.Rows.Count == 0 && dtDetalleEliminacion.Rows.Count == 0)
            {
                XtraMessageBox.Show("No existe la requisición con el numero ingresado, por favor intente nuevamente", "Editando requisición");
                gridControlListaDetalle.DataSource = dtDetalleInsercion;
                textObservaciones.Text             = string.Empty;
                idcapturaPedido = 0;
                txtCodigo.Text  = string.Empty;
                gridControlListaDetalle.ForceInitialize();
                gridViewListaDetalleProductos.BestFitColumns();
            }
            else
            {
                //dtDetalleInsercion = ControllerCapturaPedido.MostrarRequisicionDetalle(Configuraciones.Configuraciones.idtienda, 0);
                //dtDetalleInsercion = dtDetalleEliminacion;
                gridControlListaDetalle.DataSource = dtDetalleInsercion;
                gridControlListaDetalle.ForceInitialize();
                gridViewListaDetalleProductos.BestFitColumns();

                textObservaciones.Text = (dtDetalleInsercion.Rows[0]["Observaciones"]).ToString();
                idcapturaPedido        = Convert.ToInt32(dtDetalleInsercion.Rows[0]["idcapturapedido"]);
                txtCodigo.Text         = idcapturaPedido.ToString();
                gridControlListaDetalle.ForceInitialize();
                gridViewListaDetalleProductos.BestFitColumns();
            }
        }
 private void FormEditarRequisicion_Load(object sender, EventArgs e)
 {
     dateEditFecha.EditValue = DateTime.Now;
     dtDetalleInsercion      = ControllerCapturaPedido.MostrarRequisicionDetalle(Configuraciones.Configuraciones.idtienda, 0);
     dxErrorProvider1.SetError(lookUpEditProductos, "ESTE CAMPO ES OBLIGATORIO");
     dxErrorProvider1.SetError(spinEditCantidad, "ESTE CAMPO ES OBLIGATORIO");
     dxErrorProvider1.SetError(txtBuscarProducto, "ESTE CAMPO ES OBLIGATORIO");
 }
        private void txtBuscrProducto_EditValueChanged(object sender, EventArgs e)
        {
            DataTable dt = new DataTable();

            mostrarEnComboboxLookUp(lookUpEditProducto, "nombre", "idproducto", dt = ControllerCapturaPedido.MostrarProductos(string.IsNullOrWhiteSpace(txtBuscrProducto.Text) == true ? "&&" : txtBuscrProducto.Text));
            if (dt.Rows.Count > 0)
            {
                lookUpEditProducto.ItemIndex = 0;
            }
        }
 private void btnAnular_Click(object sender, EventArgs e)
 {
     if (idcapturaPedido == 0)
     {
         XtraMessageBox.Show("No hay requisición para anular", "Anular requisición");
     }
     else
     {
         if (XtraMessageBox.Show("¿Desea anular la requisición? ", "Anular requisición", MessageBoxButtons.YesNo) != DialogResult.No)
         {
             ControllerCapturaPedido.AnularRequsicion(Configuraciones.Configuraciones.idtienda, idcapturaPedido);
             textObservaciones.Text = string.Empty;
             spinEditCantidad.Value = 0;
             dtDetalleInsercion.Clear();
             dtDetalleEliminacion.Clear();
             idcapturaPedido = 0;
             spinEditNumeroRequisicion.Value = 0;
         }
     }
 }
        private void Guardar()
        {
            string respuesta        = "";
            bool   CrearRequisicion = true;

            //if (string.IsNullOrWhiteSpace(textObservaciones.Text))
            //{
            //    XtraMessageBox.Show(this, "Debe escribir las observaciones", "Editando requisición");
            //    CrearRequisicion = false;
            //}
            if (dtDetalleInsercion.Rows.Count < 1)
            {
                XtraMessageBox.Show(this, "Debe indicar los productos a requerir", "Editando requisición");
                CrearRequisicion = false;
            }
            for (int i = 0; i < gridViewListaDetalleProductos.DataRowCount; i++)
            {
                if (Convert.ToInt16(gridViewListaDetalleProductos.GetRowCellValue(i, "cantidad_requerida")) == 0)
                {
                    XtraMessageBox.Show(this, "Uno o mas productos deben tener una cantidad mayor a 0", "Editando requisición");
                    CrearRequisicion = false;
                    break;
                }
            }

            if (idcapturaPedido == 0)
            {
                XtraMessageBox.Show(this, "No hay requisición para editar", "Editando requisición");
                CrearRequisicion = false;
            }

            if (CrearRequisicion)
            {
                MRequisicion requisicion = new MRequisicion();
                requisicion.Idcapturapedido     = idcapturaPedido;
                requisicion.Idtienda            = Configuraciones.Configuraciones.idtienda;
                requisicion.Observacion         = string.IsNullOrWhiteSpace(textObservaciones.Text) == true ? "" : textObservaciones.Text;
                requisicion.IdEstadoRequisicion = 1;

                List <MRequisicionDetalle> detalleEliminacionRequisicio = new List <MRequisicionDetalle>();
                foreach (DataRow item in dtDetalleEliminacion.Rows)
                {
                    MRequisicionDetalle requisicionProductos = new MRequisicionDetalle();
                    requisicionProductos.Idcapturapedidodetalle = Convert.ToInt32(item["idcapturapedidodetalle"]);
                    requisicionProductos.Idtienda          = Configuraciones.Configuraciones.idtienda;
                    requisicionProductos.Idproducto        = Convert.ToInt32(item["idproducto"]);
                    requisicionProductos.CantidadRequerida = Convert.ToInt32(item["cantidad_requerida"]);
                    requisicionProductos.Opcion            = 0;
                    detalleEliminacionRequisicio.Add(requisicionProductos);
                }

                List <MRequisicionDetalle> detalleInsercionRequisicio = new List <MRequisicionDetalle>();
                for (int i = 0; i < gridViewListaDetalleProductos.DataRowCount; i++)
                {
                    MRequisicionDetalle requisicionProductos = new MRequisicionDetalle();
                    requisicionProductos.Idcapturapedidodetalle = 0;
                    requisicionProductos.Idtienda          = Configuraciones.Configuraciones.idtienda;
                    requisicionProductos.Idproducto        = Convert.ToInt32(gridViewListaDetalleProductos.GetRowCellValue(i, "idproducto"));
                    requisicionProductos.CantidadRequerida = Convert.ToInt32(gridViewListaDetalleProductos.GetRowCellValue(i, "cantidad_requerida"));
                    requisicionProductos.Opcion            = 1;
                    detalleInsercionRequisicio.Add(requisicionProductos);
                }

                respuesta = ControllerCapturaPedido.ActualizarCapturaPedidoRequisicion(requisicion, detalleEliminacionRequisicio, detalleInsercionRequisicio);

                if (respuesta == "OK")
                {
                    FormImprimirRequisicio modalImprimir = new FormImprimirRequisicio();
                    modalImprimir.IdTienda        = Configuraciones.Configuraciones.idtienda;
                    modalImprimir.IdCapturaPedido = idcapturaPedido;
                    modalImprimir.ShowDialog();

                    textObservaciones.Text = string.Empty;
                    spinEditCantidad.Value = 0;
                    dtDetalleInsercion.Clear();
                    dtDetalleEliminacion.Clear();
                    idcapturaPedido = 0;
                    spinEditNumeroRequisicion.Value = 0;
                    this.Close();
                }
                else
                {
                    XtraMessageBox.Show("Error al crear requisición, consulte a su administrador de datos " + respuesta, "Editando requisición");
                }
            }
        }