Um detalhe que julgo importante que esqueci de mencionar:

No OnCreate do TSoapDataModule, eu escreve o seguinte código:



  // Cria um Dm Comum (TDataModule)
  DmEmpresa := TDmEmpresa.Create(Self);
  // Esses Dm's herdam de TDmCustom* que por sua vez implementa IDmTable.
Esta interface não está visivel para o WebService
  DmEmpresa.SetDmConnection(Self);
  // Procedure que procura por DataSetProviders e os registra. Não existe
código para desregistrar
  RegistrarProviders(DmEmpresa);



Alguém poderia me dar uma luz?

Francisco Thiago de Almeida
Enter & Plug Informática
Divisão: Desenvolvimento e Banco de dados
Franca / SP
msn: [EMAIL PROTECTED]





  IDMTable = interface(IInterface)
    ['{50CC2B58-4384-45C2-869F-D2570DCEB57C}']
    procedure SetDmConnection(DataModule: TDataModule);
  end;


type
  TDMCustom = class(TDataModule,IDmTable)
  private
    { Private declarations }
    FDMConnection: IDmConnection;
  protected
    property DmConnection: IDmConnection read FDmConnection;
  public
    { Public declarations }
    procedure SetDmConnection(DataModule: TDataModule);
  end;

procedure TDMCustom.SetDmConnection(DataModule: TDataModule);
var
  i   :Integer;
begin
  FDmConnection := (DataModule as IDmConnection);
  if FDMConnection <> Nil then
  begin
    if (FDMConnection.getConnection <> Nil) and (FDMConnection.getConnection
is TSQLConnection) then
    begin
      for i := 0 to ComponentCount -1 do
        if TApplicationUtils.InAncestral('TCustomSQLDataSet',Components[i])
then
          TCustomSQLDataSet(Components[i]).SQLConnection :=
            TSQLConnection(FDMConnection.getConnection);
    end;
  end;
end;


        

        
                
_______________________________________________________ 
Novo Yahoo! Messenger com voz: ligações, Yahoo! Avatars, novos emoticons e 
muito mais. Instale agora! 
www.yahoo.com.br/messenger/


-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a