SHOWMODAL ZICADO NÃO ACHO SOLUÇÃO
Tenho um edit e coloco no evento onkeypress do edit o seguinte código ai ele chama o form que consta as informações em um dbgrid, quando eu dou 2 cliques em cima da linha do dbgrid para trazer as informações para o edit, ele me dá erro de access violation justamente nessa linha do codigo do evento onkeypress já tentei uma enxurrada de procedimentos mais nenhum com sucesso. Já estou ficando doido, não acho solução
If KEY = #47 THEN
FrmPesquisaCadCidades := TFrmPesquisaCadCidades.Create(Application);
try
FrmPesquisaCadCidades.ShowModal;
finally
FrmPesquisaCadCidades.Free;
end;
If KEY = #47 THEN
Key:=#0;
end;
FrmPesquisaCadCidades.ShowModal;
Bruno Henrique
Curtidas 0
Respostas
Bruno Henrique
27/08/2015
Alguém???
GOSTEI 0
Bruno Henrique
27/08/2015
Sem solução ainda!!! Por favor alguém ajuda???
GOSTEI 0
Bruno Henrique
27/08/2015
Ajuda?
GOSTEI 0
Raimundo Pereira
27/08/2015
Bom dia, Bruno, retire o FrmPesquisaCadCidades do Form auto creat:
If KEY = #47 THEN
Application.CreateForm(tFrmPesquisaCadCidades,FrmPesquisaCadCidades);
try
FrmPesquisaCadCidades.ShowModal;
FrmPesquisaCadCidades.Destroy;
finally
FrmPesquisaCadCidades.Free;
end;
If KEY = #47 THEN
Key:=#0;
end;
Aguardo seu retorno .
If KEY = #47 THEN
Application.CreateForm(tFrmPesquisaCadCidades,FrmPesquisaCadCidades);
try
FrmPesquisaCadCidades.ShowModal;
FrmPesquisaCadCidades.Destroy;
finally
FrmPesquisaCadCidades.Free;
end;
If KEY = #47 THEN
Key:=#0;
end;
Aguardo seu retorno .
GOSTEI 0
Bruno Henrique
27/08/2015
P2, bom dia!!!
Continua com o mesmo erro!!! Agora mostra no .destroy se eu tiro mostra no .showmodal; O que pode fazer?
Continua com o mesmo erro!!! Agora mostra no .destroy se eu tiro mostra no .showmodal; O que pode fazer?
GOSTEI 0
Raimundo Pereira
27/08/2015
No form que você chama o FrmPesquisaCadCidade
Declare
Uses upesquisacadcidade;
No form FrmPesquisaCadCidade
Declare
Uses Seu form Pai
EXEMPLO
Form1_Vendas
Form2_FrmPesquisaCadCidade
---------------------------------------------------------
No Form1_Vendas
declare
Uses UPesquisaCadCidade
----------------------------------------------------------
---------------------------------------------------------
Form2_FrmPesquisaCadCidade
declare
Uses UVendas;
----------------------------------------------------------
Chamando o FORM-FrmPesquisaCadCidades
if key= vk_f2 then
begin
Application.CreateForm(TFrmPesquisaCadCidades,FrmPesquisaCadCidades);
try
FrmPesquisaCadCidades.ShowModal;
FrmPesquisaCadCidades.Destroy;
finally
FrmPesquisaCadCidades.Free;
end;
end;
Funcionou normalmente. veja a img
[img]http://arquivo.devmedia.com.br/forum/imagem/437747-20150828-102910.jpg[/img]
Se não funcionar precisarei coloque seu código:
Declare
Uses upesquisacadcidade;
No form FrmPesquisaCadCidade
Declare
Uses Seu form Pai
EXEMPLO
Form1_Vendas
Form2_FrmPesquisaCadCidade
---------------------------------------------------------
No Form1_Vendas
declare
Uses UPesquisaCadCidade
----------------------------------------------------------
---------------------------------------------------------
Form2_FrmPesquisaCadCidade
declare
Uses UVendas;
----------------------------------------------------------
Chamando o FORM-FrmPesquisaCadCidades
if key= vk_f2 then
begin
Application.CreateForm(TFrmPesquisaCadCidades,FrmPesquisaCadCidades);
try
FrmPesquisaCadCidades.ShowModal;
FrmPesquisaCadCidades.Destroy;
finally
FrmPesquisaCadCidades.Free;
end;
end;
Funcionou normalmente. veja a img
[img]http://arquivo.devmedia.com.br/forum/imagem/437747-20150828-102910.jpg[/img]
Se não funcionar precisarei coloque seu código:
GOSTEI 0
Bruno Henrique
27/08/2015
P2 o erro dá quando eu clico em cima da linha do dbgrid dou 2 cliques para trazer para o form de clientes
Código do form FrmCadCidades -> aonde eu trago as informações do dbgrid
Código do FrmPesquisaCadCidade - é o form que contem as informações no Dbgrid
[img:descricao=Aonde dá o erro de Access Violation]http://arquivo.devmedia.com.br/forum/imagem/316964-20150828-105425.jpg[/img]
[img:descricao=Mensagem do Erro Ao Dar 2 Cliques em Cima da Linha do DbGrid Para Trazer Para O Form FrmCadClientes]http://arquivo.devmedia.com.br/forum/imagem/316964-20150828-105516.jpg[/img]
[img:descricao=Continuação do Erro]http://arquivo.devmedia.com.br/forum/imagem/316964-20150828-105552.jpg[/img]
[img:descricao=Continuação do Erro]http://arquivo.devmedia.com.br/forum/imagem/316964-20150828-105608.jpg[/img]
[img:descricao=Form Que eu Chamo o FrmPesquisaCadCidades]http://arquivo.devmedia.com.br/forum/imagem/316964-20150828-105737.jpg[/img]
Código do form FrmCadCidades -> aonde eu trago as informações do dbgrid
unit UCadClientes;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Mask, StdCtrls, DateUtils, MaskUtils, Buttons, ExtCtrls, DBXpress, DB, SqlExpr, FMTBcd,
Provider, DBClient;
type
TFrmCadClientes = class(TForm)
Label1: TLabel;
EdtCodigo: TEdit;
Label2: TLabel;
EdtSituacao: TEdit;
Label45: TLabel;
Label46: TLabel;
Label47: TLabel;
Label48: TLabel;
Label49: TLabel;
Label50: TLabel;
Label51: TLabel;
Label52: TLabel;
Label3: TLabel;
MskDataCadastro: TMaskEdit;
Label4: TLabel;
MskUltimaAlteracao: TMaskEdit;
Label5: TLabel;
EdtOperadorCodigo: TEdit;
EdtOperadorNome: TEdit;
Label6: TLabel;
EdtNomeRazao: TEdit;
Label7: TLabel;
EdtFantasiaApelido: TEdit;
Label8: TLabel;
EdtCidadeCodigo: TEdit;
EdtCidadeNome: TEdit;
Label9: TLabel;
EdtEstado: TEdit;
MskCep: TMaskEdit;
Label10: TLabel;
Label11: TLabel;
EdtEndereco: TEdit;
Label12: TLabel;
EdtNumero: TEdit;
Label13: TLabel;
EdtBairroCodigo: TEdit;
EdtBairroNome: TEdit;
Label14: TLabel;
EdtComplemento: TEdit;
Label15: TLabel;
EdtRg: TEdit;
Label16: TLabel;
EdtCnpjCpfCodigo: TEdit;
Label19: TLabel;
Label17: TLabel;
EdtInscricaoEstadual: TEdit;
Label18: TLabel;
EdtInscricaoMunicipalProdutor: TEdit;
Label20: TLabel;
MskTelefone1: TMaskEdit;
Label21: TLabel;
MskTelefone2: TMaskEdit;
Label22: TLabel;
Label23: TLabel;
EdtEmail: TEdit;
Label24: TLabel;
EdtContato: TEdit;
MskCelular: TMaskEdit;
Panel1: TPanel;
BtnIncluir: TButton;
BtnGravar: TButton;
BtnAlterar: TButton;
BtnCancelar: TButton;
BtnPesquisar: TButton;
BtnSair: TButton;
SqlDtSCadClientes: TSQLDataSet;
MskDataNascimento: TMaskEdit;
MemoObservacoes: TMemo;
Label25: TLabel;
MskCnpjCpf: TMaskEdit;
DspCadClientes: TDataSetProvider;
CdsCadClientes: TClientDataSet;
DsCadClientes: TDataSource;
BtnExcluir: TButton;
QueryCadClientes: TSQLQuery;
procedure BtnSairClick(Sender: TObject);
procedure MskDataCadastroExit(Sender: TObject);
procedure MskUltimaAlteracaoExit(Sender: TObject);
procedure MskDataNascimentoExit(Sender: TObject);
procedure EdtCnpjCpfCodigoExit(Sender: TObject);
procedure EdtCnpjCpfCodigoKeyPress(Sender: TObject; var Key: Char);
procedure BtnIncluirClick(Sender: TObject);
procedure MemoObservacoesKeyPress(Sender: TObject; var Key: Char);
procedure BtnPesquisarClick(Sender: TObject);
procedure LimpaCampos;
procedure DesabilitarEdit;
procedure DesabilitarMascara;
procedure DesabilitarMemo;
procedure HabilitarEdit;
procedure HabilitarMascara;
procedure HabilitarMemo;
procedure BtnCancelarClick(Sender: TObject);
procedure BtnAlterarClick(Sender: TObject);
procedure BtnExcluirClick(Sender: TObject);
procedure BtnGravarClick(Sender: TObject);
procedure EdtBairroCodigoKeyPress(Sender: TObject; var Key: Char);
procedure EdtBairroCodigoExit(Sender: TObject);
procedure EdtCidadeCodigoExit(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure EdtCidadeCodigoKeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FrmCadClientes: TFrmCadClientes;
Transacao: TTransactionDesc;
f_operacao : char;
pesquisar: Boolean;
status: String;
implementation
uses UPrincipal, UPesquisaCadClientes, UPesquisaCadLoteamentos,
UPesquisaCadCidades, UCadCidades;
{$R *.dfm}
//Limpa todos os EDITS do form
procedure TFrmCadClientes.LimpaCampos;
var i:Integer;
begin
for i:=0 To (ComponentCount - 1) do
If Components[i] Is TCustomEdit Then (Components[i] As TCustomEdit).Clear;
end;
//Desabilita todos os EDITS do form
procedure TFrmCadClientes.DesabilitarEdit;
var cont:integer;
begin
for cont := 0 To ComponentCount -1 do
begin
If Components[cont] Is TEdit Then
TEdit(Components[Cont]).Enabled :=False;
end;
end;
//Desabilita todos as MASCARAS do form
procedure TFrmCadClientes.DesabilitarMascara;
var cont:integer;
begin
for cont := 0 To ComponentCount -1 Do
begin
If Components[cont] Is TMaskEdit Then
TMaskEdit(Components[Cont]).Enabled :=False;
end;
end;
//Desabilita todos os MEMOS do form
procedure TFrmCadClientes.DesabilitarMemo;
var cont:integer;
begin
for cont := 0 To ComponentCount -1 Do
begin
If Components[cont] Is TMemo Then
TMemo(Components[Cont]).Enabled :=False;
end;
end;
//HABILITA todos os EDITS do form
procedure TFrmCadClientes.HabilitarEdit;
var cont:integer;
begin
for cont := 0 To ComponentCount -1 Do
begin
If Components[cont] Is TEdit Then
TEdit(Components[Cont]).Enabled :=True;
end;
end;
//HABILITA todos as MASCARAS do form
procedure TFrmCadClientes.HabilitarMascara;
var cont:integer;
begin
for cont := 0 To ComponentCount -1 Do
begin
If Components[cont] Is TMaskEdit Then
TMaskEdit(Components[Cont]).Enabled :=True;
end;
end;
//HABILITA todos os MEMOS do form
procedure TFrmCadClientes.HabilitarMemo;
var cont:integer;
begin
for cont := 0 To ComponentCount -1 Do
begin
If Components[cont] Is TMemo Then
TMemo(Components[Cont]).Enabled :=True;
end;
end;
procedure TFrmCadClientes.BtnSairClick(Sender: TObject);
begin
Close;
end;
procedure TFrmCadClientes.MskDataCadastroExit(Sender: TObject);
begin
MskDataCadastro.Text := FormatMaskText('99/99/9999;1',MskDataCadastro.text);
end;
procedure TFrmCadClientes.MskUltimaAlteracaoExit(Sender: TObject);
begin
MskUltimaAlteracao.Text := FormatMaskText('99/99/9999;1',MskUltimaAlteracao.text);
end;
procedure TFrmCadClientes.MskDataNascimentoExit(Sender: TObject);
VAR data : TDate;
begin
if BtnCancelar.focused then
exit;
try
data := StrToDate(MskDataNascimento.Text);
except
begin
MessageDlg('Data Incorreta.Verifique!!!',mtInformation,[mbOk],0);
MskDataNascimento.SelectAll;
MskDataNascimento.SetFocus;
Abort;
end;
end;
if StrToDate(MskDataNascimento.Text) > now then
begin
MessageDlg('Data Inserida Maior Que a Data Atual.Verifique!!!',mtInformation,[mbOk],0);
MskDataNascimento.SetFocus ;
end;
MskDataNascimento.Text := FormatMaskText('99/99/9999;1',MskDataNascimento.text);
end;
procedure TFrmCadClientes.EdtCnpjCpfCodigoExit(Sender: TObject);
begin
if EdtCnpjCpfCodigo.text = '1' then
MskCnpjCpf.EditMask:= '000.000.000\-99;1;_'
else
if EdtCnpjCpfCodigo.Text = '2' then
MskCnpjCpf.EditMask:= '000\.000\.000/0000\-99;1;_';
end;
procedure TFrmCadClientes.EdtCnpjCpfCodigoKeyPress(Sender: TObject;
var Key: Char);
begin
if EdtCnpjCpfCodigo.text = '1' then
MskCnpjCpf.EditMask:= '000.000.000\-99;1;_'
else
if EdtCnpjCpfCodigo.Text = '2' then
MskCnpjCpf.EditMask:= '00\.000\.000/0000\-99;1;_';
end;
procedure TFrmCadClientes.BtnIncluirClick(Sender: TObject);
begin
status:= 'N';
//Habilita os EDITS, MASCARA, MEMOS ao clicar no botão INCLUIR
HabilitarEdit;
HabilitarMascara;
HabilitarMemo;
//Coloca o foco no EDITS
EdtSituacao.SetFocus;
//Coloca automaticamente as datas atual no form
MskDataCadastro.Text := DateToStr(Date);
MskUltimaAlteracao.Text := DateToStr(Date);
//Habilita os BOTOES ao clicar no botão INCLUIR
BtnIncluir.Enabled := false;
BtnGravar.Enabled := true;
BtnCancelar.Enabled := true;
BtnPesquisar.Enabled := false;
BtnSair.Enabled := false;
//Incrementa automaticamente o EDIT do codigo
with SqlDtSCadClientes do
begin
SqlDtSCadClientes.Close;
SqlDtSCadClientes.CommandText := 'SELECT MAX(CODIGO)+1 AS COD FROM CADCLIENTES';
SqlDtSCadClientes.Open;
EdtCodigo.Text := IntToStr(SqlDtSCadClientes.FieldByName('COD').AsInteger);
end;
end;
procedure TFrmCadClientes.MemoObservacoesKeyPress(Sender: TObject;
var Key: Char);
begin
inherited;
Key := AnsiUpperCase(Key)[Length(Key)];
end;
procedure TFrmCadClientes.BtnPesquisarClick(Sender: TObject);
begin
FrmPesquisaCadClientes := TFrmPesquisaCadClientes.Create(Application);
FrmPesquisaCadClientes.ShowModal;
BtnExcluir.Enabled:=true;
BtnGravar.Enabled:=false;
if pesquisar then
BtnAlterar.Enabled:=true
else
BtnAlterar.Enabled:=false;
end;
procedure TFrmCadClientes.BtnCancelarClick(Sender: TObject);
begin
//Desabilita todos os EDITS, MASCARAS, MEMOS ao clicar no botão cancelar
DesabilitarEdit;
DesabilitarMascara;
DesabilitarMemo;
//Desabilita todos os BOTOES ao clicar no botão cancelar
BtnIncluir.Enabled := true;
BtnPesquisar.Enabled := true;
BtnGravar.Enabled := false;
BtnCancelar.Enabled := false;
BtnSair.Enabled := true;
LimpaCampos;
end;
procedure TFrmCadClientes.BtnAlterarClick(Sender: TObject);
begin
status:= 'E';
//Pega data atual para colocar na alteração
MskUltimaAlteracao.Text := DateToStr(Date);
//Habilita todos os EDITS do form na no clic do botao alterar
HabilitarEdit;
HabilitarMascara;
HabilitarMemo;
//Habilita todos os BOTOES do form na no clic do botao alterar
BtnAlterar.Enabled := False;
BtnIncluir.Enabled := False;
BtnPesquisar.Enabled := False;
BtnCancelar.Enabled := True;
BtnExcluir.Enabled := False;
BtnGravar.Enabled := True;
BtnSair.Enabled := False;
//Coloca o foco na EDIT principal
EdtSituacao.SetFocus;
end;
procedure TFrmCadClientes.BtnExcluirClick(Sender: TObject);
begin
try
Transacao.TransactionID := 1;
Transacao.IsolationLevel := xilREPEATABLEREAD;
FrmPrincipal.ConexaoBd.StartTransaction(Transacao);
SqlDtSCadClientes.Close;
SqlDtSCadClientes.CommandType := ctQuery;
SqlDtSCadClientes.CommandText := 'delete from CADCLIENTES where CODIGO =:CODIGO';
SqlDtSCadClientes.ParamByName('CODIGO').AsInteger := StrToInt(EdtCodigo.Text);
SqlDtSCadClientes.ExecSQL;
FrmPrincipal.ConexaoBd.Commit(Transacao);
CdsCadClientes.Close;
CdsCadClientes.Open;
except
on Exc:Exception do
begin
ShowMessage('Ocorreu um erro na tentativa de exclusão do registro: ' + Exc.Message);
FrmPrincipal.ConexaoBd.Rollback(Transacao);
end;
end;
LimpaCampos;
BtnExcluir.Enabled := False;
end;
procedure TFrmCadClientes.BtnGravarClick(Sender: TObject);
begin
if status = 'N' then
begin
try
Transacao.TransactionID := 1;
Transacao.IsolationLevel := xilREPEATABLEREAD;
FrmPrincipal.ConexaoBd.StartTransaction(Transacao);
SqlDtSCadClientes.Close;
SqlDtSCadClientes.CommandType := ctQuery;
SqlDtSCadClientes.CommandText:='insert into CADCLIENTES(CODIGO, SITUACAO, DATACADASTRO, ULTIMAALTERACAO, ';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+'OPERADORCODIGO, OPERADORNOME, NOMERAZAO, FANTASIAAPELIDO, ';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+'CIDADECODIGO, CIDADENOME, ESTADO, CEP, ENDERECO, NUMERO, ';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+'BAIRROCODIGO, BAIRRONOME, COMPLEMENTO, RG, CNPJCPFCODIGO, CNPJCPF, ';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+'DATANASCIMENTO, INSCRICAOESTADUAL, INSCRICAOMUNICIPALPRODUTOR, ';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+'EMAIL, CONTATO, TELEFONE1, TELEFONE2, CELULAR, OBSERVACOES)';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+'values(:CODIGO, :SITUACAO, ';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+':DATACADASTRO, :ULTIMAALTERACAO, :OPERADORCODIGO, :OPERADORNOME, ';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+':NOMERAZAO, :FANTASIAAPELIDO, :CIDADECODIGO, :CIDADENOME, :ESTADO, :CEP, ';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+':ENDERECO, :NUMERO, :BAIRROCODIGO, :BAIRRONOME, :COMPLEMENTO, :RG, :CNPJCPFCODIGO, ';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+':CNPJCPF, :DATANASCIMENTO, :INSCRICAOESTADUAL, :INSCRICAOMUNICIPALPRODUTOR, ';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+':EMAIL, :CONTATO, :TELEFONE1, :TELEFONE2, :CELULAR, :OBSERVACOES)';
SqlDtSCadClientes.ParamByName('CODIGO').AsInteger := StrToInt(EdtCodigo.Text);
SqlDtSCadClientes.ParamByName('SITUACAO').AsString := EdtSituacao.Text;
SqlDtSCadClientes.ParamByName('DATACADASTRO').AsDate := StrToDate(MskDataCadastro.Text);
SqlDtSCadClientes.ParamByName('ULTIMAALTERACAO').AsDate:= StrToDate(MskUltimaAlteracao.Text);
SqlDtSCadClientes.ParamByName('OPERADORCODIGO').AsInteger := StrToInt(EdtOperadorCodigo.Text);
SqlDtSCadClientes.ParamByName('OPERADORNOME').AsString := EdtOperadorNome.Text;
SqlDtSCadClientes.ParamByName('NOMERAZAO').AsString := EdtNomeRazao.Text;
SqlDtSCadClientes.ParamByName('FANTASIAAPELIDO').AsString := EdtFantasiaApelido.Text;
SqlDtSCadClientes.ParamByName('CIDADECODIGO').AsInteger := StrToInt(EdtCidadeCodigo.Text);
SqlDtSCadClientes.ParamByName('CIDADENOME').AsString := EdtCidadeNome.Text;
SqlDtSCadClientes.ParamByName('ESTADO').AsString := EdtEstado.Text;
SqlDtSCadClientes.ParamByName('CEP').AsString := MskCep.Text;
SqlDtSCadClientes.ParamByName('ENDERECO').AsString := EdtEndereco.Text;
SqlDtSCadClientes.ParamByName('NUMERO').AsString := EdtNumero.Text;
SqlDtSCadClientes.ParamByName('BAIRROCODIGO').AsInteger := StrToInt(EdtBairroCodigo.Text);
SqlDtSCadClientes.ParamByName('BAIRRONOME').AsString := EdtBairroNome.Text;
SqlDtSCadClientes.ParamByName('COMPLEMENTO').AsString := EdtComplemento.Text;
SqlDtSCadClientes.ParamByName('RG').AsString := EdtRg.Text;
SqlDtSCadClientes.ParamByName('CNPJCPFCODIGO').AsInteger := StrToInt(EdtCnpjCpfCodigo.Text);
SqlDtSCadClientes.ParamByName('CNPJCPF').AsString := MskCnpjCpf.Text;
SqlDtSCadClientes.ParamByName('DATANASCIMENTO').AsDate := StrToDate(MskDataNascimento.Text);
SqlDtSCadClientes.ParamByName('INSCRICAOESTADUAL').AsString := EdtInscricaoEstadual.Text;
SqlDtSCadClientes.ParamByName('INSCRICAOMUNICIPALPRODUTOR').AsString := EdtInscricaoMunicipalProdutor.Text;
SqlDtSCadClientes.ParamByName('EMAIL').AsString := EdtEmail.Text;
SqlDtSCadClientes.ParamByName('CONTATO').AsString := EdtContato.Text;
SqlDtSCadClientes.ParamByName('TELEFONE1').AsString := MskTelefone1.Text;
SqlDtSCadClientes.ParamByName('TELEFONE2').AsString := MskTelefone2.Text;
SqlDtSCadClientes.ParamByName('CELULAR').AsString := MskCelular.Text;
SqlDtSCadClientes.ParamByName('OBSERVACOES').AsMemo := MemoObservacoes.Lines.Text;
SqlDtSCadClientes.ExecSQL;
FrmPrincipal.ConexaoBd.Commit(Transacao);
CdsCadClientes.Close;
CdsCadClientes.Open;
except
on E : Exception do
begin
ShowMessage('Ocorreu um erro na tentativa de inclusão do registro: ' + E.Message);
FrmPrincipal.ConexaoBd.Rollback(Transacao);
end;
end;
//Desabilita os EDITS, MASCARAS, MEMOS E LIMPA todos os EDITS após a gravacao
DesabilitarEdit;
DesabilitarMascara;
DesabilitarMemo;
LimpaCampos;
//Desabilita dos os botoes do form
BtnPesquisar.Enabled := true;
BtnIncluir.Enabled := true;
BtnSair.Enabled := true;
BtnAlterar.Enabled:=false;
BtnGravar.Enabled:=false;
BtnCancelar.Enabled:=false;
end;
if status = 'E' then
begin
try
Transacao.TransactionID := 1;
Transacao.IsolationLevel := xilREPEATABLEREAD;
FrmPrincipal.ConexaoBd.StartTransaction(Transacao);
SqlDtSCadClientes.Close;
SqlDtSCadClientes.CommandType := ctQuery;
SqlDtSCadClientes.CommandText:='UPDATE CADCLIENTES SET ';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+'CODIGO=:CODIGO, SITUACAO=:SITUACAO, DATACADASTRO=:DATACADASTRO, ULTIMAALTERACAO=:ULTIMAALTERACAO, ';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+'OPERADORCODIGO=:OPERADORCODIGO, OPERADORNOME=:OPERADORNOME, NOMERAZAO=:NOMERAZAO, FANTASIAAPELIDO=:FANTASIAAPELIDO, ';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+'CIDADECODIGO=:CIDADECODIGO, CIDADENOME=:CIDADENOME, ESTADO=:ESTADO, CEP=:CEP, ENDERECO=:ENDERECO, NUMERO=:NUMERO, ';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+'BAIRROCODIGO=:BAIRROCODIGO, BAIRRONOME=:BAIRRONOME, COMPLEMENTO=:COMPLEMENTO, RG=:RG, CNPJCPFCODIGO=:CNPJCPFCODIGO, CNPJCPF=:CNPJCPF, ';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+'DATANASCIMENTO=:DATANASCIMENTO, INSCRICAOESTADUAL=:INSCRICAOESTADUAL, INSCRICAOMUNICIPALPRODUTOR=:INSCRICAOMUNICIPALPRODUTOR, ';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+'EMAIL=:EMAIL, CONTATO=:CONTATO, TELEFONE1=:TELEFONE1, TELEFONE2=:TELEFONE2, CELULAR=:CELULAR, OBSERVACOES=:OBSERVACOES ';
SqlDtSCadClientes.CommandText:=SqlDtSCadClientes.CommandText+'Where CODIGO=:CODIGO';
SqlDtSCadClientes.ParamByName('CODIGO').AsInteger := StrToInt(EdtCodigo.Text);
SqlDtSCadClientes.ParamByName('SITUACAO').AsString := EdtSituacao.Text;
SqlDtSCadClientes.ParamByName('DATACADASTRO').AsDate := StrToDate(MskDataCadastro.Text);
SqlDtSCadClientes.ParamByName('ULTIMAALTERACAO').AsDate:= StrToDate(MskUltimaAlteracao.Text);
SqlDtSCadClientes.ParamByName('OPERADORCODIGO').AsInteger := StrToInt(EdtOperadorCodigo.Text);
SqlDtSCadClientes.ParamByName('OPERADORNOME').AsString := EdtOperadorNome.Text;
SqlDtSCadClientes.ParamByName('NOMERAZAO').AsString := EdtNomeRazao.Text;
SqlDtSCadClientes.ParamByName('FANTASIAAPELIDO').AsString := EdtFantasiaApelido.Text;
SqlDtSCadClientes.ParamByName('CIDADECODIGO').AsInteger := StrToInt(EdtCidadeCodigo.Text);
SqlDtSCadClientes.ParamByName('CIDADENOME').AsString := EdtCidadeNome.Text;
SqlDtSCadClientes.ParamByName('ESTADO').AsString := EdtEstado.Text;
SqlDtSCadClientes.ParamByName('CEP').AsString := MskCep.Text;
SqlDtSCadClientes.ParamByName('ENDERECO').AsString := EdtEndereco.Text;
SqlDtSCadClientes.ParamByName('NUMERO').AsString := EdtNumero.Text;
SqlDtSCadClientes.ParamByName('BAIRROCODIGO').AsInteger := StrToInt(EdtBairroCodigo.Text);
SqlDtSCadClientes.ParamByName('BAIRRONOME').AsString := EdtBairroNome.Text;
SqlDtSCadClientes.ParamByName('COMPLEMENTO').AsString := EdtComplemento.Text;
SqlDtSCadClientes.ParamByName('RG').AsString := EdtRg.Text;
SqlDtSCadClientes.ParamByName('CNPJCPFCODIGO').AsInteger := StrToInt(EdtCnpjCpfCodigo.Text);
SqlDtSCadClientes.ParamByName('CNPJCPF').AsString := MskCnpjCpf.Text;
SqlDtSCadClientes.ParamByName('DATANASCIMENTO').AsDate := StrToDate(MskDataNascimento.Text);
SqlDtSCadClientes.ParamByName('INSCRICAOESTADUAL').AsString := EdtInscricaoEstadual.Text;
SqlDtSCadClientes.ParamByName('INSCRICAOMUNICIPALPRODUTOR').AsString := EdtInscricaoMunicipalProdutor.Text;
SqlDtSCadClientes.ParamByName('EMAIL').AsString := EdtEmail.Text;
SqlDtSCadClientes.ParamByName('CONTATO').AsString := EdtContato.Text;
SqlDtSCadClientes.ParamByName('TELEFONE1').AsString := MskTelefone1.Text;
SqlDtSCadClientes.ParamByName('TELEFONE2').AsString := MskTelefone2.Text;
SqlDtSCadClientes.ParamByName('CELULAR').AsString := MskCelular.Text;
SqlDtSCadClientes.ParamByName('OBSERVACOES').AsMemo := MemoObservacoes.Lines.Text;
SqlDtSCadClientes.ExecSQL;
FrmPrincipal.ConexaoBd.Commit(Transacao);
CdsCadClientes.Close;
CdsCadClientes.Open;
except
on E : Exception do
begin
ShowMessage('Ocorreu um erro na tentativa de inclusão do registro: ' + E.Message);
FrmPrincipal.ConexaoBd.Rollback(Transacao);
end;
end;
//Desabilita os EDITS, MASCARAS, MEMOS E LIMPA todos os EDITS após a gravacao
DesabilitarEdit;
DesabilitarMascara;
DesabilitarMemo;
LimpaCampos;
//Desabilita dos os botoes do form
BtnPesquisar.Enabled := true;
BtnIncluir.Enabled := true;
BtnSair.Enabled := true;
BtnAlterar.Enabled:=false;
BtnGravar.Enabled:=false;
BtnCancelar.Enabled:=false;
end;
end;
procedure TFrmCadClientes.EdtBairroCodigoKeyPress(Sender: TObject;
var Key: Char);
begin
If KEY = #47 THEN
FrmPesquisaCadLoteamentos := TFrmPesquisaCadLoteamentos.Create(Application);
FrmPesquisaCadLoteamentos.ShowModal;
If KEY = #47 THEN
Key:=#0;
end;
procedure TFrmCadClientes.EdtBairroCodigoExit(Sender: TObject);
begin
//PESQUISA Cidades
if EdtBairroCodigo.Text<>'' then
begin
QueryCadClientes.Close;
QueryCadClientes.SQL.Clear;
if length(trim(EdtBairroCodigo.Text))<=9
Then QueryCadClientes.SQL.Add('SELECT * FROM CadLOTEAMENTOS WHERE CODIGOLOTEAMENTO=:CODIGOLOTEAMENTO');
QueryCadClientes.Params.ParamByName('CODIGOLOTEAMENTO').Value:=EdtBairroCodigo.Text;
QueryCadClientes.Open;
if not QueryCadClientes.IsEmpty then
begin
EdtBairroCodigo.Text:=QueryCadClientes.FieldByName('CODIGOLOTEAMENTO').AsString;
EdtBairroNome.Text:=QueryCadClientes.FieldByName('LOTEAMENTONOME').AsString;
end
else
begin
MessageDlg('Cidade Não Localizada.Verifique!!!',mtInformation,[mbOk],0);
EdtBairroCodigo.SetFocus;
end;
end;
end;
procedure TFrmCadClientes.EdtCidadeCodigoExit(Sender: TObject);
begin
//PESQUISA Cidades
if EdtCidadeCodigo.Text<>'' then
begin
QueryCadClientes.Close;
QueryCadClientes.SQL.Clear;
if length(trim(EdtCidadeCodigo.Text))<=9 Then
QueryCadClientes.SQL.Add('SELECT * FROM CADCIDADES WHERE CODIGOCIDADE=:CODIGOCIDADE');
QueryCadClientes.Params.ParamByName('CODIGOCIDADE').Value:=EdtCidadeCodigo.Text;
QueryCadClientes.Open;
if not QueryCadClientes.IsEmpty then
begin
EdtCidadeCodigo.Text:=QueryCadClientes.FieldByName('CODIGOCIDADE').AsString;
EdtCidadeNome.Text:=QueryCadClientes.FieldByName('NOMECIDADE').AsString;
EdtEstado.Text:=QueryCadClientes.FieldByName('ESTADOCIDADE').AsString;
MskCep.Text:=QueryCadClientes.FieldByName('CEPCIDADE').AsString;
end
else
begin
MessageDlg('Cidade Não Localizada.Verifique!!!',mtInformation,[mbOk],0);
EdtBairroCodigo.SetFocus;
end;
end;
end;
procedure TFrmCadClientes.FormCreate(Sender: TObject);
begin
//Desabilitas os EDITS, MASCARAS, MEMOS do form na hora do show
DesabilitarEdit;
DesabilitarMascara;
DesabilitarMemo;
//Desabilitas os os BOTOES do form na hora do show
BtnGravar.Enabled := false;
BtnAlterar.Enabled := false;
BtnExcluir.Enabled := false;
BtnCancelar.Enabled := false;
end;
procedure TFrmCadClientes.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
FrmCadClientes:= nil;
end;
procedure TFrmCadClientes.EdtCidadeCodigoKeyPress(Sender: TObject;
var Key: Char);
begin
If KEY = #47 THEN
Application.CreateForm(TFrmPesquisaCadCidades,FrmPesquisaCadCidades);
try
FrmPesquisaCadCidades.ShowModal;
FrmPesquisaCadCidades.Destroy;
finally
FrmPesquisaCadCidades.Free;
end;
If KEY = #47 THEN
Key:=#0;
end;
end.Código do FrmPesquisaCadCidade - é o form que contem as informações no Dbgrid
unit UPesquisaCadCidades;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, ExtCtrls, StdCtrls, FMTBcd, DB, DBClient,
Provider, SqlExpr;
type
TFrmPesquisaCadCidades = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
DbgPesquisaCadCidade: TDBGrid;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
EdtPesquisaCodigoCidade: TEdit;
EdtPesquisaNomeCidade: TEdit;
Label4: TLabel;
EdtPesquisaEstadoCidade: TEdit;
EdtPesquisaCepCidade: TEdit;
Label5: TLabel;
SQLDataSet1: TSQLDataSet;
DataSetProvider1: TDataSetProvider;
ClientDataSet1: TClientDataSet;
DataSource1: TDataSource;
SQLQuery1: TSQLQuery;
procedure DbgPesquisaCadCidadeDblClick(Sender: TObject);
procedure DbgPesquisaCadCidadeKeyPress(Sender: TObject; var Key: Char);
procedure EdtPesquisaCodigoCidadeChange(Sender: TObject);
procedure EdtPesquisaNomeCidadeChange(Sender: TObject);
procedure EdtPesquisaEstadoCidadeChange(Sender: TObject);
procedure EdtPesquisaCepCidadeChange(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FrmPesquisaCadCidades: TFrmPesquisaCadCidades;
implementation
uses UCadCidades, UCadClientes, UCadLoteamentos;
{$R *.dfm}
procedure TFrmPesquisaCadCidades.DbgPesquisaCadCidadeDblClick(
Sender: TObject);
begin
pesquisarcidade:=true;
FrmCadCidades.DesabilitarEdit;
FrmCadCidades.EdtCodigoCidade.Text:=DbgPesquisaCadCidade.Columns[0].Field.AsString;
FrmCadCidades.EdtNomeCidade.Text:=DbgPesquisaCadCidade.Columns[1].Field.AsString;
FrmCadCidades.EdtEstadoCidade.Text:=DbgPesquisaCadCidade.Columns[2].Field.AsString;
FrmCadCidades.EdtSiglaUfCidade.Text:=DbgPesquisaCadCidade.Columns[3].Field.AsString;
FrmCadCidades.EdtCodigoEstadoCidade.Text:=DbgPesquisaCadCidade.Columns[4].Field.AsString;
FrmCadCidades.MskCepCidade.Text:=DbgPesquisaCadCidade.Columns[5].Field.AsString;
FrmCadCidades.EdtCodigoIbgeCidade.Text:=DbgPesquisaCadCidade.Columns[6].Field.AsString;
//LEVA ESSAS INFORMAÇÕES PARA O FRMCADCLIENTES AONDE INFORMA NO EDIT DA CIDADE
FrmCadClientes.EdtCidadeCodigo.Text:=DbgPesquisaCadCidade.Columns[0].Field.AsString;
FrmCadClientes.EdtCidadeNome.Text:=DbgPesquisaCadCidade.Columns[1].Field.AsString;
FrmCadClientes.EdtEstado.Text:=DbgPesquisaCadCidade.Columns[2].Field.AsString;
FrmCadClientes.MskCep.Text:=DbgPesquisaCadCidade.Columns[5].Field.AsString;
f_operacao:='A';
FrmPesquisaCadCidades.Close;
end;
procedure TFrmPesquisaCadCidades.DbgPesquisaCadCidadeKeyPress(
Sender: TObject; var Key: Char);
begin
pesquisarcidade:=true;
FrmCadCidades.DesabilitarEdit;
FrmCadCidades.EdtCodigoCidade.Text:=DbgPesquisaCadCidade.Columns[0].Field.AsString;
FrmCadCidades.EdtNomeCidade.Text:=DbgPesquisaCadCidade.Columns[1].Field.AsString;
FrmCadCidades.EdtEstadoCidade.Text:=DbgPesquisaCadCidade.Columns[2].Field.AsString;
FrmCadCidades.EdtSiglaUfCidade.Text:=DbgPesquisaCadCidade.Columns[3].Field.AsString;
FrmCadCidades.EdtCodigoEstadoCidade.Text:=DbgPesquisaCadCidade.Columns[4].Field.AsString;
FrmCadCidades.MskCepCidade.Text:=DbgPesquisaCadCidade.Columns[5].Field.AsString;
FrmCadCidades.EdtCodigoIbgeCidade.Text:=DbgPesquisaCadCidade.Columns[6].Field.AsString;
//LEVA ESSAS INFORMAÇÕES PARA O FRMCADCLIENTES AONDE INFORMA NO EDIT DA CIDADE
FrmCadClientes.EdtCidadeCodigo.Text:=DbgPesquisaCadCidade.Columns[0].Field.AsString;
FrmCadClientes.EdtCidadeNome.Text:=DbgPesquisaCadCidade.Columns[1].Field.AsString;
FrmCadClientes.EdtEstado.Text:=DbgPesquisaCadCidade.Columns[2].Field.AsString;
FrmCadClientes.MskCep.Text:=DbgPesquisaCadCidade.Columns[5].Field.AsString;
f_operacao:='A';
FrmPesquisaCadCidades.Close;
end;
procedure TFrmPesquisaCadCidades.EdtPesquisaCodigoCidadeChange(
Sender: TObject);
begin
with FrmCadCidades.CdsCadCidades do
begin
Close;
CommandText:='SELECT * FROM CADCIDADES WHERE CODIGOCIDADE LIKE'+ QuotedStr(EdtPesquisaCodigoCidade.Text+'%');
Open;
end;
end;
procedure TFrmPesquisaCadCidades.EdtPesquisaNomeCidadeChange(
Sender: TObject);
begin
with FrmCadCidades.CdsCadCidades do
begin
Close;
CommandText:='SELECT * FROM CADCIDADES WHERE NOMECIDADE LIKE'+ QuotedStr(EdtPesquisaNomeCidade.Text+'%');
Open;
end;
end;
procedure TFrmPesquisaCadCidades.EdtPesquisaEstadoCidadeChange(
Sender: TObject);
begin
with FrmCadCidades.CdsCadCidades do
begin
Close;
CommandText:='SELECT * FROM CADCIDADES WHERE ESTADOCIDADE LIKE'+ QuotedStr(EdtPesquisaEstadoCidade.Text+'%');
Open;
end;
end;
procedure TFrmPesquisaCadCidades.EdtPesquisaCepCidadeChange(
Sender: TObject);
begin
with FrmCadCidades.CdsCadCidades do
begin
Close;
CommandText:='SELECT * FROM CADCIDADES WHERE CEPCIDADE LIKE'+ QuotedStr(EdtPesquisaCepCidade.Text+'%');
Open;
end;
end;
procedure TFrmPesquisaCadCidades.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
//Action:=caFree;
//FrmPesquisaCadCidades:= nil;
//FrmPesquisaCadCidades.Release;
end;
end.
[img:descricao=Aonde dá o erro de Access Violation]http://arquivo.devmedia.com.br/forum/imagem/316964-20150828-105425.jpg[/img]
[img:descricao=Mensagem do Erro Ao Dar 2 Cliques em Cima da Linha do DbGrid Para Trazer Para O Form FrmCadClientes]http://arquivo.devmedia.com.br/forum/imagem/316964-20150828-105516.jpg[/img]
[img:descricao=Continuação do Erro]http://arquivo.devmedia.com.br/forum/imagem/316964-20150828-105552.jpg[/img]
[img:descricao=Continuação do Erro]http://arquivo.devmedia.com.br/forum/imagem/316964-20150828-105608.jpg[/img]
[img:descricao=Form Que eu Chamo o FrmPesquisaCadCidades]http://arquivo.devmedia.com.br/forum/imagem/316964-20150828-105737.jpg[/img]
GOSTEI 0
Raimundo Pereira
27/08/2015
Bruno,
Debug a aplicação e veja em qual linha está dando erro.
Use o F8 para ir debugando por linha
[img]http://arquivo.devmedia.com.br/forum/imagem/437747-20150828-114449.jpg[/img]
Debug a aplicação e veja em qual linha está dando erro.
Use o F8 para ir debugando por linha
[img]http://arquivo.devmedia.com.br/forum/imagem/437747-20150828-114449.jpg[/img]
GOSTEI 0
Bruno Henrique
27/08/2015
P2,
Debuguei aqui!!!
Está dando erro no ondbclick da dbgrid nessa parte do código
Debuguei aqui!!!
Está dando erro no ondbclick da dbgrid nessa parte do código
procedure TFrmPesquisaCadCidades.DbgPesquisaCadCidadeDblClick( Sender: TObject); begin pesquisarcidade:=true; FrmCadCidades.DesabilitarEdit; FrmCadCidades.EdtCodigoCidade.Text:=DbgPesquisaCadCidade.Columns[0].Field.AsString; FrmCadCidades.EdtNomeCidade.Text:=DbgPesquisaCadCidade.Columns[1].Field.AsString; FrmCadCidades.EdtEstadoCidade.Text:=DbgPesquisaCadCidade.Columns[2].Field.AsString; FrmCadCidades.EdtSiglaUfCidade.Text:=DbgPesquisaCadCidade.Columns[3].Field.AsString; FrmCadCidades.EdtCodigoEstadoCidade.Text:=DbgPesquisaCadCidade.Columns[4].Field.AsString; FrmCadCidades.MskCepCidade.Text:=DbgPesquisaCadCidade.Columns[5].Field.AsString; FrmCadCidades.EdtCodigoIbgeCidade.Text:=DbgPesquisaCadCidade.Columns[6].Field.AsString; //LEVA ESSAS INFORMAÇÕES PARA O FRMCADCLIENTES AONDE INFORMA NO EDIT DA CIDADE FrmCadClientes.EdtCidadeCodigo.Text:=DbgPesquisaCadCidade.Columns[0].Field.AsString; FrmCadClientes.EdtCidadeNome.Text:=DbgPesquisaCadCidade.Columns[1].Field.AsString; FrmCadClientes.EdtEstado.Text:=DbgPesquisaCadCidade.Columns[2].Field.AsString; FrmCadClientes.MskCep.Text:=DbgPesquisaCadCidade.Columns[5].Field.AsString;
GOSTEI 0
Raimundo Pereira
27/08/2015
Seu FrmCadClientes está no Auto Create, se não estiver coloque-o e debuge novamente
e veja Da linha 5 a 19 em qual dessas ocorrerá o erro .
No aguardo.
e veja Da linha 5 a 19 em qual dessas ocorrerá o erro .
No aguardo.
GOSTEI 0
Bruno Henrique
27/08/2015
P2 o erro começa na linha 6 se eu comento ela, e ai o erro vai para linha 7, se eu comento a 7 o erro vai para a linha 8 e assim por diante . O form não está no auto crente.
Acho que ele ñ esta achando os for ms já que ñ esta no auto create
Acho que ele ñ esta achando os for ms já que ñ esta no auto create
GOSTEI 0
Raimundo Pereira
27/08/2015
use o debuge e veja se vai dar erro e qual a linha
procedure TFrmPesquisaCadCidades.DbgPesquisaCadCidadeDblClick(
Sender: TObject);
begin
Application.CreateForm(TFrmPesquisaCadCidades,FrmPesquisaCadCidades);
pesquisarcidade:=true;
FrmCadCidades.DesabilitarEdit;
FrmCadCidades.EdtCodigoCidade.Text:=DbgPesquisaCadCidade.Columns[0].Field.AsString;
FrmCadCidades.EdtNomeCidade.Text:=DbgPesquisaCadCidade.Columns[1].Field.AsString;
FrmCadCidades.EdtEstadoCidade.Text:=DbgPesquisaCadCidade.Columns[2].Field.AsString;
FrmCadCidades.EdtSiglaUfCidade.Text:=DbgPesquisaCadCidade.Columns[3].Field.AsString;
FrmCadCidades.EdtCodigoEstadoCidade.Text:=DbgPesquisaCadCidade.Columns[4].Field.AsString;
FrmCadCidades.MskCepCidade.Text:=DbgPesquisaCadCidade.Columns[5].Field.AsString;
FrmCadCidades.EdtCodigoIbgeCidade.Text:=DbgPesquisaCadCidade.Columns[6].Field.AsString;
//LEVA ESSAS INFORMAÇÕES PARA O FRMCADCLIENTES AONDE INFORMA NO EDIT DA CIDADE
FrmCadClientes.EdtCidadeCodigo.Text:=DbgPesquisaCadCidade.Columns[0].Field.AsString;
FrmCadClientes.EdtCidadeNome.Text:=DbgPesquisaCadCidade.Columns[1].Field.AsString;
FrmCadClientes.EdtEstado.Text:=DbgPesquisaCadCidade.Columns[2].Field.AsString;
FrmCadClientes.MskCep.Text:=DbgPesquisaCadCidade.Columns[5].Field.AsString;
procedure TFrmPesquisaCadCidades.DbgPesquisaCadCidadeDblClick(
Sender: TObject);
begin
Application.CreateForm(TFrmPesquisaCadCidades,FrmPesquisaCadCidades);
pesquisarcidade:=true;
FrmCadCidades.DesabilitarEdit;
FrmCadCidades.EdtCodigoCidade.Text:=DbgPesquisaCadCidade.Columns[0].Field.AsString;
FrmCadCidades.EdtNomeCidade.Text:=DbgPesquisaCadCidade.Columns[1].Field.AsString;
FrmCadCidades.EdtEstadoCidade.Text:=DbgPesquisaCadCidade.Columns[2].Field.AsString;
FrmCadCidades.EdtSiglaUfCidade.Text:=DbgPesquisaCadCidade.Columns[3].Field.AsString;
FrmCadCidades.EdtCodigoEstadoCidade.Text:=DbgPesquisaCadCidade.Columns[4].Field.AsString;
FrmCadCidades.MskCepCidade.Text:=DbgPesquisaCadCidade.Columns[5].Field.AsString;
FrmCadCidades.EdtCodigoIbgeCidade.Text:=DbgPesquisaCadCidade.Columns[6].Field.AsString;
//LEVA ESSAS INFORMAÇÕES PARA O FRMCADCLIENTES AONDE INFORMA NO EDIT DA CIDADE
FrmCadClientes.EdtCidadeCodigo.Text:=DbgPesquisaCadCidade.Columns[0].Field.AsString;
FrmCadClientes.EdtCidadeNome.Text:=DbgPesquisaCadCidade.Columns[1].Field.AsString;
FrmCadClientes.EdtEstado.Text:=DbgPesquisaCadCidade.Columns[2].Field.AsString;
FrmCadClientes.MskCep.Text:=DbgPesquisaCadCidade.Columns[5].Field.AsString;
GOSTEI 0