Ajuda Formulario de listagem

26/01/2013

1

Olá Pessoal, estou com um pequeno problema, tenho um formulário de listagem, Imagem do Formulário: http://img826.imageshack.us/img826/9500/listf.png

Tenho que selecionar o Radiogroup um opção para ordem tipo de situação se vai ser 'cheque depositado, cheque em recebido, cheque devolvido ou cheque repassado', tenho tambem que colocar data ini e data final, tambem preciso que me some os valores dos cheques.


se alguem poder me ajudar desde já muito obg!
Responder

Posts

26/01/2013

Joel Rodrigues

Opa, amigo. Qual é exatamente a sua dúvida?
Já tem algo pronto? Você tem experiência na montagem de queries no Delphi?
Responder
Amigo Muito obg pela intenção de ajudar mais já dei uma ajeitada, o meu amigo pra quem estou fazendo esse sistema de controle de cheques mudou e me disse que so vai precisar que seja filtrado pela situação do cheque ai eu mesmo resolvi, segue abaixo como ficou meu Codigo.



unit U_ListCheques;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, ComCtrls, Grids, DBGrids, Buttons, DB;

type
TF_ListCheques = class(TForm)
Panel1: TPanel;
DBGrid1: TDBGrid;
rg_situacao: TRadioGroup;
RadioGroup1: TRadioGroup;
DateTimePicker1: TDateTimePicker;
DateTimePicker2: TDateTimePicker;
Label4: TLabel;
btn_Sair: TBitBtn;
btn_cancelar: TBitBtn;
BitBtn1: TBitBtn;
DataSource1: TDataSource;
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
Label5: TLabel;
procedure btn_SairClick(Sender: TObject);
procedure rg_situacaoClick(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure btn_cancelarClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
F_ListCheques: TF_ListCheques;

implementation

uses U_DM;

{$R *.dfm}

procedure TF_ListCheques.BitBtn1Click(Sender: TObject);
begin

DM.Q_cheques.Close;
DM.Q_cheques.SQL.Clear;
DM.Q_cheques.SQL.Add('SELECT ID, Dataca, Dataemitida, Datapredatada, Banco, Agencia, Conta, Numerocheque, Valor, Nome, Sacador, Situacao from Cheques');
case rg_situacao.ItemIndex of
0:
BEGIN
DM.Q_cheques.SQL.Add('WHERE Situacao = "Em posse"');
DM.Q_cheques.Prepared;
DM.Q_cheques.Open;
Label5.Caption := 'Total de Registros Localizados: ' + IntToStr(DM.Q_cheques.RecordCount)
END;
1:
BEGIN
DM.Q_cheques.SQL.Add('WHERE Situacao = "Repassado"');
DM.Q_cheques.Prepared;
DM.Q_cheques.Open;
Label5.Caption := 'Total de Registros Localizados: ' + IntToStr(DM.Q_cheques.RecordCount)
END;
2:
BEGIN
DM.Q_cheques.SQL.Add('WHERE Situacao = "Devolvido"');
DM.Q_cheques.Prepared;
DM.Q_cheques.Open;
Label5.Caption := 'Total de Registros Localizados: ' + IntToStr(DM.Q_cheques.RecordCount)
END;
3:
BEGIN
DM.Q_cheques.SQL.Add('WHERE Situacao = "Depositado"');
DM.Q_cheques.Prepared;
DM.Q_cheques.Open;
Label5.Caption := 'Total de Registros Localizados: ' + IntToStr(DM.Q_cheques.RecordCount)
END;
end;
end;

procedure TF_ListCheques.btn_cancelarClick(Sender: TObject);
begin
DM.Q_cheques.SQL.Clear;
DM.Q_cheques.Close;
end;

procedure TF_ListCheques.btn_SairClick(Sender: TObject);
begin
Close;
end;

procedure TF_ListCheques.FormClose(Sender: TObject; var Action: TCloseAction);
begin
DM.Q_cheques.Close;
end;

procedure TF_ListCheques.rg_situacaoClick(Sender: TObject);
begin
case rg_situacao.ItemIndex of
0:
BEGIN
DateTimePicker1.SetFocus;
END;
1:
BEGIN
DateTimePicker1.SetFocus;
END;
2:
BEGIN
DateTimePicker1.SetFocus;
END;
3:
BEGIN
DateTimePicker1.SetFocus;
END;
end;
end;

end.
Responder
mais agora eu to com outro problema ele me solicitou que eu soma-se todos os cheques ex: quando eu listar tipo por cheques em posse ai ele some todos os valores dos cheques listados.


se alguem poder me ajudar fico grato!
Responder
Bom pessoal eu já resolvi meu problema, vou postar como consertei se alguem precisar ta ai meu codigo com a minha necessidade!

imagem da Meu Formulário de Listagem de Cheques: http://img827.imageshack.us/img827/1770/listar.png
lembrando que esse intervalo de datas nao ta funcionando pq meu cliente nao vai mais precisar de intervalo por data!

#Códico:

unit U_ListCheques;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, ComCtrls, Grids, DBGrids, Buttons, DB;

type
TF_ListCheques = class(TForm)
Panel1: TPanel;
DBGrid1: TDBGrid;
rg_situacao: TRadioGroup;
RadioGroup1: TRadioGroup;
DateTimePicker1: TDateTimePicker;
DateTimePicker2: TDateTimePicker;
Label4: TLabel;
btn_Sair: TBitBtn;
btn_cancelar: TBitBtn;
BitBtn1: TBitBtn;
DataSource1: TDataSource;
Label1: TLabel;
Label2: TLabel;
Label5: TLabel;
Label3: TLabel;
Label6: TLabel;
procedure btn_SairClick(Sender: TObject);
procedure rg_situacaoClick(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure btn_cancelarClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
F_ListCheques: TF_ListCheques;

implementation

uses U_DM;

{$R *.dfm}

procedure TF_ListCheques.BitBtn1Click(Sender: TObject);
VAR
SOMAR:Integer;
begin
DM.Q_cheques.Close;
DM.Q_cheques.SQL.Clear;
DM.Q_cheques.SQL.Add('SELECT ID, Dataca, Dataemitida, Datapredatada, Banco, Agencia, Conta, Numerocheque, Valor, Nome, Sacador, Situacao from Cheques');
case rg_situacao.ItemIndex of
0:
BEGIN
DM.Q_cheques.SQL.Add('WHERE Situacao = "Em posse"');
DM.Q_cheques.Prepared;
DM.Q_cheques.Open;
Label5.Caption := 'Registros Localizados: ' + IntToStr(DM.Q_cheques.RecordCount)
END;
1:
BEGIN
DM.Q_cheques.SQL.Add('WHERE Situacao = "Repassado"');
DM.Q_cheques.Prepared;
DM.Q_cheques.Open;
Label5.Caption := 'Registros Localizados: ' + IntToStr(DM.Q_cheques.RecordCount)
END;
2:
BEGIN
DM.Q_cheques.SQL.Add('WHERE Situacao = "Devolvido"');
DM.Q_cheques.Prepared;
DM.Q_cheques.Open;
Label5.Caption := 'Registros Localizados: ' + IntToStr(DM.Q_cheques.RecordCount)
END;
3:
BEGIN
DM.Q_cheques.SQL.Add('WHERE Situacao = "Depositado"');
DM.Q_cheques.Prepared;
DM.Q_cheques.Open;
Label5.Caption := 'Registros Localizados: ' + IntToStr(DM.Q_cheques.RecordCount)
END;
end;
inherited;
SOMAR:=0;
DM.Q_cheques.DisableControls;
DM.Q_cheques.First;
while not DM.Q_cheques.Eof do
begin
SOMAR := (SOMAR + DM.Q_cheques.FieldByName('Valor').AsInteger);
DM.Q_cheques.Next;

end;
DM.Q_cheques.EnableControls;
Label3.Caption := FormatFloat ('R$ #,,,,0.00',SOMAR);
end;

procedure TF_ListCheques.btn_cancelarClick(Sender: TObject);
begin
DM.Q_cheques.SQL.Clear;
Label3.Caption := ' ';
Label5.Caption := ' ';
DM.Q_cheques.Close;
end;

procedure TF_ListCheques.btn_SairClick(Sender: TObject);
begin
Close;
end;

procedure TF_ListCheques.FormClose(Sender: TObject; var Action: TCloseAction);
begin
DM.Q_cheques.Close;
end;

procedure TF_ListCheques.rg_situacaoClick(Sender: TObject);
begin
case rg_situacao.ItemIndex of
0:
BEGIN
btn_listar.SetFocus;
END;
1:
BEGIN
btn_listar.SetFocus;
END;
2:
BEGIN
btn_listar.SetFocus;
END;
3:
BEGIN
btn_listar.SetFocus;
END;
end;
end;

end.
Responder