Пример #1
0
        /// <summary>
        /// Metodo para adição dos itens no orçamento do small
        /// </summary>
        /// <param name="ID_loja">ID da loja a ser vendida, paramentro 0 para todas as lojas</param>
        private void salvaSmall(Int32 ID_loja)
        {
            String pedidoZero = "0000000000";
            String lancamentoZero = "0000000000";
            bool   gravado = false;
            Int32  pedido, lancamento;

            ///Processo do banco de dados
            Recordset  rsdados = new Recordset();
            Connection conex   = new Conexao().getSmall();
            String     SQL     = "SELECT ORCAMENT.* FROM ORCAMENT ORDER BY ORCAMENT.REGISTRO;";

            rsdados.Open(SQL, conex, CursorTypeEnum.adOpenDynamic, LockTypeEnum.adLockOptimistic);
            rsdados.MoveLast();

            ///Processo de coleta de numeração de registro
            pedido = Convert.ToInt32(rsdados.Fields["PEDIDO"].Value.ToString());
            pedido++;
            lancamento = Convert.ToInt32(rsdados.Fields["REGISTRO"].Value.ToString());
            lancamento++;
            pedidoZero     += pedido.ToString();
            lancamentoZero += lancamento.ToString();
            pedidoZero      = new SIME.Class.Uteis().direita(pedidoZero, 9);
            lancamentoZero  = new SIME.Class.Uteis().direita(lancamentoZero, 9);

            ///Adição de registro
            foreach (var item in itens)
            {
                if (item.getID_loja() == ID_loja || item.getID_loja() == 0)
                {
                    rsdados.AddNew();
                    rsdados.Fields["CODIGO"].Value    = item.getID_produto().ToString();
                    rsdados.Fields["DESCRICAO"].Value = ((item.getDescricao().Length > 45) ?
                                                         new SIME.Class.Uteis().esquerda(item.getDescricao().ToString(), 44) : item.getDescricao());
                    rsdados.Fields["QUANTIDADE"].Value = item.getQuantidade().ToString();
                    rsdados.Fields["UNITARIO"].Value   = item.getUnitario().ToString("N");
                    rsdados.Fields["TOTAL"].Value      = (item.getQuantidade() * item.getUnitario()).ToString("N");
                    rsdados.Fields["DATA"].Value       = DateTime.Now.ToShortDateString();
                    rsdados.Fields["TIPO"].Value       = "ORCAME";
                    rsdados.Fields["PEDIDO"].Value     = pedidoZero;
                    rsdados.Fields["CLIFOR"].Value     = "MOVIMENTAÇÃO DIÁRIA";//Modificar futuramente para procurar o cliente em small
                    rsdados.Fields["REGISTRO"].Value   = lancamentoZero;
                    rsdados.Update();
                    if (gravado == false)
                    {
                        this.orcamentoSmall = pedidoZero;
                        this.Salvar();
                        gravado = true;
                    }
                }
                rsdados.Close();
                conex.Close();
            }
        }
Пример #2
0
        /// <summary>
        /// Método que seta a chave da NF
        /// </summary>
        /// <param name="chave">String contendo a chave do produto</param>
        public void setChave(String chave)
        {
            if (chave.Equals(""))
            {
                throw new ArgumentException("Não é permitido chave vazia");
            }
            if (chave.Length != 44)
            {
                throw new ArgumentException("A chave da NF-e deve conter 44 dígitos.");
            }
            string chave1  = new SIME.Class.Uteis().esquerda(chave, 42);
            Int32  dvChave = Convert.ToInt32(new SIME.Class.Uteis().direita(chave, 0));

            if (GerarDigitoVerificadorNFe(chave1) != dvChave)
            {
                throw new ArgumentException("Chave inválida.");
            }

            this.chaveNFE = chave;
            coletaInfChave(chave);
        }
Пример #3
0
        /// <summary>
        /// Classe que cria objeto nota de entrada baseado na consulta da chave da nota de entrada.
        /// </summary>
        /// <param name="chaveNFE">String contendo a chave de entrada de uma nota fiscal</param>
        public nota_entrada(String chaveNFE)
        {
            string chave1  = new SIME.Class.Uteis().esquerda(chaveNFE, 42);
            Int32  dvChave = Convert.ToInt32(new SIME.Class.Uteis().direita(chaveNFE, 0));

            if (GerarDigitoVerificadorNFe(chave1) != dvChave)
            {
                throw new ArgumentException("Chave inválida.");
            }
            String SQL = "SELECT notas_entradas.* FROM notas_entradas WHERE (((notas_entradas.Chave_NFE)='" + chaveNFE + "'));";

            try
            {
                coletaDados(SQL);
            }
            catch (Exception erro)
            {
                throw erro;
            }

            this.chaveNFE = chaveNFE;
        }