public int RegitrarFactProvedor(FacturaProv fpv)
 {
     using (NpgsqlConnection con = new NpgsqlConnection(Configuracion.CadenaConexion))
     {
         con.Open();
         NpgsqlTransaction tran = con.BeginTransaction();
         string            sql  = @"INSERT INTO facturaprov(
      num_factprov, idprove, fecha, formapago, observaciones, apllicainv, 
      finalfact, montofact)
      VALUES ( :numfact , :idprov , :fech , :formpago , :observac , :aplicinv, 
      :finfact, :montofac) RETURNING id_factprov ;";
         NpgsqlCommand     cmd  = new NpgsqlCommand(sql, con);
         cmd.Parameters.AddWithValue("numfact", fpv.NumFactProv);
         cmd.Parameters.AddWithValue("idprov", fpv.IdProvedor);
         cmd.Parameters.AddWithValue("fech", fpv.Fecha);
         cmd.Parameters.AddWithValue("formpago", fpv.Formapago);
         cmd.Parameters.AddWithValue("observac", fpv.Observaciones);
         cmd.Parameters.AddWithValue("aplicinv", fpv.AplicaInv);
         cmd.Parameters.AddWithValue("finfact", fpv.Finalfact);
         cmd.Parameters.AddWithValue("montofac", fpv.Montofact);
         fpv.IDProvFact = Convert.ToInt32(cmd.ExecuteScalar());
         tran.Commit();
         return(fpv.IDProvFact);
     }
 }
 public string ModificarProv(FacturaProv fpv)
 {
     if (!(fpv.NumFactProv == "" || fpv.Fecha == null || fpv.Formapago == "" || fpv.IDProvFact == 0 ||
           fpv.Montofact <= 0))
     {
         return(fpdao.ModificarFacturaPrv(fpv).IdProvedor > 0 ? "Modificación" : "Exito al Guardar");
     }
     else
     {
         return("Hay espacios requeridos vacios o erroneos");
     }
 }
 public int ValidarIngFactPrv(FacturaProv fp)
 {
     if (!(fp.NumFactProv == "" || fp.Fecha == null || fp.Formapago == "" || fp.IdProvedor <= 0 ||
           fp.Montofact < 0))
     {
         return(fpdao.RegitrarFactProvedor(fp));
     }
     else
     {
         return(0);
     }
 }
        public FacturaProv ModificarFacturaPrv(FacturaProv fpv)
        {
            using (NpgsqlConnection con = new NpgsqlConnection(Configuracion.CadenaConexion))
            {
                con.Open();
                NpgsqlTransaction tran = con.BeginTransaction();

                string        sql = @"UPDATE facturaprov
                SET fecha= :fech , formapago= :formpago, observaciones= :observac, 
                apllicainv= :aplicinv , finalfact= :finfact , montofact= :montofac
                WHERE id_factprov = :numidFact;";
                NpgsqlCommand cmd = new NpgsqlCommand(sql, con);
                cmd.Parameters.AddWithValue("numidFact", fpv.IDProvFact);
                cmd.Parameters.AddWithValue("fech", fpv.Fecha);
                cmd.Parameters.AddWithValue("formpago", fpv.Formapago);
                cmd.Parameters.AddWithValue("observac", fpv.Observaciones);
                cmd.Parameters.AddWithValue("aplicinv", fpv.AplicaInv);
                cmd.Parameters.AddWithValue("finfact", fpv.Finalfact);
                cmd.Parameters.AddWithValue("montofac", fpv.Montofact);
                fpv.IdProvedor = Convert.ToInt32(cmd.ExecuteScalar());
                tran.Commit();
                return(fpv);
            }
        }