Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Auto incremento


seveN

Pergunta

Porque não consigo digitar nada em um DBComboBox ou DBLookupComboBox.

Estou querendo fazer com que o usuario digite a marca do produto no DBComboBox ou DBLookupComboBox quando essa não tiver na lista.

Por exemplo, na tabela produtos existe o campo marca, para evitar fazer outra tabela só para cadastrar a marca estou tentando incrementar no campo marca da tabela produtos. Já tenho uma solução para ComboBox, mas agora estou tentando usar DBComboBox ou DBLookupComboBox.

att.

Pedro

Editado por seveN
Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0
Porque não consigo digitar nada em um DBComboBox ou DBLookupComboBox.

Estou querendo fazer com que o usuario digite a marca do produto no DBComboBox ou DBLookupComboBox quando essa não tiver na lista.

Por exemplo, na tabela produtos existe o campo marca, para evitar fazer outra tabela só para cadastrar a marca estou tentando incrementar no campo marca da tabela produtos. Já tenho uma solução para ComboBox, mas agora estou tentando usar DBComboBox ou DBLookupComboBox

.

Porque não consigo digitar nada em um DBComboBox

Porque existem duas maneiras de se fazer isso:

Na primeira voce preenche a propriedade Items do DBComboBox com os itens que voce quer... quando selecionar um item da lista o mesmo será atribuido para o campo da tabela depois do clique do mouse

Na segunda, basta digitar no DBComboBox e o valor será atribuido para o campo da tabela, depois de teclar um < Enter >

procedure TForm1.DBComboBox1Click(Sender: TObject);
begin
   // PEGAR UM ITEM DA LISTA E ATRIBUIR AO CAMPO
   ClientDataSet1.Edit;
   ClientDataSet1MARCA.Value := DBComboBox1.Items.Strings[DBComboBox1.ItemIndex];
   ClientDataSet1.Post;
   ClientDataSet1.ApplyUpdates(-1);
end;

procedure TForm1.DBComboBox1KeyPress(Sender: TObject; var Key: Char);
begin
   // PEGAR O TEXTO DIGITADO E ATRIBUIR AO CAMPO
   if key = #13 then
      begin
         ClientDataSet1.Edit;
         ClientDataSet1MARCA.Value := DBComboBox1.Text;
         ClientDataSet1.Post;
         ClientDataSet1.ApplyUpdates(-1);
      end;
end;

abraço

Link para o comentário
Compartilhar em outros sites

  • 0
Não deu certo. Estou usando o mysql 5.1.

Deu erro nesta linha em (-1).

ClientDataSet1.ApplyUpdates(-1);

Amigo .. o que te passei é um exemplo usando os componentes IBQuery, DataSetPovider, ClientDataSet e DataSource

Se voce estiver usando outros componentes, a lógica seria a mesma .... voce deve adaptar o código as suas necessidades .. ok ?

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

Resolvido

Procedure TFormCadPatrim.DBComboBox3DropDown(Sender: TObject);

Begin

DBComboBox3.Clear;

QRConMarca.First;

While Not QRConMarca.Eof do begin

DBComboBox3.Items.Add(QRConMarca.FieldByName('Marca').AsString);

QRConMarca.Next;

DBComboBox3.Text:= TabCadPatrimonioMarca.Text;

End;

End;

att.

Pedro

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...