pessoal o erro é o seguinte , inclusao
na hora de eu incluir os registro do form na tabela de banco de dados , ela a seguinte e mensangem:
o campo ID nao tem um valor inteiro ou nao tem valor algum , ja rodei , desrodeia , mas nao achei o erro , gostaria de ajuda , o codigo esta ai em baixo.
valeu
unit Cadastro;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, Grids, DBGrids, IBStoredProc, IBDatabase,
DB, IBCustomDataSet, IBQuery;
type
TForm1 = class(TForm)
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
lblCidade: TLabel;
lblTelRes: TLabel;
lblNome: TLabel;
lblendereco: TLabel;
lbltelcomercial: TLabel;
lblCEL: TLabel;
lblBairro: TLabel;
lblRG: TLabel;
lblCPF: TLabel;
lblDataNascimento: TLabel;
lblCEP: TLabel;
lbldata: TLabel;
edtNome: TEdit;
edtData_nasc: TEdit;
edtData: TEdit;
edtEndereco: TEdit;
edtTel_com: TEdit;
edtTel_Res: TEdit;
edtBairro: TEdit;
edtCidade: TEdit;
edttel_cel: TEdit;
edtRG: TEdit;
edtCPF: TEdit;
edtCep: TEdit;
Label13: TLabel;
GroupBox3: TGroupBox;
lblLocalizar: TLabel;
edtLocalizar: TEdit;
btnSalvar: TButton;
btnAlterar: TButton;
btnExcluir: TButton;
btnSair: TButton;
DBGrid1: TDBGrid;
lblCodigo: TLabel;
edtID: TEdit;
Label1: TLabel;
dsCLIENTES: TDataSource;
qryID: TIBQuery;
qryCLIENTES: TIBQuery;
dbCONN: TIBDatabase;
ibTRANS: TIBTransaction;
PRCINS_UPD_DEL_CONTATO: TIBStoredProc;
btnclear: TButton;
edtmemo: TEdit;
procedure btnSairClick(Sender: TObject);
procedure edtLocalizarChange(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure btnSalvarClick(Sender: TObject);
procedure btnAlterarClick(Sender: TObject);
procedure btnExcluirClick(Sender: TObject);
procedure btnclearClick(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
private
{ Private declarations }
function fCamposPreenchidos:Boolean;
function fGetNewId (ptab:string) :string;
procedure InsUpdDelContato(pID: integer; pNOME, pDATA_NASC, pDATA, pENDERECO,
pBAIRRO, pCIDADE, pTEL_RES, pTEL_COM, pTEL_CEL, pRG, pCPF, pCEP, pMEMO,
pOPERACAO: string);
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.btnSairClick(Sender: TObject);
begin
application.terminate;
end;
function TForm1.fCamposPreenchidos: Boolean;
begin
if ((trim(edtNome.Text) <> ´´) and
((trim(edttel_res.text) <> ´´) or
(trim(edtTel_cel.text) <> ´´))) then
Result :=true
else
Result := false;
end;
function TForm1.fGetNewId(ptab: string): string;
begin
with qryId do
begin
close;
params[0].Value :=pTab;
Open;
Result :=Fields[0].AsString;
end;
end;
procedure TForm1.edtLocalizarChange(Sender: TObject);
begin
with qryclientes do
begin
close;
params[0].Value := Trim(edtlocalizar.text);
open;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
edtLocalizarchange(Sender);
end;
procedure TForm1.InsUpdDelContato(pID: integer; pNOME, pDATA_NASC, pDATA, pENDERECO,
pBAIRRO, pCIDADE, pTEL_RES, pTEL_COM, pTEL_CEL, pRG, pCPF, pCEP, pMEMO,
pOPERACAO: string);
begin
prcIns_Upd_del_contato.close;
prcIns_Upd_del_contato.Params[0].Value := pID;
prcIns_Upd_del_contato.Params[1].Value := pNOME;
prcIns_Upd_del_contato.Params[2].Value := pDATA_NASC;
prcIns_Upd_del_contato.Params[3].Value := pDATA;
prcIns_Upd_del_contato.Params[4].Value := pENDERECO;
prcIns_Upd_del_contato.Params[5].Value := pBAIRRO;
prcIns_Upd_del_contato.Params[6].Value := pCIDADE;
prcIns_Upd_del_contato.Params[7].Value := pTEL_RES;
prcIns_Upd_del_contato.Params[8].Value := pTEL_COM;
prcIns_Upd_del_contato.Params[9].Value := pTEL_CEL;
prcIns_Upd_del_contato.Params[10].Value := pRG;
prcIns_Upd_del_contato.Params[11].Value := pCPF;
prcIns_Upd_del_contato.Params[12].Value := pCEP;
prcIns_Upd_del_contato.Params[13].Value := pMEMO;
prcIns_Upd_del_contato.Params[14].Value := poperacao;
prcIns_Upd_del_contato.execproc;
end;
procedure TForm1.btnSalvarClick(Sender: TObject);
begin
if not fcamposPreenchidos then
begin
showmessage(´!!É obrigatorio o preenchimento = Campos em Azul!!´);
Abort;
end
else
begin
edtID.Text := fgetNewID(´clientes2´);
try
InsUpdDelContato(strtoint(trim(edtID.text)),
trim(edtnome.text),
trim(edtData_nasc.text),
trim(edtData.text),
trim(edtendereco.text),
trim(edtBairro.text),
trim(edtCidade.text),
trim(edtTel_res.text),
trim(edtTel_com.text),
trim(edtTel_Cel.text),
trim(edtrg.text),
trim(edtcpf.text),
trim(edtcep.text),
trim(edtmemo.text),
´I´);
showMessage (´!!Parabés Cliente Cadastrado!!´);
Except
ShowMessage (´!!!!!Erro ao Incluir , refaça!!!!!´);
end;
end;
edtlocalizarchange(sender);
end;
procedure TForm1.btnAlterarClick(Sender: TObject);
begin
if not fcamposPreenchidos then
begin
showmessage(´!!É obrigatorio o preenchimento!!´);
Abort;
end
else
begin
try
insupddelcontato(strtoint(trim(edtID.text)),
trim(edtnome.text),
trim(edtData_nasc.text),
trim(edtData.text),
trim(edtendereco.text),
trim(edtBairro.text),
trim(edtCidade.text),
trim(edtTel_res.text),
trim(edtTel_com.text),
trim(edtTel_Cel.text),
trim(edtrg.text),
trim(edtcpf.text),
trim(edtcep.text),
trim(edtmemo.text),
´A´);
showMessage (´!!Parabés Cliente Alterado!!´);
Except
ShowMessage (´!!!!!Erro ao Alterar , refaça!!!!!´);
end;
end;
end;
procedure TForm1.btnExcluirClick(Sender: TObject);
begin
if not (trim(edtid.text) <> ´´) then
begin
ShowMessage (´Selecione um registro para excluir´);
abort;
end
else
begin
try
insupddelcontato (strtoint(trim(edtId.text)),
´´,
´´,
´´,
´´,
´´,
´´,
´´,
´´,
´´,
´´,
´´,
´´,
´´,
´D´);
ShowMessage (´!!!Registro Excluído!!!´);
except
ShowMessage (´Erro ao Excluir registro , refaça´);
end;
end;
edtlocalizarchange(sender);
end;
procedure TForm1.btnclearClick(Sender: TObject);
begin
edtnome.clear;
edtendereco.clear;
edtdata_nasc.clear;
edtdata.clear;
edtbairro.clear;
edtcidade.clear;
edttel_com.clear;
edttel_res.clear;
edttel_cel.clear;
edtrg.clear;
edtcpf.clear;
edtcep.clear;
edtmemo.clear;
end;
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
edtid.text :=
qryclientes.fieldByName(´ID´).AsString;
edtnome.text :=
qryclientes.fieldByName(´NOME´).AsString;
edtDATA_NASC.text :=
qryclientes.fieldByName(´DATA_NASC´).AsString;
edtDATA.text :=
qryclientes.fieldByName(´DATA´).AsString;
edtENDERECO.text :=
qryclientes.fieldByName(´ENDERECO´).AsString;
edtBAIRRO.text :=
qryclientes.fieldByName(´BAIRRO´).AsString;
edtCIDADE.text :=
qryclientes.fieldByName(´CIDADE´).AsString;
edtTEL_RES.text :=
qryclientes.fieldByName(´TEL_RES´).AsString;
edtTEL_COM.text :=
qryclientes.fieldByName(´TEL_COM´).AsString;
edtTEL_CEL.text :=
qryclientes.fieldByName(´TEL_CEL´).AsString;
edtRG.text :=
qryclientes.fieldByName(´RG´).AsString;
edtCPF.text :=
qryclientes.fieldByName(´CPF´).AsString;
edtCEP.text :=
qryclientes.fieldByName(´CEP´).AsString;
edtmemo.text :=
qryclientes.fieldByName(´MEMO´).text;
end;
end.
o campo ID nao tem um valor inteiro ou nao tem valor algum , ja rodei , desrodeia , mas nao achei o erro , gostaria de ajuda , o codigo esta ai em baixo.
valeu
unit Cadastro;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, Grids, DBGrids, IBStoredProc, IBDatabase,
DB, IBCustomDataSet, IBQuery;
type
TForm1 = class(TForm)
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
lblCidade: TLabel;
lblTelRes: TLabel;
lblNome: TLabel;
lblendereco: TLabel;
lbltelcomercial: TLabel;
lblCEL: TLabel;
lblBairro: TLabel;
lblRG: TLabel;
lblCPF: TLabel;
lblDataNascimento: TLabel;
lblCEP: TLabel;
lbldata: TLabel;
edtNome: TEdit;
edtData_nasc: TEdit;
edtData: TEdit;
edtEndereco: TEdit;
edtTel_com: TEdit;
edtTel_Res: TEdit;
edtBairro: TEdit;
edtCidade: TEdit;
edttel_cel: TEdit;
edtRG: TEdit;
edtCPF: TEdit;
edtCep: TEdit;
Label13: TLabel;
GroupBox3: TGroupBox;
lblLocalizar: TLabel;
edtLocalizar: TEdit;
btnSalvar: TButton;
btnAlterar: TButton;
btnExcluir: TButton;
btnSair: TButton;
DBGrid1: TDBGrid;
lblCodigo: TLabel;
edtID: TEdit;
Label1: TLabel;
dsCLIENTES: TDataSource;
qryID: TIBQuery;
qryCLIENTES: TIBQuery;
dbCONN: TIBDatabase;
ibTRANS: TIBTransaction;
PRCINS_UPD_DEL_CONTATO: TIBStoredProc;
btnclear: TButton;
edtmemo: TEdit;
procedure btnSairClick(Sender: TObject);
procedure edtLocalizarChange(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure btnSalvarClick(Sender: TObject);
procedure btnAlterarClick(Sender: TObject);
procedure btnExcluirClick(Sender: TObject);
procedure btnclearClick(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
private
{ Private declarations }
function fCamposPreenchidos:Boolean;
function fGetNewId (ptab:string) :string;
procedure InsUpdDelContato(pID: integer; pNOME, pDATA_NASC, pDATA, pENDERECO,
pBAIRRO, pCIDADE, pTEL_RES, pTEL_COM, pTEL_CEL, pRG, pCPF, pCEP, pMEMO,
pOPERACAO: string);
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.btnSairClick(Sender: TObject);
begin
application.terminate;
end;
function TForm1.fCamposPreenchidos: Boolean;
begin
if ((trim(edtNome.Text) <> ´´) and
((trim(edttel_res.text) <> ´´) or
(trim(edtTel_cel.text) <> ´´))) then
Result :=true
else
Result := false;
end;
function TForm1.fGetNewId(ptab: string): string;
begin
with qryId do
begin
close;
params[0].Value :=pTab;
Open;
Result :=Fields[0].AsString;
end;
end;
procedure TForm1.edtLocalizarChange(Sender: TObject);
begin
with qryclientes do
begin
close;
params[0].Value := Trim(edtlocalizar.text);
open;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
edtLocalizarchange(Sender);
end;
procedure TForm1.InsUpdDelContato(pID: integer; pNOME, pDATA_NASC, pDATA, pENDERECO,
pBAIRRO, pCIDADE, pTEL_RES, pTEL_COM, pTEL_CEL, pRG, pCPF, pCEP, pMEMO,
pOPERACAO: string);
begin
prcIns_Upd_del_contato.close;
prcIns_Upd_del_contato.Params[0].Value := pID;
prcIns_Upd_del_contato.Params[1].Value := pNOME;
prcIns_Upd_del_contato.Params[2].Value := pDATA_NASC;
prcIns_Upd_del_contato.Params[3].Value := pDATA;
prcIns_Upd_del_contato.Params[4].Value := pENDERECO;
prcIns_Upd_del_contato.Params[5].Value := pBAIRRO;
prcIns_Upd_del_contato.Params[6].Value := pCIDADE;
prcIns_Upd_del_contato.Params[7].Value := pTEL_RES;
prcIns_Upd_del_contato.Params[8].Value := pTEL_COM;
prcIns_Upd_del_contato.Params[9].Value := pTEL_CEL;
prcIns_Upd_del_contato.Params[10].Value := pRG;
prcIns_Upd_del_contato.Params[11].Value := pCPF;
prcIns_Upd_del_contato.Params[12].Value := pCEP;
prcIns_Upd_del_contato.Params[13].Value := pMEMO;
prcIns_Upd_del_contato.Params[14].Value := poperacao;
prcIns_Upd_del_contato.execproc;
end;
procedure TForm1.btnSalvarClick(Sender: TObject);
begin
if not fcamposPreenchidos then
begin
showmessage(´!!É obrigatorio o preenchimento = Campos em Azul!!´);
Abort;
end
else
begin
edtID.Text := fgetNewID(´clientes2´);
try
InsUpdDelContato(strtoint(trim(edtID.text)),
trim(edtnome.text),
trim(edtData_nasc.text),
trim(edtData.text),
trim(edtendereco.text),
trim(edtBairro.text),
trim(edtCidade.text),
trim(edtTel_res.text),
trim(edtTel_com.text),
trim(edtTel_Cel.text),
trim(edtrg.text),
trim(edtcpf.text),
trim(edtcep.text),
trim(edtmemo.text),
´I´);
showMessage (´!!Parabés Cliente Cadastrado!!´);
Except
ShowMessage (´!!!!!Erro ao Incluir , refaça!!!!!´);
end;
end;
edtlocalizarchange(sender);
end;
procedure TForm1.btnAlterarClick(Sender: TObject);
begin
if not fcamposPreenchidos then
begin
showmessage(´!!É obrigatorio o preenchimento!!´);
Abort;
end
else
begin
try
insupddelcontato(strtoint(trim(edtID.text)),
trim(edtnome.text),
trim(edtData_nasc.text),
trim(edtData.text),
trim(edtendereco.text),
trim(edtBairro.text),
trim(edtCidade.text),
trim(edtTel_res.text),
trim(edtTel_com.text),
trim(edtTel_Cel.text),
trim(edtrg.text),
trim(edtcpf.text),
trim(edtcep.text),
trim(edtmemo.text),
´A´);
showMessage (´!!Parabés Cliente Alterado!!´);
Except
ShowMessage (´!!!!!Erro ao Alterar , refaça!!!!!´);
end;
end;
end;
procedure TForm1.btnExcluirClick(Sender: TObject);
begin
if not (trim(edtid.text) <> ´´) then
begin
ShowMessage (´Selecione um registro para excluir´);
abort;
end
else
begin
try
insupddelcontato (strtoint(trim(edtId.text)),
´´,
´´,
´´,
´´,
´´,
´´,
´´,
´´,
´´,
´´,
´´,
´´,
´´,
´D´);
ShowMessage (´!!!Registro Excluído!!!´);
except
ShowMessage (´Erro ao Excluir registro , refaça´);
end;
end;
edtlocalizarchange(sender);
end;
procedure TForm1.btnclearClick(Sender: TObject);
begin
edtnome.clear;
edtendereco.clear;
edtdata_nasc.clear;
edtdata.clear;
edtbairro.clear;
edtcidade.clear;
edttel_com.clear;
edttel_res.clear;
edttel_cel.clear;
edtrg.clear;
edtcpf.clear;
edtcep.clear;
edtmemo.clear;
end;
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
edtid.text :=
qryclientes.fieldByName(´ID´).AsString;
edtnome.text :=
qryclientes.fieldByName(´NOME´).AsString;
edtDATA_NASC.text :=
qryclientes.fieldByName(´DATA_NASC´).AsString;
edtDATA.text :=
qryclientes.fieldByName(´DATA´).AsString;
edtENDERECO.text :=
qryclientes.fieldByName(´ENDERECO´).AsString;
edtBAIRRO.text :=
qryclientes.fieldByName(´BAIRRO´).AsString;
edtCIDADE.text :=
qryclientes.fieldByName(´CIDADE´).AsString;
edtTEL_RES.text :=
qryclientes.fieldByName(´TEL_RES´).AsString;
edtTEL_COM.text :=
qryclientes.fieldByName(´TEL_COM´).AsString;
edtTEL_CEL.text :=
qryclientes.fieldByName(´TEL_CEL´).AsString;
edtRG.text :=
qryclientes.fieldByName(´RG´).AsString;
edtCPF.text :=
qryclientes.fieldByName(´CPF´).AsString;
edtCEP.text :=
qryclientes.fieldByName(´CEP´).AsString;
edtmemo.text :=
qryclientes.fieldByName(´MEMO´).text;
end;
end.
Celo.legionario
Curtidas 0