예제 #1
0
        private void frmImportarEstoqueFisico_Load(object sender, EventArgs e)
        {
            int MesAno = Convert.ToInt32(DateTime.Now.Month.ToString() + DateTime.Now.Year.ToString());                     //Concatena o mês e o ano atual

            byte        retornoBD1;                                                                                         //Armazena o retorno da primeira consulta
            IDataReader retornoBD2;                                                                                         //Armazena o retorno da segunda consulta

            AccessBD conex = new AccessBD();                                                                                //Instancia a classe Conexao

            conex.AbrirConexao();                                                                                           //Abre a conexão com o banco de dadoos

            retornoBD1 = Convert.ToByte(conex.consultaScalar("SELECT COUNT(*) FROM VALOR_ESTOQUE WHERE MES = " + MesAno));  //Caso o Mês e o ano atual já exista no banco de dados retorna 1 caso não exista retorna 0

            if (retornoBD1 == 0)
            {//Se o mês+ano não exista no banco de dados, inseri no banco do mês 1 ao 12
                for (int i = 1; i < 13; i++)
                {
                    conex.insert_Delete_Update("INSERT INTO VALOR_ESTOQUE (MES) VALUES (" + i + DateTime.Now.Year + ")");
                }
            }

            retornoBD2 = conex.consultaReader("SELECT DISTINCT right(MES, 4) FROM VALOR_ESTOQUE"); //Retorna a lista com os anos
            while (retornoBD2.Read())
            {                                                                                      //Preenche o combobox
                cmbAno.Items.Add(retornoBD2.GetString(0));
            }

            cmbAno.SelectedIndex = cmbAno.Items.Count - 1;                                                                  //Seleciona o ano mais recente no combobox
            conex.FecharConexao();                                                                                          //Fecha a conexão
        }
예제 #2
0
        private void atualizarGrid()
        {
            dgvImportarEstoque.Rows.Clear();
            string      mes;
            IDataReader retornoBD = conex.consultaReader("SELECT * FROM VALOR_ESTOQUE WHERE RIGHT(MES, 4) = " + cmbAno.Text);

            while (retornoBD.Read())
            {
                if (retornoBD[1].ToString().Length == 5) //Verifica se o total de caracteres é = 5
                {                                        //Se sim pega o primeiro digito da esquerda
                    mes = ConverteNumEmMes(Convert.ToInt16(retornoBD[1].ToString().Substring(0, 1)));
                }
                else
                {//se não, pega os dois primeiros digitos da esquerda
                    mes = ConverteNumEmMes(Convert.ToInt16(retornoBD[1].ToString().Substring(0, 2)));
                }
                dgvImportarEstoque.Rows.Add(mes, retornoBD[2], retornoBD[3], retornoBD[4]);
            }
            conex.FecharConexao();
        }