Fórum Campos strings que não podem se repetir. #462011
25/11/2013
0
Como vocês tratam os campos strings que não podem se repetir? Ex: nome dos clientes, nome dos fornecedores entre outros!
Eu pensei em 2 maneiras:
1º Criar uma query dinamicamente somente com o campo string e fazer uma consulta na tabela comparando os valores.
2º Criar o campo como unique no banco de dados. (uso firebird 2.5)
O que vocês aconselham ou usam?
Nícolas Braz
Curtir tópico
+ 0Posts
25/11/2013
Marques
[url]https://www.devmedia.com.br/forum/duvidas-verificar-se-ha-forms-filhos-abertos-dentro-do-form-pai-se-houver-nao-encerra-o-programa-quando-o-usuario-clica-no-close-do-form-pai-e-avisa-para-ele-fechar/462032[/url]
Gostei + 0
25/11/2013
Marcos Saffran
Como vocês tratam os campos strings que não podem se repetir? Ex: nome dos clientes, nome dos fornecedores entre outros!
Eu pensei em 2 maneiras:
1º Criar uma query dinamicamente somente com o campo string e fazer uma consulta na tabela comparando os valores.
2º Criar o campo como unique no banco de dados. (uso firebird 2.5)
O que vocês aconselham ou usam?
Boa tarde Nicolaz,
eu prefiro criar o campo como unique, mas em alguns campos tive que retirar essa restrição, pois nomes podem repetir, bem como fornecedores.
Gostei + 0
25/11/2013
Nícolas Braz
https://www.devmedia.com.br/forum/duvidas-verificar-se-ha-forms-filhos-abertos-dentro-do-form-pai-se-houver-nao-encerra-o-programa-quando-o-usuario-clica-no-close-do-form-pai-e-avisa-para-ele-fechar/462032
Quem é lucas?
Gostei + 0
26/11/2013
Ricardo Araujo
Gostei + 0
26/11/2013
Nícolas Braz
Gostei + 0
26/11/2013
Járabe Emanuel
Gostei + 0
26/11/2013
Nícolas Braz
if ds.DataSet.State in [dsInsert] then
begin
with sqlConsulta do
begin
Close;
SQL.Clear;
SQL.Add('SELECT SIGLA FROM UNIDADES WHERE SIGLA LIKE :SIGLA');
ParamByName('SIGLA').AsString := dbSigla.Text;
Open;
if (FieldByName('SIGLA').AsString <> EmptyStr) then
begin
ShowMessage('Você não pode cadastrar uma sigla igual.');
dbSigla.SetFocus;
Abort;
end
else
inherited;
end;
end;
if ds.DataSet.State in [dsEdit] then
inherited;Gostei + 0
26/11/2013
Ricardo
Gostei + 0
26/11/2013
Nícolas Braz
Eu não queria 2 clientes com o mesmo nome e nem 2 fornecedores com o mesmo nome.
Gostei + 0
26/11/2013
Ricardo
Eu não queria 2 clientes com o mesmo nome e nem 2 fornecedores com o mesmo nome.
Não pode ter nomes repetidos mesmo?
Gostei + 0
26/11/2013
Nícolas Braz
As tabelas que eu não deixei repetir foram:
produtos, tipos de pagamentos, tipos de documentos, contas, setores de funcionarios, usuarios e grupos de usuarios.
Gostei + 0
26/11/2013
Itamar Souza
As tabelas que eu não deixei repetir foram:
produtos, tipos de pagamentos, tipos de documentos, contas, setores de funcionarios, usuarios e grupos de usuarios.
Boa tarde
Minha opinião no caso de clientes e fornecedores, você pode consulta o cnpj do mesmo, não deixando que eles sejam repetidos, mais pelo nome fica um pouco complicado pois o cadastro precisa esta exatamente igual, se você abreviar um nome já não vai conseguir identificar a duplicidade. Produtos, tipos de pagamento, tipos de documentos, contas, setores de funcionários, grupo de usuários (neste caso cabe o bom censo do usuário no momento do cadastro), usuários da para controlar pelo número do cpf por exemplo.
Espero ter ajudado
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)