protected void btnSalvar_Click(object sender, EventArgs e)
    {
        int           codigo      = Convert.ToInt32(Session["codigo"]);
        FuncionarioBD bdfun       = new FuncionarioBD();
        Funcionario   funcionario = bdfun.Select(codigo);

        SaidaMateria saidamateria = new SaidaMateria();

        saidamateria.Materia     = ddlMateria.SelectedItem.Text;
        saidamateria.Quantidade  = -Convert.ToInt32(txtQuantidade.Text);
        saidamateria.Data        = DateTime.Now;
        saidamateria.Funcionario = funcionario.Nome;
        SaidaMateriaBD bd = new SaidaMateriaBD();

        string         saidamateriaid = ddlMateria.SelectedItem.Value;
        MateriaPrimaBD materiaprimabd = new MateriaPrimaBD();
        MateriaPrima   materiaprima   = materiaprimabd.Select(Convert.ToInt32(saidamateriaid));

        materiaprima.Quantidade = materiaprima.Quantidade - Convert.ToInt32(txtQuantidade.Text);

        if (materiaprima.Quantidade >= 0)
        {
            if (bd.Insert(saidamateria))
            {
                materiaprimabd.Update(materiaprima);

                Page.ClientScript.RegisterStartupScript(this.GetType(), "MyKey", "sucesso();", true);
                txtQuantidade.Text = "";
                txtQuantidade.Focus();
                LimparCampos();
            }
            else
            {
                Page.ClientScript.RegisterStartupScript(this.GetType(), "MyKey", "erro('Ocorreu um erro. Contate o suporte!');", true);
            }
        }
        else
        {
            Page.ClientScript.RegisterStartupScript(this.GetType(), "MyKey", "erro('Matéria prima insuficiente!');", true);
        }
    }
    protected void btnSalvar_Click(object sender, EventArgs e)
    {
        int           codigo      = Convert.ToInt32(Session["codigo"]);
        FuncionarioBD bdfun       = new FuncionarioBD();
        Funcionario   funcionario = bdfun.Select(codigo);

        SaidaMateria saidamateria = new SaidaMateria();

        saidamateria.Materia     = ddlMateria.SelectedItem.Text;
        saidamateria.Quantidade  = -Convert.ToInt32(txtQuantidade.Text);
        saidamateria.Data        = DateTime.Now;
        saidamateria.Funcionario = funcionario.Nome;
        SaidaMateriaBD bd = new SaidaMateriaBD();

        string         saidamateriaid = ddlMateria.SelectedItem.Value;
        MateriaPrimaBD materiaprimabd = new MateriaPrimaBD();
        MateriaPrima   materiaprima   = materiaprimabd.Select(Convert.ToInt32(saidamateriaid));

        materiaprima.Quantidade = materiaprima.Quantidade - Convert.ToInt32(txtQuantidade.Text);
        if (materiaprima.Quantidade >= 0)
        {
            if (bd.Insert(saidamateria))
            {
                materiaprimabd.Update(materiaprima);

                lblMensagem.Text   = "Entrada cadastrada com sucesso";
                txtQuantidade.Text = "";
                txtQuantidade.Focus();
                LimparCampos();
            }
            else
            {
                lblMensagem.Text = "Erro ao salvar.";
            }
        }
        else
        {
            lblMensagem.Text = "Erro ao salvar. Materia Prima insulficiente.";
        }
    }
    //métodos

    //insert
    public bool Insert(SaidaMateria saidamateria)
    {
        try
        {
            System.Data.IDbConnection objConexao;
            System.Data.IDbCommand    objCommand;
            string sql = "INSERT INTO sai_saidamateria(sai_materia, sai_quantidade, sai_data, sai_funcionario) VALUES (?materia, ?quantidade, ?data, ?funcionario)";
            objConexao = Mapped.Connection();
            objCommand = Mapped.Command(sql, objConexao);
            objCommand.Parameters.Add(Mapped.Parameter("?materia", saidamateria.Materia));
            objCommand.Parameters.Add(Mapped.Parameter("?quantidade", saidamateria.Quantidade));
            objCommand.Parameters.Add(Mapped.Parameter("?data", saidamateria.Data));
            objCommand.Parameters.Add(Mapped.Parameter("?funcionario", saidamateria.Funcionario));
            objCommand.ExecuteNonQuery();
            objConexao.Close();
            objCommand.Dispose();
            objConexao.Dispose();
            return(true);
        }
        catch (Exception e)
        {
            return(false);
        }
    }