Exemplo n.º 1
0
 protected void Grabar_Factura(Object Sender, EventArgs E)
 {
     //Primero debemos revisar que se haya digitado una cantidad de dias valida
     if (DatasToControls.ValidarInt(diasPlazo.Text))
     {
         if (System.Convert.ToInt32(diasPlazo.Text) > 0)
         {
             FacturaCliente miFacturaCliente = new FacturaCliente("FG", prefFact.Text, nitCSAEX.Text, almacen.SelectedValue, "F", Convert.ToUInt32(numFact.Text), Convert.ToUInt32(diasPlazo.Text), Convert.ToDateTime(fechFactura.Text), Convert.ToDateTime(fechFactura.Text).AddDays(Convert.ToInt32(diasPlazo.Text)), Convert.ToDateTime(null), Convert.ToDouble(totalApro.Text.Substring(1)), Convert.ToDouble(totalIva.Text.Substring(1)), 0, 0, 0, 0, centCostos.SelectedValue, obsrv.Text, DBFunctions.SingleData("SELECT pven_codigo FROM ccartera"), HttpContext.Current.User.Identity.Name.ToLower(), null);
             miFacturaCliente.SqlRels = ArmarDetalles();
             //Ahora creamos nuestro objeto de tipo FacturaGarantias
             if (miFacturaCliente.GrabarFacturaCliente(true))
             {
                 Response.Redirect("" + indexPage + "?process=Automotriz.GarantiasAprobadas&prefF=" + miFacturaCliente.PrefijoFactura + "&numF=" + miFacturaCliente.NumeroFactura + "");
             }
             //lb.Text += miFacturaCliente.ProcessMsg;
             else
             {
                 lb.Text += miFacturaCliente.ProcessMsg;
             }
         }
         else
         {
             Utils.MostrarAlerta(Response, "Valor de dias de plazo no puede ser negativo. Revise por favor");
         }
     }
     else
     {
         Utils.MostrarAlerta(Response, "Valor de dias de plazo no valido. Revise por favor");
     }
 }
Exemplo n.º 2
0
 private bool ValidarFecha()
 {
     //Si la fecha es invalida
     if (!DatasToControls.ValidarDateTime(fecha.Text))
     {
         return(false);
     }
     //Si los dias de plazo son invalidos o menores a cero
     else if (!DatasToControls.ValidarInt(tbdiasPlazo.Text) || Convert.ToInt32(tbdiasPlazo.Text) < 0)
     {
         return(false);
     }
     //Si la fecha de la factura es menor a la fecha de vencimiento (fecha de factura mas dias de plazo)
     else if (Convert.ToDateTime(fecha.Text) > (Convert.ToDateTime(fecha.Text).AddDays(Convert.ToInt32(tbdiasPlazo.Text))))
     {
         return(false);
     }
     else
     // La fecha del documento NO puede ser menor a la veigencia contable
     if (String.Compare(fecha.Text.Substring(0, 7), DBFunctions.SingleData("SELECT CASE WHEN PMES_MES <10 THEN PANO_ANO||'-0'||PMES_MES ELSE PANO_ANO||'-'||PMES_MES END  FROM CCONTABILIDAD")) < 0)
     {
         return(false);
     }
     else
     {
         DateTime fechaA = Convert.ToDateTime(fecha.Text);
         return(DBFunctions.RecordExist("SELECT PANO_ANO FROM PANO WHERE PANO_ANO=" + fechaA.Year + ";"));
     }
 }
Exemplo n.º 3
0
 protected void Agregar_Estatica(Object Sender, EventArgs e)
 {
     //Primero revisamos si ya existe una fila en esta posicion
     DataRow[] selection = dtFilas.Select("POSICION='" + posRep1.SelectedValue + "' AND ORDEN='" + ordPrs1.Text + "'");
     if (selection.Length > 0)
     {
         Utils.MostrarAlerta(Response, "Ya Existe una fila en esta posición");
     }
     else
     {
         if (DatasToControls.ValidarInt(ordPrs1.Text))
         {
             DataRow fila = dtFilas.NewRow();
             fila[0] = posRep1.SelectedValue;
             fila[1] = ordPrs1.Text;
             fila[2] = alin1.SelectedValue;
             fila[3] = text1.Text;
             fila[4] = rdOpc.SelectedValue;
             fila[5] = "";
             dtFilas.Rows.Add(fila);
             this.Bind_dgFilas();
             this.Reiniciar_Controles_Estaticas();
         }
         else
         {
             Utils.MostrarAlerta(Response, "Orden de Presentación No Valida. Revisar Por Favor ");
         }
     }
 }
Exemplo n.º 4
0
        protected void AgregarFilaNiv2(object Sender, EventArgs E)
        {
            string nombreFila = "";

            //revisamos si se ha digitado un nombre de fila
            if (tbNomFil.Text != "")
            {
                nombreFila = tbNomFil.Text;
            }
            else
            {
                int  cantidadFilas = dtUbicaciones.Rows.Count;
                char val           = (char)(65 + cantidadFilas);
                nombreFila = val.ToString();
            }
            if (!DatasToControls.ValidarInt(tbDivCeldas.Text.Trim()))
            {
                Utils.MostrarAlerta(Response, "El valor de cajones es invalida revise por favor!");
                return;
            }
            int cantidadCajones = Convert.ToInt32(tbDivCeldas.Text.Trim());

            if (cantidadCajones < 1)
            {
                Utils.MostrarAlerta(Response, "El valor de cajones es invalida revise por favor!");
                return;
            }
            //Ahora Debemos crear las ubicaciones de acuerdo a el numero de cajones
            bool error = false;

            for (int i = 1; i <= cantidadCajones; i++)
            {
                string almacen    = DBFunctions.SingleData("SELECT palm_almacen FROM pubicacionitem WHERE pubi_codigo=(SELECT pubi_codpad FROM pubicacionitem WHERE pubi_codigo=" + codigoUbicacion + ")");
                string nombreUbic = DBFunctions.SingleData("SELECT trim(PUBI_NOMBRE) FROM pubicacionitem WHERE pubi_codigo=" + codigoUbicacion + " ");
                //Debemos revisar que no exista ninguna ubicacion dentro de una ubicacion de nivel2 con la ubicacionespacial repetida
                if (!DBFunctions.RecordExist("SELECT * FROM pubicacionitem WHERE pubi_codpad=" + codigoUbicacion + " AND pubi_ubicespacial LIKE '" + (dtUbicaciones.Rows.Count + 1) + "-" + i + "'"))
                {
                    if (cantidadCajones > 1)
                    {
                        nombreUbic += nombreFila + "-" + i;
                    }
                    else
                    {
                        nombreUbic += nombreFila;
                    }
                    if (DBFunctions.NonQuery("INSERT INTO pubicacionitem (pubi_codigo, pubi_nombre, pubi_codpad, pubi_ubicespacial, palm_almacen) VALUES(DEFAULT ,'" + nombreUbic + "'," + codigoUbicacion + ",'" + (dtUbicaciones.Rows.Count + 1) + "-" + i + "','" + almacen + "')") != 1)
                    {
                        lb.Text += "<br>Error " + DBFunctions.exceptions;
                        error    = true;
                    }
                }
            }
            //Si no existio ningun error en la creacion de la nueva fila redireccionamos asi mismo
            if (!error)
            {
                Response.Redirect(indexPage + "?process=Inventarios.CfgUbicaciones&codUbi=" + codigoUbicacion);
            }
        }
Exemplo n.º 5
0
        protected void Aceptar_Conf1(Object Sender, EventArgs e)
        {
            bool error = false;

            if (tipDato.Text == "BIGINT" || tipDato.Text == "INTEGER" || tipDato.Text == "SMALLINT" || tipDato.Text == "DATE" || tipDato.Text == "TIME")
            {
                if (!DatasToControls.ValidarInt(vlrConst.Text))
                {
                    error = true;
                }
            }
            else if (tipDato.Text == "DECIMAL" || tipDato.Text == "DOUBLE" || tipDato.Text == "REAL")
            {
                if (!DatasToControls.ValidarDouble(vlrConst.Text))
                {
                    error = true;
                }
            }
            if (!error)
            {
                DataRow fila = dtOpers.NewRow();
                if (chkSpace.Checked)
                {
                    fila[0] = "nbsp";
                }
                else
                {
                    if (tipDato.Text == "VARCHAR" || tipDato.Text == "CHARACTER" || tipDato.Text == "LONG VARCHAR" || tipDato.Text == "CHAR")
                    {
                        fila[0] = "'" + vlrConst.Text + "'";
                    }
                    else
                    {
                        fila[0] = vlrConst.Text;
                    }
                }
                fila[1] = ddlOper2.SelectedValue;
                fila[2] = "";
                fila[3] = "";
                dtOpers.Rows.Add(fila);
                this.Bind_dgOpers();
                confConst.Visible = false;
                this.Acciones_Controles_Configuracion(true);
                vlrConst.Text = "";
            }
            else
            {
                Response.Write("<script language:javascript>alert('El valor de la constante no es compatible con el tipo de dato');</script>");
            }
        }
Exemplo n.º 6
0
 public void DgListaEmpaqueUpdate(Object sender, DataGridCommandEventArgs e)
 {
     if (DatasToControls.ValidarInt(((TextBox)e.Item.Cells[3].Controls[0]).Text))
     {
         int cantidad           = Convert.ToInt32(((TextBox)e.Item.Cells[3].Controls[0]).Text);
         int cantidadInicial    = Convert.ToInt32(dtListaEmpaque.Rows[e.Item.ItemIndex][9]);
         int cantidadPendiente  = Convert.ToInt32(dtListaEmpaque.Rows[e.Item.ItemIndex][6]);
         int cantidadDisponible = Convert.ToInt32(dtListaEmpaque.Rows[e.Item.ItemIndex][7]);
         if (cantidad > 0)
         {
             DataRow[] selection = dtListaEmpaque.Select("CODIGOORIGINAL ='" + dtListaEmpaque.Rows[e.Item.ItemIndex][0] + "'");
             for (int i = 0; i < selection.Length; i++)
             {
                 if (selection[i][3].ToString().Trim() != dtListaEmpaque.Rows[e.Item.ItemIndex][3].ToString().Trim())
                 {
                     int varianteDisponibilidad = Convert.ToInt32(selection[i][8]) - Convert.ToInt32(selection[i][9]);
                     cantidadDisponible += (varianteDisponibilidad * (-1));
                 }
             }
             if ((cantidad - cantidadInicial) > cantidadDisponible)
             {
                 Utils.MostrarAlerta(Response, "No hay disponibilidad suficiente para este ajuste.\\nCantidad Disponible : " + cantidadDisponible + "");
             }
             else
             {
                 if ((cantidad - cantidadInicial) > cantidadPendiente)
                 {
                     Utils.MostrarAlerta(Response, "Esta empacando mas de la cantidad pedida!");
                 }
                 if (cantidad < 0)
                 {
                     cantidad = 0;
                 }
                 dtListaEmpaque.Rows[e.Item.ItemIndex][8] = cantidad;
                 dtListaEmpaque.Rows[e.Item.ItemIndex][6] = Convert.ToInt32(dtListaEmpaque.Rows[e.Item.ItemIndex][6]) + ((cantidad - cantidadInicial) * (-1));
             }
         }
         else
         {
             Utils.MostrarAlerta(Response, "No se puede asignar un valor menor o igual a 0!");
         }
     }
     else
     {
         Utils.MostrarAlerta(Response, "La cantidad ingresada no es valida!");
     }
     dgListaEmpaque.EditItemIndex = -1;
     BindDgListaEmpaque();
 }
Exemplo n.º 7
0
        protected void AgregarFilaNiv2(object Sender, EventArgs E)
        {
            string nombreFila = "";

            //revisamos si se ha digitado un nombre de fila
            if (tbNomFil.Text != "")
            {
                nombreFila = tbNomFil.Text;
            }
            else
            {
                int  cantidadFilas = dtUbicaciones.Rows.Count;
                char val           = (char)(65 + cantidadFilas);
                nombreFila = val.ToString();
            }
            if (!DatasToControls.ValidarInt(tbDivCeldas.Text.Trim()))
            {
                Response.Write("<script language='javascript'>alert('El valor de cajones es invalida revise por favor!');</script>");
                return;
            }
            int cantidadCajones = Convert.ToInt32(tbDivCeldas.Text.Trim());

            if (cantidadCajones < 1)
            {
                Response.Write("<script language='javascript'>alert('El valor de cajones es invalida revise por favor!');</script>");
                return;
            }
            //Ahora Debemos crear las ubicaciones de acuerdo a el numero de cajones
            bool error = false;

            for (int i = 1; i <= cantidadCajones; i++)
            {
                string almacen = DBFunctions.SingleData("SELECT palm_almacen FROM pubicacionitem WHERE pubi_codigo=(SELECT pubi_codpad FROM pubicacionitem WHERE pubi_codigo=" + codigoUbicacion + ")");
                //Debemos revisar que no exista ninguna ubicacion dentro de una ubicacion de nivel2 con la ubicacionespacial repetida
                if (!DBFunctions.RecordExist("SELECT * FROM pubicacionitem WHERE pubi_codpad=" + codigoUbicacion + " AND pubi_ubicespacial LIKE '" + (dtUbicaciones.Rows.Count + 1) + "-" + i + "'"))
                {
                    if (DBFunctions.NonQuery("INSERT INTO pubicacionitem VALUES(DEFAULT," + codigoUbicacion + ",'" + nombreFila + "-" + i + "','" + (dtUbicaciones.Rows.Count + 1) + "-" + i + "','" + almacen + "')") != 1)
                    {
                        lb.Text += "<br>Error " + DBFunctions.exceptions;
                        error    = true;
                    }
                }
            }
            //Si no existio ningun error en la creacion de la nueva fila redireccionamos asi mismo
            if (!error)
            {
                Response.Redirect("AMS.Web.ModalDialogUbicacionesIFrame.aspx?tipProc=" + tipoProceso + "&codAlma=" + this.ddlAlmacen.SelectedValue + "&codItem=" + codItem + "&codOri=" + codOriginal + "&codUbicacion=" + codigoUbicacion);
            }
        }
Exemplo n.º 8
0
 protected void Aceptar_Dinamica(Object Sender, EventArgs e)
 {
     //Primero revisamos si existe algun valor en el textbox de resultados de la configuracion
     if (tbResultado.Text != "")
     {
         DataRow[] selection = dtFilas.Select("POSICION='" + posRep2.SelectedValue + "' AND ORDEN='" + ordPrs2.Text + "'");
         if (selection.Length > 0)
         {
             Utils.MostrarAlerta(Response, "Ya Existe una fila en esta posición");
         }
         else
         {
             if (DatasToControls.ValidarInt(ordPrs2.Text))
             {
                 string [] results = tbResultado.Text.Split('@');
                 DataRow   fila    = dtFilas.NewRow();
                 fila[0] = posRep2.SelectedValue;
                 fila[1] = ordPrs2.Text;
                 fila[2] = alin2.SelectedValue;
                 if (text2.Text != "")
                 {
                     fila[3] = text2.Text + "&" + this.Preparar_Select(Request.QueryString["sql"], results[0], results[1]);
                 }
                 //lb.Text +="<br>" +this.Preparar_Select(Request.QueryString["sql"],results[0],results[1]);
                 else
                 {
                     fila[3] = this.Preparar_Select(Request.QueryString["sql"], results[0], results[1]);
                 }
                 fila[4] = "";
                 fila[5] = results[1];
                 dtFilas.Rows.Add(fila);
                 this.Bind_dgFilas();
                 this.Reiniciar_Controles_Estaticas();
                 tbResultado.Text = "";
             }
             else
             {
                 Utils.MostrarAlerta(Response, "Orden de Presentación No Valida. Revisar Por Favor");
             }
         }
     }
     else
     {
         Utils.MostrarAlerta(Response, "No se ha configurado el valor de esta fila dinamica. Revisar Por Favor");
     }
 }
Exemplo n.º 9
0
        protected void Aceptar_Filtro(Object Sender, EventArgs e)
        {
            //Debemos traer el tipo de dato que se ha seleccionad
            string tipoDato   = DBFunctions.SingleData("SELECT coltype FROM sysibm.syscolumns WHERE name='" + ddlCampos.SelectedValue + "' AND tbname='" + ddlTablas.SelectedValue + "'").Trim();
            bool   validacion = true;

            //Si el tipo de dato es bigint, integer o smallint debo comprobar que sea compatible
            if (tipoDato == "BIGINT" || tipoDato == "INTEGER" || tipoDato == "SMALLINT")
            {
                validacion = DatasToControls.ValidarInt(vlCmp.Text);
            }
            else if (tipoDato == "DECIMAL" || tipoDato == "DOUBLE" || tipoDato == "REAL")
            {
                validacion = DatasToControls.ValidarDouble(vlCmp.Text);
            }
            else if (tipoDato == "DATE" || tipoDato == "TIME")
            {
                validacion = DatasToControls.ValidarDateTime(vlCmp.Text);
            }
            if (validacion)
            {
                DataRow fila = dtFltrRpt.NewRow();
                fila[0] = ddlTablas.SelectedValue;
                fila[1] = ddlCampos.SelectedValue;
                fila[2] = oprCmp.SelectedValue;
                fila[3] = vlCmp.Text;
                fila[4] = tipoDato;
                dtFltrRpt.Rows.Add(fila);
                Bind_dgFltrRpt();
                Accion_Controles_Seleccion1(true);
                confCondi.Visible = false;
                vlCmp.Text        = "";
                btnAptFn.Visible  = true;
            }
            else
            {
                Utils.MostrarAlerta(Response, "Valor no valido para este filtro");
            }
        }
Exemplo n.º 10
0
        protected void gridRtns_Item(object Sender, DataGridCommandEventArgs e)
        {
            int             i, Porcentaje = 0;
            DatasToControls paramas = new DatasToControls();

            //DataRow fila;
            if (((Button)e.CommandSource).CommandName == "AgregarCentroCosto")
            {
                //Response.Write("<script language:javascript>alert('Solo puede haber una retención de ese tipo');</script>");
                if ((((TextBox)e.Item.Cells[2].Controls[1]).Text == ""))
                {
                    Utils.MostrarAlerta(Response, "Debe ingresar un Centro de Costo");
                }

                else if ((((TextBox)e.Item.Cells[3].Controls[1]).Text == ""))
                {
                    Utils.MostrarAlerta(Response, "Debe ingresar un Porcentaje");
                }

                else if ((((TextBox)e.Item.Cells[1].Controls[1]).Text == ""))
                {
                    Utils.MostrarAlerta(Response, "Debe ingresar un Almacen");
                }

                else
                {
                    if (Session["tablaRtns"] == null)
                    {
                        this.Cargar_Tabla_Rtns();
                    }
                    //Averiguar cuanto porcentaje tengo en tabla
                    for (i = 0; i < tablaRtns.Rows.Count; i++)
                    {
                        Porcentaje += int.Parse(tablaRtns.Rows[i][3].ToString());
                    }
                    //Validar que sea un entero
                    if (DatasToControls.ValidarInt("" + ((TextBox)e.Item.Cells[3].Controls[1]).Text + ""))
                    {
                        Porcentaje += Convert.ToInt32(((TextBox)e.Item.Cells[3].Controls[1]).Text);
                        if (Porcentaje > 100)
                        {
                            Utils.MostrarAlerta(Response, "Supero el maximo permitido 100%");
                        }
                        else
                        {
                            DataRow fila = tablaRtns.NewRow();
                            fila["CODEMP"]      = DDLEMPLEADO.SelectedValue;
                            fila["ALMACEN"]     = ((TextBox)e.Item.Cells[1].Controls[1]).Text;
                            fila["CENTROCOSTO"] = ((TextBox)e.Item.Cells[2].Controls[1]).Text;
                            fila["PORC"]        = Convert.ToInt32(((TextBox)e.Item.Cells[3].Controls[1]).Text);
                            tablaRtns.Rows.Add(fila);
                            gridRtns.DataSource = tablaRtns;
                            gridRtns.DataBind();
                            Session["tablaRtns"] = tablaRtns;
                        }
                    }
                    else
                    {
                        Utils.MostrarAlerta(Response, "Los valores ingresados no pueden ser decimales, porfavor corrija");
                    }

                    //Response.Write("<script language:javascript>alert('Porcentaje "+Porcentaje+"');</script>");
                }
            }
            else if (((Button)e.CommandSource).CommandName == "RemoverCentroCosto")
            {
                Porcentaje -= Convert.ToInt32(tablaRtns.Rows[e.Item.DataSetIndex]["PORC"]);
                tablaRtns.Rows[e.Item.DataSetIndex].Delete();
                Utils.MostrarAlerta(Response, "Atencion:Si elige guardar este dato sera borrado.");
                gridRtns.DataSource = tablaRtns;
                gridRtns.DataBind();
                Session["tablaRtns"] = tablaRtns;
            }
        }
Exemplo n.º 11
0
        protected bool Validar_Datos(DataGridCommandEventArgs e)
        {
            bool error = false;

            //Si hay algun campo en blanco o no son validos los valores...
            if ((((TextBox)e.Item.Cells[0].Controls[1]).Text == "") || (((TextBox)e.Item.Cells[1].Controls[1]).Text == "") || (((TextBox)e.Item.Cells[2].Controls[1]).Text == "") || (((TextBox)e.Item.Cells[3].Controls[1]).Text == "") || (((TextBox)e.Item.Cells[4].Controls[1]).Text == "") || (!DatasToControls.ValidarInt(((TextBox)e.Item.Cells[5].Controls[1]).Text)) || (((TextBox)e.Item.Cells[6].Controls[1]).Text == "") || (!DatasToControls.ValidarDouble(((TextBox)e.Item.Cells[7].Controls[1]).Text)) || (!DatasToControls.ValidarDouble(((TextBox)e.Item.Cells[8].Controls[1]).Text)) || (!DatasToControls.ValidarDouble(((TextBox)e.Item.Cells[9].Controls[1]).Text)))
            {
                Utils.MostrarAlerta(Response, "Falta un Campo por Llenar o las entradas son Invalidos. Revisa tus Datos");
                error = true;
            }
            //Si en los dos campos valor Debito y valor Credito hay un valor distinto de cero
            else if (((((TextBox)e.Item.Cells[7].Controls[1]).Text != "0") && (((TextBox)e.Item.Cells[8].Controls[1]).Text != "0")))
            {
                Utils.MostrarAlerta(Response, "Uno de los campos Valor Debito o Valor Credito debe tener un valor de 0. Revisa tus Datos");
                error = true;
            }
            //Si en ninguno de los dos campos hay valor
            else if ((((((TextBox)e.Item.Cells[7].Controls[1]).Text == "0") && (((TextBox)e.Item.Cells[8].Controls[1]).Text == "0"))))
            {
                Utils.MostrarAlerta(Response, "Uno de los campos Valor Debito o Valor Credito debe tener valor. Revisa tus Datos");
                error = true;
            }
            //Si ya se ingreso el prefijo y numero de documento de referencia
            else if (Buscar_Documento(((TextBox)e.Item.Cells[4].FindControl("cuentatxt")).Text, ((TextBox)e.Item.Cells[4].FindControl("prefijotxt")).Text, Convert.ToInt32(((TextBox)e.Item.Cells[4].FindControl("numdocutxt")).Text.ToString()), ((TextBox)e.Item.Cells[4].FindControl("edit_numero")).Text, ((TextBox)e.Item.Cells[4].FindControl("edit_sede")).Text, ((TextBox)e.Item.Cells[4].FindControl("centrocostotxt")).Text))
            {
                Utils.MostrarAlerta(Response, "El prefijo y el número de documento de referencia ya fueron ingresados anteriormente");
                error = true;
            }
            //Si el nit digitado no existe
            else if (!DBFunctions.RecordExist("SELECT mnit_nit FROM mnit WHERE mnit_nit='" + ((TextBox)e.Item.Cells[6].FindControl("numnittxt")).Text + "'"))
            {
                Utils.MostrarAlerta(Response, "El nit especificado no existe");

                error = true;
            }
            //Si la cuenta digitada no existe o ES SOLO niif
            else if (!DBFunctions.RecordExist("SELECT mcue_codipuc FROM mcuenta WHERE mcue_codipuc='" + ((TextBox)e.Item.Cells[1].FindControl("cuentatxt")).Text + "' and timp_codigo in ('A','P') and tCUE_codigo IN ('F', 'G') "))
            {
                Utils.MostrarAlerta(Response, "La cuenta especificada no existe o es NO Imputable o es solo NIIF o es solo Fiscal");
                error = true;
            }
            return(error);
        }
Exemplo n.º 12
0
        protected bool Validar_Datos2(ArrayList arraySettingRow)
        {
            bool error = false;

            //Si hay algun campo en blanco o no son validos los valores...
            if ((arraySettingRow[0].ToString() == "") || (arraySettingRow[1].ToString() == "") || (arraySettingRow[2].ToString() == "") || (arraySettingRow[3].ToString() == "") || (arraySettingRow[4].ToString() == "") || (!DatasToControls.ValidarInt(arraySettingRow[5].ToString())) || (arraySettingRow[6].ToString() == "") || (!DatasToControls.ValidarDouble(arraySettingRow[7].ToString())) || (!DatasToControls.ValidarDouble(arraySettingRow[8].ToString())) || (!DatasToControls.ValidarDouble(arraySettingRow[9].ToString())))
            {
                Utils.MostrarAlerta(Response, "Falta un Campo por Llenar o las entradas son Invalidos. Revisa tus Datos");
                error = true;
            }
            //Si en los dos campos valor Debito y valor Credito hay un valor distinto de cero
            else if (((arraySettingRow[7].ToString() != "0") && (arraySettingRow[8].ToString() != "0")))
            {
                Utils.MostrarAlerta(Response, "Uno de los campos Valor Debito o Valor Credito debe tener un valor de 0. Revisa tus Datos");
                error = true;
            }
            //Si en ninguno de los dos campos hay valor
            else if ((((arraySettingRow[7].ToString() == "0") && (arraySettingRow[8].ToString() == "0"))))
            {
                Utils.MostrarAlerta(Response, "Uno de los campos Valor Debito o Valor Credito debe tener valor. Revisa tus Datos");
                error = true;
            }
            //Si ya se ingreso el prefijo y numero de documento de referencia
            else if (Buscar_Documento(arraySettingRow[1].ToString(), arraySettingRow[4].ToString(), Convert.ToInt32(arraySettingRow[5].ToString()), arraySettingRow[6].ToString(), arraySettingRow[2].ToString(), arraySettingRow[3].ToString()))
            {
                Utils.MostrarAlerta(Response, "El prefijo y el número de documento de referencia ya fueron ingresados anteriormente");
                error = true;
            }
            //Si el nit digitado no existe
            else if (!DBFunctions.RecordExist("SELECT mnit_nit FROM mnit WHERE mnit_nit='" + arraySettingRow[6].ToString() + "'"))
            {
                Utils.MostrarAlerta(Response, "El nit especificado no existe");

                error = true;
            }
            //Si la cuenta digitada no existe
            else if (!DBFunctions.RecordExist("SELECT mcue_codipuc FROM mcuenta WHERE mcue_codipuc='" + arraySettingRow[1].ToString() + "' and timp_codigo in ('A','P') and tCUE_codigo IN ('F','G') "))
            {
                Utils.MostrarAlerta(Response, "La cuenta especificada no existe o es NO Imputable o es solo Niif");
                error = true;
            }
            //Si la sede no existe
            else if (!DBFunctions.RecordExist("SELECT palm_almacen FROM palmacen where (pcen_centcart is not null or pcen_centteso is not null) and palm_almacen='" + arraySettingRow[2].ToString() + "' order by palm_descripcion;"))
            {
                Utils.MostrarAlerta(Response, "La sede especificada no existe");
                error = true;
            }
            //Si el centro de costo no existe
            else if (!DBFunctions.RecordExist("SELECT pcen_codigo AS Codigo FROM pcentrocosto where timp_codigo <> 'N' and pcen_codigo = '" + arraySettingRow[3].ToString() + "' order by 1;"))
            {
                Utils.MostrarAlerta(Response, "El centro de costo especificado no existe");
                error = true;
            }
            return(error);
        }
Exemplo n.º 13
0
        protected void btnPreLiquidar_Click(object Sender, EventArgs e)
        {
            /*Función que cumple varias funciones, la primera de ellas es verificar que los valores ingresados
             * por intereses y dias de gracia, sean iguales a los que ya se encuentran en CCARTERA. La segunda
             * función es sacar de mfacturacliente, todas las facturas cuya fecha de vencimiento + los dias de
             * gracia, sea menor a la fecha actual, luego llamo otras funciones que explico en su debido cuerpo*/
            double  tasa       = Convert.ToDouble(DBFunctions.SingleData("SELECT ccar_intmen FROM ccartera"));
            int     diasGracia = Convert.ToInt32(DBFunctions.SingleData("SELECT ccar_diasgracia FROM ccartera"));
            DataRow fila;

            facturas = new ArrayList();
            detalles = new ArrayList();
            if (!cbNit.Checked)
            {
                if (!DatasToControls.ValidarDouble(tbTasa.Text) || (Convert.ToDouble(tbTasa.Text) > (5 * tasa)))
                {
                    Utils.MostrarAlerta(Response, "Tasa de Interes Invalida");
                }
                else if (!DatasToControls.ValidarInt(tbGracia.Text) || (Convert.ToInt32(tbGracia.Text) != diasGracia))
                {
                    Utils.MostrarAlerta(Response, "Los dias de gracia difieren del valor especificado en los parámetros de cartera.\\nSe tomara el valor inicialmente  registrado en cartera");
                    tbGracia.Text = diasGracia.ToString();
                }
                else
                {
                    ds = new DataSet();
                    DBFunctions.Request(ds, IncludeSchema.NO, "SELECT pdoc_codigo,mfac_numedocu,mnit_nit,mfac_tipodocu,tvig_vigencia,mfac_vence,(mfac_valofact+mfac_valoiva+mfac_valoflet+mfac_valoivaflet-mfac_valorete-mfac_valoabon) AS Faltante,SUM(DAYS(CURRENT DATE)-DAYS(mfac_vence + " + diasGracia + " days)) FROM dbxschema.mfacturacliente WHERE tvig_vigencia IN('V','A') AND mfac_tipodocu IN('C','F','N','A','I') AND mfac_vence + " + diasGracia + " DAYS < CURRENT DATE AND (mfac_valofact+mfac_valoiva+mfac_valoflet+mfac_valoivaflet-mfac_valorete-mfac_valoabon) > 1 GROUP BY pdoc_codigo,mfac_numedocu,mnit_nit,mfac_tipodocu,tvig_vigencia,mfac_vence,(mfac_valofact+mfac_valoiva+mfac_valoflet+mfac_valoivaflet-mfac_valorete-mfac_valoabon) ORDER BY mnit_nit,pdoc_codigo,mfac_vence ASC");
                    //lb.Text+="SELECT pdoc_codigo,mfac_numedocu,mnit_nit,mfac_tipodocu,tvig_vigencia,mfac_vence,(mfac_valofact+mfac_valoiva+mfac_valoflet+mfac_valoivaflet-mfac_valorete-mfac_valoabon) AS Faltante,SUM(DAYS(CURRENT DATE)-DAYS(mfac_vence + "+diasGracia+" days)) FROM dbxschema.mfacturacliente WHERE tvig_vigencia IN('V','A') AND mfac_tipodocu IN('C','F','N','A','I') AND mfac_vence + "+diasGracia+" DAYS < CURRENT DATE AND (mfac_valofact+mfac_valoiva+mfac_valoflet+mfac_valoivaflet-mfac_valorete-mfac_valoabon) > 0 GROUP BY pdoc_codigo,mfac_numedocu,mnit_nit,mfac_tipodocu,tvig_vigencia,mfac_vence,(mfac_valofact+mfac_valoiva+mfac_valoflet+mfac_valoivaflet-mfac_valorete-mfac_valoabon) ORDER BY mnit_nit,pdoc_codigo,mfac_vence ASC <br>";
                    if (Session["dtMora"] == null)
                    {
                        this.Cargar_dtMora();
                    }
                    if (ds.Tables[0].Rows.Count != 0)
                    {
                        for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                        {
                            fila    = dtMora.NewRow();
                            fila[0] = ds.Tables[0].Rows[i][0].ToString();
                            fila[1] = ds.Tables[0].Rows[i][1].ToString();
                            fila[2] = ds.Tables[0].Rows[i][2].ToString();
                            fila[3] = ds.Tables[0].Rows[i][3].ToString();
                            fila[4] = ds.Tables[0].Rows[i][4].ToString();
                            fila[5] = Convert.ToDateTime(ds.Tables[0].Rows[i][5]).ToString("yyyy-MM-dd");
                            fila[6] = Convert.ToDouble(ds.Tables[0].Rows[i][6]);
                            fila[7] = ds.Tables[0].Rows[i][7].ToString();
                            dtMora.Rows.Add(fila);
                        }
                        Session["dtMora"]  = dtMora;
                        facturas           = this.Cruzar_Documentos(ref dtMora);
                        Session["cruces"]  = facturas;
                        lnbReporte.Visible = true;
                        Llenar_dgPreLiq();
                        btnLiquidar.Visible    = true;
                        btnPreLiquidar.Enabled = false;
                    }
                    else
                    {
                        Utils.MostrarAlerta(Response, "No se encontraron facturas");
                    }
                }
            }
            else
            {
                if (!DatasToControls.ValidarDouble(tbTasa.Text) || (Convert.ToDouble(tbTasa.Text) > (5 * tasa)))
                {
                    Utils.MostrarAlerta(Response, "Tasa de Interes Invalida");
                }
                else if (!DatasToControls.ValidarInt(tbGracia.Text) || (Convert.ToInt32(tbGracia.Text) != diasGracia))
                {
                    Utils.MostrarAlerta(Response, "Los dias de gracia difieren del valor especificado en los parámetros de cartera.\\nSe tomara el valor inicialmente  registrado en cartera");
                    tbGracia.Text = diasGracia.ToString();
                }
                else
                {
                    ds = new DataSet();
                    DBFunctions.Request(ds, IncludeSchema.NO, "SELECT pdoc_codigo,mfac_numedocu,mnit_nit,mfac_tipodocu,tvig_vigencia,mfac_vence,(mfac_valofact+mfac_valoiva+mfac_valoflet+mfac_valoivaflet-mfac_valorete-mfac_valoabon) AS Faltante,SUM(DAYS(CURRENT DATE)-DAYS(mfac_vence + " + diasGracia + " days)) FROM dbxschema.mfacturacliente WHERE tvig_vigencia IN('V','A') AND mfac_tipodocu IN('C','F','N','A','I') AND mfac_vence + " + diasGracia + " DAYS < CURRENT DATE AND (mfac_valofact+mfac_valoiva+mfac_valoflet+mfac_valoivaflet-mfac_valorete-mfac_valoabon) > 1 AND mnit_nit='" + tbNit.Text + "' GROUP BY pdoc_codigo,mfac_numedocu,mnit_nit,mfac_tipodocu,tvig_vigencia,mfac_vence,(mfac_valofact+mfac_valoiva+mfac_valoflet+mfac_valoivaflet-mfac_valorete-mfac_valoabon) ORDER BY mnit_nit,pdoc_codigo,mfac_vence ASC");
                    //lb.Text+="SELECT pdoc_codigo,mfac_numedocu,mnit_nit,mfac_tipodocu,tvig_vigencia,mfac_vence,(mfac_valofact+mfac_valoiva+mfac_valoflet+mfac_valoivaflet-mfac_valorete-mfac_valoabon) AS Faltante,SUM(DAYS(CURRENT DATE)-DAYS(mfac_vence + "+diasGracia+" days)) FROM dbxschema.mfacturacliente WHERE tvig_vigencia IN('V','A') AND mfac_tipodocu IN('C','F','N','A','I') AND mfac_vence + "+diasGracia+" DAYS < CURRENT DATE AND (mfac_valofact+mfac_valoiva+mfac_valoflet+mfac_valoivaflet-mfac_valorete-mfac_valoabon) > 0 GROUP BY pdoc_codigo,mfac_numedocu,mnit_nit,mfac_tipodocu,tvig_vigencia,mfac_vence,(mfac_valofact+mfac_valoiva+mfac_valoflet+mfac_valoivaflet-mfac_valorete-mfac_valoabon) ORDER BY mnit_nit,pdoc_codigo,mfac_vence ASC <br>";
                    if (Session["dtMora"] == null)
                    {
                        this.Cargar_dtMora();
                    }
                    if (ds.Tables[0].Rows.Count != 0)
                    {
                        for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                        {
                            fila    = dtMora.NewRow();
                            fila[0] = ds.Tables[0].Rows[i][0].ToString();
                            fila[1] = ds.Tables[0].Rows[i][1].ToString();
                            fila[2] = ds.Tables[0].Rows[i][2].ToString();
                            fila[3] = ds.Tables[0].Rows[i][3].ToString();
                            fila[4] = ds.Tables[0].Rows[i][4].ToString();
                            fila[5] = Convert.ToDateTime(ds.Tables[0].Rows[i][5]).ToString("yyyy-MM-dd");
                            fila[6] = Convert.ToDouble(ds.Tables[0].Rows[i][6]);
                            fila[7] = ds.Tables[0].Rows[i][7].ToString();
                            dtMora.Rows.Add(fila);
                        }
                        Session["dtMora"]  = dtMora;
                        facturas           = this.Cruzar_Documentos(ref dtMora);
                        Session["cruces"]  = facturas;
                        lnbReporte.Visible = true;
                        Llenar_dgPreLiq();
                        btnLiquidar.Visible    = true;
                        btnPreLiquidar.Enabled = false;
                    }
                    else
                    {
                        Utils.MostrarAlerta(Response, "No se encontraron facturas para el nit especificado");
                    }
                }
            }
        }
Exemplo n.º 14
0
        protected void aceptar_Click(object Sender, EventArgs e)
        {
            //string valida = Tools.General.validarCierreFinanzas(fecha.Text, "C");
            if (!Tools.General.validarCierreFinanzas(fecha.Text, "C"))
            {
                Utils.MostrarAlerta(Response, "La fecha del documento no corresponde a la vigencia del sistema de cartera. Por favor revise.");
                return;
            }

            Session.Remove("TIPO_COMPROBANTE");
            Session["TIPO_COMPROBANTE"] = tipoRecibo.SelectedValue;
            if (Request.QueryString["tipo"] == "RC" && tipoRecibo.SelectedValue.Equals("F"))
            {
                verCredito = "visible";
                if (ddlCredito.Items.Count == 0 || ddlCredito.SelectedValue.Length == 0)
                {
                    Utils.MostrarAlerta(Response, "Debe seleccionar el crédito");
                    return;
                }
            }


            else
            {
                verCredito = "hidden";
            }
            if (concepto.Text.Length < 10)
            {
                Utils.MostrarAlerta(Response, "El concepto es demasiado corto. Mínimo 10 caracteres");
            }
            else if (!DatasToControls.ValidarInt(numeroRecibo.Text))
            {
                Utils.MostrarAlerta(Response, "Número Invalido");
            }
            else if (almacen.SelectedValue == "Seleccione...")
            {
                Utils.MostrarAlerta(Response, "Almacén NO Seleccionado !!!");
            }
            else if (ddlFlujo.SelectedValue == "0")
            {
                Utils.MostrarAlerta(Response, "Flujo de Caja NO Seleccionado !!!");
            }
            else if (datCli.Text == "")
            {
                Utils.MostrarAlerta(Response, "Nit NO Seleccionado !!!");
            }
            else if (datBen.Text == "")
            {
                Utils.MostrarAlerta(Response, "Nit por Cuenta de NO Seleccionado !!!");
            }
            else
            {
                prefijoRecibo.Enabled = false;
                tipoRecibo.Enabled    = false;
                fecha.Enabled         = false;
                if (Request.QueryString["cruce"] != null)
                {
                    fecha.Enabled = true;
                }
                almacen.Enabled       = false;
                numeroRecibo.ReadOnly = true;
                concepto.ReadOnly     = true;
                aceptar.Enabled       = false;
                datCli.Enabled        = false;
                datBen.Enabled        = false;
                ddlCredito.Enabled    = false;
                ((HtmlInputHidden)documentos.FindControl("hdnCli")).Value = datCli.Text;
                ((HtmlInputHidden)documentos.FindControl("hdnBen")).Value = datBen.Text;
                ((HtmlInputHidden)varios.FindControl("hdncli")).Value     = datCli.Text;
                ((HtmlInputHidden)varios.FindControl("hdnben")).Value     = datBen.Text;
                controlNoCausados.Cargar_tablaNC();
                controlNoCausados.Mostrar_gridNC();
                //Recibos de Caja
                if (tipoRecibo.SelectedValue == "A")
                {
                    //Anticipo a Taller
                    ((PlaceHolder)padre.FindControl("phPagos")).Visible      = true;
                    ((ImageButton)padre.FindControl("btnPagos")).ImageUrl    = "../img/AMS.BotonContraer.png";
                    ((ImageButton)padre.FindControl("btnPagos")).Enabled     = true;
                    ((DataGrid)controlPagos.FindControl("gridRtns")).Visible = false;
                    ((Panel)controlPagos.FindControl("pnlPrefNot")).Visible  = true;
                    this.Esconder_Controles();
                }
                else if (tipoRecibo.SelectedValue == "F" || tipoRecibo.SelectedValue == "I" || tipoRecibo.SelectedValue == "E" || tipoRecibo.SelectedValue == "O")
                {
                    //Ingreso Definitivo
                    if (Request.QueryString["tipo"] == "RC" || Request.QueryString["tipo"] == "CE")
                    {
                        bool existeMFC = DBFunctions.RecordExist("SELECT mnit_nit FROM mfacturacliente WHERE mnit_nit IN ('" + this.datBen.Text + "','" + this.datCli.Text + "') AND tvig_vigencia<>'C'");
                        bool existeMFP = DBFunctions.RecordExist("SELECT mnit_nit FROM mfacturaproveedor WHERE mnit_nit IN ('" + this.datBen.Text + "','" + this.datCli.Text + "') AND tvig_vigencia<>'C'");
                        if (tipoRecibo.SelectedValue != "O" && (existeMFC || existeMFP))
                        {
                            if (datCli.Text != datBen.Text)
                            {
                                Utils.MostrarAlerta(Response, "Se cargaran los documentos para estos nits: " + this.datCli.Text + " y " + this.datBen.Text + ". Si no desea hacer abonos a documentos. Solo de click en el botón Aceptar");
                            }
                            else
                            {
                                Utils.MostrarAlerta(Response, "Se cargaran los documentos para este nit: " + this.datCli.Text + ". Si no desea hacer abonos a documentos. Solo de click en el botón Aceptar");
                            }
                            controlDocumentos.CargarGrillaDocumentos();
                            ((PlaceHolder)padre.FindControl("phDocumentos")).Visible   = true;
                            ((ImageButton)padre.FindControl("btnDocumentos")).ImageUrl = "../img/AMS.BotonContraer.png";
                            ((ImageButton)padre.FindControl("btnDocumentos")).Enabled  = true;
                            this.Esconder_Controles();
                        }
                        else if (tipoRecibo.SelectedValue == "O" || (!existeMFC && !existeMFP))
                        {
                            if (tipoRecibo.SelectedValue != "O")
                            {
                                Utils.MostrarAlerta(Response, "No existen documentos para el/los nit(s) especificado(s)");
                            }
                            this.Esconder_Controles();
                            ((PlaceHolder)padre.FindControl("phNoCausados")).Visible = true;
                            if (Session["TIPO_COMPROBANTE"].ToString().Equals("O"))
                            {
                                ((PlaceHolder)padre.FindControl("phCancelacionObligFin")).Visible = true;
                            }
                            ((ImageButton)padre.FindControl("btnNoCausados")).ImageUrl = "../img/AMS.BotonContraer.png";
                            ((ImageButton)padre.FindControl("btnNoCausados")).Enabled  = true;
                        }
                    }
                    else if (Request.QueryString["tipo"] == "RP")
                    {
                        ((PlaceHolder)padre.FindControl("phNoCausados")).Visible   = true;
                        ((ImageButton)padre.FindControl("btnNoCausados")).ImageUrl = "../img/AMS.BotonContraer.png";
                        ((ImageButton)padre.FindControl("btnNoCausados")).Enabled  = true;

                        //((PlaceHolder)padre.FindControl("phPagos")).Visible=true;
                        //((ImageButton)padre.FindControl("btnPagos")).ImageUrl="../img/AMS.BotonContraer.png";
                        //((ImageButton)padre.FindControl("btnPagos")).Enabled=true;
                        ((DataGrid)controlPagos.FindControl("gridRtns")).Visible = false;
                        this.Esconder_Controles();
                    }
                }
                else if (tipoRecibo.SelectedValue == "P")
                {
                    //Legalización de un provisional
                    bool existeMCP = DBFunctions.RecordExist("SELECT ttip_codigo,pban_codigo,mcpag_numerodoc,mcpag_tipomoneda,mcpag_valor/mcpag_valortasacambio,mcpag_valortasacambio,mcpag_valorbase,mcpag_fecha,test_estado FROM mcajapago P,mcaja M,pdocumento D WHERE M.pdoc_codigo=P.pdoc_codigo AND M.mcaj_numero=P.mcaj_numero AND M.pdoc_codigo=D.pdoc_codigo AND (M.mnit_nit IN ('" + this.datCli.Text + "','" + this.datBen.Text + "') OR M.mnit_nitben IN ('" + this.datCli.Text + "','" + this.datBen.Text + "')) AND P.ttip_codigo='C' AND P.test_estado='C' AND D.tdoc_tipodocu='RP'");
                    if (existeMCP)
                    {
                        if (datCli.Text != datBen.Text)
                        {
                            Utils.MostrarAlerta(Response, "Se cargaran los documentos para estos nits: " + this.datCli.Text + " y " + this.datBen.Text + ". Si no desea hacer abonos a documentos. Solo de click en el botón Aceptar");
                        }
                        else
                        {
                            Utils.MostrarAlerta(Response, "Se cargaran los documentos para este nit: " + this.datCli.Text + ". Si no desea hacer abonos a documentos. Solo de click en el botón Aceptar");
                        }
                        controlDocumentos.CargarGrillaDocumentos();
                        ((PlaceHolder)padre.FindControl("phDocumentos")).Visible   = true;
                        ((ImageButton)padre.FindControl("btnDocumentos")).ImageUrl = "../img/AMS.BotonContraer.png";
                        ((ImageButton)padre.FindControl("btnDocumentos")).Enabled  = true;
                        this.Esconder_Controles();
                    }
                    else
                    {
                        Utils.MostrarAlerta(Response, "No existen recibos provisionales para el/los nit(s) especificado(s)");
                    }
                }
                else if (tipoRecibo.SelectedValue == "R")
                {
                    //Reconsignación Cheques Devueltos, solo documentos
                    bool existeMCP = DBFunctions.RecordExist("SELECT ttip_codigo,pban_codigo,mcpag_numerodoc,mcpag_tipomoneda,mcpag_valor,mcpag_valortasacambio,mcpag_valorbase,mcpag_fecha FROM mcajapago P,mcaja M WHERE M.pdoc_codigo=P.pdoc_codigo AND (M.mnit_nit IN ('" + this.datCli.Text + "','" + this.datBen.Text + "') OR M.mnit_nitben IN ('" + this.datCli.Text + "','" + this.datBen.Text + "')) AND M.mcaj_numero=P.mcaj_numero AND ttip_codigo='C' AND test_estado='D'");
                    if (existeMCP)
                    {
                        if (datCli.Text != datBen.Text)
                        {
                            Utils.MostrarAlerta(Response, "Se cargaran los documentos para estos nits: " + this.datCli.Text + " y " + this.datBen.Text + ". Si no desea hacer abonos a documentos. Solo de click en el botón Aceptar");
                        }
                        else
                        {
                            Utils.MostrarAlerta(Response, "Se cargaran los documentos para este nit: " + this.datCli.Text + ". Si no desea hacer abonos a documentos. Solo de click en el botón Aceptar");
                        }
                        ((PlaceHolder)padre.FindControl("phDocumentos")).Visible   = true;
                        ((ImageButton)padre.FindControl("btnDocumentos")).ImageUrl = "../img/AMS.BotonContraer.png";
                        ((ImageButton)padre.FindControl("btnDocumentos")).Enabled  = true;
                        controlDocumentos.CargarGrillaDocumentos();
                        this.Esconder_Controles();
                    }
                    else
                    {
                        Utils.MostrarAlerta(Response, "No existen cheques devueltos para el/los nit(s) especificado(s)");
                    }
                }
                else if (tipoRecibo.SelectedValue == "V")
                {
                    //Anticipo a Vehiculos
                    this.Esconder_Controles();
                    ((PlaceHolder)padre.FindControl("phVarios")).Visible   = true;
                    ((Label)padre.FindControl("lbVarios")).Text            = "Anticipos a Vehiculos";
                    ((Panel)varios.FindControl("panelAbonos")).Visible     = true;
                    ((Panel)varios.FindControl("panelPost")).Visible       = false;
                    ((ImageButton)padre.FindControl("btnVarios")).ImageUrl = "../img/AMS.BotonContraer.png";
                    ((ImageButton)padre.FindControl("btnVarios")).Enabled  = true;
                    controlVarios.Llenar_GridAnticipos();
                }
                else if (tipoRecibo.SelectedValue == "C")
                {
                    //Actualizacion Prorrogas Cheques
                    if (DBFunctions.RecordExist("SELECT P.ttip_codigo FROM mcajapago P,mcaja M WHERE M.pdoc_codigo=P.pdoc_codigo AND M.mcaj_numero=P.mcaj_numero AND (M.mnit_nit IN ('" + this.datCli.Text + "','" + this.datBen.Text + "') OR M.mnit_nitben IN ('" + this.datCli.Text + "','" + this.datBen.Text + "')) AND P.ttip_codigo='C'"))
                    {
                        ((PlaceHolder)padre.FindControl("phVarios")).Visible     = true;
                        ((Panel)varios.FindControl("panelAbonos")).Visible       = false;
                        ((Panel)varios.FindControl("panelPost")).Visible         = true;
                        ((Label)padre.FindControl("lbVarios")).Text              = "Actualización de Prorrogas de Cheques";
                        ((ImageButton)padre.FindControl("btnVarios")).ImageUrl   = "../img/AMS.BotonContraer.png";
                        ((ImageButton)padre.FindControl("btnVarios")).Enabled    = true;
                        ((DataGrid)controlPagos.FindControl("gridRtns")).Visible = false;
                        controlVarios.Llenar_GrillaProrrogas();
                        this.Esconder_Controles();
                    }
                    else
                    {
                        Utils.MostrarAlerta(Response, "No hay cheques para el/los nit(s) especificado(s)");
                    }
                }
                else if (tipoRecibo.SelectedValue == "D")
                {
                    //Devolución Pedido Cliente
                    if (DBFunctions.RecordExist("SELECT M.pdoc_codigo,M.mped_numepedi,SUM(M.mped_valounit - m.mped_valodesc), SUM(V.mant_valorecicaja) FROM mpedidovehiculo M,manticipovehiculo V WHERE M.pdoc_codigo=V.mped_codigo AND M.mped_numepedi=V.mped_numepedi AND M.mnit_nit IN ('" + this.datCli.Text + "','" + this.datBen.Text + "') AND TEST_TIPOESTA = 10 GROUP BY M.pdoc_codigo,M.mped_numepedi "))
                    {
                        ((PlaceHolder)padre.FindControl("phVarios")).Visible = true;
                        ((Panel)varios.FindControl("panelDevPed")).Visible   = true;
                        ((Label)padre.FindControl("lbVarios")).Text          = "Devolución de Pedidos de Clientes";
                        controlVarios.Cargar_GrillaPedidosDevueltos();
                        ((ImageButton)padre.FindControl("btnVarios")).ImageUrl   = "../img/AMS.BotonContraer.png";
                        ((ImageButton)padre.FindControl("btnVarios")).Enabled    = true;
                        ((DataGrid)controlPagos.FindControl("gridRtns")).Visible = false;
                        this.Esconder_Controles();
                    }
                    else
                    {
                        Utils.MostrarAlerta(Response, "No hay abonos a pedidos para el/los nit(s) especificado(s) o ESTAN ASIGNADOS ó YA ESTAN FACTURADOS ");
                    }
                }
                else if (tipoRecibo.SelectedValue == "G")
                {
                    //Anticipo General
                    ((PlaceHolder)padre.FindControl("phPagos")).Visible        = true;
                    ((ImageButton)padre.FindControl("btnPagos")).ImageUrl      = "../img/AMS.BotonContraer.png";
                    ((ImageButton)padre.FindControl("btnPagos")).Enabled       = true;
                    ((DataGrid)controlPagos.FindControl("gridRtns")).Visible   = false;
                    ((Panel)controlPagos.FindControl("pnlPrefNotPro")).Visible = true;
                    this.Esconder_Controles();
                }
                else if (tipoRecibo.SelectedValue == "S")
                {
                    //Préstamo a Cliente
                    ((PlaceHolder)padre.FindControl("phPagos")).Visible       = true;
                    ((ImageButton)padre.FindControl("btnPagos")).ImageUrl     = "../img/AMS.BotonContraer.png";
                    ((ImageButton)padre.FindControl("btnPagos")).Enabled      = true;
                    ((DataGrid)controlPagos.FindControl("gridRtns")).Visible  = false;
                    ((Panel)controlPagos.FindControl("panelPrefijo")).Visible = true;
                    this.Esconder_Controles();
                }
            }
        }
Exemplo n.º 15
0
 protected void DgInserts_AddAndDel(object sender, DataGridCommandEventArgs e)
 {               //Agreaga, elimina Item //Reiniciar
     if (((Button)e.CommandSource).CommandName == "ClearRows")
     {
         dtInserts.Rows.Clear();
     }
     //AgregarItem
     if (((Button)e.CommandSource).CommandName == "AddDatasRow" && CheckValues(e))
     {
         //Revisamos que los valores de documento de referencia sean validos
         if (this.ddlCodDoc.SelectedItem.Text != "Seleccione..." && this.txObservaciones.Text != "" && this.tbPrefDocRef.Text != "" && DatasToControls.ValidarInt(this.tbPrefNumRef.Text))
         {
             if (((TextBox)e.Item.Cells[4].Controls[1]).Text.Trim() == "")
             {
                 Utils.MostrarAlerta(Response, "El valor de la unidad no puede ir vacio, revise por favor..");
                 return;
             }
             ds = new DataSet();
             string Icod     = "";
             string IcodEdit = ((TextBox)e.Item.Cells[0].Controls[1]).Text.Trim();
             //Aqui revisamos que el codigo del item es valido
             bool   estCod = Referencias.Guardar(IcodEdit, ref Icod, (((DropDownList)e.Item.Cells[2].Controls[1]).SelectedValue.Split('-'))[1]);
             double cantN = 0, valN = 0;                                                 //Valores y cantidades
             bool   valsN  = (((TextBox)e.Item.Cells[3].Controls[1]).Text.Length > 0);   //Se dio cantidad?
             string AnoAct = DBFunctions.SingleData("SELECT pano_ano from cinventario"); //Año actual contabilidad
             if (valsN)
             {                                                                           //Se dieron valores:
                 try
                 {
                     cantN = Convert.ToDouble(((TextBox)e.Item.Cells[3].Controls[1]).Text);
                 }
                 catch
                 {
                     valsN = false;
                 };
                 try
                 {
                     valN = Convert.ToDouble(((TextBox)e.Item.Cells[4].Controls[1]).Text);
                 }
                 catch
                 {};
             }
             if (estCod)
             {
                 //Aqui revisamos si es un codigo de sustitución o no
                 string icodTmp = Icod;
                 if (!Referencias.RevisionSustitucion(ref Icod, (((DropDownList)e.Item.Cells[2].Controls[1]).SelectedValue.Split('-'))[0]))
                 {
                     Response.Write("<script language='javascript'>alert('El codigo " + IcodEdit + " no se encuentra registrado.\\nRevise Por Favor.!');</script>");
                     return;
                 }
                 string icodTmp2 = "";
                 Referencias.Editar(Icod, ref icodTmp2, (((DropDownList)e.Item.Cells[2].Controls[1]).SelectedValue.Split('-'))[1]);
                 if (icodTmp != Icod)
                 {
                     Response.Write("<script language='javascript'>alert('El codigo " + IcodEdit + " ha sido sustituido.El codigo actual es " + icodTmp2 + "!');</script>");
                 }
                 //Se dio codigo de item
                 for (int i = 0; i < dtInserts.Rows.Count; i++)                 //Revisar que no este ya el item en la lista
                 {
                     if (icodTmp2 == dtInserts.Rows[i][0].ToString().Trim())
                     {
                         BindDatas();
                         Response.Write("<script language='javascript'>alert('El item ya esta en la lista, intente actualizarlo!');</script>");
                         return;
                     }
                 }
                 //Crear msaldoitem almacen si no existe
                 if (!DBFunctions.RecordExist("SELECT * FROM msaldoitemalmacen WHERE mite_codigo = '" + Icod + "' AND PALM_ALMACEN='" + ddlAlmacen.SelectedItem.Value + "' AND PANO_ANO=" + AnoAct))
                 {
                     ArrayList sqlL = new ArrayList();
                     sqlL.Add("insert into msaldoitemalmacen (mite_codigo,palm_almacen,pano_ano,msal_cantactual,msal_cantasig,msal_costprom,msal_costpromhist,msal_cantpendiente,msal_canttransito,msal_cantinveinic) values ('" + Icod + "','" + ddlAlmacen.SelectedItem.Value + "'," + AnoAct + ",0,0,0,0,0,0,0)");
                     DBFunctions.Transaction(sqlL);
                     sqlL.Clear();
                 }
                 //Traer datos del item
                 DBFunctions.Request(ds, IncludeSchema.NO, "select mitems.mite_codigo, mitems.mite_nombre, msaldoitemalmacen.msal_cantasig, msaldoitemalmacen.msal_costprom, msaldoitemalmacen.msal_cantactual,mitems.plin_codigo from mitems,msaldoitemalmacen where mitems.mite_codigo=msaldoitemalmacen.mite_codigo and mitems.mite_codigo='" + Icod + "' and msaldoitemalmacen.PALM_ALMACEN='" + ddlAlmacen.SelectedItem.Value + "' AND msaldoitemalmacen.PANO_ANO=" + AnoAct);
                 //														0					1						2								3									4							 5
                 if (ds.Tables[0].Rows.Count > 0)
                 {
                     double cosP = Convert.ToDouble(ds.Tables[0].Rows[0][3]);                            //Costo promedio
                     dr = dtInserts.NewRow();
                     string codList = "";
                     Referencias.Editar(ds.Tables[0].Rows[0][0].ToString(), ref codList, DBFunctions.SingleData("SELECT plin_tipo FROM plineaitem WHERE plin_codigo='" + ds.Tables[0].Rows[0][5].ToString() + "'"));
                     dr[0] = codList;                                                      //Cod
                     dr[1] = ds.Tables[0].Rows[0][1];                                      //Nombre
                     if (cantN < 0)                                                        //Validar cantidad
                     {
                         if (Math.Abs(cantN) <= Convert.ToDouble(ds.Tables[0].Rows[0][4])) //Si la cantidad es <0 abs(cantidad) debe ser mayor que la cantidad actual /****Rta:Si la cantidad asignada para el ajuste (digitada en la grilla) es mayor que la cantidad actual del almacen le asigna 0, sino asigna la digitada
                         {
                             dr[2] = cantN;                                                //Cantidad valida
                         }
                         else
                         {
                             dr[2] = 0;                                          //No hay existencias
                         }
                     }
                     else
                     {
                         dr[2] = cantN;                               //No entiendo si es mayor que 0 cero, lo asigna de una vez
                     }
                     //if(valsN && (valN>0))//ASIGNACION COSTO PROMEDIO Si es valido el valor digitado en la grilla celda 2 (cantidad) Y el valor unitario es mayor que cero
                     if (valsN && (cantN > 0))
                     {
                         dr[3] = valN;
                     }
                     else
                     {
                         dr[3] = cosP;                                   //costo promedio
                         Response.Write("<script language:javascript>alert('El ajuste es negativo por tanto se tomara el costo promedio como valor unidad');</script>");
                     }
                     if (Convert.ToDouble(dr[2]) == 0)
                     {
                         if (cantN == 0)
                         {
                             Response.Write("<script language='javascript'>alert('La cantidad no puede ser 0!');</script>");
                         }
                         else
                         {
                             Response.Write("<script language='javascript'>alert('No hay suficiente existencia!');</script>");
                         }
                         return;
                     }
                     dr[4] = ds.Tables[0].Rows[0][4];                            //cantactual
                     dr[5] = Convert.ToDouble(dr[2]) * Convert.ToDouble(dr[3]);  //total
                     dr[6] = ds.Tables[0].Rows[0][5].ToString();
                     dtInserts.Rows.Add(dr);
                 }
             }
             else
             {
                 Response.Write("<script language='javascript'>alert('El codigo " + IcodEdit + " es invalido para la linea de bodega " + ((DropDownList)e.Item.Cells[2].Controls[1]).SelectedItem.Text + ".\\nRevise Por Favor!');</script>");
             }
         }
         else
         {
             Response.Write("<script language='javascript'>alert('Error en datos: El Cod. Documento, la Observación o el Prefijo Documento Referencia estan vacios o el Número Documento Referencia no es numérico. Revise Por Favor');</script>");
         }
     }
     //EliminarItem
     if (((Button)e.CommandSource).CommandName == "DelDatasRow")
     {
         try{ dtInserts.Rows.Remove(dtInserts.Rows[e.Item.ItemIndex]); }
         catch {}
     }
     ;
     BindDatas();
 }