GARANTIR DESCONTO

Fórum Duplicaçaão de campo #205612

10/01/2004

0

olá, para todos.
Sou iniciante (iniciante mesmo) em delphi e gostaria que alguém me enviasse um código para não deixar a duplicação de um campo. A apostila que tenho ensina um exemplo, mas quando vou compilar o projeto apresenta um erro(referente a memória ou algo parecido); o único jeito que achei foi remover o código do projeto. Outro problema que enfrento é quanto uma pesquisa. No exemplo da apostila que tenho, se eu cadastrar uma pessoa com o nome FÉLIX e tentar localizar FELIX (sem acento) não consigo encontrar o nome. Se alguém puder me ajudar ficarei muito grato.

Félix.

[color=green:28ddf2cd9e][b:28ddf2cd9e]Título Editado conforme prevê as regras de conduta - regras 2 e 4[/b:28ddf2cd9e][/color:28ddf2cd9e]


Prffelix

Prffelix

Responder

Posts

11/01/2004

Tnaires

Olá Félix
Em primeiro lugar, se vc não quiser q os moderadores do fórum lhe puxem a orelha, não use letras maiúsculas no título do fórum e nem use títulos como o q vc colocou (me ajudem, etc.).
Acredito q vc não quer valores de campos duplicados dentro dos registros da tabela, não é? Normalmente os programas q se usam para criar bancos de dados oferecem essa opção, bastando vc ajustar essa propriedade (uma chave primária, por natureza, não permite valores iguais em registros diferentes). Porém, apresento uma sugestão para controle via código:
- primeiramente, crie um Query no projeto com o seguinte sql:
SELECT * FROM TABELA
WHERE CAMPO LIKE :VALOR

- após isso, crie uma função no Delphi:
// Exemplo com string; pode ser com inteiro, data, etc.
function ValorCampoExistente(valor: string): boolean;
begin
  Query1.Close;
  Query1.ParamByName(´VALOR´).AsString := valor;
  Query1.Open;
  Result := not Query1.IsEmpty;
end;

- na rotina de cadastro, poderia ficar assim:
...
  if ValorCampoExistente(´Valor Digitado´) then
    ShowMessage(´Este campo não permite valores duplicados.´);
...

Por favor, me desculpe se eu entendi sua dúvida errado.
Quanto à segunda dúvida, realmente ´E´ e ´É´ são caracteres diferentes. Eu já vi em algum tópico no fórum alguém q forneceu o código de uma função q permite contornar esse problema, mas infelizmente não posso te dizer qual pq não sei. Vou ficar devendo essa, mas dê uma pesquisada nos tópicos.
Sucesso.


Responder

Gostei + 0

12/01/2004

Prffelix

valeu, tnares. agradeço pelo tempo dispensado para resolver meu problema.


Responder

Gostei + 0

15/01/2004

Prffelix

Olá, caros amigos desse forum...

eu tenho no meu projeto um campo chamado MATRICULA(chave primária) e gostaria que alguém me enviasse um código para quando existir um valor duplicado emitir uma caixa de mensagem avisando. Outro problema é que em outro projeto tenho um campo chamado TIPO e quando vou colocar uma banda de grupo no quick report para aquele campo, os valores não se agrupam, saindo apenas o primeiro nome em ordem de classificação na tabela e os demais itens não aparecem. Queria saber como se faz um relatório no QReport que se pudesse usar um filtro para determinado campo. Ufa! com tantos problemas acho que vão perder muito tempo para me ajudar, mas agradeço.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar