Fórum Carlos é possivel criar um classe sim porem a parte de inserir consultar etc e muito mais complicada. #9998

09/10/2009

0

Ola Rodrigo bom já sabe ne uma classe igual ele record tMotqueiro lembra onde eu posso consultar inserir e edtiar    Carlos é possivel criar um classe sim porem a parte de inserir consultar etc e muito mais complicada.   Abra um chamado pedindo para que seja criada uma classe com um metodo de inserir. Faremos um exemplos simples e vc adapta a sua necessidade pois o sistema de suporte ano comtempla desenvolvimento.   Abs!!  
Carlos Faria

Carlos Faria

Responder

Posts

13/10/2009

Wesley Yamazack

Olá Carlos,

   Desculpe a demora, o Rodrigo está com problemas, e pediu para ajudar ele neste chamado, você poderia ser mais claro sobre o que esta querendo fazer ?

 Um abraço

Wesley Y
Responder

Gostei + 0

13/10/2009

Carlos Faria

Ola wesley Eu gostaria de criar uma classe TCliente  onde nessa classe  eu posso usar todas as propriedades de um Cliente para inserir ,consultar , editar em todo o projeto  
Responder

Gostei + 0

13/10/2009

Wesley Yamazack

Olá Carlos

  Os metodos de inclusão, edição, etc, não tem mistério você so precisa saber como você vai persistir os dados.

Exemplo

unit Unit2;

interface
  Type
  TCliente = Class
    public
      procedure Inserir;
      procedure Deletar;
      procedure Pesquisar;
      procedure Editar;


  end;

implementation

{ TCliente }

procedure TCliente.Deletar;
begin
  //Forma de Deletar
end;

procedure TCliente.Editar;
begin
  //Forma de Editar
end;

procedure TCliente.Inserir;
begin
  //Forma de Inserir
end;

procedure TCliente.Pesquisar;
begin
  //Forma de Pesquisar
end;

end.

Porém você tem que definir como fazer os metodos, vai montar seus scripts na mão? Vai usar ClientDataSet ? Como você quer fazer ?

Att,

Wesley Y

Responder

Gostei + 0

13/10/2009

Carlos Faria

que tal um exemplo das duas maneiras nao mao e com clientdataset ? 
Responder

Gostei + 0

15/10/2009

Wesley Yamazack

Olá Carlos,
Segue o exemplo

Exemplo

unit Unit2;

interface
  Type
  TCliente = Class
    public
      procedure Inserir;
      procedure Deletar;
      procedure Pesquisar;
      procedure Editar;


  end;

implementation

{ TCliente }

procedure TCliente.Deletar;
begin
  //Forma de Deletar
end;

procedure TCliente.Editar;
begin
  //Forma de Editar
end;

procedure TCliente.Inserir;
Var
   xQry: TSQLQuery;
begin
  xQry := TSQLQuery.Create(Self);
      With xQry do
      begin
         SQLConnection := DM.SqlCOnnection1;
         SQL.Add(' INSERT INTO CLIENTE (IDCLIENTE, NOME)          '+
                 '   VALUES (:IDCLIENTE, :NOME );
         Params.ParamByName('IDCLIENTE').AsBCD := IDCLIENTE;
         Params.ParamByName('NOME ').AsBCD := NOME;
         ExecSQL;
end;

procedure TCliente.Pesquisar;
begin
  //Forma de Pesquisar
end;

end.


   Veja que os scripts são montados para cada situação, inclusão, alteração, etc, faça as adaptações de acordo com sua necessidade.

Um abraço

Wesley Y
Responder

Gostei + 0

22/10/2009

Carlos Faria

Wesley   segui o exemplo como vc descreveu aqui porem nao compila aparece um erro no fim da linha     [DCC Fatal Error] F2092 Program or unit 'Classes' recursively uses itself
Responder

Gostei + 0

22/10/2009

Wesley Yamazack

Olá Carlos,
  Me diga uma coisa, o nome da tua Unt é Classes ? è isso mesmo ?? Se for você sabe que não pode correto, pois classes é o nome de unit do Delphi ? Então mude o nome, para uClasses, ou algo do tiop.

Att,

WesleY Y
Responder

Gostei + 0

22/10/2009

Carlos Faria

Weslye
Nao faltou aqui as propriedades ? exemplo imagino que um cliente tenha algumas propriedades como nome, endereco ,rg etc
para fazer uma consulta dessa cliente acho que preciso dessas propriedades
Responder

Gostei + 0

22/10/2009

Wesley Yamazack

Carlos, o erro que você falou não tem nada haver com o que você respondeu agora.


Veja como criar as propertys

  Type
  TCliente = Class
    public
      procedure Inserir;
      procedure Deletar;
      procedure Pesquisar;
      procedure Editar;
    published
      property Nome : String;
      property Cpf : String;
      property RG : String;

  end;

Apos digitar o que esta em Negrito ! Você implementa com CTRL+SHIF+C

Logo apos ficaria assim.

unit Unit2;

interface
Uses DB, SqlExpr;
  Type
  TCliente = Class
  private
    FNome: String;
    FCpf: String;
    FRG: String;
    procedure SetCpf(const Value: String);
    procedure SetNome(const Value: String);
    procedure SetRG(const Value: String);
    public
      procedure Inserir;
      procedure Deletar;
      procedure Pesquisar;
      procedure Editar;
    published
      property Nome : String read FNome write SetNome;
      property Cpf : String read FCpf write SetCpf;
      property RG : String read FRG write SetRG;

  end;

implementation

{ TCliente }

procedure TCliente.Deletar;
begin
  //Forma de Deletar
end;

procedure TCliente.Editar;
begin
  //Forma de Editar
end;

procedure TCliente.Inserir;
Var
   xQry: TSQLQuery;
begin
  xQry := TSQLQuery.Create(Nil);
      With xQry do
      begin
         SQLConnection := DM.SqlCOnnection1;
         SQL.Add(' INSERT INTO CLIENTE (IDCLIENTE, NOME)          '+
                 '   VALUES (:IDCLIENTE, :NOME );
         Params.ParamByName('IDCLIENTE').AsBCD := IDCLIENTE;
         Params.ParamByName('NOME ').AsBCD := NOME;
         ExecSQL;
end;

procedure TCliente.Pesquisar;
begin
  //Forma de Pesquisar
end;

procedure TCliente.SetCpf(const Value: String);
begin
  FCpf := Value;
end;

procedure TCliente.SetNome(const Value: String);
begin
  FNome := Value;
end;

procedure TCliente.SetRG(const Value: String);
begin
  FRG := Value;
end;

end.

procedure TCliente.SetCpf(const Value: String);
begin
  FCpf := Value;
end;

procedure TCliente.SetNome(const Value: String);
begin
  FNome := Value;
end;

procedure TCliente.SetRG(const Value: String);
begin
  FRG := Value;
end;

end.



Responder

Gostei + 0

22/10/2009

Carlos Faria

vou adaptar a um exemplo para mim e te retorno, quanto aquele chamando sobre compilar o pacote peço prioridade maxima , pois e urgentissimo  
Responder

Gostei + 0

28/10/2009

Wesley Yamazack

Olá Carlos,

  Consegui adaptar o exemplo ? Podemos fechar este chamado ? Ficou mais alguma dúvida ?

Att,

Wesley Y
Responder

Gostei + 0

28/10/2009

Carlos Faria

Deixa eu dar os ultimos ajustes ate amanha agente fecha aqui ok
Responder

Gostei + 0

30/10/2009

Wesley Yamazack

Fala meu camarada, td certo ?
  E ai consegui ver o chamado ?

Att,

Wesley Y
Responder

Gostei + 0

31/10/2009

Carlos Faria

wesley calma ai que ja fechamos o chamado ainda esta semana , so nao dei um ok ainda pq estou com chamados abertos com o rodrigo a mais de 1 mes e chamados que dependem dessa rotina ok
Responder

Gostei + 0

01/11/2009

Wesley Yamazack

OK Carlos, estou no aguardo....


Att,

Wesley Y
Responder

Gostei + 0

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

Aceitar