Carcleo 4 Denunciar post Postado Fevereiro 22, 2008 Ola pessoal. Observem o código abaixo procedure TfrmPrincipal.ImprimirClick(Sender: TObject); var Dia: Integer; Texto: String; begin Texto := ''; if InputQuery('Digite o Dia para recebimento','Impressão para Recebimento em casa',Texto) then begin try Dia := StrToInt(Texto); except ShowMessage('Dia inválido!'); Exit; end; end else begin Exit; end; end; Application.CreateForm(TfrmRelatorio,frmRelatorio); if not frmRelatorio.QryClientes.Locate('MelhorDia', Dia, []) then begin frmRelatorio.Close; ShowMessage('Registro não encontrado!'); Exit; end else begin frmRelatorio.QryClientes.Filter := 'MelhorDia = ' + inttostr(Dia); frmRelatorio.QryClientes.Filtered := true; frmRelatorio.QryClientes.Filter := 'ReceberCasa = SIM'; frmRelatorio.QryClientes.Filtered := true; frmRelatorio.QuickRepListagem.PreviewModal; frmRelatorio.Free; end; end; ta dando o seguinte erro: [Hint] principal.pas(82): Value assigned to 'Dia' never used [Error] principal.pas(93): Declaration expected but identifier 'Application' found [Error] principal.pas(100): '.' expected but 'ELSE' found [Error] principal.pas(101): Identifier redeclared: 'Finalization' [Error] principal.pas(102): Undeclared identifier: 'Dia' [Warning] principal.pas(108): Text after final 'END.' - ignored by compiler [Fatal Error] funerplan.dpr(9): Could not compile used unit 'principal.pas' Eis o código completo: unit principal; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ZConnection, StdCtrls, Buttons, ExtCtrls, DB, ZAbstractRODataset, ZAbstractDataset, ZDataset; type TfrmPrincipal = class(TForm) funerplan: TZConnection; Fundo: TImage; cadastrar: TBitBtn; pesquizar: TBitBtn; sair: TBitBtn; sobre: TBitBtn; Imprimir: TBitBtn; procedure cadastrarClick(Sender: TObject); procedure sobreClick(Sender: TObject); procedure pesquizarClick(Sender: TObject); procedure relatoriosClick(Sender: TObject); procedure sairClick(Sender: TObject); procedure ImprimirClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var frmPrincipal: TfrmPrincipal; implementation uses cadastrar, pesquizas, relatorio, sobre; {$R *.dfm} procedure TfrmPrincipal.cadastrarClick(Sender: TObject); begin if frmCadastrar = NIL then //cria o form se ele não foi criado ainda Application.CreateForm(tfrmCadastrar,frmCadastrar); frmCadastrar.Show; end; procedure TfrmPrincipal.sobreClick(Sender: TObject); begin if frmSobre = NIL then //cria o form se ele não foi criado ainda Application.CreateForm(tfrmSobre,frmSobre); frmSobre.Show; end; procedure TfrmPrincipal.pesquizarClick(Sender: TObject); begin if frmPesquizas = NIL then //cria o form se ele não foi criado ainda Application.CreateForm(tfrmPesquizas,frmPesquizas); frmPesquizas.Show; end; procedure TfrmPrincipal.relatoriosClick(Sender: TObject); begin if frmRelatorio = NIL then //cria o form se ele não foi criado ainda Application.CreateForm(tfrmRelatorio,frmRelatorio); frmRelatorio.Show; end; procedure TfrmPrincipal.sairClick(Sender: TObject); begin Close; end; procedure TfrmPrincipal.ImprimirClick(Sender: TObject); var Dia: Integer; Texto: String; begin Texto := ''; if InputQuery('Digite o Dia para recebimento','Impressão para Recebimento em casa',Texto) then begin try Dia := StrToInt(Texto); except ShowMessage('Dia inválido!'); Exit; end; end else begin Exit; end; end; Application.CreateForm(TfrmRelatorio,frmRelatorio); if not frmRelatorio.QryClientes.Locate('MelhorDia', Dia, []) then begin frmRelatorio.Close; ShowMessage('Registro não encontrado!'); Exit; end else begin frmRelatorio.QryClientes.Filter := 'MelhorDia = ' + inttostr(Dia); frmRelatorio.QryClientes.Filtered := true; frmRelatorio.QryClientes.Filter := 'ReceberCasa = SIM'; frmRelatorio.QryClientes.Filtered := true; frmRelatorio.QuickRepListagem.PreviewModal; frmRelatorio.Free; end; end; end. O que sera que ta errado? Compartilhar este post Link para o post Compartilhar em outros sites
Leonardo Machado Moreira 0 Denunciar post Postado Fevereiro 22, 2008 amigo acho que desse jeito você nao vai conseguir ter respostas, tem erro ai que fala que você nao declarou variavel, erro de que falta end; erro que falta ponto e virgula.. brother tenta trabalhar mais seu código, tenta, quebrar um pouco mais a cabeça.. falo isso para sua evolução e para que voce receba respostas.. sem ofenças Compartilhar este post Link para o post Compartilhar em outros sites
Carcleo 4 Denunciar post Postado Fevereiro 22, 2008 Ok. Realmente foi precipitaçao. Desculpe a todos que leram esse tópico e muito obrigado leonardo pelo puxao de orelhas. Eu tava precisando. Consegui. Compartilhar este post Link para o post Compartilhar em outros sites
Carcleo 4 Denunciar post Postado Fevereiro 23, 2008 Bom, de repente apareceu uma outra dúvida que to um tempão e não consigo resolver; É o seguinte: Na tabela cadastro, tem o campo datacadastro que é tipo DATE. No evento onnewrecord do ZQuery, puz: QryClientesDataCadastro.AsDateTime:= Date; Bom, na hora que cliko no botão "novo", aparerce a data certinha do dia,' 22/02/2008', no Banco, gravo 1899-12-30. Porem, quando abro o formulario de cadastro e somente visualiso os registros, la estão todos os campos da tabela: Nome, Cpf, Endereco, menos o campo DataCadastro que retorna vazio. Se eu for e trocar a correspondencia do DBedit por exermplo para mostrar o nome, ele aparece. Mas a data,essa não. O que fazer? Compartilhar este post Link para o post Compartilhar em outros sites
Carcleo 4 Denunciar post Postado Fevereiro 23, 2008 É, quando gravei o 2º Cliente, a data tanto gravou certo no Banco quanto exibiu normalmente no DBEdit. O que acontece sera? Como posso resolver isso? Ja pensou se o cliente vai gravar o 1º Cliente e da isso? Quem puder ajudar agradeço. Compartilhar este post Link para o post Compartilhar em outros sites
Leonardo Machado Moreira 0 Denunciar post Postado Fevereiro 24, 2008 esta data 1899-12-30, é uma data que o delphi sempre coloca num DATE quando o valor de é 0... nunca trabalhei com zquery etc, nem adicionei registros por eventos (onnewrecord).., primeiro, tente adicionar a hora assim QryClientesDataCadastro.AsDateTime:= FormatDateTime('MM/DD/YYYY', Now); que retorna a data de agora, e a formata, talvez funcione.. mas é mais normal adicionar um registro programando no botão gravar apenas e nao nos eventos, mas nao há problema se o objeto funciona certinho... tente o metodo acima poste Compartilhar este post Link para o post Compartilhar em outros sites