caezar 0 Denunciar post Postado Janeiro 29, 2006 Olá amigos do Imasters. Tenho um form e nele tem varios ADOTable's e gostaria de fazer uma procedure para abri-las! Então eu fiz assim: Obs: Util.strConex é uma variavel que guarda a sting de conexão. formSolicitante é o form que está aberto no momento a qual pertencem as tabelas procedure TformMain.abreTabelas(formSolicitante:TForm); var msg:string; iCont:Integer; begin for iCont:=0 to formSolicitante.ComponentCount-1 do begin if formSolicitante.Components[iCont] is TADOTable then begin TADOTable(formSolicitante.Components[iCont]).Active:=false; TADOTable(formSolicitante.Components[iCont]).ConnectionString:=Util.strConex; ShowMessage(TADOTable(formSolicitante.Components[iCont]).Name); ShowMessage(TADOTable(formSolicitante.Components[iCont]).ConnectionString); Try TADOTable(formSolicitante.Components[iCont]).Active:=True; except on E:Exception do begin msg := 'Não foi possível abrir as tabelas do '; msg := msg + 'sistema : (' + E.Message + ')!'; MessageDlg(msg, mtError, [mbOk],0); exit; end; end; end; end; end;Eu analizei o código atravéz do dois ShowMessage's, e a tabela recebe corretamente a string de conexão atravéz do Util.strConex mas na hora que o código tenta ativar a tabela dá o seguinte erro: Missing Connection or ConnectionString. Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Janeiro 30, 2006 Tente o seguinte: procedure TformMain.abreTabelas(formSolicitante:TForm);var msg: string; iCont: Integer;beginfor iCont:=0 to formSolicitante.ComponentCount-1 do begin if formSolicitante.Components[iCont] is TADOTable then begin (formSolicitante.Components[iCont] as TADOTable).Active:=False; (formSolicitante.Components[iCont] as TADOTable).ConnectionString:=Util.strConex; try (formSolicitante.Components[iCont] as TADOTable).Open; except on E:Exception do begin msg:='Não foi possível abrir as tabelas do '; msg:=msg + 'sistema : (' + E.Message + ')!'; MessageDlg(msg, mtError, [mbOk],0); exit; end; end; end; end;end; você tb deveria verificar se a conexão com o BD esta sendo executada. Compartilhar este post Link para o post Compartilhar em outros sites