CONTROLE DE OFICINA MECÂNICA 

Nesta terceira parte do Projeto, iremos efetivar a conexão as tabelas utilizando o componente Table, lembrando que todo o projeto em si, vem do conhecimento adquirido nas Video-Aulas e das Revistas Clube Delphi. Que apenas tento traduzir da melhor forma possível ao meu conhecimento.  Então vamos lá. Com o Datamodule Aberto, coloque 05Tables e altere sua propriedades :  

 

Propriedades

Evento

TTable (Clientes)

Name

TbClientes

 

Connection

Ado

 

TableName

Clientes

 

Active

true

 

 

 

Salve e  passe a propriedade Active  para True.

                De um duplo Clique no TbClientes para abrir o Field Editor e em seguida ctrl+F para anexarmos os dados da Tabela

 No mesmo Field Editor, configure a EditMask dos Itens(Telefone,CEP,Celular,Estado,etc.).

Salve, e faça o mesmo procedimento para a tabela Veiculos,Controle e MaoObra

Acrescente 4 Dataset(DataAccess) e conecte as ClientDataSet.

 Pronto está terminado a conexão ao Banco de dados,

O Data Module de Busca

Vamos agora criar um DataModule de Busca, para utilizarmos no projeto.

Acrescente um novo Data Module e em Name digite DMBusca e salve com o nome de UDMBusca.

Clique em file New- Unit, e selecione DM, o DataModule criado anteriormente para podermos utilizar a mesma conexão do Banco de Dados.  

Acrescente 01 TAdoDataSet, 01 TDataSetProvider, 3 TClientDataSet e configure suas propriedades conforme Tabela Abaixo.

 

Propriedades

Eventos

TAdoDataSet

Name

Connection

AdoBuscaGeral

DM >Ado

TDataSetProvider

Name

Dataset

Options (PoAllowCommandText)

DspBuscaGeral

AdoBuscaGeral

True

TClientDataSet

Name

CommandText

Params = String

CdsBuscaClientes

Select CodCliente,Nome from Clientes where (Nome) like :Clientes

 

Name

Params=String

 
 
Name
CommantText
 
Params=Integer

CdsBuscaVeiculos

Select CodVeiculo,Modelo from Veiculos where (Modelo) like :Veiculos

CdsCliente
Select * from Cliente Where CodCliente =:CodCliente

 Salve. E iremos criar nossa Biblioteca para ser utilizada no projeto. 

A Biblioteca

Clique em File New-Other-Unit 

E salve a Unit criada com o Nome de uBiblioteca

unit uBiblioteca;

interface

 

Uses DBClient;

type

TTypeLocalizar = (fsInteger, fsString);

//Criando as mensagens de retorno de cadastro

procedure filterCds(aCds:TClientDataSet; aType:TTypeLocalizar;aBusca:String);

const

  Msg_ok='Informação Cadastrada com Sucesso!';

                 Msg_Permissoes='Você não tem permissão para executar essa ação!';

  Msg_CampoObrigatorio='Este Campo é obrigatório, digite algo!';

implementation

Uses SysUtils;

//Criando o procedimento para localização

procedure filterCds(aCds:TClientDataSet; aType:TTypeLocalizar;aBusca:String);

begin

aCds.close;

Case aType of

  fsInteger:aCds.Params[0].AsInteger:= StrToInt(aBusca);

  fsString:aCds.Params[0].AsString:= Uppercase ('%'+abusca+'%');

 end;

 aCds.open;

end;

end.

Salve a Unit , e Vamos  desenvolver nossa tela de Pesquisa de Clientes

O Form Pesquisa Clientes

Clique em file New, Form

 
   

 Salve o Formulário  com o Nome UBuscaCliente, e em suas propriedades

Propriedades

Eventos

Caption

Localizar Clientes

Name

FormLocClientes

Position

poScreenCenter

 

*Conect o Form a Unit UdmBusca,  clicando em File New-Unit,

*Se não aparecer a Unit, clique em  Project e compile o Projeto, para atualizar o Formulário.

Como estamos trabalhando com base em Video-aulas , instale 01 componente LapComponentes (Veja tutorial de Instalação de Componentes)  que  a meu ver, é de uma simplicidade e funcionabilidade excelente, 01 TGroupBox,01Image,02 BitBtn e 02 Tdbedit, disponha conforme Figura abaixo.

Nas propriedades dos objetos configure:

 

Propriedades

Ação

TGroupBox(Standard)

Name

Caption

GrbDados

Localizar

BitBtn(Additional)

Name

Caption

btnLocalizar

Localizar

 

Name

Caption

BtnClose

Close

LocalizarEX

Name

DataSet

DescrColumm

Title

SqlCode

LocalizarBase

DMBusca>CdsBuscaClientes

Nome do Cliente

Busca Clientes

Select CodCliente,Nome from Clientes where CodCliente =:CodCLiente

 Na Guia Events,do comando LocalizarEX em AfterSearch, de um duplo clique  e digite a seguinte instrução  

procedure TFormLocClientes.LocalizarBaseAfterSearch(Sender: TObject;

AModalResult: Integer);

begin

   if aModalResult = mrOk then

  FilterCds(DMBusca.CdsClientes,fsInteger,IntToStr(localizarBase.ReturnValue));

end;

Retorne ao Formulario e no evento do Botão localizar e fechar  Digite: 

procedure TFormLocClientes.BtnLocalizarClick(Sender: TObject);

begin

LocalizarBase.Execute;

end;

procedure TFormLocClientes.btnSairClick(Sender: TObject);

begin

close;

end;

Abra o DMBusca  e no editor fields, BuscaClientes , arraste para o form o CodCliente e o Nome e configure a seu gosto o tamanho e o fundo. 

Salve, Compile  o programa , não esquecendo de colocar o form para ser iniciado em primeiro, clicando em Project-Options-Forms.

 
Execute o Programa F(9) clique em localizar e escolha  o Cliente em seguida clique em Ok.

 Pronto está pronto o Form de Busca por Clientes, O Form de Busca por Veículos fica por sua conta.

 

No próximo tutorial criaremos os Form de Cadastro de Clientes e Veículos .

Até lá

 

Cláudio Medeiros dos Santos/2008