DOUGLASAP 0 Denunciar post Postado Fevereiro 20, 2013 Amigo, Me ajuda um uma coisa tenho tabela1 ; tabela2 ; tabela3 Preciso realizar apenas consulta e talvez imprimir os dados de alguns campos de cada tabela por exemplo tabela1 Data | Nome | Setor Tabela2 Hora_f | Hora_p | Hora_u | Hora_total Tabela3 titulo | quantiade | peso * Lembrando que cada tabela faz parte de form diferente Tabela1 esta no form1 | Tabela2 esta no form2 | tabela3 esto no form3 Como posso realizar apenas Consulta e/ou talvez Imprimir os seguintes dados por exemplo tabela1 | tabela2 | tabela3 | Nome | Setor | Hora_total | titulo | quantiade | peso idéia é a seuguinte Digitar o numero de contrato e atravez dessa consulta ele me traz as infomações referente ao contrato pegar alguns dados de cada tabela. Preciso criar uma outra tabela para consultar, e quando mandar salvar nas tabelas, ele salvaria na tabela atual e na tabela_consulta ao mesmo tempo ? Obrigado Amigo Espero ter explicado direito que eu quero . . . rsrsr Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
Eisenheim 67 Denunciar post Postado Fevereiro 20, 2013 Olá amigo. Referente a sua dúvida anterior, você conseguiu resolver? Antes de passar para outras, vamos tentar solucionar uma de cada vez. Até a próxima. :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites
DOUGLASAP 0 Denunciar post Postado Fevereiro 20, 2013 ola amigo, ainda não consegui solucionar estou tentando, minha pergunta do post anterior foi justamente para que quando conseguisse resolver um iria partir para o outro sem essa dúvida que estou. Compartilhar este post Link para o post Compartilhar em outros sites
Eisenheim 67 Denunciar post Postado Fevereiro 20, 2013 Olá. Tente anexar alguma imagem desse "form" que você digita o equipamento pra ver se consigo entender melhor então. Até a próxima. :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites
DOUGLASAP 0 Denunciar post Postado Fevereiro 20, 2013 segue link da imagem do meu form http://www.brimages.com.br/images/764form.jpeg.png até a próxima Compartilhar este post Link para o post Compartilhar em outros sites
Eisenheim 67 Denunciar post Postado Fevereiro 20, 2013 Olá amigo. Enviei um e-mail pra você, você recebeu? Se possível envie seu projeto nele para que eu possa analisar e te ajudar. Até a próxima. :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites
DOUGLASAP 0 Denunciar post Postado Fevereiro 20, 2013 ja mandei meu projeto, veja se recebeu ? até Compartilhar este post Link para o post Compartilhar em outros sites
Eisenheim 67 Denunciar post Postado Fevereiro 21, 2013 Olá amigo. Não recebi seu projeto ainda, verifique o e-mail para o qual você está enviando, nem no meu spam está constando nada do tipo. Até a próxima. :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites
DOUGLASAP 0 Denunciar post Postado Fevereiro 21, 2013 Olá Amigo Mandei novamente Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
samuca_2010 0 Denunciar post Postado Fevereiro 23, 2013 Olá Pessoal, DOUGLASAP, o componente ADOTable_cad_equipamento que você está usando para fazer o cadastro é o mesmo que você usa para pesquisar? Se tua resposta for SIM (te explico o motivo do erro caso sua resposta dor SIM), favor criar uma tabela para cadastro e outra para pesquisa aí na tabela de pesquisa você pode usar o código que o Eisenheim já te passou. O código passado pelo nosso amigo Eisenheim foi: if DataModule2.ADOTable_cad_equipamento.Locate( 'EQUIPAMENTOS', DBEdit1.Text, [loCaseInsensitive]) then Begin showmessage ('Equipamento ja cadastrado'); DataModule2.ADOTable_cad_funcionario.Cancel; end else begin DataModule2.ADOTable_cad_equipamento.Post; end; Abraços! Compartilhar este post Link para o post Compartilhar em outros sites
DOUGLASAP 0 Denunciar post Postado Fevereiro 25, 2013 Ola amigo Samuca_2010 Sim, a tabela que utilizo para cadastro é a mesma que utilizo para consulta, o que estou precisando é não deixar que o usuário cadastre o mesmo item novamente. Mesmo assim é necessário criar uma tabela de consulta ? Sendo assim, preciso pedir que salve os dados em 2 (duas) tabelas ? DataModule2.ADOtable_consulta_equipamento e DataModule2.ADOTable_cad_equipamento ? Isso ficaria no mesmo button_inserir ? Obrigado pela atenção Compartilhar este post Link para o post Compartilhar em outros sites
Eisenheim 67 Denunciar post Postado Fevereiro 25, 2013 Olá amigo. Acredito que o que nosso colega Samuca se refere, é você ter outro objeto Query/Table somente para pesquisa. Na sua tela de cadastro você tem uma Query/Table que aponta para a tabela de equipamentos. Você teria uma segunda Query/Table para realizar a pesquisa, estando esse apontando também para a tabela de equipamentos. Entendeu? Até a próxima. :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites
DOUGLASAP 0 Denunciar post Postado Fevereiro 25, 2013 Amigos, Desculpe, mas não entendi. obrigado Compartilhar este post Link para o post Compartilhar em outros sites
Eisenheim 67 Denunciar post Postado Fevereiro 25, 2013 Olá amigo. Imagine que no seu form de cadastro você possui uma Table que está buscando as informações da tabela equipamento, cuja a mesma você utiliza para realizar o processo de inclusão/alteração dos registros. Agora, imagine que nesse mesmo form você possui uma outra Table que também está apontando para a tabela de equipamentos, no entanto essa Table você utiliza apenas para fazer uma consulta antes de realizar a inclusão/alteração de novos registros. Um exemplo: tbCadEquipamentos - Essa é a que está vinculada com os controles do seu form na qual você utiliza para realizar as inclusões/alterações de registros da tabela de equipamentos; tbPesqEquipamentos - Essa é a que você usa apenas para pesquisar pelos registros já cadastrados na sua tabela de equipamentos. Conseguiu compreender? Até a próxima. :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites
ONESIO LUCENA NETO 0 Denunciar post Postado Fevereiro 26, 2013 Olá pessoal, apenas para dar uma luz, nos casos de verificação de registros já cadastrados, é bom usar os eventos do próprio dataset (no caso, ADOTable): BeforePost, OnNewRecord e por aí vai... Compartilhar este post Link para o post Compartilhar em outros sites
samuca_2010 0 Denunciar post Postado Fevereiro 27, 2013 Douglas, Primeiro, como sua resposta foi SIM, está utilizando o componente ADOTable_cad_equipamento para inserir e pesquisar se o registro já existe, então deixa eu explicar o motivo do erro, ou pelo menos tentar. Enquanto sua tabela (me refiro ao componente AdoTable) estiver em modo de Inserção/Edição, você não pode fazer uma pesquisa utilizando o mesmo componente. Bom, aqui está um exemplo de como utilizar o evento BeforePost, como sugeriu nosso amigo Onesio Lucena Neto, Considerando que seu componente esteja configurado corretamente (ConnectionString, TableName), no evento BeforePost do componente ADOTable_cad_equipamento, dê um duplo click e insira o código: procedure TForm1.adotClienteBeforePost(DataSet: TDataSet); // Daqui para baixo var tabelaPesquisa: TADOTable; begin // Cria uma tabela dinâmica e informamos que o pai // desta tabela é o próprio formulário (Form1). tabelaPesquisa := TADOTable.Create(Self); // Bloco try finally utilizado para garantir que o objeto // tabelaPesquisa será destruído assim que o método for // executado. try // Este bloco try except foi utilizado para personalizar a // mensagem para o usuário. try tabelaPesquisa.ConnectionString := adotCliente.ConnectionString; tabelaPesquisa.TableName := adotCliente.TableName; // Abre a tabela. tabelaPesquisa.Open; // Verifica se o cliente foi encontrado. if tabelaPesquisa.Locate('Nome', txtNome.Text, []) then begin // Mostra a mensagem para o usuário informando que o // cliente já existe. ShowMessage('Cliente ' + txtNome.Text + ' já está cadastrado. '); // Sai do método. Exit; end; except // Informa o usuário que ocorreu um erro. ShowMessage('Ocorreu um erro ao pesquisar o cliente.'); end; finally // Destroi o objeto tabelaPesquisa. tabelaPesquisa.Free; end; // Até aqui end; Agora no botão Salvar, insira o seguinte código:procedure TForm1.btnSalvarClick(Sender: TObject); begin adotCliente.Post; end; Qualquer dúvida poste ai. Abraço! Douglas, O código que eu demonstrei acima, deve ser tratado em casos de edição, ok? tratando isso, ficaria assim: if ADOTable_cad_equipamento.State = dsInsert then begin Aqui você coloca o código que passei. end; Assim você está dizendo que o sistema deve validar apenas quando o usuário estiver inserindo, é claro que o usuário pode salvar, clicar em editar e trocar o nome e salvar, mas ai você tem que ver a regra de negócio, ver se é permitido editar o registro, se pode alterar o nome. É possível validar no modo de edição, porém muda a lógica. Compartilhar este post Link para o post Compartilhar em outros sites
Eisenheim 67 Denunciar post Postado Fevereiro 28, 2013 Olá amigos. Ainda existem dúvidas relacionadas nesse tópico? Até a próxima. :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites
DOUGLASAP 0 Denunciar post Postado Fevereiro 28, 2013 Olá amigo, Estou tentando fazer em minha aplicação. Logo mais posto o resultado, sendo positivo ou duvidas. Obrigado a todos Compartilhar este post Link para o post Compartilhar em outros sites
Eisenheim 67 Denunciar post Postado Fevereiro 28, 2013 Olá amigo. Enviei uma nova MP para você. Verifique sua caixa de entrada. Até a próxima. :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites
Lúcio Dowglas 0 Denunciar post Postado Setembro 12, 2014 BOA TARDE AMIGOS!!ESTOU COM ESSE PROBLEMA TBM... O MEU SALVA SEMPRE... MEU COD. procedure TF_USUARIO.ActSalvarExecute(Sender: TObject);begin //butão salvar//VERIFICANDO OS ESPAÇOS EM BRANCO DO EDITif Trim(EDT_NOME.Text) = '' thenbegin ShowMessage('Preencha o Campo Nome'); Abort; end; if trim(EDTLOGIN.Text) = '' thenbegin ShowMessage('Iserir um login valido'); Abort; end; if trim(EDTSENHA.Text) = '' thenbegin ShowMessage('O Campo Senha Não Pode ser Vazio'); Abort; end; //***FIM DA VERIFICAÇÃO DOS CAMPOS EM BRANCO BEGIN DM.TBL_USUARIOnome.AsString:=EDT_NOME.Text; DM.TBL_USUARIOsenha.AsString:=EDTSENHA.Text; DM.TBL_USUARIOstatos.AsString:='A'; DM.TBL_USUARIOdata_cadastro.AsDateTime:=now; dm.TBL_USUARIOlogin.AsString:=EDTLOGIN.Text; if DM.TBL_USUARIO.Locate('LOGIN', EDTLOGIN.Text,[]) then //***VERIFICANDO SE USUARIO JA EXISTE BEGIN ShowMessage('USUARIOA JA CADASTRADO') ; DM.TBL_USUARIO.Delete; Abort; END ELSE DM.TBL_USUARIO.Post; LimparEdit; Application.MessageBox('Registro Salvo com Sucesso!','Informação!!!', MB_OK+MB_ICONINFORMATION); PgCont_Usuario.ActivePageIndex:=1; END;//************** DA A MESSAGE DE USUARIO CADASTRADO MAS MESMO ASSIM QUANDO VEIJO NO BANCO ELE SALVOU!!! ONDE EU ERREI PODEM ME AJUDAR ESTOU COM APENAS 2 MESES ESTUDANDO DELPHI.... OBRIGADO Compartilhar este post Link para o post Compartilhar em outros sites