Ir para conteúdo
Fórum Script Brasil

spider man

Membros
  • Total de itens

    9
  • Registro em

  • Última visita

Posts postados por spider man

  1. Olá pessoal tudo bem?

    Tenho um sistema onde existe um formconsultar com dbgrid..

    ao clicar no registro selecionado no grid abre-se um novo formalterar ok

    o formconsultar tem uma Dbcombobox com varios itens..

    Ao consultar o 1 item ele retorna os dados..

    Ao consultar outro ele retorna erro

    'ClientDataSet: Cannot perform thid operation on a closed dataset'.

    Segue os códigos..

    procedure Tfrmconsultar.btnconsultarClick(Sender: TObject);

    begin

    DM.ADOQuerySql.Open;

    DM.ClientDataSet.close;

    DM.ADOQuerySQL.SQL.CLEAR;

    DM.ADOQuerySQL.SQL.ADD('select codigo, filial, ip, nomepc, placamae, modelo, processador, placavideo, hd, placasom, memoria, placarede, sistemaop, soquete, setor from componentes_filiais where filial like :filial');

    DM.ADOQuerySQL.Parameters.ParamByName('filial').Value:= combobox.text;

    DM.ClientDataSet.Open;

    DM.ADOQuerySql.Close;

    end;

    Procedure Tfrmalterar.DBEdit1Change(Sender: TObject);

    begin

    DM.ADOQuerySql.open;

    DM.ClientDataSet.Locate('codigo', DBedit1.text, [loCaseInsensitive, loPartialKey]);

    end;

    Gostaria que me ajudassem neste caso.

    Grato.

  2. ola pessoal..

    estou tenho um pouco de dificuldades e peço ajuda ao amigos do forum...

    Tenho uma dbgrid com todas as ligações ok

    ao clicar em um registro no grid abre-se um form alterar ok

    estão retornando quase todos os dados..menos dois..

    reparei que no Datafield não consigo alterar as posições dos fields

    Ao tentar fazer isso dá ...syntax to use near 'likeNULL filial' at line 1'

    não consigo descobrir onde está o erro..

    procedure Tfrmconsultar.btnconsultarClick(Sender: TObject);

    begin

    DM.ClientDataSet.close;

    DM.ADOQuerySQL.SQL.CLEAR;

    DM.ADOQuerySQL.SQL.ADD('select codigo, filial, ip, nomepc, placamae, modelo, processador, placavideo, hd, placasom, memoria, placarede, sistemaop, soquete, setor from componentes_filiais where filial like :filial');

    DM.ADOQuerySQL.Parameters.ParamByName('filial').Value:= combobox.text;

    DM.ClientDataSet.Open;

    end;

    comando sql do ADOQuerySQL..

    select codigo, filial, ip, nomepc, placamae, modelo, processador, placavideo, hd, placasom, memoria, placarede, sistemaop, soquete, setor from componentes_filiais where filial like: filial;

    grato..

  3. Olá pessoal, estou aqui dando seguimento ao desenvolvimento do meu tcc e tenho uma duvida..

    Assim, tenho uma Dbgrid que realiza as consultas ok > frmconsultar

    quando eu clico em um registro setado na grid abre um form > frmalterar

    tenho edits e uma combobox no frmalterar...

    o frmalterar esta ligada ao frmconsultar via query > data source ok

    o problema é que os dados não estão aparecendo dos edits para poder alterar..

    Já olhei muitos topicos mas não sei onde colocar as informações..

    Desde já agradeço a ajuda.

  4. Olá pessoal, desde já agradeço a todos que puderem ou tentarem me ajudar..

    uso delphi 7

    Tenho um form login o qual chamo frmprincipal ok

    O sistema não está pronto ainda mas está rodando sem erros até aqui..

    A questão é que quando, no form login, o código de verificação é valido

    o sistema abre outro form, o qual chamo formmenu. Quando eu clico em

    sair no frmmenu o frmlogin ainda está lá em execução. Sei que preciso usar

    os comandos try e finally, só que não sei onde colocar isso aqui. Ou se os amigos souberem outra forma também agradeço. Segue a unit do formlogin..

    unit Unit1;

    interface

    uses

    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

    Dialogs, Menus, ExtCtrls, StdCtrls;

    type

    Tfrmprincipal = class(TForm)

    Edit1: TEdit;

    Edit2: TEdit;

    Label1: TLabel;

    Label2: TLabel;

    btnconfirmar: TButton;

    btnsair: TButton;

    procedure btnconfirmarClick(Sender: TObject);

    procedure btnsairClick(Sender: TObject);

    private

    { Private declarations }

    public

    { Public declarations }

    end;

    var

    frmprincipal: Tfrmprincipal;

    implementation

    uses Unit3, Unit2;

    {$R *.dfm}

    procedure Tfrmprincipal.btnconfirmarClick(Sender: TObject);

    begin

    if (edit1.Text = '') then //Verifica se o campo "Usuário" foi preenchido

    begin

    Messagedlg('O campo "Usuário" deve ser preenchido!', mtInformation, [mbOk], 0);

    if edit1.CanFocus then

    edit1.SetFocus;

    Exit;

    end;

    if (edit2.Text = '') then //Verifica se o campo "Senha" foi preenchido

    begin

    Messagedlg('O campo "Senha" deve ser preenchido!', mtInformation, [mbOk], 0);

    if edit2.CanFocus then

    edit2.SetFocus;

    Exit;

    end

    else

    begin

    with DM.ADOQuery do

    begin

    Active:=False;

    SQL.Clear;

    SQL.Add('Select * from administrador where usuario =:log and senha =:snh');

    Parameters.ParamByName('log').Value:=edit1.Text;

    Parameters.ParamByName('snh').Value:=edit2.Text;

    Active:=True;

    //================================================

    if RecordCount > 0 then

    frmmenu.ShowModal

    else

    ShowMessage('Login ou Senha incorretos, verifique!');

    end;

    end;

    end;

    procedure Tfrmprincipal.btnsairClick(Sender: TObject);

    begin

    close;

    end;

    end.

  5. Bem, estou com um problema. Tenho uma tela de login e uma tela principal...

    O login sendo válido o usuário passa para a tela principal chamada frmmenu...nela será feito cadastros, consultas e relatórios..

    O que eu gostaria de fazer na verdade era abrir dentro do frmmenu todas as demais telas..eu uso um panel no frmmenu.

    Tipo, sei que tem a questão do MDI e tal..só que o form de login não é a tela principal e precisa ser aberta antes do frmmenu onde serão

    abertos os demais forms. Tem outras maneiras, abrir só um showmodal e pronto, mas é um trabalho de TCC e tem que ficar bom..

    Uso delphi 7 e mysql com banco de dados...

    Testei algumas formas encontrados em tópicos mas não consegui fazer...

    unit Unit1;

    interface

    uses

    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

    Dialogs, Menus, ExtCtrls, StdCtrls;

    type

    Tfrmprincipal = class(TForm)

    Edit1: TEdit;

    Edit2: TEdit;

    Label1: TLabel;

    Label2: TLabel;

    btnconfirmar: TButton;

    btnsair: TButton;

    procedure btnconfirmarClick(Sender: TObject);

    procedure btnsairClick(Sender: TObject);

    private

    { Private declarations }

    public

    { Public declarations }

    end;

    var

    frmprincipal: Tfrmprincipal;

    implementation

    uses Unit3, Unit2;

    {$R *.dfm}

    procedure Tfrmprincipal.btnconfirmarClick(Sender: TObject);

    begin

    if (edit1.Text = '') then //Verifica se o campo "Usuário" foi preenchido

    begin

    Messagedlg('O campo "Usuário" deve ser preenchido!', mtInformation, [mbOk], 0);

    if edit1.CanFocus then

    edit1.SetFocus;

    Exit;

    end;

    if (edit2.Text = '') then //Verifica se o campo "Senha" foi preenchido

    begin

    Messagedlg('O campo "Senha" deve ser preenchido!', mtInformation, [mbOk], 0);

    if edit2.CanFocus then

    edit2.SetFocus;

    Exit;

    end

    else

    begin

    with DM.ADOQuery do

    begin

    Active:=False;

    SQL.Clear;

    SQL.Add('Select * from administrador where usuario =:log and senha =:snh');

    Parameters.ParamByName('log').Value:=edit1.Text;

    Parameters.ParamByName('snh').Value:=edit2.Text;

    Active:=True;

    //================================================

    if RecordCount > 0 then

    frmmenu.ShowModal

    else

    ShowMessage('Login ou Senha incorretos, verifique!');

    end;

    end;

    end;

    procedure Tfrmprincipal.btnsairClick(Sender: TObject);

    begin

    close;

    end;

    end.

    obrigado a todos pela ajuda.

  6. olá a todos...

    Estou desenvolvendo um programa e estou tendo dificuldades com a tela login senha. Utilizo delphi 7 e mysql. A seguir segue a unit...

    unit Unit1;

    interface

    uses

    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

    Dialogs, Menus, ExtCtrls, StdCtrls;

    type

    Tfrmprincipal = class(TForm)

    Edit1: TEdit;

    Edit2: TEdit;

    Label1: TLabel;

    Label2: TLabel;

    btnconfirmar: TButton;

    btnsair: TButton;

    procedure btnconfirmarClick(Sender: TObject);

    procedure btnsairClick(Sender: TObject);

    private

    { Private declarations }

    public

    { Public declarations }

    end;

    var

    frmprincipal: Tfrmprincipal;

    implementation

    uses Unit3;

    {$R *.dfm}

    procedure Tfrmprincipal.btnconfirmarClick(Sender: TObject);

    begin

    if (edit1.Text = '') then //Verifica se o campo "Usuário" foi preenchido

    begin

    Messagedlg('O campo "Usuário" deve ser preenchido!', mtInformation, [mbOk], 0);

    if edit1.CanFocus then

    edit1.SetFocus;

    Exit;

    end;

    if (edit2.Text = '') then //Verifica se o campo "Senha" foi preenchido

    begin

    Messagedlg('O campo "Senha" deve ser preenchido!', mtInformation, [mbOk], 0);

    if edit2.CanFocus then

    edit2.SetFocus;

    Exit;

    end

    else

    begin

    with DM.ADOQuery do

    begin

    Active:=False;

    SQL.Clear;

    SQL.Add('Select * from administrador where usuario :=log and senha :=snh');

    Parameters.ParamByName('log').Value:=edit1.Text;

    Parameters.ParamByName('snh').Value:=edit2.Text;

    Active:=True;

    //================================================

    if RecordCount > 0 then

    frmprincipal.ShowModal

    else

    ShowMessage('Login ou Senha incorretos, verifique');

    end;

    end;

    end;

    procedure Tfrmprincipal.btnsairClick(Sender: TObject);

    begin

    close;

    end;

    end.

    Ele compila ok

    Porém ao fazer a comparação com o banco de dados para ver se foi digitado os dados corretos ele retorna um debug...

    project project1.exe raise exception class EDatabaseError with message 'ADOquery: Parameter 'log' not found. Process stopped.

    Meu código já melhorou bastante desde que dei início ao programa mas tenho este problema agora.

    Grato a todos pela ajuda.

×
×
  • Criar Novo...