Geasi 0 Denunciar post Postado Janeiro 22, 2009 Olá quando vou compilar meu programa recebo um erro descrito abaixo: [Error] Ulogin.pas(64): Statement expected but end of file found Segue abaixo meu codigo: begin Dm.tab_usuarios.Open; // abre a tabela tab_Usuarios FrmMenuPrin.StatusBar1.Panels[2].Text := 'Usuário:' + FrmLogin.EdtApelido.Text + ' - '+ Dm.tab_UsuariosUsuDepto.AsSTring; If not (Dm.tab_Usuarios.Locate('UsuApelido', FrmLogin.EdtApelido.Text, [loPartialKey ])) or (Dm.tab_UsuariosUsuSenha.Value <> FrmLogin.EdtSenha.Text) then begin MessageDlg('Nome ou senha do usuário inválidos.'+#13+#13 + 'Se você esqueceu sua senha, consulte '+ #13 + 'o administrador do sistema', mtError, [mbOK], 0); EdtSenha.Clear; // limpa o objeto EdtSenha EdtSenha.SetFocus; //Ajusta o foco para o objeto EdtSenha end else begin FrmLogin.Hide; //Esconde a tela FrmMenuPrin.ShowModal; //chama a tela FrmMenuPrin no modo modal FrmLogin.Release; //Remove a tela da memória FrmLogin := Nil; //Atribui conteúdo nulo para a variável de tela FrmLogin end; Alguém pode me ajudar ? ficarei grato Compartilhar este post Link para o post Compartilhar em outros sites
Chrnos 30 Denunciar post Postado Janeiro 22, 2009 Esse erro geralmente ocorre por faltar um end; numa procedure por exemplo. Identei seu código abaixo e vi que falta um end; nele. begin Dm.tab_usuarios.Open; // abre a tabela tab_Usuarios FrmMenuPrin.StatusBar1.Panels[2].Text := 'Usuário:' + FrmLogin.EdtApelido.Text + ' - '+ Dm.tab_UsuariosUsuDepto.AsSTring; If not (Dm.tab_Usuarios.Locate('UsuApelido', FrmLogin.EdtApelido.Text, [loPartialKey ])) or (Dm.tab_UsuariosUsuSenha.Value <> FrmLogin.EdtSenha.Text) then begin MessageDlg('Nome ou senha do usuário inválidos.'+#13+#13 + 'Se você esqueceu sua senha, consulte '+ #13 + 'o administrador do sistema', mtError, [mbOK], 0); EdtSenha.Clear; // limpa o objeto EdtSenha EdtSenha.SetFocus; //Ajusta o foco para o objeto EdtSenha end else begin FrmLogin.Hide; //Esconde a tela FrmMenuPrin.ShowModal; //chama a tela FrmMenuPrin no modo modal FrmLogin.Release; //Remove a tela da memória FrmLogin := Nil; //Atribui conteúdo nulo para a variável de tela FrmLogin end; //Faltou esse end aqui end; Dê uma verificada no seu código para ver se fechou todos os begins que abriu. []'s Compartilhar este post Link para o post Compartilhar em outros sites
Geasi 0 Denunciar post Postado Janeiro 22, 2009 Olá Chrnos, Intão eu dei uma olha realmente esta faltando mesmo um ponto e virgula ali, dpeois que fioz o que você me disse veja esse erro abaixo delphi7 ok? [Error] Ulogin.pas(71): Declaration expected but end of file found [Fatal Error] Sistema.dpr(9): Could not compile used unit 'Ulogin.pas' Meu codigo do Ulogin.pas abaixo: begin Dm.tab_usuarios.Open; // abre a tabela tab_Usuarios FrmMenuPrin.StatusBar1.Panels[2].Text := 'Usuário:' + FrmLogin.EdtApelido.Text + ' - '+ Dm.tab_UsuariosUsuDepto.AsSTring; If not (Dm.tab_Usuarios.Locate('UsuApelido', FrmLogin.EdtApelido.Text, [loPartialKey ])) or (Dm.tab_UsuariosUsuSenha.Value <> FrmLogin.EdtSenha.Text) then begin MessageDlg('Nome ou senha do usuário inválidos.'+#13+#13 + 'Se você esqueceu sua senha, consulte '+ #13 + 'o administrador do sistema', mtError, [mbOK], 0); EdtSenha.Clear; // limpa o objeto EdtSenha EdtSenha.SetFocus; //Ajusta o foco para o objeto EdtSenha end else begin FrmLogin.Hide; //Esconde a tela FrmMenuPrin.ShowModal; //chama a tela FrmMenuPrin no modo modal FrmLogin.Release; //Remove a tela da memória FrmLogin := Nil; //Atribui conteúdo nulo para a variável de tela FrmLogin end; //Faltou esse end aqui end; Aqui o codigo do Sistema.dpr program Sistema; uses Forms, UMenuPrin in 'UMenuPrin.pas' {FrmMenuPrin}, Usplash in 'Usplash.pas' {FrmSplash}, SysUtils, UDM in 'UDM.pas' {DM: TDataModule}, Ulogin in 'Ulogin.pas' {Form1}; {$R *.res} begin Application.Initialize; Application.CreateForm(TFrmMenuPrin, FrmMenuPrin); Application.CreateForm(TFrmSplash, FrmSplash); Application.CreateForm(TDM, DM); Application.CreateForm(TForm1, Form1); Application.CreateForm(TDataModule1, DataModule1); FrmSplash.Show; //exibe a tela FrmSplash FrmSplash.Refresh; // da um refresh na tela Sleep(2000); // (aguarda 02 segundos) - inclua a unit SysUtils na cláusula Uses. Application.Run; end. Você pode da uma verifica pr amim ? ficarei grato a todos Compartilhar este post Link para o post Compartilhar em outros sites
Chrnos 30 Denunciar post Postado Janeiro 22, 2009 O código do Ulogin.pas está incompleto no seu post... de uma verificada. Compartilhar este post Link para o post Compartilhar em outros sites
Geasi 0 Denunciar post Postado Janeiro 22, 2009 Complicado né, meu codigo é esse mesmo olhei aqui no exemplo que esotu usando é exatamente esse modelo: Dm.tab_Usuarios.Open; // abre a tabela tab_Usuarios FrmMenuPrin.StatusBar1.Panels[2].Text := ' Usuário:' + FrmLogin.EdtApelido.Text + '-'+ Dm.tab_UsuariosUsuDepto.AsSTring; If not (Dm.tab_Usuarios.Locate('UsuApelido', FrmLogin.EdtApelido.Text, [loPartialKey ])) or (Dm.tab_UsuariosUsuSenha.Value <> FrmLogin.EdtSenha.Text) then begin MessageDlg('Nome ou senha do usuário inválidos.'+#13+#13 + 'Se você esqueceu sua senha, consulte '+ #13 + 'o administrador do sistema', mtError, [mbOK], 0); EdtSenha.Clear; // limpa o objeto EdtSenha EdtSenha.SetFocus; //Ajusta o foco para o objeto EdtSenha end else begin FrmLogin.Hide; //Esconde a tela FrmMenuPrin.ShowModal; //chama a tela FrmMenuPrin no modo modal FrmLogin.Release; //Remove a tela da memória FrmLogin := Nil; //Atribui conteúdo nulo para a variável de tela FrmLogin end; Estranho, por eu olhei e sempre apresenta esse erro [Error] Ulogin.pas(76): Declaration expected but end of file found [Fatal Error] Sistema.dpr(9): Could not compile used unit 'Ulogin.pas' Mas tudo bem vo esperar a gelera chegar aqui e vejo, se alguém tive ruma solução ficarei muito grato, abração aos colaboradores. Compartilhar este post Link para o post Compartilhar em outros sites
SunShinE_mk 0 Denunciar post Postado Janeiro 22, 2009 está faltando o "end." no final da unit Compartilhar este post Link para o post Compartilhar em outros sites
Chrnos 30 Denunciar post Postado Janeiro 22, 2009 Onde está os declare, uses, identificador do form? Poste o código completo do .pas do Ulogin.pas para que possamos lhe ajudar a localizar onde falta um end... porque o trecho que está postando deste código não nos permite auferir onde está o erro do seu código. []'s Compartilhar este post Link para o post Compartilhar em outros sites
SunShinE_mk 0 Denunciar post Postado Janeiro 22, 2009 provavelmente pelo que o erro informa é que está faltando o ultimo "end." Compartilhar este post Link para o post Compartilhar em outros sites
Geasi 0 Denunciar post Postado Janeiro 23, 2009 Bom dia a todos, Caros Colaboradores veja abaixo meu codigo completo do Ulogin.pas ok ? unit Ulogin; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ExtCtrls; type TFrmLogin = class(TForm) Image1: TImage; GroupBox1: TGroupBox; Label1: TLabel; Label2: TLabel; Label3: TLabel; EdtApelido: TEdit; EdtSenha: TEdit; BtnOk: TBitBtn; BtnCancelar: TBitBtn; procedure BtnCancelarClick(Sender: TObject); procedure BtnOkClick(Sender: TObject); procedure FormClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var FrmLogin: TFrmLogin; implementation uses UDM, UMenuPrin, Usplash, DB; {$R *.dfm} procedure TFrmLogin.BtnCancelarClick(Sender: TObject); begin Application.Terminate; end; procedure TFrmLogin.BtnOkClick(Sender: TObject); begin Dm.tab_Usuarios.Open; // abre a tabela tab_Usuarios FrmMenuPrin.StatusBar1.Panels[2].Text := ' Usuário:' + FrmLogin.EdtApelido.Text + '-'+ Dm.tab_UsuariosUsuDepto.AsSTring; If not (Dm.tab_Usuarios.Locate('UsuApelido', FrmLogin.EdtApelido.Text, [loPartialKey ])) or (Dm.tab_UsuariosUsuSenha.Value <> FrmLogin.EdtSenha.Text) then begin MessageDlg('Nome ou senha do usuário inválidos.'+#13+#13 + 'Se você esqueceu sua senha, consulte '+ #13 + 'o administrador do sistema', mtError, [mbOK], 0); EdtSenha.Clear; // limpa o objeto EdtSenha EdtSenha.SetFocus; //Ajusta o foco para o objeto EdtSenha end else begin FrmLogin.Hide; //Esconde a tela FrmMenuPrin.ShowModal; //chama a tela FrmMenuPrin no modo modal FrmLogin.Release; //Remove a tela da memória FrmLogin := Nil; //Atribui conteúdo nulo para a variável de tela FrmLogin end. end; .:: Estou no aguardo desde ja fico grato pela atenção ::. Compartilhar este post Link para o post Compartilhar em outros sites
SunShinE_mk 0 Denunciar post Postado Janeiro 23, 2009 unit Ulogin; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ExtCtrls; type TFrmLogin = class(TForm) Image1: TImage; GroupBox1: TGroupBox; Label1: TLabel; Label2: TLabel; Label3: TLabel; EdtApelido: TEdit; EdtSenha: TEdit; BtnOk: TBitBtn; BtnCancelar: TBitBtn; procedure BtnCancelarClick(Sender: TObject); procedure BtnOkClick(Sender: TObject); procedure FormClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var FrmLogin: TFrmLogin; implementation uses UDM, UMenuPrin, Usplash, DB; {$R *.dfm} procedure TFrmLogin.BtnCancelarClick(Sender: TObject); begin Application.Terminate; end; procedure TFrmLogin.BtnOkClick(Sender: TObject); begin Dm.tab_Usuarios.Open; // abre a tabela tab_Usuarios FrmMenuPrin.StatusBar1.Panels[2].Text := ' Usuário:' + FrmLogin.EdtApelido.Text + '-'+ Dm.tab_UsuariosUsuDepto.AsSTring; If not (Dm.tab_Usuarios.Locate('UsuApelido', FrmLogin.EdtApelido.Text, [loPartialKey ])) or (Dm.tab_UsuariosUsuSenha.Value <> FrmLogin.EdtSenha.Text) then begin MessageDlg('Nome ou senha do usuário inválidos.'+#13+#13 + 'Se você esqueceu sua senha, consulte '+ #13 + 'o administrador do sistema', mtError, [mbOK], 0); EdtSenha.Clear; // limpa o objeto EdtSenha EdtSenha.SetFocus; //Ajusta o foco para o objeto EdtSenha end else begin FrmLogin.Hide; //Esconde a tela FrmMenuPrin.ShowModal; //chama a tela FrmMenuPrin no modo modal FrmLogin.Release; //Remove a tela da memória FrmLogin := Nil; //Atribui conteúdo nulo para a variável de tela FrmLogin end. end; end. Compartilhar este post Link para o post Compartilhar em outros sites
SunShinE_mk 0 Denunciar post Postado Janeiro 23, 2009 ops errei;... unit Ulogin; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ExtCtrls; type TFrmLogin = class(TForm) Image1: TImage; GroupBox1: TGroupBox; Label1: TLabel; Label2: TLabel; Label3: TLabel; EdtApelido: TEdit; EdtSenha: TEdit; BtnOk: TBitBtn; BtnCancelar: TBitBtn; procedure BtnCancelarClick(Sender: TObject); procedure BtnOkClick(Sender: TObject); procedure FormClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var FrmLogin: TFrmLogin; implementation uses UDM, UMenuPrin, Usplash, DB; {$R *.dfm} procedure TFrmLogin.BtnCancelarClick(Sender: TObject); begin Application.Terminate; end; procedure TFrmLogin.BtnOkClick(Sender: TObject); begin Dm.tab_Usuarios.Open; // abre a tabela tab_Usuarios FrmMenuPrin.StatusBar1.Panels[2].Text := ' Usuário:' + FrmLogin.EdtApelido.Text + '-'+ Dm.tab_UsuariosUsuDepto.AsSTring; If not (Dm.tab_Usuarios.Locate('UsuApelido', FrmLogin.EdtApelido.Text, [loPartialKey ])) or (Dm.tab_UsuariosUsuSenha.Value <> FrmLogin.EdtSenha.Text) then begin MessageDlg('Nome ou senha do usuário inválidos.'+#13+#13 + 'Se você esqueceu sua senha, consulte '+ #13 + 'o administrador do sistema', mtError, [mbOK], 0); EdtSenha.Clear; // limpa o objeto EdtSenha EdtSenha.SetFocus; //Ajusta o foco para o objeto EdtSenha end else begin FrmLogin.Hide; //Esconde a tela FrmMenuPrin.ShowModal; //chama a tela FrmMenuPrin no modo modal FrmLogin.Release; //Remove a tela da memória FrmLogin := Nil; //Atribui conteúdo nulo para a variável de tela FrmLogin end; end. // esse deve estar sempre no final.. estava invertido ;) Compartilhar este post Link para o post Compartilhar em outros sites
Geasi 0 Denunciar post Postado Janeiro 23, 2009 Olá SunShinE_mk Eu fiz isso, mas por que aquele ponto final no end. ? veja depois que coloquei teu codigo veja abaixo: [Error] Ulogin.pas(66): ';' expected but '.' found [Error] Ulogin.pas(68): Declaration expected but end of file found [Error] Ulogin.pas(22): Unsatisfied forward or external declaration: 'TFrmLogin.FormClick' [Fatal Error] Sistema.dpr(9): Could not compile used unit 'Ulogin.pas' Carregamento de algum arquivo que nao esteja no meu sistema ? um for seilá alguma coisa assim ? e complicado que nessas linhas onde ele fala que deu erro eu ja fui veja: Linha: (66) do Ulogin.pas end. Linha: (68) não tem nada Linha: (22) procedure FormClick(Sender: TObject); Linha: (9) do Sistema.dpr essa linha Ulogin in 'Ulogin.pas' {Form1}; Estranho sera que coloco meu projeto no meu site pra alguém baixar ? .:: Obrigado a todos ::. Compartilhar este post Link para o post Compartilhar em outros sites
SunShinE_mk 0 Denunciar post Postado Janeiro 23, 2009 tenta esse agora.. o end. no final é padrão do delphi.. ;) sempre deve fechar com ele.. unit Ulogin; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ExtCtrls; type TFrmLogin = class(TForm) Image1: TImage; GroupBox1: TGroupBox; Label1: TLabel; Label2: TLabel; Label3: TLabel; EdtApelido: TEdit; EdtSenha: TEdit; BtnOk: TBitBtn; BtnCancelar: TBitBtn; procedure BtnCancelarClick(Sender: TObject); procedure BtnOkClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var FrmLogin: TFrmLogin; implementation uses UDM, UMenuPrin, Usplash, DB; {$R *.dfm} procedure TFrmLogin.BtnCancelarClick(Sender: TObject); begin Application.Terminate; end; procedure TFrmLogin.BtnOkClick(Sender: TObject); begin Dm.tab_Usuarios.Open; // abre a tabela tab_Usuarios FrmMenuPrin.StatusBar1.Panels[2].Text := ' Usuário:' + FrmLogin.EdtApelido.Text + '-'+ Dm.tab_UsuariosUsuDepto.AsSTring; If not (Dm.tab_Usuarios.Locate('UsuApelido', FrmLogin.EdtApelido.Text, [loPartialKey ])) or (Dm.tab_UsuariosUsuSenha.Value <> FrmLogin.EdtSenha.Text) then begin MessageDlg('Nome ou senha do usuário inválidos.'+#13+#13 + 'Se você esqueceu sua senha, consulte '+ #13 + 'o administrador do sistema', mtError, [mbOK], 0); EdtSenha.Clear; // limpa o objeto EdtSenha EdtSenha.SetFocus; //Ajusta o foco para o objeto EdtSenha end else begin FrmLogin.Hide; //Esconde a tela FrmMenuPrin.ShowModal; //chama a tela FrmMenuPrin no modo modal FrmLogin.Release; //Remove a tela da memória FrmLogin := Nil; //Atribui conteúdo nulo para a variável de tela FrmLogin end; end; end. Compartilhar este post Link para o post Compartilhar em outros sites
Geasi 0 Denunciar post Postado Janeiro 23, 2009 Olá SunShinE_mk Intão eu peguei o codigo que você postou e deu certo valeu muito obrigado, depois tive que alterar algumas funções do sistema.drp veja abaixo: program Sistema; uses Forms, UMenuPrin in 'UMenuPrin.pas' {FrmMenuPrin}, Usplash in 'Usplash.pas' {FrmSplash}, SysUtils, UDM in 'UDM.pas' {DM: TDataModule}, Ulogin in 'Ulogin.pas' {FrmLogin}; {$R *.res} begin Application.Initialize; Application.CreateForm(TFrmLogin, FrmLogin); Application.CreateForm(TFrmMenuPrin, FrmMenuPrin); Application.CreateForm(TFrmSplash, FrmSplash); Application.CreateForm(TDM, DM); //Application.CreateForm(TForm, FrmLogin); Application.CreateForm(TFrmLogin, FrmLogin); //FrmLogin.Show; FrmSplash.Show; //exibe a tela FrmSplash FrmSplash.Refresh; // da um refresh na tela Sleep(2000); // (aguarda 02 segundos) - inclua a unit SysUtils na cláusula Uses. Application.Run; end. Brigadao, mas não some nao que acho que irei precisar muitoo da ajuda de todos vcs :) fico grato pela colaboração, abraços :P []´s Compartilhar este post Link para o post Compartilhar em outros sites
SunShinE_mk 0 Denunciar post Postado Janeiro 23, 2009 ok então! at+ :) Compartilhar este post Link para o post Compartilhar em outros sites