コード例 #1
0
 public void Cancelar(Int64 CompraID)
 {
     try
     {
         cCompras Factura = ComprasDA.BuscarPorID(CompraID);
         //Si el documento no ha sido cambiado el estatus de Original no puede ser cancelado
         if (Factura.EstatusID.ToString() == "O")
         {
             //Verificamos si la factura contiene movimientos en Cuentas por Cobrar
             List <cCuentasPagar> Cuenta = (from c in CuentaPagarDA.ListaCargosPagos(Factura.DocumentoID.ToString(), (Int64)Factura.ProveedorID)
                                            where c.CodigoConcepto.ToString() != "Compras"
                                            select c).ToList();
             if (Cuenta.Count == 0)
             {
                 ComprasDA.Cancelar(CompraID);
             }
             else
             {
                 throw new Exception("El documento posee movimientos contabilizados, no puede ser cancelada");
             }
         }
         else
         {
             throw new Exception("El documento posee movimientos contabilizados, no puede ser cancelada");
         }
     }
     catch (Exception Ex)
     {
         throw Ex;
     }
 }
コード例 #2
0
        private cCompras ObtenerRecepcion()
        {
            try
            {
                cCompras Compra = new cCompras();
                Compra.ProveedorID      = cbProveedor.SelectedValue;
                Compra.EstatusID        = "O";
                Compra.TipoDocumento    = "R";
                Compra.CondicionVenta   = ObtenerCondiciones();
                Compra.FechaEnvio       = dtpFechaEnvio.Value;
                Compra.FechaCreacion    = dtpFechaRecepcion.Value;
                Compra.FechaVencimiento = dtpFechaVencimiento.Value;
                Compra.DireccionEnvio   = null;
                Compra.Referencia       = ObtenerReferencia();
                //Compra.FechaCreacion = DateTime.Now.Date;
                Compra.ImpuestosTotal = _TotalImpuestos;
                Compra.Observacion    = txtObservaciones.Text;
                Compra.SubTotal       = _SubTotal;
                Compra.TotalGeneral   = _TotalGeneral;
                Compra.NCF            = txtNCF.Text;

                return(Compra);
            }
            catch (Exception Ex)
            {
                throw Ex;
            }
        }
コード例 #3
0
        private cCompras ObtenerDevolucion()
        {
            try
            {
                cCompras Compra = new cCompras();
                Compra.ProveedorID      = cbProveedor.SelectedValue;
                Compra.EstatusID        = "O";
                Compra.TipoDocumento    = "D";
                Compra.FechaEnvio       = dtpFechaFactura.Value;
                Compra.FechaCreacion    = dtpFechaFactura.Value;
                Compra.FechaVencimiento = dtpFechaFactura.Value;
                Compra.CondicionVenta   = "NA";
                Compra.DireccionEnvio   = "NA";
                Compra.Referencia       = ObtenerReferencia();
                Compra.ImpuestosTotal   = _TotalImpuestos;
                Compra.Observacion      = txtObservaciones.Text;
                Compra.SubTotal         = _SubTotal;
                Compra.TotalGeneral     = _TotalGeneral;
                Compra.NCF = String.Empty;

                return(Compra);
            }
            catch (Exception Ex)
            {
                throw Ex;
            }
        }
コード例 #4
0
ファイル: MainForm.cs プロジェクト: EmmanuelST/ProyectoFinal
        private void ConsultarComprasToolStripMenuItem_Click(object sender, EventArgs e)
        {
            cCompras consulta = new cCompras();

            consulta.MdiParent = this;
            consulta.Show();
        }
コード例 #5
0
 public Int64 Crear(cCompras Compra)
 {
     try
     {
         return(ComprasDA.Crear(Compra));
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #6
0
 private void ComprasToolStripMenuItem_Click(object sender, EventArgs e)
 {
     if (Permiso_label.Text == "Administrador" || Permiso_label.Text == "Contador")
     {
         cCompras c = new cCompras();
         c.Show();
     }
     else
     {
         MessageBox.Show("No se puede acceder con este usuario", "No Hay Permiso!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
     }
 }
コード例 #7
0
        public static List <cCompras> Listar(String TipoDocumento, DateTime FechaDesde, DateTime FechaHasta)
        {
            try
            {
                //Declaramos la conexion hacia la base de datos
                using (SqlConnection Conn = new SqlConnection(cConexion.CadenaConexion()))
                {
                    Conn.Open();
                    //Nombre del procedimiento
                    string StoreProc = "uspListaDocumentoCompra";
                    //Creamos el command para la insercion
                    SqlCommand Cmd = new SqlCommand(StoreProc, Conn);
                    Cmd.CommandType = CommandType.StoredProcedure;

                    //Parametros
                    Cmd.Parameters.AddWithValue("TipoDocumento", TipoDocumento);
                    Cmd.Parameters.AddWithValue("FechaDesde", FechaDesde);
                    Cmd.Parameters.AddWithValue("FechaHasta", FechaHasta);

                    //Ejecutamos el lector
                    SqlDataReader Reader = Cmd.ExecuteReader();


                    List <cCompras> Lista = new List <cCompras>();
                    while (Reader.Read())
                    {
                        cCompras Compra = new cCompras();
                        Compra.ID             = Reader.GetInt64(Reader.GetOrdinal("ProveedorID"));
                        Compra.ProveedorID    = Reader.GetString(Reader.GetOrdinal("NombreComercial"));
                        Compra.NCF            = Reader.GetString(Reader.GetOrdinal("RNC"));
                        Compra.ImpuestosTotal = Reader.GetDecimal(Reader.GetOrdinal("Impuesto"));
                        Compra.SubTotal       = Reader.GetDecimal(Reader.GetOrdinal("Importe"));
                        Compra.TotalGeneral   = Reader.GetDecimal(Reader.GetOrdinal("Total"));


                        //Agregamos el articulo a la lista
                        Lista.Add(Compra);
                    }
                    //Cerramos la conexion
                    Conn.Close();
                    //Retornamos la lista de clientes
                    return(Lista);
                }
            }
            catch (SqlException Ex)
            {
                return(null);

                throw Ex;
            }
        }
コード例 #8
0
        private void BuscarOrden()
        {
            DetalleCompraBL ObjetoDetalle = new DetalleCompraBL();
            ComprasBL       ObjetoFactura = new ComprasBL();
            Int64           ID;

            if (txtReferencia.Text != String.Empty)
            {
                //Obtenemos el ID del Documento por medio del numero de documento
                ID = Convert.ToInt64(txtReferencia.Text);

                //Buscamos la cotizacion que tiene este numero de documento
                cCompras Factura = ObjetoFactura.BuscarPorID(ID, "O");
                //Verificamos que obtuvimos algun resultado
                if (Int64.TryParse(Factura.ID.ToString(), out ID))
                {
                    //Guardamos el ID de la FacturA
                    Int64 CompraID = Factura.ID;
                    //Asignamos los datos del cliente que se encuentra en la cotizacion
                    BuscarProveedor(Convert.ToInt32(Factura.ProveedorID));

                    //Buscamos la lista de Articulos que se encuentran en la cotizacion
                    List <cDetalleCompra> ListaDetalle = ObjetoDetalle.ListarDetalle(CompraID, "O");

                    //Objeto Inventario para realizar operaciones
                    InventarioBL ObjetoInventario = new InventarioBL();
                    foreach (cDetalleCompra Detalle in ListaDetalle)
                    {
                        cInventario Articulo = ObjetoInventario.BuscarPorID(Detalle.ArticuloID);
                        //Insertamos los articulos en el DataGrid
                        InsertarLineaGrid(Detalle.ArticuloID,
                                          Articulo.CodigoArticulo,
                                          Articulo.Descripcion,
                                          Detalle.Cantidad,
                                          Detalle.Precio,
                                          Detalle.ImpuestoValor,
                                          (Detalle.ImpuestoValor / 100) * Detalle.Precio,
                                          //Detalle.DescuentoValor,
                                          //(Detalle.DescuentoValor / 100) * Detalle.Precio,
                                          ((Detalle.Cantidad * Detalle.Precio) + ((Detalle.ImpuestoValor / 100) * Detalle.Precio)),
                                          //Detalle.Costo,
                                          Detalle.UnidadCompraID,
                                          Detalle.TipoProducto);
                    }
                }
            }
        }
コード例 #9
0
        public static Int64 Crear(cCompras Compra)
        {
            try
            {
                //Declaramos la conexion hacia la base de datos
                using (SqlConnection Conn = new SqlConnection(cConexion.CadenaConexion()))
                {
                    Conn.Open();
                    //Nombre del procedimiento
                    string StoreProc = "uspInsertarCompra";
                    //Creamos el command para la insercion
                    SqlCommand Cmd = new SqlCommand(StoreProc, Conn);
                    Cmd.CommandType = CommandType.StoredProcedure;

                    //Parametros
                    Cmd.Parameters.AddWithValue("ProveedorID", Compra.ProveedorID);
                    Cmd.Parameters.AddWithValue("TipoDocumento", Compra.TipoDocumento);
                    Cmd.Parameters.AddWithValue("FechaCreacion", Compra.FechaCreacion);
                    Cmd.Parameters.AddWithValue("FechaVencimiento", Compra.FechaVencimiento);
                    Cmd.Parameters.AddWithValue("DireccionEnvio", Compra.DireccionEnvio);
                    Cmd.Parameters.AddWithValue("Condicion", Compra.CondicionVenta);
                    Cmd.Parameters.AddWithValue("FechaRecepcion", Compra.FechaEnvio);
                    //Cmd.Parameters.AddWithValue("FechaEnvio", Compra.FechaEnvio);
                    Cmd.Parameters.AddWithValue("SubTotal", Compra.SubTotal);
                    Cmd.Parameters.AddWithValue("ImpuestosTotal", Compra.ImpuestosTotal);
                    Cmd.Parameters.AddWithValue("TotalGeneral", Compra.TotalGeneral);
                    Cmd.Parameters.AddWithValue("EstatusID", Compra.EstatusID); //Estatus inicial Original
                    Cmd.Parameters.AddWithValue("Observacion", Compra.Observacion);
                    Cmd.Parameters.AddWithValue("NCF", Compra.NCF);
                    Cmd.Parameters.AddWithValue("Referencia", Compra.Referencia);


                    Int64 CompraID = Convert.ToInt64(Cmd.ExecuteScalar());
                    //Cerra la conexion
                    Conn.Close();

                    return(CompraID);
                }
            }
            catch (SqlException Ex)
            {
                throw Ex;
            }
        }
コード例 #10
0
        public static cCompras BuscarPorID(Int64 ID, String TipoDocumento)
        {
            //Buscamos un documento relacionado a compras por su numero de documento y tipo
            try
            {
                //Declaramos la conexion hacia la base de datos
                using (SqlConnection Conn = new SqlConnection(cConexion.CadenaConexion()))
                {
                    Conn.Open();
                    //Nombre del procedimiento
                    string StoreProc = "uspBuscarCompraPorTipoID";
                    //Creamos el command para la insercion
                    SqlCommand Cmd = new SqlCommand(StoreProc, Conn);
                    Cmd.CommandType = CommandType.StoredProcedure;
                    //Parametros
                    Cmd.Parameters.AddWithValue("DocumentoID", ID);
                    Cmd.Parameters.AddWithValue("TipoDocumento", TipoDocumento);

                    SqlDataReader Reader = Cmd.ExecuteReader();

                    cCompras Compra = new cCompras();
                    while (Reader.Read())
                    {
                        Compra.ID             = Reader.GetInt64(Reader.GetOrdinal("ID"));
                        Compra.DocumentoID    = Reader.GetInt64(Reader.GetOrdinal("DocumentoID"));
                        Compra.ProveedorID    = Reader.GetInt64(Reader.GetOrdinal("ProveedorID"));
                        Compra.FechaCreacion  = Reader.GetDateTime(Reader.GetOrdinal("FechaCreacion"));
                        Compra.FechaEnvio     = Reader.GetDateTime(Reader.GetOrdinal("FechaEnvio"));
                        Compra.ImpuestosTotal = Reader.GetDecimal(Reader.GetOrdinal("ImpuestosTotal"));
                        Compra.SubTotal       = Reader.GetDecimal(Reader.GetOrdinal("Subtotal"));
                        Compra.TotalGeneral   = Reader.GetDecimal(Reader.GetOrdinal("TotalGeneral"));
                        Compra.EstatusID      = Reader.IsDBNull(Reader.GetOrdinal("EstatusID")) ? null : Reader.GetString(Reader.GetOrdinal("EstatusID"));
                    }
                    Conn.Close();
                    return(Compra);
                }
            }
            catch (SqlException Ex)
            {
                return(null);

                throw Ex;
            }
        }
コード例 #11
0
        private cCompras ObtenerOrden()
        {
            cCompras Compra = new cCompras();

            Compra.ProveedorID      = cbProveedor.SelectedValue;
            Compra.EstatusID        = "O";
            Compra.TipoDocumento    = "O";
            Compra.FechaEnvio       = dtpFechaFactura.Value;
            Compra.FechaCreacion    = dtpFechaFactura.Value;
            Compra.FechaVencimiento = dtpFechaVencimiento.Value;
            Compra.CondicionVenta   = ObtenerCondiciones();
            Compra.DireccionEnvio   = txtEnviar.Text;
            Compra.ImpuestosTotal   = _TotalImpuestos;
            Compra.Observacion      = txtObservaciones.Text;
            Compra.SubTotal         = _SubTotal;
            Compra.TotalGeneral     = _TotalGeneral;
            Compra.NCF = String.Empty;

            return(Compra);
        }
コード例 #12
0
        //Boton consultar compras
        private void ConsultarComprasButton_Click(object sender, RoutedEventArgs e)
        {
            cCompras cCompra = new cCompras(usuarioSiempreActivoId);

            cCompra.Show();
        }
コード例 #13
0
        private void BuscarRecepcion()
        {
            DetalleCompraBL ObjetoDetalle   = new DetalleCompraBL();
            ComprasBL       ObjetoFactura   = new ComprasBL();
            ProveedorBL     ObjetoProveedor = new ProveedorBL();

            Int64 ID;

            if (txtReferencia.Text != String.Empty)
            {
                //Obtenemos el ID del Documento por medio del numero de documento
                ID = Convert.ToInt64(txtReferencia.Text);

                //Buscamos la cotizacion que tiene este numero de documento
                cCompras Factura = ObjetoFactura.BuscarPorID(ID, "R");
                //Verificamos que obtuvimos algun resultado
                if (Int64.TryParse(Factura.ID.ToString(), out ID))
                {
                    //Validamos que la recepcion no tenga el estatus de devuelta
                    if (Factura.EstatusID.ToString() == "O")
                    {
                        //Guardamos el ID de la FacturA
                        Int64 FacturaID   = Factura.ID;
                        Int32 ProveedorID = Convert.ToInt32(Factura.ProveedorID);

                        //Asignamos los datos del cliente que se encuentra en la cotizacion
                        AsignarDatosProveedor(ObjetoProveedor.BuscarPorID(ProveedorID));

                        //Buscamos la lista de Articulos que se encuentran en la cotizacion
                        List <cDetalleCompra> ListaDetalle = ObjetoDetalle.ListarDetalle(FacturaID, "R");

                        //Objeto Inventario para realizar operaciones
                        InventarioBL ObjetoInventario = new InventarioBL();
                        foreach (cDetalleCompra Detalle in ListaDetalle)
                        {
                            cInventario Articulo = ObjetoInventario.BuscarPorID(Detalle.ArticuloID);

                            //Insertamos los articulos en el DataGrid
                            InsertarLineaGrid(Detalle.ArticuloID,
                                              Articulo.CodigoArticulo,
                                              Articulo.Descripcion,
                                              Detalle.Cantidad,
                                              Detalle.Precio,
                                              Detalle.ImpuestoValor,
                                              (Detalle.ImpuestoValor / 100) * Detalle.Precio,
                                              ((Detalle.Cantidad * Detalle.Precio) + ((Detalle.ImpuestoValor / 100) * Detalle.Precio)),
                                              Detalle.UnidadCompraID,
                                              Detalle.TipoProducto);
                        }
                    }
                    else
                    {
                        //Documento Cancelado
                        if (Factura.EstatusID.ToString() == "C")
                        {
                            MessageBox.Show("El documento se encuentra Cancelado, Operacion invalida", "Error en busqueda de recepcion", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                        //Documento Devuelto
                        else if (Factura.EstatusID.ToString() == "D")
                        {
                            MessageBox.Show("El documento ya fue devuelto, Operacion Invalida", "Error en busqueda de recepcion", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                }
            }
        }
コード例 #14
0
        public void CancelarDocumento(cCuentasPagar Cuenta)
        {
            //Cancelacion de un abono
            //Localizamos el concepto para verificar el tipo
            cConcepto Concepto = ConcCxPDA.BuscarPorID((Byte)Cuenta.CodigoConcepto);

            //Tipo Abono
            if (Concepto.Tipo.ToString() == "A")
            {
                //Verificamos si el documento es tipo Nota de Credito y si esta cancelado
                if (Concepto.Descripcion.ToString() == "Nota de Credito")
                {
                    //Documento Nota de Credito
                    cCompras stNotaCredito = ComprasDA.BuscarPorID(Cuenta.CodigoFactura, "D");
                    //Verificamos Si esta Cancelado
                    if (stNotaCredito.EstatusID.ToString() == "C")
                    {
                        //Cancelamos la transaccion
                        Cuenta.Estatus = false;
                        GuardarCambios(Cuenta);
                    }
                    else
                    {
                        throw new Exception("El documento no puede ser cancelado, la nota de credito se encuentra vigente en el sistema");
                    }
                }
                else
                {
                    //Si es un Abono cancelamos la transaccion
                    Cuenta.Estatus = false;
                    GuardarCambios(Cuenta);
                }
            }
            else
            {
                //Verificamos el estatus de la factura en caso de que sea
                if (Concepto.Descripcion.ToString() == "Compras")
                {
                    cCompras stFactura = ComprasDA.BuscarPorID(Cuenta.CodigoFactura, "R");

                    //Si la factura esta cancelada cancelamos la transaccion
                    if (stFactura.EstatusID.ToString() == "C")
                    {
                        Cuenta.Estatus = false;
                        GuardarCambios(Cuenta);
                    }
                    else
                    {
                        throw new Exception("El documento no puede ser cancelado, la factura se encuentra vigente en el sistema");
                    }
                }
                else
                {
                    //Si es un cargo aplicado verificamos que no tenga pagos vigentes
                    List <cCuentasPagar> ListaPagos = (from c in ListaPagoCargos(Cuenta.CodigoFactura.ToString(), (Int64)Cuenta.ProveedorID)
                                                       select c).ToList();

                    //Si tiene Cargos o pagos relacionados
                    if (ListaPagos.Count == 0)
                    {
                        Cuenta.Estatus = false;
                        GuardarCambios(Cuenta);
                    }
                    else
                    {
                        throw new Exception("El documento no puede ser cancelado, el documento contiene pagos o cargos aplicados");
                    }
                }
            }
        }
コード例 #15
0
        public static List <cCompras> Filtrar(
            String TipoDocumento,
            Int64?ProveedorID,
            Int64?DocumentoDesde,
            Int64?DocumentoHasta,
            DateTime?FechaDesde,
            DateTime?FechaHasta,
            String CriterioCantidad,
            Decimal ValorFactura,
            Boolean IndGenerada,
            Boolean IndCancelada)
        {
            //FILTRO DE DEVOLUCIONES EN COMPRAS
            try
            {
                //Declaramos la conexion hacia la base de datos
                using (SqlConnection Conn = new SqlConnection(cConexion.CadenaConexion()))
                {
                    Conn.Open();
                    //Nombre del procedimiento
                    string StoreProc = "uspFiltroDevolucionCompra";
                    //Creamos el command para la insercion
                    SqlCommand Cmd = new SqlCommand(StoreProc, Conn);
                    Cmd.CommandType = CommandType.StoredProcedure;

                    Cmd.Parameters.AddWithValue("TipoDocumento", TipoDocumento);
                    Cmd.Parameters.AddWithValue("ProveedorID", ProveedorID);
                    Cmd.Parameters.AddWithValue("DocumentoDesde", DocumentoDesde);
                    Cmd.Parameters.AddWithValue("DocumentoHasta", DocumentoHasta);
                    Cmd.Parameters.AddWithValue("FechaDesde", FechaDesde);
                    Cmd.Parameters.AddWithValue("FechaHasta", FechaHasta);
                    Cmd.Parameters.AddWithValue("IndGenerada", IndGenerada);
                    Cmd.Parameters.AddWithValue("IndCancelada", IndCancelada);
                    Cmd.Parameters.AddWithValue("ValorFactura", ValorFactura);
                    Cmd.Parameters.AddWithValue("CriterioCantidad", CriterioCantidad);
                    //Ejecutamos el lector
                    SqlDataReader Reader = Cmd.ExecuteReader();


                    List <cCompras> Lista = new List <cCompras>();
                    while (Reader.Read())
                    {
                        cCompras Factura = new cCompras();
                        Factura.ID            = Reader.GetInt64(Reader.GetOrdinal("ID"));
                        Factura.DocumentoID   = Reader.GetInt64(Reader.GetOrdinal("DocumentoID"));
                        Factura.ProveedorID   = Reader.GetString(Reader.GetOrdinal("NombreComercial"));
                        Factura.FechaCreacion = Reader.GetDateTime(Reader.GetOrdinal("FechaCreacion"));
                        Factura.EstatusID     = Reader.GetString(Reader.GetOrdinal("Estatus"));
                        Factura.TotalGeneral  = Reader.GetDecimal(Reader.GetOrdinal("TotalGeneral"));

                        //Agregamos el articulo a la lista
                        Lista.Add(Factura);
                    }
                    //Cerramos la conexion
                    Conn.Close();
                    //Retornamos la lista de clientes
                    return(Lista);
                }
            }
            catch (SqlException Ex)
            {
                throw Ex;
            }
        }
コード例 #16
0
        private void ComprasConsutasMenutem_Click(object sender, RoutedEventArgs e)
        {
            cCompras consultas = new cCompras();

            consultas.Show();
        }
コード例 #17
0
        private void ConsultaCompraButton_Click(object sender, RoutedEventArgs e)
        {
            cCompras cCompras = new cCompras();

            cCompras.Show();
        }
コード例 #18
0
        private void MenuItem_Click_3(object sender, RoutedEventArgs e)
        {
            cCompras cCompras = new cCompras();

            cCompras.Show();
        }
コード例 #19
0
        private void OrdenDeCompraToolStripMenuItem1_Click(object sender, EventArgs e)
        {
            cCompras cc = new cCompras();

            cc.Show();
        }