Boa tarde, estou com um problema aqui no consumo de um Web Service. Importei com o WSDLImporter e ele me gerou a classe.
A estrutura de envio deste WS é assim:
<cabecalho>
<tag1></tag1>
<tag2></tag2>
</cabecalho>
<Dados>
<DadosItem>
<tag1></tag1>
</DadosItem>
<DadosItem>
<tag1></tag1>
</DadosItem>
[...]
</Dados>
Bem, então o grupo Dados é um array. Assim o Delphi gerou a classe, só não sei como inicializar esse array para preenche-lo.
Pois esse array é uma propriedade da classe "envio", e toda vez que tento atribuir um valor dá "acces violation".
Se tento dar um SetLength, ocorre erro.
A parte da classe deste array está assim:
Recep = class(TRemotable)
private
FCabecalho: Recepcao_Cabecalho;
FInformacoes: Recepcao_Informacoes;
FDados: Dados;
public
destructor Destroy; override;
property Dados: Dados read FDados write FDados;
published
property Cabecalho: Recepcao_Cabecalho read FCabecalho write FCabecalho;
property Informacoes: Recepcao_Informacoes read FInformacoes write FInformacoes;
end;
Dados = array of Recepcao_DadosItem;
Na minha Unit, tenho assim:
env.Dados[0] := dadositem;
//env é o objeto da classe Recep
//dadositem é o objeto da classe Recepcao_DadosItem
Nesse momento ocorre o erro de acces violation, como inicializo esse array? :blink:
Obrigado