Fórum if else if #466604
10/01/2014
0
no evento do botão salvar esta assim:
procedure TForm_Dizimos.btnGravarClick(Sender: TObject);
begin
if DBLookupCombobox1.KeyValue = null then
begin
MessageDlg('Preencha o Nome!', mtWarning,[mbOk], 0);
end
else if JvDBDateEdit1.Text = emptystr then
begin
MessageDlg('Preencha a data!', mtWarning,[mbOk], 0);
end
else
begin
inherited;
end;
end;mais só esta passando a parte 'preencha o nome'
e ainda falta o teste ou if do DBEdit4
algum pode me ajudar ?
Moabe Oliveira
Curtir tópico
+ 1Posts
10/01/2014
Marco Salles
Estranho testar os DataWares como vc esta Fazendo
Se é para fazer algum teste , seria mais correto testar os Fields
Gostei + 0
11/01/2014
Moabe Oliveira
Gostei + 0
11/01/2014
Marco Salles
Clique com o Botão direito nele e escolheu a opção Add All Fields ???
Se Não pode utilizar o FieldByName
A grosso modo seria mais ou menos assim
if (SeuDataSet.FieldByName('Nome do Seu Campo').asastring = '')OR(SeuDataSet.FieldByName('Nome de Outro Campo).asstring='')OR(SeuDataSet.FieldByName('Nome de Outro Campo.asstring='') Then
digo a grosso modo porque tem outra abordagens
Gostei + 0
11/01/2014
Moabe Oliveira
Gostei + 0
11/01/2014
Marco Salles
Outra , vc não respondeu sobre os Fileds ??? Adicionou ou não os Fileds ???
Gostei + 0
11/01/2014
Moabe Oliveira
adicionei os fields e puxei para o form
Gostei + 0
11/01/2014
Marco Salles
adicionei os fields e puxei para o form
Não precisa puxar .... O mais indicado é isto mesmo .. DataSource em um Form e data module em outro ..
Olha so , quando nos referimos a Ado Table , Table , ClientDataSet , enfim , nos referimos a DATASET .. Pois eles se originam a partir desta classe ta legal
TADOTable = class(TCustomADODataSet)
TCustomADODataSet = class(TDataSet, IUnknown, RecordsetEventsVt)
então quando falamos em DataSer estamos falando no seu caso de ADOTable ... Correto ???
Vamos voltar ...
Quando vc adicionou os fields no AdoTable , vc pode fazer os testes com ele ... Para isto vc data USES no seu Formulário Principal e ele passa a enxergar todos os Fields que estão
no DataModulo .... Os Fields é como se vc um componente mesmo e vc utiliza a Propriedade AsString do mesmo para verificar se esta vazia
Outro possibilidade dentre outra , é Referenciar esse AdoTable pelo seu DataSource ... Tipo isto
if (SeuDataSource1.DataSet.FieldByName('SeuCampo').asstring = '')OR (SeuDataSource1.DataSet.FieldByName('SeuOutroCampo').asstring = '') ............. Then
particularmente prefiro a segunda abordagem , apesar que o método FieldByname é menos performático do que o acessso direto aos componentes , mas nada que impeça o seu uso
[]sds
Gostei + 0
11/01/2014
Moabe Oliveira
obrigado man! vai desculpando ai o encomodo..
Gostei + 0
11/01/2014
Marco Salles
[]sds e um grande abraço
Gostei + 0
11/01/2014
Moabe Oliveira
Gostei + 0
11/01/2014
Marco Salles
Claro mas sugiro abrir um outro tópico , para ficar mais limpo .. Porque esses tópicos servem de pesquisa nio futuro e ajudam a outra pessoas . Se alongarem e
misturarem muito , passam a ficar confusos e deixam de ser fontes de consulta
Ok ?
[]sds
Gostei + 0
11/01/2014
Moabe Oliveira
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)