PAGUE 6 MESES
LEVE 12 MESES
GARANTIR DESCONTO

Fórum MultSelect DbGrid #552204

24/04/2016

0

Bom dia!!!
Estou usando essa rotina para baixar mais está alguma coisa errado, se eu ir dando 2 cliques nas linhas do dbgrid ela só baixa a linha que está selecionada em azul no dbgrid no caso sempre a última, agora se eu segurar o ctrl e ir dando 2 cliques as linhas vão ficando selecionada ai consegue efetuar a baixa em todas, como faço para não ter que usar do ctrl e baixar todas as linhas que eu der duplo clique???

Obs.: Está true o dgmultselect e o dgrowselect


procedure TForm2.Button1Click(Sender: TObject);
var
i:integer;
baixa: double;
somatoria: double;
valorparcela: double;
valorrecebido: double;
restante: double;


begin
somatoria := StrToFloat(Edit1.Text);

valorparcela:= ClientDataSet1.FieldByName('VALOR_PARCELA').AsFloat;
valorrecebido:= ClientDataSet1.FieldByName('VALORRECEBIDO').AsFloat;
restante:= ClientDataSet1.FieldByName('RESTANTE').AsFloat;



ClientDataSet1.DisableControls;
ClientDataSet1.First;


for i:= 0 to DBGrid1.SelectedRows.Count -1 do

begin


  ClientDataSet1.Bookmark := DBGrid1.SelectedRows.Items[i];
  if somatoria >= valorparcela then
  begin
      ClientDataSet1.Edit;
      valorrecebido:= valorparcela;

      ClientDataSet1.FieldByName('VALORRECEBIDO').AsFloat := ClientDataSet1.FieldByName('VALOR_PARCELA').AsFloat;
      ClientDataSet1.FieldByName('RESTANTE').AsFloat := valorrecebido - valorparcela ;

      ClientDataSet1.Next;

          if (ClientDataSet1.State=dsInsert) or (ClientDataSet1.State=dsEdit) then
      ClientDataSet1.Post;

  end;

    ClientDataSet1.EnableControls;
  end;
Bruno Henrique

Bruno Henrique

Responder

Posts

24/04/2016

Bruno Henrique

Alguem
Responder

Gostei + 0

25/04/2016

Bruno Henrique

Bom dia!!!!

Ainda estou sem solução!!! Se alguem me ajudar grato
Responder

Gostei + 0

26/04/2016

Bruno Henrique

Gente, como faço para mudar o multiselect sem precisar pressionar o ctrl para selecionar vários registros?
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar