Beispiel #1
0
    private void cargaQuery()
    {
        DataSet data      = null;
        int     idAlmacen = Convert.ToInt32(Request.QueryString["p"]);

        data            = datos.llenaOrdenCompra(idAlmacen);
        ordenCompraList = new List <OrdenCompraDetalle>();
        foreach (DataRow dr in data.Tables[0].Rows)
        {
            OrdenCompraDetalle ordenD = new OrdenCompraDetalle();
            ordenD.Cantidad              = Convert.ToDecimal(dr[7].ToString());
            ordenD.IdArticulo            = dr[1].ToString();
            ordenD.Producto              = dr[3].ToString();
            ordenD.Descripcion_categoria = dr[2].ToString();
            ordenCompraList.Add(ordenD);
        }
        GridOrdenCompra.DataSource = ordenCompraList;
        GridOrdenCompra.DataBind();
        Session["listaOrden"]    = ordenCompraList;
        Session["listaOriginal"] = ordenCompraList;
        if (ordenCompraList.Count > 0)
        {
            lnkGenerarOrden.Visible = true;
        }
        else
        {
            lnkGenerarOrden.Visible = false;
        }
    }
Beispiel #2
0
 protected void GridOrdenCompra_RowEditing(object sender, GridViewEditEventArgs e)
 {
     ordenCompraList            = (List <OrdenCompraDetalle>)Session["listaOrden"];
     GridOrdenCompra.EditIndex  = e.NewEditIndex;
     Session["listaOrden"]      = ordenCompraList;
     Session["listaOriginal"]   = ordenCompraList;
     GridOrdenCompra.DataSource = ordenCompraList;
     GridOrdenCompra.DataBind();
 }
Beispiel #3
0
    protected void ddlCategoria_SelectedIndexChanged(object sender, EventArgs e)
    {
        lblError.Text = "";
        try
        {
            if (ddlCategoria.SelectedValue != "-1")
            {
                if (Session["listaOrden"] != null)
                {
                    ordenCompraList = (List <OrdenCompraDetalle>)Session["listaOrden"];
                    List <OrdenCompraDetalle> ordenRange = new List <OrdenCompraDetalle>();
                    foreach (OrdenCompraDetalle lista in ordenCompraList)
                    {
                        if (lista.Descripcion_categoria.ToUpper().Trim() == ddlCategoria.SelectedItem.Text.ToUpper().Trim())
                        {
                            ordenRange.Add(lista);
                        }
                    }
                    GridOrdenCompra.DataSource = ordenRange;
                    GridOrdenCompra.DataBind();
                }
                RadAutoCompleteBox.Enabled = true;
                RadAutoCompleteBox.Entries.Clear();
                txtCantidad.Enabled    = true;
                txtCantidad.Text       = "";
                lnkAgregarProd.Visible = true;
            }
            else
            {
                if (Session["listaOrden"] != null)
                {
                    ordenCompraList            = (List <OrdenCompraDetalle>)Session["listaOrden"];
                    GridOrdenCompra.DataSource = ordenCompraList;
                    GridOrdenCompra.DataBind();
                }
                RadAutoCompleteBox.Enabled = false;
                txtCantidad.Enabled        = false;
                lnkAgregarProd.Visible     = false;
                RadAutoCompleteBox.Entries.Clear();
                txtCantidad.Text = "";
            }

            if (GridOrdenCompra.Rows.Count > 0)
            {
                lnkGenerarOrden.Visible = true;
            }
            else
            {
                lnkGenerarOrden.Visible = false;
            }
        }
        catch (Exception ex) {
            lblError.Text = "Error al cargar la información: " + ex.Message;
        }
    }
Beispiel #4
0
    protected void GridOrdenCompra_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        string id = GridOrdenCompra.DataKeys[e.RowIndex].Value.ToString();

        ordenCompraList = (List <OrdenCompraDetalle>)Session["listaOrden"];
        foreach (OrdenCompraDetalle item in ordenCompraList)
        {
            if (item.IdArticulo.Equals(id))
            {
                ordenCompraList.Remove(item);
                break;
            }
        }
        Session["listaOrden"]      = ordenCompraList;
        Session["listaOriginal"]   = ordenCompraList;
        GridOrdenCompra.DataSource = ordenCompraList;
        GridOrdenCompra.DataBind();
    }
Beispiel #5
0
    protected void GridOrdenCompra_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
        RadNumericTextBox txtCantidadEdit   = (RadNumericTextBox)GridOrdenCompra.Rows[GridOrdenCompra.EditIndex].FindControl("txtCantidadEdit");
        Label             lblIdArticuloEdit = (Label)GridOrdenCompra.Rows[GridOrdenCompra.EditIndex].FindControl("lblIdArticuloEdit");

        ordenCompraList = (List <OrdenCompraDetalle>)Session["listaOrden"];
        string  id   = lblIdArticuloEdit.Text;
        decimal cant = 0;

        try
        {
            cant = Convert.ToDecimal(txtCantidadEdit.Text);
            if (cant > 0)
            {
                foreach (OrdenCompraDetalle item in ordenCompraList)
                {
                    if (item.IdArticulo.Equals(id))
                    {
                        item.Cantidad = cant;
                        break;
                    }
                }
                GridOrdenCompra.EditIndex  = -1;
                Session["listaOrden"]      = ordenCompraList;
                Session["listaOriginal"]   = ordenCompraList;
                GridOrdenCompra.DataSource = ordenCompraList;
                GridOrdenCompra.DataBind();
                lblError.Text = "";
            }
            else
            {
                lblError.Text              = "La cantidad no debe quedar en 0.";
                Session["listaOrden"]      = ordenCompraList;
                Session["listaOriginal"]   = ordenCompraList;
                GridOrdenCompra.DataSource = ordenCompraList;
                GridOrdenCompra.DataBind();
            }
        }
        catch (Exception) { }
    }
Beispiel #6
0
 protected void lnkAgregarProd_Click(object sender, EventArgs e)
 {
     lblError.Text = "";
     try
     {
         if (lblProducto.Text != "")
         {
             if (Session["listaOrden"] != null)
             {
                 ordenCompraList = (List <OrdenCompraDetalle>)Session["listaOrden"];
             }
             else
             {
                 cargaQuery();
                 lblError.Text = "Su sesión expiro, la orden de compra se reinicio a la lista de articulos sugeridos.";
             }
             if (txtCantidad.Text != "")
             {
                 bool   existe       = false;
                 string idArticulo   = lblIdArticulo.Text;
                 string descArticulo = lblProducto.Text;
                 string categoria    = lblCategoria.Text;
                 foreach (OrdenCompraDetalle lista in ordenCompraList)
                 {
                     if (lista.IdArticulo == lblIdArticulo.Text)
                     {
                         existe = true;
                         break;
                     }
                 }
                 if (existe)
                 {
                     lblError.Text = "El producto indicado ya esta registrado en esta solicitud de compra";
                 }
                 else
                 {
                     decimal cantidad = Convert.ToDecimal(txtCantidad.Text);
                     if (cantidad > 0)
                     {
                         OrdenCompraDetalle ordenD = new OrdenCompraDetalle();
                         ordenD.Cantidad              = cantidad;
                         ordenD.IdArticulo            = idArticulo;
                         ordenD.Producto              = descArticulo;
                         ordenD.Descripcion_categoria = categoria;
                         ordenCompraList.Add(ordenD);
                         GridOrdenCompra.DataSource = ordenCompraList;
                         GridOrdenCompra.DataBind();
                         Session["listaOrden"]    = ordenCompraList;
                         Session["listaOriginal"] = ordenCompraList;
                         lnkGenerarOrden.Visible  = true;
                         limpiaNuevo();
                     }
                     else
                     {
                         lblError.Text = "La cantidad no debe ser menor a 1.";
                     }
                 }
             }
             else
             {
                 lblError.Text = "La cantidad no debe estar vacia.";
             }
         }
         else
         {
             lblError.Text = "Necesita colocar un articulo para agregarlo a la orden de compra.";
         }
     }
     catch (Exception)
     {
         txtCantidad.Text = "";
         RadAutoCompleteBox.Entries.Clear();
         lblError.Text = "Hubo un error al agregar el articulo a la orden de compra, verifique que los datos insertados sean correctos.";
     }
 }