public static int InsertCompra(Compra obj)
    {
        if (obj == null)
        {
            throw new ArgumentException("El objeto Compra no debe ser nulo");
        }

        int?CompraId = 0;
        CompraTableAdapter adapter = new CompraTableAdapter();

        adapter.Insert(obj.Fecha, obj.TotalPago, obj.TarjetaCredito, obj.CodigoTarjeta, obj.Estado, obj.UserId, obj.PeliculaId, ref CompraId);

        if (CompraId <= 0)
        {
            throw new ArgumentException("Mala inserción de la compra");
        }
        return(CompraId.Value);
    }
        private void SalvarCompra()
        {
            //Salvar compra
            string vFormaPag;

            if (cmbPagamento.SelectedIndex == 0)
            {
                vFormaPag = "DIN";
            }
            else if (cmbPagamento.SelectedIndex == 1)
            {
                vFormaPag = "DEB";
            }
            else
            {
                vFormaPag = "CRE";
            }
            //************************************************************************Pegar o ID do Func no BD


            //Salvando a Compra
            CompraTableAdapter taCompra = new CompraTableAdapter();

            taCompra.Insert(vCliente, vIdFunc, vValorTotal, vValorDebito, DateTime.Now, vFormaPag);

            //Salvando os itens, e tirando a quantidade do estoque
            ItensCompraTableAdapter taItens = new ItensCompraTableAdapter();
            ProdutoTableAdapter     taProd  = new ProdutoTableAdapter();

            int vCodProd, vQuantProd;

            for (int i = 0; i <= dgvProdutos.RowCount - 1; i++)
            {
                vCodProd   = (int)dgvProdutos.Rows[i].Cells["ID_Prod"].Value;
                vQuantProd = (int)dgvProdutos.Rows[i].Cells["Quant_ItensCompra"].Value;

                taProd.Acerta_Saldo_Saida(vQuantProd, vCodProd);

                taItens.Insert(vCodProd, vID_VendaAtual, vQuantProd);
            }
        }