valeu ai pela ajuda, rodrigo, acho que isso se chama variável por referência, já tinha visto, mas n sabia muito bem como se aplicava, valeu pela ajuda ---------------------------------------------------------------------------------------- Uberdam Cavaletti Formado em Tecnologia da Informação - Unoesc - Xxe Pós-graduado em desenvolvimento Java - Unoesc - Xxe
http://www.curricular.com.br/berdam Visite http://passandoveneno.blogspot.com ---------------------------------------------------------------------------------------- --- Em seg, 29/9/08, Rodrigo Bevilacqua Marcondes <[EMAIL PROTECTED]> escreveu: De: Rodrigo Bevilacqua Marcondes <[EMAIL PROTECTED]> Assunto: Res: [delphi-br] Query dinâmica Para: delphi-br@yahoogrupos.com.br Data: Segunda-feira, 29 de Setembro de 2008, 10:10 tente passa por referencia procedure ExecutaQuerys( var query: TSQLQuery; sqla: String); dai vc pode acessar fora da procedure ... ExecutaQuerys( xxxx) xxx.FieldByName( 'CAMPO'). AsString Rodrigo ®¿® ----- Mensagem original ---- De: Berdam <berdamzinho@ yahoo.com. br> Para: Delphi <[EMAIL PROTECTED] os.com.br> Enviadas: Segunda-feira, 29 de Setembro de 2008 9:43:37 Assunto: [delphi-br] Query dinâmica Galera, tenho um problema bobo aqui, eu tinha várias Tsqlquery no meu formulário, para diminuir o código e tbm o número de componentes na tela, resolvi criar e executar essas querys dinamicamente. Fiz o seguinte código procedure ExecutaQuerys( query: TSQLQuery; sqla: String); begin if not Assigned(query) then query := TSQLQuery.Create( nil); query.Close; try query.SQLConnection := dmCnx.cnSinpdados; with query do begin sql.Clear; sql.Add(sqla) ; Open(); end except on E:Exception do MessageDlg(' Erro criando query. Causa : '+E.Message + ''+sqla, mtError, [mbOK], 0); end; end; end. dai depois, eu chamo essa procedure ExecutaQuerys( nomedaquery, sql); Quando tento acessar os valores depois de executar o comando acima, acontece AcessViolation, esse erro eu sei que acontece quando tento acessar uma objeto não criado, não deveria este objeto já estar criado na memória, pois ali em cima eu testo se ele está ou não criado. Alguém pode me ajudar??? O que acontece é que logo depois do open da query, se eu ------------ --------- --------- --------- --------- --------- - Uberdam Cavaletti Formado em Tecnologia da Informação - Unoesc - Xxe Pós-graduado em desenvolvimento Java - Unoesc - Xxe http://www.curricul ar.com.br/ berdam Visite http://passandovene no.blogspot. com ------------ --------- --------- --------- --------- --------- - Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua cara @ymail.com ou @rocketmail. com. http://br.new. mail.yahoo. com/addresses [As partes desta mensagem que não continham texto foram removidas] ------------ --------- --------- ------ -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua cara @ymail.com ou @rocketmail. com. http://br.new. mail.yahoo. com/addresses [As partes desta mensagem que não continham texto foram removidas] Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua cara @ymail.com ou @rocketmail.com. http://br.new.mail.yahoo.com/addresses [As partes desta mensagem que não continham texto foram removidas]