public long Nuevo(M_Otroscomprobantes Otroscomprobantes)
        {
            Dictionary <string, object> Parametros = new Dictionary <string, object>
            {
                { "Fecha", Otroscomprobantes.Fecha.ToShortDateString() },
                { "Tipo_comp", Otroscomprobantes.Tipo_comp },
                { "No_comp", Otroscomprobantes.No_comp },
                { "Tipo_id", Otroscomprobantes.Tipo_id },
                { "Id", Otroscomprobantes.Id },
                { "Dv", Otroscomprobantes.Dv },
                { "Descripcion", Otroscomprobantes.Descripcion },
                { "Valor", Otroscomprobantes.Valor },
                { "Forma_pago", Otroscomprobantes.Forma_pago },
                { "Cod_cuenta", Otroscomprobantes.Cod_cuenta },
                { "Clase_cuenta", Otroscomprobantes.Clase_cuenta },
                { "Num", Otroscomprobantes.Num },
                { "Entidad", Otroscomprobantes.Entidad },
                { "Estado", Otroscomprobantes.Estado },
                { "FechaAplic", Otroscomprobantes.FechaAplic.ToShortDateString() },
                { "Usu_cap", Otroscomprobantes.Usu_cap },
                { "Fecha_vence", Otroscomprobantes.Fecha_vence.ToShortDateString() },
                { "Cod_empresa", Otroscomprobantes.Cod_empresa },
                { "No_operacion", Otroscomprobantes.No_operacion },
                { "Cod_concepto", Otroscomprobantes.Cod_concepto },
                { "Valor_base", Otroscomprobantes.Valor_base },
                { "Usu_aprueba", Otroscomprobantes.Usu_aprueba },
                { "Estado_contab", Otroscomprobantes.Estado_contab },
                { "Centro_costo", Otroscomprobantes.Centro_costo },
                { "Seccion", Otroscomprobantes.Seccion }
            };

            return(Data.EjecutarSPEscalar("{CALL sp_Nuevo_otroscomprobantes(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)}", Parametros));
        }
        public long Actualizar(M_Otroscomprobantes Otroscomprobantes)
        {
            bool   SinFechaAplic = false;
            bool   SinFechaVence = false;
            string CadenaSql     = "";

            if (string.IsNullOrWhiteSpace(Otroscomprobantes.FechaAplic.ToString()))
            {
                SinFechaAplic = true;
            }
            if (string.IsNullOrWhiteSpace(Otroscomprobantes.Fecha_vence.ToString()))
            {
                SinFechaVence = true;
            }
            CadenaSql = "UPDATE otroscomprobantes SET Fecha=#" + Otroscomprobantes.Fecha.ToString("yyyy/MM/dd") + "#,Tipo_comp='" + Otroscomprobantes.Tipo_comp + "'" + ",No_comp=" + Otroscomprobantes.No_comp + ",Tipo_id='" + Otroscomprobantes.Tipo_id + "'" + ",Id=" + Otroscomprobantes.Id + ",Dv='" + Otroscomprobantes.Dv + "'" + ",Descripcion='" + Otroscomprobantes.Descripcion + "'" + ",Valor='" + Otroscomprobantes.Valor + "',Forma_pago=" + Otroscomprobantes.Forma_pago + ",Cod_cuenta=" + Otroscomprobantes.Cod_cuenta + ",Clase_cuenta='" + Otroscomprobantes.Clase_cuenta + "'" + ",Num='" + Otroscomprobantes.Num + "'" + ",Entidad='" + Otroscomprobantes.Entidad + "'" + ",Estado='" + Otroscomprobantes.Estado + "'" + ",FechaAplic=#" + Otroscomprobantes.FechaAplic.ToString("yyyy/MM/dd") + "#,Usu_cap=" + Otroscomprobantes.Usu_cap + ",Fecha_vence=#" + Otroscomprobantes.Fecha_vence.ToString("yyyy/MM/dd") + "#,Cod_empresa=" + Otroscomprobantes.Cod_empresa + ",No_operacion=" + Otroscomprobantes.No_operacion + ",Cod_concepto=" + Otroscomprobantes.Cod_concepto + ",Valor_base=" + Otroscomprobantes.Valor_base + ",Usu_aprueba=" + Otroscomprobantes.Usu_aprueba + ",Estado_contab=" + Otroscomprobantes.Estado_contab + ",Centro_costo=" + Otroscomprobantes.Centro_costo + ",Seccion=" + Otroscomprobantes.Seccion + " WHERE Tipo_comp='" + Otroscomprobantes.Tipo_comp + "'" + " and No_comp=" + Otroscomprobantes.No_comp + ";";
            if (!SinFechaAplic && !SinFechaVence)
            {
                CadenaSql = "UPDATE otroscomprobantes SET Fecha=#" + Otroscomprobantes.Fecha.ToString("yyyy/MM/dd") + "#,Tipo_comp='" + Otroscomprobantes.Tipo_comp + "'" + ",No_comp=" + Otroscomprobantes.No_comp + ",Tipo_id='" + Otroscomprobantes.Tipo_id + "'" + ",Id=" + Otroscomprobantes.Id + ",Dv='" + Otroscomprobantes.Dv + "'" + ",Descripcion='" + Otroscomprobantes.Descripcion + "'" + ",Valor='" + Otroscomprobantes.Valor + "',Forma_pago=" + Otroscomprobantes.Forma_pago + ",Cod_cuenta=" + Otroscomprobantes.Cod_cuenta + ",Clase_cuenta='" + Otroscomprobantes.Clase_cuenta + "'" + ",Num='" + Otroscomprobantes.Num + "'" + ",Entidad='" + Otroscomprobantes.Entidad + "'" + ",Estado='" + Otroscomprobantes.Estado + "'" + ",Usu_cap=" + Otroscomprobantes.Usu_cap + ",Cod_empresa=" + Otroscomprobantes.Cod_empresa + ",No_operacion=" + Otroscomprobantes.No_operacion + ",Cod_concepto=" + Otroscomprobantes.Cod_concepto + ",Valor_base=" + Otroscomprobantes.Valor_base + ",Usu_aprueba=" + Otroscomprobantes.Usu_aprueba + ",Estado_contab=" + Otroscomprobantes.Estado_contab + ",Centro_costo=" + Otroscomprobantes.Centro_costo + ",Seccion=" + Otroscomprobantes.Seccion + " WHERE Tipo_comp='" + Otroscomprobantes.Tipo_comp + "'" + " and No_comp=" + Otroscomprobantes.No_comp + ";";
            }
            else
            {
                if (!SinFechaAplic)
                {
                    CadenaSql = "UPDATE otroscomprobantes SET Fecha=#" + Otroscomprobantes.Fecha.ToString("yyyy/MM/dd") + "#,Tipo_comp='" + Otroscomprobantes.Tipo_comp + "'" + ",No_comp=" + Otroscomprobantes.No_comp + ",Tipo_id='" + Otroscomprobantes.Tipo_id + "'" + ",Id=" + Otroscomprobantes.Id + ",Dv='" + Otroscomprobantes.Dv + "'" + ",Descripcion='" + Otroscomprobantes.Descripcion + "'" + ",Valor='" + Otroscomprobantes.Valor + "',Forma_pago=" + Otroscomprobantes.Forma_pago + ",Cod_cuenta=" + Otroscomprobantes.Cod_cuenta + ",Clase_cuenta='" + Otroscomprobantes.Clase_cuenta + "'" + ",Num='" + Otroscomprobantes.Num + "'" + ",Entidad='" + Otroscomprobantes.Entidad + "'" + ",Estado='" + Otroscomprobantes.Estado + "'" + ",Usu_cap=" + Otroscomprobantes.Usu_cap + ",Fecha_vence=#" + Otroscomprobantes.Fecha_vence.ToString("yyyy/MM/dd") + "#,Cod_empresa=" + Otroscomprobantes.Cod_empresa + ",No_operacion=" + Otroscomprobantes.No_operacion + ",Cod_concepto=" + Otroscomprobantes.Cod_concepto + ",Valor_base=" + Otroscomprobantes.Valor_base + ",Usu_aprueba=" + Otroscomprobantes.Usu_aprueba + ",Estado_contab=" + Otroscomprobantes.Estado_contab + ",Centro_costo=" + Otroscomprobantes.Centro_costo + ",Seccion=" + Otroscomprobantes.Seccion + " WHERE Tipo_comp='" + Otroscomprobantes.Tipo_comp + "'" + " and No_comp=" + Otroscomprobantes.No_comp + ";";
                }
                if (!SinFechaVence)
                {
                    CadenaSql = "UPDATE otroscomprobantes SET Fecha=#" + Otroscomprobantes.Fecha.ToString("yyyy/MM/dd") + "#,Tipo_comp='" + Otroscomprobantes.Tipo_comp + "'" + ",No_comp=" + Otroscomprobantes.No_comp + ",Tipo_id='" + Otroscomprobantes.Tipo_id + "'" + ",Id=" + Otroscomprobantes.Id + ",Dv='" + Otroscomprobantes.Dv + "'" + ",Descripcion='" + Otroscomprobantes.Descripcion + "'" + ",Valor='" + Otroscomprobantes.Valor + "',Forma_pago=" + Otroscomprobantes.Forma_pago + ",Cod_cuenta=" + Otroscomprobantes.Cod_cuenta + ",Clase_cuenta='" + Otroscomprobantes.Clase_cuenta + "'" + ",Num='" + Otroscomprobantes.Num + "'" + ",Entidad='" + Otroscomprobantes.Entidad + "'" + ",Estado='" + Otroscomprobantes.Estado + "'" + ",FechaAplic=#" + Otroscomprobantes.FechaAplic.ToString("yyyy/MM/dd") + "#,Usu_cap=" + Otroscomprobantes.Usu_cap + ",Cod_empresa=" + Otroscomprobantes.Cod_empresa + ",No_operacion=" + Otroscomprobantes.No_operacion + ",Cod_concepto=" + Otroscomprobantes.Cod_concepto + ",Valor_base=" + Otroscomprobantes.Valor_base + ",Usu_aprueba=" + Otroscomprobantes.Usu_aprueba + ",Estado_contab=" + Otroscomprobantes.Estado_contab + ",Centro_costo=" + Otroscomprobantes.Centro_costo + ",Seccion=" + Otroscomprobantes.Seccion + " WHERE Tipo_comp='" + Otroscomprobantes.Tipo_comp + "'" + " and No_comp=" + Otroscomprobantes.No_comp + ";";
                }
            }
            return(Data.Accion(CadenaSql));
        }
        public long Insertar(M_Otroscomprobantes Otroscomprobantes)
        {
            bool   SinFechaAplic = false;
            bool   SinFechaVence = false;
            string CadenaSql     = "";
            long   resultado     = 0;

            if (string.IsNullOrWhiteSpace(Otroscomprobantes.FechaAplic.ToString()))
            {
                SinFechaAplic = true;
            }
            if (string.IsNullOrWhiteSpace(Otroscomprobantes.Fecha_vence.ToString()))
            {
                SinFechaVence = true;
            }
            CadenaSql = "INSERT INTO otroscomprobantes (Fecha,Tipo_comp,No_comp,Tipo_id,Id,Dv,Descripcion,Valor,Forma_pago,Cod_cuenta,Clase_cuenta,Num,Entidad,Estado,FechaAplic,Usu_cap,Fecha_vence,Cod_empresa,No_operacion,Cod_concepto,Valor_base,Usu_aprueba,Estado_contab,Centro_costo,Seccion) VALUES (#" + Otroscomprobantes.Fecha.ToString("yyyy/MM/dd") + "#, '" + Otroscomprobantes.Tipo_comp + "'" + "," + Otroscomprobantes.No_comp + ", '" + Otroscomprobantes.Tipo_id + "'" + "," + Otroscomprobantes.Id + ", '" + Otroscomprobantes.Dv + "'" + ", '" + Otroscomprobantes.Descripcion + "'" + "," + Otroscomprobantes.Valor + "," + Otroscomprobantes.Forma_pago + "," + Otroscomprobantes.Cod_cuenta + ", '" + Otroscomprobantes.Clase_cuenta + "'" + ", '" + Otroscomprobantes.Num + "'" + ", '" + Otroscomprobantes.Entidad + "'" + ", '" + Otroscomprobantes.Estado + "'" + ",#" + Otroscomprobantes.FechaAplic.ToString("yyyy/MM/dd") + "#," + Otroscomprobantes.Usu_cap + ",#" + Otroscomprobantes.Fecha_vence.ToString("yyyy/MM/dd") + "#," + Otroscomprobantes.Cod_empresa + "," + Otroscomprobantes.No_operacion + "," + Otroscomprobantes.Cod_concepto + "," + Otroscomprobantes.Valor_base + "," + Otroscomprobantes.Usu_aprueba + "," + Otroscomprobantes.Estado_contab + "," + Otroscomprobantes.Centro_costo + "," + Otroscomprobantes.Seccion + ");";
            if (!SinFechaAplic && !SinFechaVence)
            {
                CadenaSql = "INSERT INTO otroscomprobantes (Fecha,Tipo_comp,No_comp,Tipo_id,Id,Dv,Descripcion,Valor,Forma_pago,Cod_cuenta,Clase_cuenta,Num,Entidad,Estado,Usu_cap,Cod_empresa,No_operacion,Cod_concepto,Valor_base,Usu_aprueba,Estado_contab,Centro_costo,Seccion) VALUES (#" + Otroscomprobantes.Fecha.ToString("yyyy/MM/dd") + "#, '" + Otroscomprobantes.Tipo_comp + "'" + "," + Otroscomprobantes.No_comp + ", '" + Otroscomprobantes.Tipo_id + "'" + "," + Otroscomprobantes.Id + ", '" + Otroscomprobantes.Dv + "'" + ", '" + Otroscomprobantes.Descripcion + "'" + "," + Otroscomprobantes.Valor + "," + Otroscomprobantes.Forma_pago + "," + Otroscomprobantes.Cod_cuenta + ", '" + Otroscomprobantes.Clase_cuenta + "'" + ", '" + Otroscomprobantes.Num + "'" + ", '" + Otroscomprobantes.Entidad + "'" + ", '" + Otroscomprobantes.Estado + "'" + "," + Otroscomprobantes.Usu_cap + "," + Otroscomprobantes.Cod_empresa + "," + Otroscomprobantes.No_operacion + "," + Otroscomprobantes.Cod_concepto + "," + Otroscomprobantes.Valor_base + "," + Otroscomprobantes.Usu_aprueba + "," + Otroscomprobantes.Estado_contab + "," + Otroscomprobantes.Centro_costo + "," + Otroscomprobantes.Seccion + ");";
            }
            else
            {
                if (SinFechaAplic)
                {
                    CadenaSql = "INSERT INTO otroscomprobantes (Fecha,Tipo_comp,No_comp,Tipo_id,Id,Dv,Descripcion,Valor,Forma_pago,Cod_cuenta,Clase_cuenta,Num,Entidad,Estado,Usu_cap,Fecha_vence,Cod_empresa,No_operacion,Cod_concepto,Valor_base,Usu_aprueba,Estado_contab,Centro_costo,Seccion) VALUES (#" + Otroscomprobantes.Fecha.ToString("yyyy/MM/dd") + "#, '" + Otroscomprobantes.Tipo_comp + "'" + "," + Otroscomprobantes.No_comp + ", '" + Otroscomprobantes.Tipo_id + "'" + "," + Otroscomprobantes.Id + ", '" + Otroscomprobantes.Dv + "'" + ", '" + Otroscomprobantes.Descripcion + "'" + "," + Otroscomprobantes.Valor + "," + Otroscomprobantes.Forma_pago + "," + Otroscomprobantes.Cod_cuenta + ", '" + Otroscomprobantes.Clase_cuenta + "'" + ", '" + Otroscomprobantes.Num + "'" + ", '" + Otroscomprobantes.Entidad + "'" + ", '" + Otroscomprobantes.Estado + "'" + "," + Otroscomprobantes.Usu_cap + ",#" + Otroscomprobantes.Fecha_vence.ToString("yyyy/MM/dd") + "#," + Otroscomprobantes.Cod_empresa + "," + Otroscomprobantes.No_operacion + "," + Otroscomprobantes.Cod_concepto + "," + Otroscomprobantes.Valor_base + "," + Otroscomprobantes.Usu_aprueba + "," + Otroscomprobantes.Estado_contab + "," + Otroscomprobantes.Centro_costo + "," + Otroscomprobantes.Seccion + ");";
                }
                if (SinFechaVence)
                {
                    CadenaSql = "INSERT INTO otroscomprobantes (Fecha,Tipo_comp,No_comp,Tipo_id,Id,Dv,Descripcion,Valor,Forma_pago,Cod_cuenta,Clase_cuenta,Num,Entidad,Estado,FechaAplic,Usu_cap,Cod_empresa,No_operacion,Cod_concepto,Valor_base,Usu_aprueba,Estado_contab,Centro_costo,Seccion) VALUES (#" + Otroscomprobantes.Fecha.ToString("yyyy/MM/dd") + "#, '" + Otroscomprobantes.Tipo_comp + "'" + "," + Otroscomprobantes.No_comp + ", '" + Otroscomprobantes.Tipo_id + "'" + "," + Otroscomprobantes.Id + ", '" + Otroscomprobantes.Dv + "'" + ", '" + Otroscomprobantes.Descripcion + "'" + ",'" + Otroscomprobantes.Valor + "'," + Otroscomprobantes.Forma_pago + "," + Otroscomprobantes.Cod_cuenta + ", '" + Otroscomprobantes.Clase_cuenta + "'" + ", '" + Otroscomprobantes.Num + "'" + ", '" + Otroscomprobantes.Entidad + "'" + ", '" + Otroscomprobantes.Estado + "'" + ",#" + Otroscomprobantes.FechaAplic.ToString("yyyy/MM/dd") + "#," + Otroscomprobantes.Usu_cap + "," + Otroscomprobantes.Cod_empresa + "," + Otroscomprobantes.No_operacion + "," + Otroscomprobantes.Cod_concepto + "," + Otroscomprobantes.Valor_base + "," + Otroscomprobantes.Usu_aprueba + "," + Otroscomprobantes.Estado_contab + "," + Otroscomprobantes.Centro_costo + "," + Otroscomprobantes.Seccion + ");";
                }
            }
            //CadenaSql = CadenaSql.Replace("#", "'");
            resultado = Data.Accion(CadenaSql);
            if (resultado == 1)
            {
                //grabar en el saldo
                N_Saldos_Diarios SaldosDiarios = new N_Saldos_Diarios();

                //SaldosDiarios.Cadena(Data.GsPath, Data.ConectaA);
                if (C_Otroscomprobantes.Forma_pago == 1)
                {
                    resultado = SaldosDiarios.RegistrarMovimiento(C_Otroscomprobantes.Fecha, 2, C_Otroscomprobantes.Valor, C_Otroscomprobantes.Tipo_comp.ToString(), "+");
                }
                if (C_Otroscomprobantes.Forma_pago == 4)
                {
                    resultado = SaldosDiarios.RegistrarMovimiento(C_Otroscomprobantes.Fecha, 21, C_Otroscomprobantes.Valor, C_Otroscomprobantes.Tipo_comp.ToString(), "+");
                }
            }
            return(resultado);
        }
        public long Anular(M_Otroscomprobantes Otroscomprobantes)
        {
            long resultado = Data.Accion("UPDATE otroscomprobantes SET estado='D' WHERE tipo_comp='" + Otroscomprobantes.Tipo_comp + "' AND no_comp=" + Otroscomprobantes.No_comp + ";");

            if (resultado == 1)
            {
                //grabar en el saldo
                N_Saldos_Diarios SaldosDiarios = new N_Saldos_Diarios();
                //SaldosDiarios.Cadena(Data.GsPath, Data.ConectaA);
                if (C_Otroscomprobantes.Forma_pago == 1)
                {
                    resultado = SaldosDiarios.RegistrarMovimiento(C_Otroscomprobantes.Fecha, 2, C_Otroscomprobantes.Valor, C_Otroscomprobantes.Tipo_comp.ToString(), "-");
                }
                if (C_Otroscomprobantes.Forma_pago == 4)
                {
                    resultado = SaldosDiarios.RegistrarMovimiento(C_Otroscomprobantes.Fecha, 21, C_Otroscomprobantes.Valor, C_Otroscomprobantes.Tipo_comp.ToString(), "-");
                }
            }
            return(resultado);
        }