none
C# - WINDOWS FORM - DATAGRIDVIEW RRS feed

  • Pergunta

  • C# -  WINDOWS FORM

    Alguém saberia me dizer, como posso fazer para pegar o valor de um campo no datagridview  e aplicar um percentual sobre ele e exibir o resultado deste percentual numa textBox?

    Dilson

    terça-feira, 18 de março de 2014 14:37

Respostas

  • É o seguinte:

    Tenho um select onde mostro num datagrid os valores (através de combobox), tipo assim:

    Combox 01 (seleciona salário) e no campo proventos inclui o valor do salário

    Combobox 02 (INSS) – seleciona e lança o valor no campo descontos

    Na verdade eu queria pegar o valor deste salário (que foi incluído no campo proventos)  e calcular o valor do INSS e na próxima consulta já viria carregado este valor (INSS) no campo descontos, ok?

    • Marcado como Resposta DilsonDG quinta-feira, 27 de março de 2014 12:40
    terça-feira, 18 de março de 2014 16:18

Todas as Respostas

  • Olá dilson isso é simples de se fazer a sua duvida seria com o codigo ou com a matematica ?

    Com o codigo seria mais ou menos isso adapte para vc :

    //ler dados sua grid
    int valor = (int)datagrid.SelectedRow.Cells[0].Value;
    
    int resultado = (valor * 15) / 100;
    
    textbox1.Text = resultado.ToString();

    terça-feira, 18 de março de 2014 14:42
  • É o seguinte:

    Tenho um select onde mostro num datagrid os valores (através de combobox), tipo assim:

    Combox 01 (seleciona salário) e no campo proventos inclui o valor do salário

    Combobox 02 (INSS) – seleciona e lança o valor no campo descontos

    Na verdade eu queria pegar o valor deste salário (que foi incluído no campo proventos)  e calcular o valor do INSS e na próxima consulta já viria carregado este valor (INSS) no campo descontos, ok?

    • Marcado como Resposta DilsonDG quinta-feira, 27 de março de 2014 12:40
    terça-feira, 18 de março de 2014 16:18
  • Sim mas esse calculo vc faria e gravaria no banco de dados ?
    terça-feira, 18 de março de 2014 16:34
  • Sim, para que da próxima atualização, já viria carregado
    terça-feira, 18 de março de 2014 16:37
  • Como está seu metodo de inserir dados no banco de dados ? Pq o calculo vc pode usar o que lhe mostrei anteriormente agora pra inserir dados depende de como está sua estrutura o que usa qual tecnologia.
    terça-feira, 18 de março de 2014 16:40
  • é mais ou menos assim que faço:

    O MÉTODO

    public void incluirSalario(int codSalario, decimal proventos, decimal descontos)

            {

                            comando.CommandText = "INSERT INTO salario (codSalario,proventos, descontos)VALUES ('" + codSalario + "', '" +proventos + "'," + descontos + "')";

                comando.ExecuteNonQuery();

            }

    O TRATAMENTO DOS DECIMAIS

    public String RetProventosParaBD(decimal proventos)

            {

                //faz-se aqui os tratamentos de decimal

                return proventos.ToString("0.00").Replace(".", "").Replace(",", ".");

            }

    public String RetDescontosParaBD(decimal descontos)

            {

                //faz-se aqui os tratamentos de decimal

                return descontos.ToString("0.00").Replace(".", "").Replace(",", ".");

            }

    O BOTÃO PARA INCLUIR NO BANCO

    private void btnIncluir_Click(object sender, EventArgs e)

      {

    incluirSalario(int.Parse(cbSalario.SelectedValue.ToString()),RetProventosParaBD(Convert.ToDecimal(txtProventos.Text)), RetDescontosParaBD (Convert.ToDecimal(txtDescontos.Text)));

    }

    terça-feira, 18 de março de 2014 17:10
  • Mas vc faz insert, pelo que entendi teria que ser UPDATE para atualizar a coluna de calculo e depois fazer a Select com os valores atualizados não seria isso ?
    sexta-feira, 21 de março de 2014 11:04
  • Onde e em que método eu insiro o código abaixo?

    Quanto ao UPDAte, vou tentar

    //ler dados sua grid

    int valor = (int)datagrid.SelectedRow.Cells[0].Value;

    int resultado = (valor * 15) / 100;

    textbox1.Text = resultado.ToString();

    sexta-feira, 21 de março de 2014 12:27
  • Depende vc tem três métodos que trata decimal, o correto seria outro método vc faria o calculo e colocasse os novos dados no seu datagrid e depois faria o UPDATE na base de dados.
    sexta-feira, 21 de março de 2014 14:28