Exemplo n.º 1
0
 private void CancelarConcepto(GridViewCommandEventArgs e)
 {
     try
     {
         dsConceptoFacturacion.ConceptoDataTable ds = (dsConceptoFacturacion.ConceptoDataTable)Session["dtConceptoFacturacion"];
         if (ds[Convert.ToInt32(e.CommandArgument)].IsEsNuevoNull() ? false : ds[Convert.ToInt32(e.CommandArgument)].EsNuevo == true)
         {
             ds.Rows.RemoveAt(Convert.ToInt32(e.CommandArgument));
         }
         gvConceptosFacturacion2.EditIndex = -1;
         BindGridConceptosFacturacion(0);
         butNuevoConcepto.Enabled = true;
         //butIngresoConceptos.Enabled = true;
         errores.Visible = false;
         errores.Text    = "";
     }
     catch (Exception ex)
     {
         string script = string.Empty;
         errores.Visible = true;
         errores.Text    = ex.Message;
         ScriptManager.RegisterClientScriptBlock(this.upd1, upd1.GetType(), "muestraMensaje4", script, true);
         return;
         //((ErrorWeb)this.phErrores.Controls[0]).setMensaje(ex.Message);
     }
 }
Exemplo n.º 2
0
        private void EliminarConcepto(GridViewCommandEventArgs e)
        {
            try
            {
                dtConceptoFacturacion = (dsConceptoFacturacion.ConceptoDataTable)Session["dtConceptoFacturacion"];
                /* Posicionarse en el registro deseado. */
                dsConceptoFacturacion.ConceptoRow dr;

                dr = (dsConceptoFacturacion.ConceptoRow) this.dtConceptoFacturacion.Rows[Convert.ToInt32(e.CommandArgument)];

                // Si requiere datos obligatorios el concepto que esta eliminando debo habilitar el tipo de bulto.
                if ((dr.IsRequiereDatosObligatorioNull() ? false : dr.RequiereDatosObligatorio) == true)
                {
                    try
                    {
                        ddlTipoBulto.Items.Remove(ddlTipoBulto.Items.FindByValue("3"));
                        ddlTipoBulto.DataBind();
                    }
                    catch (Exception)
                    {
                    }
                    ddlTipoBulto.Enabled = true;
                }

                dtConceptoFacturacion.Rows[Convert.ToInt32(e.CommandArgument)].Delete();
                dtConceptoFacturacion.AcceptChanges();
                dr = null;

                this.gvConceptosFacturacion2.EditIndex = -1;
                Session["dtConceptoFacturacion"]       = dtConceptoFacturacion;
                BindGridConceptosFacturacion(0);
                butNuevoConcepto.Enabled = true;
                //butIngresoConceptos.Enabled = true;
                errores.Visible = false;
                errores.Text    = "";
            }
            catch (Exception ex)
            {
                string script = string.Empty;
                errores.Visible = true;
                errores.Text    = ex.Message;
                ScriptManager.RegisterClientScriptBlock(this.upd1, upd1.GetType(), "muestraMensaje4", script, true);
                return;
            }
        }
Exemplo n.º 3
0
        private void NuevoConcepto()
        {
            try
            {
                /* Agregar una fila vacía a la grilla. */
                dsConceptoFacturacion.ConceptoDataTable ds = (dsConceptoFacturacion.ConceptoDataTable)Session["dtConceptoFacturacion"];
                dsConceptoFacturacion.ConceptoRow       dr = ds.NewConceptoRow();

                /* Inicializar los valores */
                dr.ConceptoFacturacionID = 0;
                dr.Cantidad     = 0;
                dr.NroPrecinto  = string.Empty;
                dr.CodigoBarras = string.Empty;
                dr.TipoTarifarioConceptoFacturableID = 0;
                dr.EsNuevo = true;
                ds.Rows.InsertAt(dr, 0);
                Session["dtConceptoFacturacion"] = ds;

                /* Para que el registro aparezca al inicio de la grilla. */
                gvConceptosFacturacion2.PageIndex = 0;
                gvConceptosFacturacion2.EditIndex = 0;

                gvConceptosFacturacion2.DataSource = ds;
                gvConceptosFacturacion2.DataBind();

                ds = null;
                dr = null;
                butNuevoConcepto.Enabled = false;
                //butIngresoConceptos.Enabled = false;
                errores.Visible = false;
                errores.Text    = "";
            }
            catch (Exception ex)
            {
                string script = string.Empty;
                errores.Visible = true;
                errores.Text    = ex.Message;
                ScriptManager.RegisterClientScriptBlock(this.upd1, upd1.GetType(), "muestraMensaje4", script, true);
                return;
            }
        }
Exemplo n.º 4
0
        private void BindGridConceptosFacturacion(int currenPage)
        {
            string ddlcliente      = Request.Form["ddlTipoCliente"];
            string ddlTipoClientes = ddlTipoCliente.Value;

            try
            {
                SisPackController.AdministrarGrillas.Configurar(this.gvConceptosFacturacion2, this.CantidadOpciones);

                if (Session["dtConceptoFacturacion"] == null)
                {
                    /*Recargar la grilla completa. */
                    IConceptoFacturacion concepto = ConceptoFacturacionFactory.GetConceptoFacturacion();
                    dsConceptoFacturacion = concepto.GetListConceptosParaEmisionByAgenciaID(AgenciaConectadaID, false, Convert.ToInt32(ddlTipoCliente.Value));
                    dtConceptoFacturacion = dsConceptoFacturacion.Concepto;
                }
                else
                {
                    /*No se realiza nuevamente la consulta*/
                    this.dtConceptoFacturacion = (dsConceptoFacturacion.ConceptoDataTable)Session["dtConceptoFacturacion"];
                }

                /* Almacenar los datos para posteriores operaciones. */
                Session["dtConceptoFacturacion"]   = dtConceptoFacturacion;
                gvConceptosFacturacion2.DataSource = dtConceptoFacturacion;
                gvConceptosFacturacion2.PageIndex  = currenPage;
                gvConceptosFacturacion2.DataBind();

                errores.Visible = false;
                errores.Text    = "";
            }
            catch (Exception ex)
            {
                string script = string.Empty;
                errores.Visible = true;
                errores.Text    = ex.Message;
                ScriptManager.RegisterClientScriptBlock(this.upd1, upd1.GetType(), "muestraMensaje4", script, true);
                return;
            }
        }
Exemplo n.º 5
0
        private void butIngresoConceptos_Click(object sender, System.EventArgs e)
        {
            txtActualizarUnidadVenta.Text = "0";
            try
            {
                if (Session["DsDetalleConceptosFacturacionAAgregar"] != null)
                {
                    /* Recorrer todos los registros de la grilla y actualizar los campos */

                    dsConceptoFacturacion.ConceptoDataTable dsConceptos        = new dsConceptoFacturacion.ConceptoDataTable();
                    dsConceptoFacturacion.ConceptoDataTable dsConceptosAgregar = new dsConceptoFacturacion.ConceptoDataTable();
                    dsConceptos        = (dsConceptoFacturacion.ConceptoDataTable)Session["dtConceptoFacturacion"];
                    dsConceptosAgregar = (dsConceptoFacturacion.ConceptoDataTable)Session["DsDetalleConceptosFacturacionAAgregar"];

                    // Recorro cada concepto a agregar
                    foreach (dsConceptoFacturacion.ConceptoRow item in dsConceptosAgregar)
                    {
                        // Desarrollo de Emision de Conceptos con Codigos de Barras, se solicito que los conceptos se puedan repetir
                        // Verifico que el concepto no este ya en sesion con el mismo codigo de barras
                        if ((dsConceptos.Select("CodigoBarras like '" + (item.CodigoBarras).ToString().Trim() + "'").Length == 0) || item.CodigoBarras == string.Empty)
                        {
                            //Si no esta lo agrego
                            dsConceptoFacturacion.ConceptoRow dr = dsConceptos.NewConceptoRow();

                            /* Inicializar los valores */
                            dr.ConceptoFacturacionID = item.ConceptoFacturacionID;
                            dr.Cantidad     = item.Cantidad;
                            dr.NroPrecinto  = item.NroPrecinto;
                            dr.CodigoBarras = item.CodigoBarras;
                            dr.HorasDias    = item.HorasDias;
                            dr.Descripcion  = item.Descripcion;

                            try
                            {
                                dr.TipoTarifarioConceptoFacturableID = item.TipoTarifarioConceptoFacturableID;
                                dr.RequiereDatosObligatorio          = item.RequiereDatosObligatorio;
                                // Si el concepto requiere datos obligatorios
                                if (item.RequiereDatosObligatorio)
                                {
                                    // Coloco el nro de precinto
                                    //txtPrecintoSeguridad.Text = item.NroPrecinto;
                                    //Inserto el tipo de bulto Bolsa de seguridad
                                    if (ddlTipoBulto.Items.FindByValue("3") == null)
                                    {
                                        ddlTipoBulto.Items.Add(new ListItem("Bolsa de Seguridad", "3"));
                                        ddlTipoBulto.DataBind();
                                        ddlTipoBulto.SelectedValue = "3";
                                        ddlTipoBulto.Enabled       = false;
                                    }
                                }
                            }
                            catch (Exception)
                            {
                                throw;
                            }

                            dsConceptos.Rows.InsertAt(dr, 0);
                            gvConceptosFacturacion2.EditIndex  = -1;
                            Session["dtConceptoFacturacion"]   = dsConceptos;
                            gvConceptosFacturacion2.DataSource = dsConceptos;
                            gvConceptosFacturacion2.DataBind();
                            dr = null;
                        }
                    }
                    Session["DsDetalleConceptosFacturacionAAgregar"] = null;
                }
            }
            catch (Exception ex)
            {
                // ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(ex.Message);
            }
        }
Exemplo n.º 6
0
        private void GuardarConcepto(GridViewCommandEventArgs e)
        {
            try
            {
                GridViewRow item         = this.gvConceptosFacturacion2.Rows[this.gvConceptosFacturacion2.EditIndex];
                TextBox     CodigoBarras = (TextBox)item.FindControl("txtCodigoBarrasConcepto");

                //para que valide que el CB ingresado no corresponde a una unidad de venta FQ18/01/2015
                ICodigoBarras cb = CodigoBarrasFactory.GetCodigoBarras();
                if (cb.validaCBProducto(CodigoBarras.Text) > 0)
                {
                    string script = string.Empty;

                    errores.Visible = true;
                    errores.Text    = ("El código de barras " + CodigoBarras.Text + " no es válido para esta sección ya que está vinculado a una Unidad de Venta o Servicio. Debe ingresarlo en la sección de Codigo de Barras");
                    ScriptManager.RegisterClientScriptBlock(this.upd1, upd1.GetType(), "muestraMensaje4", script, true);
                    return;
                }

                /* Obtener los datos de la grilla. */
                dtConceptoFacturacion = (dsConceptoFacturacion.ConceptoDataTable)Session["dtConceptoFacturacion"];

                /* Posicionarse en el registro deseado. */
                dsConceptoFacturacion.ConceptoRow dr;
                dr = (dsConceptoFacturacion.ConceptoRow)dtConceptoFacturacion.Rows[Convert.ToInt32(e.CommandArgument)];

                IConceptoFacturacion conceptoFacturacion = ConceptoFacturacionFactory.GetConceptoFacturacion();
                //conceptoFacturacion.ConceptoFacturacionId = dr.ConceptoFacturacionID;

                DropDownList concepto = (DropDownList)item.FindControl("ddlConceptoFacturacion");
                string       selValue = concepto.SelectedValue;
                dr.ConceptoFacturacionID = selValue == "" ? 0 : Convert.ToInt32(selValue);
                dr.Descripcion           = concepto.SelectedItem.Text.Trim();

                if (dr.ConceptoFacturacionID == 0)
                {
                    string script = string.Empty;
                    script         += "alert('Debe seleccionar un concepto de facturación.');\n";
                    errores.Visible = true;
                    errores.Text    = " El código de barras " + CodigoBarras.Text + " no es válido.";
                    ScriptManager.RegisterClientScriptBlock(this.upd1, upd1.GetType(), "muestraMensaje4", script, true);

                    return;
                }

                ICodigoBarras codigoBarra = CodigoBarrasFactory.GetCodigoBarras();
                if (CodigoBarras.Text.Length > 0 && CodigoBarras.Text != string.Empty)
                {
                    txtClienteIDD.Text = "0";
                    int ClienteCoorporativoID = Convert.ToInt32(txtClienteIDD.Text);
                    // valida que el codigo se haya asignado a la agencia o al cliente
                    if (codigoBarra.ValidarCodigoBarras(CodigoBarras.Text, AgenciaConectadaID, ClienteCoorporativoID) == false)
                    {
                        string script = string.Empty;

                        errores.Visible = true;
                        errores.Text    = " El código de barras " + CodigoBarras.Text + " no es válido.";

                        ScriptManager.RegisterClientScriptBlock(this.upd1, upd1.GetType(), "muestraMensaje4", script, true);
                        return;
                    }

                    // valida que no se ingrese el mismo codigo mas de una vez
                    if ((this.dtConceptoFacturacion.Select("CodigoBarras like '" + CodigoBarras.Text + "'").Length > 0) && CodigoBarras.Text != string.Empty)
                    {
                        string script = string.Empty;

                        errores.Visible = true;
                        errores.Text    = "a se ha ingresado el código de barras " + CodigoBarras.Text + ".";

                        ScriptManager.RegisterClientScriptBlock(this.upd1, upd1.GetType(), "muestraMensaje4", script, true);
                        return;
                    }
                }
                conceptoFacturacion.GetOne(dr.ConceptoFacturacionID);
                TextBox NroPrecinto = (TextBox)item.FindControl("txtNroPrecinto");
                TextBox HorasDias   = (TextBox)item.FindControl("txtHorasDias");

                if (((conceptoFacturacion.RequiereDatosObligatorio ?? false) == true) && (NroPrecinto.Text == string.Empty))
                {
                    string script = string.Empty;
                    // script += "alert('Debe ingresar un número de precinto para el servicio.');\n";

                    //((ErrorWeb)this.phErrores.Controls[0]).setMensaje("Debe ingresar un número de precinto para el servicio.");
                    errores.Visible = true;
                    errores.Text    = "Debe ingresar un número de precinto para el servicio.";

                    ScriptManager.RegisterClientScriptBlock(this.upd1, upd1.GetType(), "muestraMensaje4", script, true);
                    return;
                }


                // Si tiene tarifario por horas o dias, habilitar el textbox de horas/dias
                if (((conceptoFacturacion.TipoTarifarioConceptoFacturableID == (int)NegociosSisPackInterface.SisPack.TipoTarifarioConceptoFacturable.Tarifariosporhoras) || (conceptoFacturacion.TipoTarifarioConceptoFacturableID == (int)NegociosSisPackInterface.SisPack.TipoTarifarioConceptoFacturable.Tarifariospordías)) && (HorasDias.Text == string.Empty))
                {
                    string script = string.Empty;
                    // script += "alert('Debe ingresar la cantidad de horas o días para el servicio.');\n";

                    //  ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("Debe ingresar la cantidad de horas o días para el servicio.");
                    errores.Text = "Debe ingresar la cantidad de horas o días para el servicio.";
                    ScriptManager.RegisterClientScriptBlock(this.upd1, upd1.GetType(), "muestraMensaje4", script, true);
                    return;
                }

                dr.HorasDias    = HorasDias.Text.Trim().Equals("") ? 0 : Utiles.Validaciones.obtieneEntero(HorasDias.Text.Trim());
                dr.NroPrecinto  = NroPrecinto.Text.Trim().Equals("") ? string.Empty : NroPrecinto.Text.Trim();
                dr.CodigoBarras = CodigoBarras.Text.Trim().Equals("") ? string.Empty : CodigoBarras.Text.Trim();
                dtConceptoFacturacion[Convert.ToInt32(e.CommandArgument)].HorasDias                         = dr.HorasDias;
                dtConceptoFacturacion[Convert.ToInt32(e.CommandArgument)].Descripcion                       = dr.Descripcion;
                dtConceptoFacturacion[Convert.ToInt32(e.CommandArgument)].NroPrecinto                       = dr.NroPrecinto;
                dtConceptoFacturacion[Convert.ToInt32(e.CommandArgument)].CodigoBarras                      = dr.CodigoBarras;
                dtConceptoFacturacion[Convert.ToInt32(e.CommandArgument)].ConceptoFacturacionID             = dr.ConceptoFacturacionID;
                dtConceptoFacturacion[Convert.ToInt32(e.CommandArgument)].TipoTarifarioConceptoFacturableID = conceptoFacturacion.TipoTarifarioConceptoFacturableID ?? 0;
                dtConceptoFacturacion[Convert.ToInt32(e.CommandArgument)].RequiereDatosObligatorio          = conceptoFacturacion.RequiereDatosObligatorio ?? false;
                dtConceptoFacturacion[Convert.ToInt32(e.CommandArgument)].EsNuevo = false;

                if (dr.RequiereDatosObligatorio)
                {
                    //Inserto el tipo de bulto Bolsa de seguridad
                    if (ddlTipoBulto.Items.FindByValue("3") == null)
                    {
                        ddlTipoBulto.Items.Add(new ListItem("Bolsa de Seguridad", "3"));
                        ddlTipoBulto.DataBind();
                        ddlTipoBulto.SelectedValue = "3";
                        ddlTipoBulto.Enabled       = false;
                    }
                }

                dr = null;
                conceptoFacturacion = null;

                gvConceptosFacturacion2.EditIndex = -1;
                Session["dtConceptoFacturacion"]  = dtConceptoFacturacion;
                BindGridConceptosFacturacion(gvConceptosFacturacion2.PageIndex);
                butNuevoConcepto.Enabled = true;
                //butIngresoConceptos.Enabled = true;

                errores.Visible = false;
                errores.Text    = "";
            }
            catch (Exception ex)
            {
                string script = string.Empty;
                errores.Visible = true;
                errores.Text    = ex.Message;
                ScriptManager.RegisterClientScriptBlock(this.upd1, upd1.GetType(), "muestraMensaje4", script, true);
                return;
                //                ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(ex.Message);
            }
        }
Exemplo n.º 7
0
        protected void butConfirmar_Click(object sender, System.EventArgs e)
        {
            ICodigoBarras cbc = CodigoBarrasFactory.GetCodigoBarras();

            foreach (GridViewRow item in gvConceptosFacturacion.Rows)
            {
                if (((CheckBox)item.Cells[0].FindControl("chkAsignar")).Checked)
                {
                    string cb = ((TextBox)item.FindControl("txtCodigoBarras")).Text;
                    if (cbc.validaCBProducto(cb) > 0)
                    {
                        string script = string.Empty;
                        script += "alert('El código de barras " + cb + " no es válido para esta sección ya que está vinculado a un Concepto Facturable. Debe ingresarlo en la sección de Conceptos Facturables');\n";
                        ScriptManager.RegisterClientScriptBlock(this.upnlGrilla, upnlGrilla.GetType(), "muestraMensaje1", script, true);
                        return;
                    }
                    ///*Si se marco el concepto, verifico que se haya ingresado una cantidad*/
                    //RequiredFieldValidator rfv = item.FindControl("RequiredtxtCantidad") as RequiredFieldValidator;
                    //rfv.Enabled = true;

                    /*Por cada row voy a verificar si el concepto de facturacion "RequiereDatosObligatorios" (NroPrecinto)*/
                    if (Convert.ToBoolean(item.Cells[2].Text)) // Celda 2: Indica si requiere datos obligatorios. Valido el campo NroPrecinto
                    {
                        RequiredFieldValidator rfv1 = item.FindControl("RequiredtxtNroPrecinto") as RequiredFieldValidator;
                        rfv1.Enabled = true;
                    }

                    /*Por cada row voy a verificar si el concepto de facturacion "RequiereIngresoDias/Horas" (depende del tipotarifario)*/
                    if ((Utiles.Validaciones.obtieneEntero(item.Cells[3].Text) == (int)NegociosSisPackInterface.SisPack.TipoTarifarioConceptoFacturable.Tarifariospordías) || (Utiles.Validaciones.obtieneEntero(item.Cells[3].Text) == (int)NegociosSisPackInterface.SisPack.TipoTarifarioConceptoFacturable.Tarifariosporhoras)) // Celda 2: Indica que requiere ingreso de dias horas por el tarifario.
                    {
                        RequiredFieldValidator rfv2 = item.FindControl("RequiredtxtHorasDias") as RequiredFieldValidator;
                        rfv2.Enabled = true;
                    }

                    if (((TextBox)item.FindControl("txtCodigoBarras")).Text != string.Empty) // Celda 4: Se ingreso un codigo de barras.
                    {
                        ICodigoBarras codigoBarra = CodigoBarrasFactory.GetCodigoBarras();
                        if (codigoBarra.ValidarCodigoBarras(((TextBox)item.FindControl("txtCodigoBarras")).Text, AgenciaID, ClienteID) == false)
                        {
                            string script = string.Empty;
                            script += "alert('El código de barras " + ((TextBox)item.FindControl("txtCodigoBarras")).Text + " no es válido.');\n";

                            ScriptManager.RegisterClientScriptBlock(this.upnlGrilla, upnlGrilla.GetType(), "muestraMensaje1", script, true);
                            return;
                        }
                    }
                }
            }


            /*Valido la pagina*/
            Page.Validate();
            if (!Page.IsValid)
            {
                return;
            }

            dsConceptoFacturacion.ConceptoDataTable dsDetalle = new dsConceptoFacturacion.ConceptoDataTable();

            dsDetalle = new dsConceptoFacturacion.ConceptoDataTable();

            foreach (GridViewRow item in gvConceptosFacturacion.Rows)
            {
                if (((CheckBox)item.Cells[0].FindControl("chkAsignar")).Checked)
                {
                    dsConceptoFacturacion.ConceptoRow dr = null;
                    //dsConceptoFacturacion.ConceptoRow dr = new dsConceptoFacturacion.ConceptoRow();
                    dr = dsDetalle.NewConceptoRow();
                    dr.ConceptoFacturacionID = Utiles.Validaciones.obtieneEntero(item.Cells[1].Text);

                    TextBox txtCantidad = (TextBox)item.FindControl("txtCantidad");
                    dr.Cantidad = Utiles.Validaciones.obtieneEntero(txtCantidad.Text);

                    TextBox txtNroPrecinto = (TextBox)item.FindControl("txtNroPrecinto");
                    dr.NroPrecinto = txtNroPrecinto.Text;

                    TextBox txtHorasDias = (TextBox)item.FindControl("txtHorasDias");
                    dr.HorasDias = Utiles.Validaciones.obtieneDouble(txtHorasDias.Text);

                    dr.RequiereDatosObligatorio = Convert.ToBoolean(item.Cells[2].Text);

                    dr.TipoTarifarioConceptoFacturableID = Utiles.Validaciones.obtieneEntero(item.Cells[3].Text);

                    Label lblDescripcion = (Label)item.FindControl("lblConceptoFacturacionDescrip");
                    dr.Descripcion = lblDescripcion.Text;

                    TextBox txtCodigoBarras = (TextBox)item.FindControl("txtCodigoBarras");
                    dr.CodigoBarras = txtCodigoBarras.Text;

                    dsDetalle.AddConceptoRow(dr);
                }
            }

            Session["DsDetalleConceptosFacturacionAAgregar"] = dsDetalle;

            StringBuilder scriptFinal = new StringBuilder();

            scriptFinal.Append("<script type=\"text/javascript\">\n");
            scriptFinal.Append("window.close();\n");
            scriptFinal.Append("</script>");
            Page.RegisterStartupScript("DatosRegistrados", scriptFinal.ToString());
        }