Пример #1
0
        private void coletaDados()
        {
            if (this.ID == 0)
            {
                return;
            }
            try
            {
                String     SQL      = "SELECT Saída.*, PRODUTOS.Descrição FROM Saída LEFT JOIN PRODUTOS ON Saída.[Cod do CD] = PRODUTOS.Cod WHERE (((Saída.cont)=" + this.ID + "));";
                Recordset  rs_dados = new Recordset();
                Connection conex    = new SIME.Conexao().getDb4();
                rs_dados.Open(SQL, conex, CursorTypeEnum.adOpenDynamic, LockTypeEnum.adLockOptimistic);
                this.ID_fornecedor = !(rs_dados.Fields["Fornecedor"].Value.ToString().Equals(DBNull.Value)) ? Convert.ToInt32(rs_dados.Fields["Fornecedor"].Value) : 0;
                this.ID_loja       = Convert.ToInt32(rs_dados.Fields["Loja"].Value);
                this.ID_produto    = Convert.ToInt32(rs_dados.Fields["Cod do CD"].Value);
                this.NF            = (rs_dados.Fields["NF"].Value.Equals(DBNull.Value)) ? "0" : rs_dados.Fields["NF"].Value;
                this.Quantidade    = !(rs_dados.Fields["Quantidade"].Value.ToString().Equals(DBNull.Value))? Convert.ToInt32(rs_dados.Fields["Quantidade"].Value):0;
                this.Unitario      = !(rs_dados.Fields["Desconto"].Value.ToString().Equals(DBNull.Value))? Convert.ToDouble(rs_dados.Fields["Desconto"].Value.ToString("N")) : 0;
                this.Custo         = Convert.ToDouble(rs_dados.Fields["Custo"].Value.ToString("N"));
                this.ID_venda      = Convert.ToInt32(rs_dados.Fields["cod_sai"].Value);
                this.descricao     = !(rs_dados.Fields["Descrição"].Value.ToString().Equals(DBNull.Value))?rs_dados.Fields["Descrição"].Value.ToString(): "Produto não cadastrado ID =" + this.ID_produto;

                rs_dados.Close();
                conex.Close();
            }
            catch (Exception e)
            {
                throw new ArgumentException("Metodo coletaDados Objeto Item_venda Erro: " + e.Message);
            }
        }
Пример #2
0
        public Boolean Excluir()
        {
            if (this.ID == 0)
            {
                return(false);
            }

            String     SQL = "", SQLProduto = "";
            Recordset  rs_dados = new Recordset();
            Connection conex    = new SIME.Conexao().getDb4();

            try
            {
                rs_dados.Open(SQL, conex, CursorTypeEnum.adOpenDynamic, LockTypeEnum.adLockOptimistic);
                rs_dados.Open(SQLProduto, conex, CursorTypeEnum.adOpenDynamic, LockTypeEnum.adLockOptimistic);
                //Processo de adiciona ao estoque a quantidade vendida estornada
                rs_dados.Fields["Estoque"].Value = Convert.ToInt32(rs_dados.Fields["Estoque"].Value) + this.Quantidade;
                rs_dados.Close();
                conex.Close();
            }
            catch (Exception)
            {
                throw new ArgumentException("Não foi possível exluir o item.");
            }
            return(true);
        }
Пример #3
0
        private void coletaDados()
        {
            if (this.ID == 0)
            {
                return;
            }

            String     SQL      = "SELECT Saída.* FROM Saída WHERE (((Saída.cod_sai)=" + this.ID_venda + "));";
            Recordset  rs_dados = new Recordset();
            Connection conex    = new SIME.Conexao().getDb4();

            try
            {
                rs_dados.Open(SQL, conex, CursorTypeEnum.adOpenDynamic, LockTypeEnum.adLockOptimistic);

                this.ID_fornecedor = Convert.ToInt32(rs_dados.Fields["Fornecedor"].Value);
                this.ID_loja       = Convert.ToInt32(rs_dados.Fields["Loja"].Value);
                this.ID_produto    = Convert.ToInt32(rs_dados.Fields["[cod do cd]"].Value);
                this.NF            = rs_dados.Fields["NF"].Value;
                this.Quantidade    = Convert.ToInt32(rs_dados.Fields["Quantidade"].Value);
                this.Unitario      = Convert.ToDouble(rs_dados.Fields["Desconto"].Value.ToString("N"));
                this.Custo         = Convert.ToDouble(rs_dados.Fields["Custo"].Value.ToString("N"));
                this.descricao     = new SIME.Class.Produto(ID_produto, new SIME.Conexao().getDb4()).getDescricao();
                rs_dados.Close();
                conex.Close();
            }
            catch (Exception e)
            {
                throw new ArgumentException(e.Message);
            }
        }
Пример #4
0
        /// <summary>
        /// Metodo que retorna uma String contendo o resumo de vendas por um período pré-estabelecido.
        /// </summary>
        /// <param name="cod">Inteiro contendo o número do usuário</param>
        /// <param name="inicio">DateTime informando o inicio do período</param>
        /// <param name="fim">DateTime informando o fim do período</param>
        /// <returns>Retorna uma string contendo o resumo de vendas.</returns>
        public string producaoUsuario(int cod, DateTime inicio, DateTime fim)
        {
            String retorno = "Não há movimento.";

            SIME.Conexao conex = new SIME.Conexao();
            vendas  = new VendasUsuario(cod, inicio, fim, conex.getDb4());
            retorno = vendas.resumeVendas();
            conex.desconectar();
            return(retorno);
        }
Пример #5
0
        /**
         * public List<SIME.Class.Produto> getListaProdutos()
         * {
         *  List<SIME.Class.Produto> lista = new List<SIME.Class.Produto>();
         *  Int32 id = 0;
         *  SIME.Class.Produto item;
         *  Connection conex =  new SIME.Conexao().getDb4();
         *
         *  for (int i = 0; i < produtos.Count; i++)
         *  {
         *      //sistema fara uma busca pelo EAN para encontrar o código
         *      id = BuscaProdutopporEAN(getEAN(i));
         *      if (id == 0)
         *      {
         *          item = new SIME.Class.Produto(conex);
         *
         *      }
         *      else
         *      {
         *          item = new SIME.Class.Produto(id,conex);
         *          System.Threading.Thread.Sleep(1000);
         *
         *      }
         *
         *      Console.WriteLine(i);
         *
         *      item.setCodFabricante (getCodProduto(i));
         *      item.setCusto(getValorUnitario(i));
         *      String descricao = getDescricaoProduto(i);
         *      if (descricao.Length > 45)
         *      {
         *          descricao = (new SIME.Class.Uteis()).esquerda(descricao, 44);
         *      }
         *      item.setDescricao(descricao);
         *      item.setEAN(getEAN(i));
         *      item.setICMSCusto(getAiqICMS(i));
         *      item.setNCM(getNCM(i));
         *      item.settaxaIPI(getAiqIPI(i));
         *
         *      lista.Add(item);
         *  }
         *  return lista;
         *
         * }
         **/

        private Int32 BuscaProdutopporEAN(String EAN)
        {
            String     SQL     = "SELECT PRODUTOS.Cod FROM PRODUTOS WHERE (((PRODUTOS.Codbarras)='" + EAN + "')); ";
            Recordset  rsDados = new Recordset();
            Connection conex   = new SIME.Conexao().getDb4();

            rsDados.Open(SQL, conex, CursorTypeEnum.adOpenDynamic, LockTypeEnum.adLockOptimistic);
            if (rsDados.BOF || rsDados.EOF)
            {
                return(0);
            }
            return(Convert.ToInt32(rsDados.Fields["cod"].Value));
        }
Пример #6
0
        /// <summary>
        /// Método salva o item da venda.
        /// </summary>
        /// <returns></returns>
        public Boolean Salvar()
        {
            String     SQL;
            Recordset  rs_dados = new Recordset();
            Connection conex    = new SIME.Conexao().getDb4();

            try
            {
                //Processo de dedução do estoque
                SQL = "SELECT PRODUTOS.* FROM PRODUTOS WHERE (((PRODUTOS.Cod)=" + this.ID_produto + "));";
                rs_dados.Open(SQL, conex, CursorTypeEnum.adOpenDynamic, LockTypeEnum.adLockOptimistic);
                if (Convert.ToInt32(rs_dados.Fields["Estoque"].Value) < this.Quantidade)
                {
                    throw new ArgumentException("Quantidade maior que a disponível em estoque.");
                }
                rs_dados.Fields["Estoque"].Value = Convert.ToInt32(rs_dados.Fields["Estoque"].Value) - this.Quantidade;
                rs_dados.Update();
                rs_dados.Close();

                SQL = (this.ID == 0) ? "SELECT Saída.* FROM Saída;" : "SELECT Saída.* FROM Saída WHERE (((Saída.cod_sai)=" + this.ID + "));";
                rs_dados.Open(SQL, conex, CursorTypeEnum.adOpenDynamic, LockTypeEnum.adLockOptimistic);
                if (this.ID == 0)
                {
                    rs_dados.AddNew();
                }
                rs_dados.Fields["Fornecedor"].Value = this.ID_fornecedor;
                rs_dados.Fields["Loja"].Value       = this.ID_loja;
                rs_dados.Fields["cod do cd"].Value  = this.ID_produto;
                rs_dados.Fields["NF"].Value         = this.NF;
                rs_dados.Fields["Quantidade"].Value = this.Quantidade;
                rs_dados.Fields["Desconto"].Value   = this.Unitario.ToString();
                rs_dados.Fields["Custo"].Value      = this.Custo.ToString();
                rs_dados.Update();
                Thread.Sleep(500);
                this.ID = Convert.ToInt32(rs_dados.Fields["cont"].Value);
                rs_dados.Close();
                conex.Close();
            }
            catch (Exception e)
            {
                throw new ArgumentException(e.Message);
            }


            return(true);
        }
Пример #7
0
        /// <summary>
        /// Método salva o item da venda.
        /// </summary>
        /// <returns></returns>
        public Boolean Salvar()
        {
            String     SQL      = (this.ID == 0)?"":"";
            Recordset  rs_dados = new Recordset();
            Connection conex    = new SIME.Conexao().getDb4();

            try
            {
                rs_dados.Open(SQL, conex, CursorTypeEnum.adOpenDynamic, LockTypeEnum.adLockOptimistic);
                if (this.ID == 0)
                {
                    rs_dados.AddNew();
                }
                rs_dados.Fields["Fornecedor"].Value  = this.ID_fornecedor;
                rs_dados.Fields["Loja"].Value        = this.ID_loja;
                rs_dados.Fields["[cod do cd]"].Value = this.ID_produto;
                rs_dados.Fields["NF"].Value          = this.NF;
                rs_dados.Fields["Quantidade"].Value  = this.Quantidade;
                rs_dados.Fields["Desconto"].Value    = this.Unitario.ToString();
                rs_dados.Fields["Custo"].Value       = this.Custo.ToString();
                rs_dados.Update();
                Thread.Sleep(500);
                this.ID = Convert.ToInt32(rs_dados.Fields["cont"].Value);
                rs_dados.Close();
                //Processo de dedução do estoque
                SQL = "";
                rs_dados.Open(SQL, conex, CursorTypeEnum.adOpenDynamic, LockTypeEnum.adLockOptimistic);
                rs_dados.Fields["Estoque"].Value = Convert.ToInt32(rs_dados.Fields["Estoque"].Value) - this.Quantidade;
                rs_dados.Close();
                conex.Close();
            }
            catch (Exception e)
            {
                throw new ArgumentException(e.Message);
            }


            return(true);
        }