Bug wsdl delphi 7

Delphi

09/06/2015

Primeiramente bom dia. Estou integrando um sistema com o Webservice de uma empresa chamada NetPoints. Acontece que quando vou realizar a importação da classe do Webservice via WSDL do delphi, a mesma vem faltando algumas informações, que acabam gerando erro ao tentar acessar o Webservice e enviar e receber informações.
[img:descricao=Erro gerado ao tentar receber as informações do Webservice.]http://arquivo.devmedia.com.br/forum/imagem/435717-20150609-093935.png[/img]

O problema é que quando faço exatamente a mesma coisa no Delphi XE2 o mesmo executa normalmente e me retorna o xml com os dados solicitados.
[img:descricao=Retorno webservice Delphi XE2]http://arquivo.devmedia.com.br/forum/imagem/435717-20150609-094130.png[/img]

Alguem sabe se existe algum bug no WSDL do delphi 7?

O webservice que estou tentando acessar é este : http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl?wsdl


no Delphi 7 ele importa a classe da seguinte maneira:

// ************************************************************************ //
// The types declared in this file were generated from data read from the
// WSDL File described below:
// WSDL : http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl?wsdl
// Encoding : UTF-8
// Version : 1.0
// (03/06/2015 14:04:42 - 1.33.2.5)
// ************************************************************************ //

unit AssociadoCompletoServiceEndpointImpl;

interface

uses InvokeRegistry, SOAPHTTPClient, Types, XSBuiltIns;

type

// ************************************************************************ //
// The following types, referred to in the WSDL document are not being represented
// in this file. They are either aliases[@] of other types represented or were referred
// to but never[!] declared in the document. The types from the latter category
// typically map to predefined/known XML or Borland types; however, they could also
// indicate incorrect WSDL documents that failed to declare or import a schema type.
// ************************************************************************ //
// !:string - "http://www.w3.org/2001/XMLSchema"
// !:decimal - "http://www.w3.org/2001/XMLSchema"
// !:long - "http://www.w3.org/2001/XMLSchema"
// !:boolean - "http://www.w3.org/2001/XMLSchema"
// !:dateTime - "http://www.w3.org/2001/XMLSchema"
// !:int - "http://www.w3.org/2001/XMLSchema"
// !:double - "http://www.w3.org/2001/XMLSchema"

ServiceException = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[F] }
consultaAssociadoCompletoRequest = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/" }
cupomOnlineVO = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/" }
Erro = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/" }
Produto = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/" }
ProdutosResgate = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[A] }
consultaAssociadoCompletoResponse = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/" }



// ************************************************************************ //
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
ServiceException = class(ERemotableException)
private
published
end;



// ************************************************************************ //
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
consultaAssociadoCompletoRequest = class(TRemotable)
private
Fatendente: WideString;
Fcnpj: TXSDecimal;
Fcpf: TXSDecimal;
FnuComprovante: Int64;
FvrProdutoParceiro: TXSDecimal;
public
destructor Destroy; override;
published
property atendente: WideString read Fatendente write Fatendente;
property cnpj: TXSDecimal read Fcnpj write Fcnpj;
property cpf: TXSDecimal read Fcpf write Fcpf;
property nuComprovante: Int64 read FnuComprovante write FnuComprovante;
property vrProdutoParceiro: TXSDecimal read FvrProdutoParceiro write FvrProdutoParceiro;
end;



// ************************************************************************ //
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
cupomOnlineVO = class(TRemotable)
private
FdsCodigo: WideString;
FdsCupomFiscal: WideString;
FdsNomeExterna: WideString;
FdsPremio: WideString;
FidCampanha: Integer;
published
property dsCodigo: WideString read FdsCodigo write FdsCodigo;
property dsCupomFiscal: WideString read FdsCupomFiscal write FdsCupomFiscal;
property dsNomeExterna: WideString read FdsNomeExterna write FdsNomeExterna;
property dsPremio: WideString read FdsPremio write FdsPremio;
property idCampanha: Integer read FidCampanha write FidCampanha;
end;



// ************************************************************************ //
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
Erro = class(TRemotable)
private
Fcodigo: Integer;
Fcategoria: WideString;
Fdescricao: WideString;
published
property codigo: Integer read Fcodigo write Fcodigo;
property categoria: WideString read Fcategoria write Fcategoria;
property descricao: WideString read Fdescricao write Fdescricao;
end;



// ************************************************************************ //
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
Produto = class(TRemotable)
private
FcodigoProduto: Integer;
FvalorPontosNPUnitario: Integer;
FvalorUnitario: Double;
FdescricaoProduto: WideString;
published
property codigoProduto: Integer read FcodigoProduto write FcodigoProduto;
property valorPontosNPUnitario: Integer read FvalorPontosNPUnitario write FvalorPontosNPUnitario;
property valorUnitario: Double read FvalorUnitario write FvalorUnitario;
property descricaoProduto: WideString read FdescricaoProduto write FdescricaoProduto;
end;

produto2 = array of Produto; { "http://endpoint.associadoservice.ws.netpoints.com.br/" }


// ************************************************************************ //
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// Serializtn: [xoInlineArrays]
// ************************************************************************ //
ProdutosResgate = class(TRemotable)
private
Fproduto: produto2;
public
constructor Create; override;
destructor Destroy; override;
function GetProdutoArray(Index: Integer): Produto;
function GetProdutoArrayLength: Integer;
property ProdutoArray[Index: Integer]: Produto read GetProdutoArray; default;
property Len: Integer read GetProdutoArrayLength;
published
property produto: produto2 read Fproduto write Fproduto;
end;



// ************************************************************************ //
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
consultaAssociadoCompletoResponse = class(TRemotable)
private
Fcpf: TXSDecimal;
Fcuponagem: Boolean;
FcuponsOnlineVO: cupomOnlineVO;
FdataNascimento: TXSDateTime;
Ferro: Erro;
FidProposta: Integer;
Fmensagem: WideString;
Fnome: WideString;
Fproduto: Produto;
FprodutosResgate: ProdutosResgate;
FsaldoPontosNP: Integer;
Fstatus: Integer;
public
destructor Destroy; override;
published
property cpf: TXSDecimal read Fcpf write Fcpf;
property cuponagem: Boolean read Fcuponagem write Fcuponagem;
property cuponsOnlineVO: cupomOnlineVO read FcuponsOnlineVO write FcuponsOnlineVO;
property dataNascimento: TXSDateTime read FdataNascimento write FdataNascimento;
property erro: Erro read Ferro write Ferro;
property idProposta: Integer read FidProposta write FidProposta;
property mensagem: WideString read Fmensagem write Fmensagem;
property nome: WideString read Fnome write Fnome;
property produto: Produto read Fproduto write Fproduto;
property produtosResgate: ProdutosResgate read FprodutosResgate write FprodutosResgate;
property saldoPontosNP: Integer read FsaldoPontosNP write FsaldoPontosNP;
property status: Integer read Fstatus write Fstatus;
end;


// ************************************************************************ //
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// transport : http://schemas.xmlsoap.org/soap/http
// style : document
// binding : AssociadoCompletoMarisaServiceEndpointImplSoapBinding
// service : AssociadoCompletoMarisaServiceEndpointImpl
// port : AssociadoCompletoMarisaServiceEndpointImplPort
// URL : http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl
// ************************************************************************ //
AssociadoCompletoMarisaServiceEndpoint = interface(IInvokable)
['{CBF1F20D-EDA2-1C8D-E656-7A7D30462E07}']
function consultarStatusAssociadoCompleto(const consultaAssociadoCompletoRequest: consultaAssociadoCompletoRequest): consultaAssociadoCompletoResponse; stdcall;
end;

function GetAssociadoCompletoMarisaServiceEndpoint(UseWSDL: Boolean=System.False; Addr: string=''; HTTPRIO: THTTPRIO = nil): AssociadoCompletoMarisaServiceEndpoint;


implementation

function GetAssociadoCompletoMarisaServiceEndpoint(UseWSDL: Boolean; Addr: string; HTTPRIO: THTTPRIO): AssociadoCompletoMarisaServiceEndpoint;
const
defWSDL = 'http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl?wsdl';
defURL = 'http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl';
defSvc = 'AssociadoCompletoMarisaServiceEndpointImpl';
defPrt = 'AssociadoCompletoMarisaServiceEndpointImplPort';
var
RIO: THTTPRIO;
begin
Result := nil;
if (Addr = '') then
begin
if UseWSDL then
Addr := defWSDL
else
Addr := defURL;
end;
if HTTPRIO = nil then
RIO := THTTPRIO.Create(nil)
else
RIO := HTTPRIO;
try
Result := (RIO as AssociadoCompletoMarisaServiceEndpoint);
if UseWSDL then
begin
RIO.WSDLLocation := Addr;
RIO.Service := defSvc;
RIO.Port := defPrt;
end else
RIO.URL := Addr;
finally
if (Result = nil) and (HTTPRIO = nil) then
RIO.Free;
end;
end;


destructor consultaAssociadoCompletoRequest.Destroy;
begin
if Assigned(Fcnpj) then
Fcnpj.Free;
if Assigned(Fcpf) then
Fcpf.Free;
if Assigned(FvrProdutoParceiro) then
FvrProdutoParceiro.Free;
inherited Destroy;
end;

constructor ProdutosResgate.Create;
begin
inherited Create;
FSerializationOptions := [xoInlineArrays];
end;

destructor ProdutosResgate.Destroy;
var
I: Integer;
begin
for I := 0 to Length(Fproduto)-1 do
if Assigned(Fproduto[I]) then
Fproduto[I].Free;
SetLength(Fproduto, 0);
inherited Destroy;
end;

function ProdutosResgate.GetProdutoArray(Index: Integer): Produto;
begin
Result := Fproduto[Index];
end;

function ProdutosResgate.GetProdutoArrayLength: Integer;
begin
if Assigned(Fproduto) then
Result := Length(Fproduto)
else
Result := 0;
end;

destructor consultaAssociadoCompletoResponse.Destroy;
begin
if Assigned(Fcpf) then
Fcpf.Free;
if Assigned(FcuponsOnlineVO) then
FcuponsOnlineVO.Free;
if Assigned(FdataNascimento) then
FdataNascimento.Free;
if Assigned(Ferro) then
Ferro.Free;
if Assigned(Fproduto) then
Fproduto.Free;
if Assigned(FprodutosResgate) then
FprodutosResgate.Free;
inherited Destroy;
end;

initialization
InvRegistry.RegisterInterface(TypeInfo(AssociadoCompletoMarisaServiceEndpoint), 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'UTF-8');
InvRegistry.RegisterDefaultSOAPAction(TypeInfo(AssociadoCompletoMarisaServiceEndpoint), '');
InvRegistry.RegisterInvokeOptions(TypeInfo(AssociadoCompletoMarisaServiceEndpoint), ioDocument);
RemClassRegistry.RegisterXSClass(ServiceException, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'ServiceException');
RemClassRegistry.RegisterXSClass(consultaAssociadoCompletoRequest, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'consultaAssociadoCompletoRequest');
RemClassRegistry.RegisterXSClass(cupomOnlineVO, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'cupomOnlineVO');
RemClassRegistry.RegisterXSClass(Erro, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'Erro');
RemClassRegistry.RegisterXSClass(Produto, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'Produto');
RemClassRegistry.RegisterXSInfo(TypeInfo(produto2), 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'produto2', 'produto');
RemClassRegistry.RegisterXSClass(ProdutosResgate, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'ProdutosResgate');
RemClassRegistry.RegisterSerializeOptions(ProdutosResgate, [xoInlineArrays]);
RemClassRegistry.RegisterXSClass(consultaAssociadoCompletoResponse, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'consultaAssociadoCompletoResponse');

end.

E no Delphi XE2 da seguinte forma:
// ************************************************************************ //
// The types declared in this file were generated from data read from the
// WSDL File described below:
// WSDL : http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl?wsdl
// >Import : http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl?wsdl>0
// Encoding : UTF-8
// Version : 1.0
// (03/06/2015 18:00:28 - - $Rev: 45757 $)
// ************************************************************************ //

unit AssociadoCompletoServiceEndpointImpl;

interface

uses InvokeRegistry, SOAPHTTPClient, Types, XSBuiltIns;

const
IS_OPTN = $0001;
IS_UNBD = $0002;
IS_NLBL = $0004;
IS_UNQL = $0008;


type

// ************************************************************************ //
// The following types, referred to in the WSDL document are not being represented
// in this file. They are either aliases[@] of other types represented or were referred
// to but never[!] declared in the document. The types from the latter category
// typically map to predefined/known XML or Embarcadero types; however, they could also
// indicate incorrect WSDL documents that failed to declare or import a schema type.
// ************************************************************************ //
// !:double - "http://www.w3.org/2001/XMLSchema"[Gbl]
// !:int - "http://www.w3.org/2001/XMLSchema"[Gbl]
// !:decimal - "http://www.w3.org/2001/XMLSchema"[Gbl]
// !:long - "http://www.w3.org/2001/XMLSchema"[Gbl]
// !:string - "http://www.w3.org/2001/XMLSchema"[Gbl]
// !:dateTime - "http://www.w3.org/2001/XMLSchema"[Gbl]
// !:boolean - "http://www.w3.org/2001/XMLSchema"[Gbl]

ServiceException2 = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }
ServiceException = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[Flt][GblElm] }
consultaAssociadoCompletoRequest = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }
Produto = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }
Erro2 = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }
erro = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblElm] }
consultaAssociadoCompletoResponse = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }
cupomOnlineVO = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }

ProdutosResgate = array of Produto; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }


// ************************************************************************ //
// XML : ServiceException, global, <complexType>
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
ServiceException2 = class(TRemotable)
private
published
end;



// ************************************************************************ //
// XML : ServiceException, global, <element>
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// Info : Fault
// Base Types: ServiceException
// ************************************************************************ //
ServiceException = class(ERemotableException)
private
published
end;

Array_Of_cupomOnlineVO = array of cupomOnlineVO; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblUbnd] }


// ************************************************************************ //
// XML : consultaAssociadoCompletoRequest, global, <complexType>
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
consultaAssociadoCompletoRequest = class(TRemotable)
private
Fatendente: string;
Fatendente_Specified: boolean;
Fcnpj: TXSDecimal;
Fcnpj_Specified: boolean;
Fcpf: TXSDecimal;
Fcpf_Specified: boolean;
FnuComprovante: Int64;
FnuComprovante_Specified: boolean;
FvrProdutoParceiro: TXSDecimal;
FvrProdutoParceiro_Specified: boolean;
procedure Setatendente(Index: Integer; const Astring: string);
function atendente_Specified(Index: Integer): boolean;
procedure Setcnpj(Index: Integer; const ATXSDecimal: TXSDecimal);
function cnpj_Specified(Index: Integer): boolean;
procedure Setcpf(Index: Integer; const ATXSDecimal: TXSDecimal);
function cpf_Specified(Index: Integer): boolean;
procedure SetnuComprovante(Index: Integer; const AInt64: Int64);
function nuComprovante_Specified(Index: Integer): boolean;
procedure SetvrProdutoParceiro(Index: Integer; const ATXSDecimal: TXSDecimal);
function vrProdutoParceiro_Specified(Index: Integer): boolean;
public
destructor Destroy; override;
published
property atendente: string Index (IS_OPTN or IS_UNQL) read Fatendente write Setatendente stored atendente_Specified;
property cnpj: TXSDecimal Index (IS_OPTN or IS_UNQL) read Fcnpj write Setcnpj stored cnpj_Specified;
property cpf: TXSDecimal Index (IS_OPTN or IS_UNQL) read Fcpf write Setcpf stored cpf_Specified;
property nuComprovante: Int64 Index (IS_OPTN or IS_UNQL) read FnuComprovante write SetnuComprovante stored nuComprovante_Specified;
property vrProdutoParceiro: TXSDecimal Index (IS_OPTN or IS_UNQL) read FvrProdutoParceiro write SetvrProdutoParceiro stored vrProdutoParceiro_Specified;
end;



// ************************************************************************ //
// XML : Produto, global, <complexType>
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
Produto = class(TRemotable)
private
FcodigoProduto: Integer;
FvalorPontosNPUnitario: Integer;
FvalorUnitario: Double;
FdescricaoProduto: string;
published
property codigoProduto: Integer Index (IS_UNQL) read FcodigoProduto write FcodigoProduto;
property valorPontosNPUnitario: Integer Index (IS_UNQL) read FvalorPontosNPUnitario write FvalorPontosNPUnitario;
property valorUnitario: Double Index (IS_UNQL) read FvalorUnitario write FvalorUnitario;
property descricaoProduto: string Index (IS_UNQL) read FdescricaoProduto write FdescricaoProduto;
end;



// ************************************************************************ //
// XML : Erro, global, <complexType>
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
Erro2 = class(TRemotable)
private
Fcodigo: Integer;
Fcategoria: string;
Fdescricao: string;
published
property codigo: Integer Index (IS_UNQL) read Fcodigo write Fcodigo;
property categoria: string Index (IS_UNQL) read Fcategoria write Fcategoria;
property descricao: string Index (IS_UNQL) read Fdescricao write Fdescricao;
end;



// ************************************************************************ //
// XML : erro, global, <element>
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
erro = class(Erro2)
private
published
end;



// ************************************************************************ //
// XML : consultaAssociadoCompletoResponse, global, <complexType>
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
consultaAssociadoCompletoResponse = class(TRemotable)
private
Fcpf: TXSDecimal;
Fcpf_Specified: boolean;
Fcuponagem: Boolean;
Fcuponagem_Specified: boolean;
FcuponsOnlineVO: Array_Of_cupomOnlineVO;
FcuponsOnlineVO_Specified: boolean;
FdataNascimento: TXSDateTime;
FdataNascimento_Specified: boolean;
Ferro: Erro2;
Ferro_Specified: boolean;
FidProposta: Integer;
FidProposta_Specified: boolean;
Fmensagem: string;
Fmensagem_Specified: boolean;
Fnome: string;
Fnome_Specified: boolean;
Fproduto: Produto;
Fproduto_Specified: boolean;
FprodutosResgate: ProdutosResgate;
FprodutosResgate_Specified: boolean;
FsaldoPontosNP: Integer;
FsaldoPontosNP_Specified: boolean;
Fstatus: Integer;
Fstatus_Specified: boolean;
procedure Setcpf(Index: Integer; const ATXSDecimal: TXSDecimal);
function cpf_Specified(Index: Integer): boolean;
procedure Setcuponagem(Index: Integer; const ABoolean: Boolean);
function cuponagem_Specified(Index: Integer): boolean;
procedure SetcuponsOnlineVO(Index: Integer; const AArray_Of_cupomOnlineVO: Array_Of_cupomOnlineVO);
function cuponsOnlineVO_Specified(Index: Integer): boolean;
procedure SetdataNascimento(Index: Integer; const ATXSDateTime: TXSDateTime);
function dataNascimento_Specified(Index: Integer): boolean;
procedure Seterro(Index: Integer; const AErro2: Erro2);
function erro_Specified(Index: Integer): boolean;
procedure SetidProposta(Index: Integer; const AInteger: Integer);
function idProposta_Specified(Index: Integer): boolean;
procedure Setmensagem(Index: Integer; const Astring: string);
function mensagem_Specified(Index: Integer): boolean;
procedure Setnome(Index: Integer; const Astring: string);
function nome_Specified(Index: Integer): boolean;
procedure Setproduto(Index: Integer; const AProduto: Produto);
function produto_Specified(Index: Integer): boolean;
procedure SetprodutosResgate(Index: Integer; const AProdutosResgate: ProdutosResgate);
function produtosResgate_Specified(Index: Integer): boolean;
procedure SetsaldoPontosNP(Index: Integer; const AInteger: Integer);
function saldoPontosNP_Specified(Index: Integer): boolean;
procedure Setstatus(Index: Integer; const AInteger: Integer);
function status_Specified(Index: Integer): boolean;
public
destructor Destroy; override;
published
property cpf: TXSDecimal Index (IS_OPTN or IS_UNQL) read Fcpf write Setcpf stored cpf_Specified;
property cuponagem: Boolean Index (IS_OPTN or IS_UNQL) read Fcuponagem write Setcuponagem stored cuponagem_Specified;
property cuponsOnlineVO: Array_Of_cupomOnlineVO Index (IS_OPTN or IS_UNBD or IS_NLBL or IS_UNQL) read FcuponsOnlineVO write SetcuponsOnlineVO stored cuponsOnlineVO_Specified;
property dataNascimento: TXSDateTime Index (IS_OPTN or IS_UNQL) read FdataNascimento write SetdataNascimento stored dataNascimento_Specified;
property erro: Erro2 Index (IS_OPTN or IS_UNQL) read Ferro write Seterro stored erro_Specified;
property idProposta: Integer Index (IS_OPTN or IS_UNQL) read FidProposta write SetidProposta stored idProposta_Specified;
property mensagem: string Index (IS_OPTN or IS_UNQL) read Fmensagem write Setmensagem stored mensagem_Specified;
property nome: string Index (IS_OPTN or IS_UNQL) read Fnome write Setnome stored nome_Specified;
property produto: Produto Index (IS_OPTN or IS_UNQL) read Fproduto write Setproduto stored produto_Specified;
property produtosResgate: ProdutosResgate Index (IS_OPTN or IS_UNQL) read FprodutosResgate write SetprodutosResgate stored produtosResgate_Specified;
property saldoPontosNP: Integer Index (IS_OPTN or IS_UNQL) read FsaldoPontosNP write SetsaldoPontosNP stored saldoPontosNP_Specified;
property status: Integer Index (IS_OPTN or IS_UNQL) read Fstatus write Setstatus stored status_Specified;
end;



// ************************************************************************ //
// XML : cupomOnlineVO, global, <complexType>
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
cupomOnlineVO = class(TRemotable)
private
FdsCodigo: string;
FdsCodigo_Specified: boolean;
FdsCupomFiscal: string;
FdsCupomFiscal_Specified: boolean;
FdsNomeExterna: string;
FdsNomeExterna_Specified: boolean;
FdsPremio: string;
FdsPremio_Specified: boolean;
FidCampanha: Integer;
FidCampanha_Specified: boolean;
procedure SetdsCodigo(Index: Integer; const Astring: string);
function dsCodigo_Specified(Index: Integer): boolean;
procedure SetdsCupomFiscal(Index: Integer; const Astring: string);
function dsCupomFiscal_Specified(Index: Integer): boolean;
procedure SetdsNomeExterna(Index: Integer; const Astring: string);
function dsNomeExterna_Specified(Index: Integer): boolean;
procedure SetdsPremio(Index: Integer; const Astring: string);
function dsPremio_Specified(Index: Integer): boolean;
procedure SetidCampanha(Index: Integer; const AInteger: Integer);
function idCampanha_Specified(Index: Integer): boolean;
published
property dsCodigo: string Index (IS_OPTN or IS_UNQL) read FdsCodigo write SetdsCodigo stored dsCodigo_Specified;
property dsCupomFiscal: string Index (IS_OPTN or IS_UNQL) read FdsCupomFiscal write SetdsCupomFiscal stored dsCupomFiscal_Specified;
property dsNomeExterna: string Index (IS_OPTN or IS_UNQL) read FdsNomeExterna write SetdsNomeExterna stored dsNomeExterna_Specified;
property dsPremio: string Index (IS_OPTN or IS_UNQL) read FdsPremio write SetdsPremio stored dsPremio_Specified;
property idCampanha: Integer Index (IS_OPTN or IS_UNQL) read FidCampanha write SetidCampanha stored idCampanha_Specified;
end;


// ************************************************************************ //
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// transport : http://schemas.xmlsoap.org/soap/http
// style : document
// use : literal
// binding : AssociadoCompletoMarisaServiceEndpointImplSoapBinding
// service : AssociadoCompletoMarisaServiceEndpointImpl
// port : AssociadoCompletoMarisaServiceEndpointImplPort
// URL : http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl
// ************************************************************************ //
AssociadoCompletoMarisaServiceEndpoint = interface(IInvokable)
['{CBF1F20D-EDA2-1C8D-E656-7A7D30462E07}']
function consultarStatusAssociadoCompleto(const consultaAssociadoCompletoRequest: consultaAssociadoCompletoRequest): consultaAssociadoCompletoResponse; stdcall;
end;

function GetAssociadoCompletoMarisaServiceEndpoint(UseWSDL: Boolean=System.False; Addr: string=''; HTTPRIO: THTTPRIO = nil): AssociadoCompletoMarisaServiceEndpoint;


implementation
uses SysUtils;

function GetAssociadoCompletoMarisaServiceEndpoint(UseWSDL: Boolean; Addr: string; HTTPRIO: THTTPRIO): AssociadoCompletoMarisaServiceEndpoint;
const
defWSDL = 'http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl?wsdl';
defURL = 'http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl';
defSvc = 'AssociadoCompletoMarisaServiceEndpointImpl';
defPrt = 'AssociadoCompletoMarisaServiceEndpointImplPort';
var
RIO: THTTPRIO;
begin
Result := nil;
if (Addr = '') then
begin
if UseWSDL then
Addr := defWSDL
else
Addr := defURL;
end;
if HTTPRIO = nil then
RIO := THTTPRIO.Create(nil)
else
RIO := HTTPRIO;
try
Result := (RIO as AssociadoCompletoMarisaServiceEndpoint);
if UseWSDL then
begin
RIO.WSDLLocation := Addr;
RIO.Service := defSvc;
RIO.Port := defPrt;
end else
RIO.URL := Addr;
finally
if (Result = nil) and (HTTPRIO = nil) then
RIO.Free;
end;
end;


destructor consultaAssociadoCompletoRequest.Destroy;
begin
SysUtils.FreeAndNil(Fcnpj);
SysUtils.FreeAndNil(Fcpf);
SysUtils.FreeAndNil(FvrProdutoParceiro);
inherited Destroy;
end;

procedure consultaAssociadoCompletoRequest.Setatendente(Index: Integer; const Astring: string);
begin
Fatendente := Astring;
Fatendente_Specified := True;
end;

function consultaAssociadoCompletoRequest.atendente_Specified(Index: Integer): boolean;
begin
Result := Fatendente_Specified;
end;

procedure consultaAssociadoCompletoRequest.Setcnpj(Index: Integer; const ATXSDecimal: TXSDecimal);
begin
Fcnpj := ATXSDecimal;
Fcnpj_Specified := True;
end;

function consultaAssociadoCompletoRequest.cnpj_Specified(Index: Integer): boolean;
begin
Result := Fcnpj_Specified;
end;

procedure consultaAssociadoCompletoRequest.Setcpf(Index: Integer; const ATXSDecimal: TXSDecimal);
begin
Fcpf := ATXSDecimal;
Fcpf_Specified := True;
end;

function consultaAssociadoCompletoRequest.cpf_Specified(Index: Integer): boolean;
begin
Result := Fcpf_Specified;
end;

procedure consultaAssociadoCompletoRequest.SetnuComprovante(Index: Integer; const AInt64: Int64);
begin
FnuComprovante := AInt64;
FnuComprovante_Specified := True;
end;

function consultaAssociadoCompletoRequest.nuComprovante_Specified(Index: Integer): boolean;
begin
Result := FnuComprovante_Specified;
end;

procedure consultaAssociadoCompletoRequest.SetvrProdutoParceiro(Index: Integer; const ATXSDecimal: TXSDecimal);
begin
FvrProdutoParceiro := ATXSDecimal;
FvrProdutoParceiro_Specified := True;
end;

function consultaAssociadoCompletoRequest.vrProdutoParceiro_Specified(Index: Integer): boolean;
begin
Result := FvrProdutoParceiro_Specified;
end;

destructor consultaAssociadoCompletoResponse.Destroy;
var
I: Integer;
begin
for I := 0 to System.Length(FcuponsOnlineVO)-1 do
SysUtils.FreeAndNil(FcuponsOnlineVO[I]);
System.SetLength(FcuponsOnlineVO, 0);
for I := 0 to System.Length(FprodutosResgate)-1 do
SysUtils.FreeAndNil(FprodutosResgate[I]);
System.SetLength(FprodutosResgate, 0);
SysUtils.FreeAndNil(Fcpf);
SysUtils.FreeAndNil(FdataNascimento);
SysUtils.FreeAndNil(Ferro);
SysUtils.FreeAndNil(Fproduto);
inherited Destroy;
end;

procedure consultaAssociadoCompletoResponse.Setcpf(Index: Integer; const ATXSDecimal: TXSDecimal);
begin
Fcpf := ATXSDecimal;
Fcpf_Specified := True;
end;

function consultaAssociadoCompletoResponse.cpf_Specified(Index: Integer): boolean;
begin
Result := Fcpf_Specified;
end;

procedure consultaAssociadoCompletoResponse.Setcuponagem(Index: Integer; const ABoolean: Boolean);
begin
Fcuponagem := ABoolean;
Fcuponagem_Specified := True;
end;

function consultaAssociadoCompletoResponse.cuponagem_Specified(Index: Integer): boolean;
begin
Result := Fcuponagem_Specified;
end;

procedure consultaAssociadoCompletoResponse.SetcuponsOnlineVO(Index: Integer; const AArray_Of_cupomOnlineVO: Array_Of_cupomOnlineVO);
begin
FcuponsOnlineVO := AArray_Of_cupomOnlineVO;
FcuponsOnlineVO_Specified := True;
end;

function consultaAssociadoCompletoResponse.cuponsOnlineVO_Specified(Index: Integer): boolean;
begin
Result := FcuponsOnlineVO_Specified;
end;

procedure consultaAssociadoCompletoResponse.SetdataNascimento(Index: Integer; const ATXSDateTime: TXSDateTime);
begin
FdataNascimento := ATXSDateTime;
FdataNascimento_Specified := True;
end;

function consultaAssociadoCompletoResponse.dataNascimento_Specified(Index: Integer): boolean;
begin
Result := FdataNascimento_Specified;
end;

procedure consultaAssociadoCompletoResponse.Seterro(Index: Integer; const AErro2: Erro2);
begin
Ferro := AErro2;
Ferro_Specified := True;
end;

function consultaAssociadoCompletoResponse.erro_Specified(Index: Integer): boolean;
begin
Result := Ferro_Specified;
end;

procedure consultaAssociadoCompletoResponse.SetidProposta(Index: Integer; const AInteger: Integer);
begin
FidProposta := AInteger;
FidProposta_Specified := True;
end;

function consultaAssociadoCompletoResponse.idProposta_Specified(Index: Integer): boolean;
begin
Result := FidProposta_Specified;
end;

procedure consultaAssociadoCompletoResponse.Setmensagem(Index: Integer; const Astring: string);
begin
Fmensagem := Astring;
Fmensagem_Specified := True;
end;

function consultaAssociadoCompletoResponse.mensagem_Specified(Index: Integer): boolean;
begin
Result := Fmensagem_Specified;
end;

procedure consultaAssociadoCompletoResponse.Setnome(Index: Integer; const Astring: string);
begin
Fnome := Astring;
Fnome_Specified := True;
end;

function consultaAssociadoCompletoResponse.nome_Specified(Index: Integer): boolean;
begin
Result := Fnome_Specified;
end;

procedure consultaAssociadoCompletoResponse.Setproduto(Index: Integer; const AProduto: Produto);
begin
Fproduto := AProduto;
Fproduto_Specified := True;
end;

function consultaAssociadoCompletoResponse.produto_Specified(Index: Integer): boolean;
begin
Result := Fproduto_Specified;
end;

procedure consultaAssociadoCompletoResponse.SetprodutosResgate(Index: Integer; const AProdutosResgate: ProdutosResgate);
begin
FprodutosResgate := AProdutosResgate;
FprodutosResgate_Specified := True;
end;

function consultaAssociadoCompletoResponse.produtosResgate_Specified(Index: Integer): boolean;
begin
Result := FprodutosResgate_Specified;
end;

procedure consultaAssociadoCompletoResponse.SetsaldoPontosNP(Index: Integer; const AInteger: Integer);
begin
FsaldoPontosNP := AInteger;
FsaldoPontosNP_Specified := True;
end;

function consultaAssociadoCompletoResponse.saldoPontosNP_Specified(Index: Integer): boolean;
begin
Result := FsaldoPontosNP_Specified;
end;

procedure consultaAssociadoCompletoResponse.Setstatus(Index: Integer; const AInteger: Integer);
begin
Fstatus := AInteger;
Fstatus_Specified := True;
end;

function consultaAssociadoCompletoResponse.status_Specified(Index: Integer): boolean;
begin
Result := Fstatus_Specified;
end;

procedure cupomOnlineVO.SetdsCodigo(Index: Integer; const Astring: string);
begin
FdsCodigo := Astring;
FdsCodigo_Specified := True;
end;

function cupomOnlineVO.dsCodigo_Specified(Index: Integer): boolean;
begin
Result := FdsCodigo_Specified;
end;

procedure cupomOnlineVO.SetdsCupomFiscal(Index: Integer; const Astring: string);
begin
FdsCupomFiscal := Astring;
FdsCupomFiscal_Specified := True;
end;

function cupomOnlineVO.dsCupomFiscal_Specified(Index: Integer): boolean;
begin
Result := FdsCupomFiscal_Specified;
end;

procedure cupomOnlineVO.SetdsNomeExterna(Index: Integer; const Astring: string);
begin
FdsNomeExterna := Astring;
FdsNomeExterna_Specified := True;
end;

function cupomOnlineVO.dsNomeExterna_Specified(Index: Integer): boolean;
begin
Result := FdsNomeExterna_Specified;
end;

procedure cupomOnlineVO.SetdsPremio(Index: Integer; const Astring: string);
begin
FdsPremio := Astring;
FdsPremio_Specified := True;
end;

function cupomOnlineVO.dsPremio_Specified(Index: Integer): boolean;
begin
Result := FdsPremio_Specified;
end;

procedure cupomOnlineVO.SetidCampanha(Index: Integer; const AInteger: Integer);
begin
FidCampanha := AInteger;
FidCampanha_Specified := True;
end;

function cupomOnlineVO.idCampanha_Specified(Index: Integer): boolean;
begin
Result := FidCampanha_Specified;
end;

initialization
{ AssociadoCompletoMarisaServiceEndpoint }
InvRegistry.RegisterInterface(TypeInfo(AssociadoCompletoMarisaServiceEndpoint), 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'UTF-8');
InvRegistry.RegisterDefaultSOAPAction(TypeInfo(AssociadoCompletoMarisaServiceEndpoint), '');
InvRegistry.RegisterInvokeOptions(TypeInfo(AssociadoCompletoMarisaServiceEndpoint), ioDocument);
{ AssociadoCompletoMarisaServiceEndpoint.consultarStatusAssociadoCompleto }
InvRegistry.RegisterMethodInfo(TypeInfo(AssociadoCompletoMarisaServiceEndpoint), 'consultarStatusAssociadoCompleto', '',
'[ReturnName="return"]', IS_OPTN or IS_UNQL);
InvRegistry.RegisterParamInfo(TypeInfo(AssociadoCompletoMarisaServiceEndpoint), 'consultarStatusAssociadoCompleto', 'consultaAssociadoCompletoRequest', '',
'', IS_UNQL);
InvRegistry.RegisterParamInfo(TypeInfo(AssociadoCompletoMarisaServiceEndpoint), 'consultarStatusAssociadoCompleto', 'return', '',
'', IS_UNQL);
RemClassRegistry.RegisterXSInfo(TypeInfo(ProdutosResgate), 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'ProdutosResgate');
RemClassRegistry.RegisterXSClass(ServiceException2, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'ServiceException2', 'ServiceException');
RemClassRegistry.RegisterXSClass(ServiceException, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'ServiceException');
RemClassRegistry.RegisterXSInfo(TypeInfo(Array_Of_cupomOnlineVO), 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'Array_Of_cupomOnlineVO');
RemClassRegistry.RegisterXSClass(consultaAssociadoCompletoRequest, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'consultaAssociadoCompletoRequest');
RemClassRegistry.RegisterXSClass(Produto, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'Produto');
RemClassRegistry.RegisterXSClass(Erro2, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'Erro2', 'Erro');
RemClassRegistry.RegisterXSClass(erro, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'erro');
RemClassRegistry.RegisterXSClass(consultaAssociadoCompletoResponse, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'consultaAssociadoCompletoResponse');
RemClassRegistry.RegisterExternalPropName(TypeInfo(consultaAssociadoCompletoResponse), 'produtosResgate', '[ArrayItemName="produto"]');
RemClassRegistry.RegisterXSClass(cupomOnlineVO, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'cupomOnlineVO');
end.

Notem que no final, na parte implementacion, no Delphi XE2 é trazido bem mais informações. Obrigado, e desculpem pelo excesso de código na postagem.
Roberto Barbosa

Roberto Barbosa

Curtidas 0

Respostas

Renato Rubinho

Renato Rubinho

09/06/2015

Buenos,

É um bug/incompatibilidade do Delphi 7.
Pastei com isso também para consumir um webservice feito em java.
Precisa atualizar a versão do Soap/Importer.

Atualização do Soap - Delphi 7

Abraççç,
rrubinho
GOSTEI 0
Roberto Barbosa

Roberto Barbosa

09/06/2015

Vou testar e já posto se deu certo amigo, muito obrigado por enquanto.
GOSTEI 0
Roberto Barbosa

Roberto Barbosa

09/06/2015

Bom dia, fiz o procedimento acima e a classe foi gerada corretamente, porem, agora tenho outro erro. Minha classe InvokeRegistry não reconhece os metodos 'RegisterMethodInfo' e 'RegisterParamInfo'. Acho q a classe não está atualizada.

Será que fiz algo errado?
[img:descricao=Imagem do erro]http://arquivo.devmedia.com.br/forum/imagem/435717-20150610-101423.png[/img]
GOSTEI 0
Roberto Barbosa

Roberto Barbosa

09/06/2015

Ninguem?
GOSTEI 0
Roberto Barbosa

Roberto Barbosa

09/06/2015

Estou precisando de uma ajuda urgente, ninguem nunca trabalhou com Webservice e que possa me dar uma luz?
GOSTEI 0
Renato Rubinho

Renato Rubinho

09/06/2015

Não sei o que pode ser.
É uma classe criada automaticamente ao importar o WSDL

Você tentou importar rodando na mão a partir do executável baixado na atualização da Embarcadero?

WSDLImp.exe -p http://endereco.do.web.service/nome_web_service?WSDL
GOSTEI 0
Roberto Barbosa

Roberto Barbosa

09/06/2015

Eu importei sim amigo, direitinho, e ele me gerou a classe exatamente igual no Delphi XE2, porem as classe invokerRegistry nativa do delphi, não tem a implementação para os métodos RegisterParamInfo e RegisterMethodInfo, ai a aplicação não roda. Já tentei de tudo, até criar uma nova classe com a implementação para esses métodos, mas não deu resultado.

Voce poderia tentar fazer um teste importando o wsdl http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl?wsdl e tentar compilar para ver se no seu delphi 7 dá o mesmo erro?
GOSTEI 0
Renato Rubinho

Renato Rubinho

09/06/2015

Segue a unit gerada

// ************************************************************************ //
// The types declared in this file were generated from data read from the
// WSDL File described below:
// WSDL     : http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl?wsdl
//  >Import : http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl?wsdl:0
// Encoding : UTF-8
// Version  : 1.0
// (12/06/2015 17:37:01 - - $Rev: 10138 $)
// ************************************************************************ //

unit AssociadoCompletoServiceEndpointImpl;

interface

uses InvokeRegistry, SOAPHTTPClient, Types, XSBuiltIns;

const
  IS_OPTN = $0001;
  IS_UNBD = $0002;
  IS_NLBL = $0004;
  IS_UNQL = $0008;


type

  // ************************************************************************ //
  // The following types, referred to in the WSDL document are not being represented
  // in this file. They are either aliases[@] of other types represented or were referred
  // to but never[!] declared in the document. The types from the latter category
  // typically map to predefined/known XML or Borland types; however, they could also 
  // indicate incorrect WSDL documents that failed to declare or import a schema type.
  // ************************************************************************ //
  // !:string          - "http://www.w3.org/2001/XMLSchema"[Gbl]
  // !:decimal         - "http://www.w3.org/2001/XMLSchema"[Gbl]
  // !:long            - "http://www.w3.org/2001/XMLSchema"[Gbl]
  // !:boolean         - "http://www.w3.org/2001/XMLSchema"[Gbl]
  // !:dateTime        - "http://www.w3.org/2001/XMLSchema"[Gbl]
  // !:int             - "http://www.w3.org/2001/XMLSchema"[Gbl]
  // !:double          - "http://www.w3.org/2001/XMLSchema"[Gbl]

  consultaAssociadoCompletoRequest = class;     { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }
  Erro                 = class;                 { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }
  cupomOnlineVO        = class;                 { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }
  Produto              = class;                 { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }
  erro2                = class;                 { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblElm] }
  produto2             = class;                 { "http://endpoint.associadoservice.ws.netpoints.com.br/"[Alias] }
  consultaAssociadoCompletoResponse = class;    { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }



  // ************************************************************************ //
  // XML       : consultaAssociadoCompletoRequest, global, <complexType>
  // Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
  // ************************************************************************ //
  consultaAssociadoCompletoRequest = class(TRemotable)
  private
    Fatendente: WideString;
    Fatendente_Specified: boolean;
    Fcnpj: TXSDecimal;
    Fcnpj_Specified: boolean;
    Fcpf: TXSDecimal;
    Fcpf_Specified: boolean;
    FnuComprovante: Int64;
    FnuComprovante_Specified: boolean;
    FvrProdutoParceiro: TXSDecimal;
    FvrProdutoParceiro_Specified: boolean;
    procedure Setatendente(Index: Integer; const AWideString: WideString);
    function  atendente_Specified(Index: Integer): boolean;
    procedure Setcnpj(Index: Integer; const ATXSDecimal: TXSDecimal);
    function  cnpj_Specified(Index: Integer): boolean;
    procedure Setcpf(Index: Integer; const ATXSDecimal: TXSDecimal);
    function  cpf_Specified(Index: Integer): boolean;
    procedure SetnuComprovante(Index: Integer; const AInt64: Int64);
    function  nuComprovante_Specified(Index: Integer): boolean;
    procedure SetvrProdutoParceiro(Index: Integer; const ATXSDecimal: TXSDecimal);
    function  vrProdutoParceiro_Specified(Index: Integer): boolean;
  public
    destructor Destroy; override;
  published
    property atendente:         WideString  Index (IS_OPTN or IS_UNQL) read Fatendente write Setatendente stored atendente_Specified;
    property cnpj:              TXSDecimal  Index (IS_OPTN or IS_UNQL) read Fcnpj write Setcnpj stored cnpj_Specified;
    property cpf:               TXSDecimal  Index (IS_OPTN or IS_UNQL) read Fcpf write Setcpf stored cpf_Specified;
    property nuComprovante:     Int64       Index (IS_OPTN or IS_UNQL) read FnuComprovante write SetnuComprovante stored nuComprovante_Specified;
    property vrProdutoParceiro: TXSDecimal  Index (IS_OPTN or IS_UNQL) read FvrProdutoParceiro write SetvrProdutoParceiro stored vrProdutoParceiro_Specified;
  end;



  // ************************************************************************ //
  // XML       : Erro, global, <complexType>
  // Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
  // ************************************************************************ //
  Erro = class(TRemotable)
  private
    Fcodigo: Integer;
    Fcategoria: WideString;
    Fdescricao: WideString;
  published
    property codigo:    Integer     Index (IS_UNQL) read Fcodigo write Fcodigo;
    property categoria: WideString  Index (IS_UNQL) read Fcategoria write Fcategoria;
    property descricao: WideString  Index (IS_UNQL) read Fdescricao write Fdescricao;
  end;



  // ************************************************************************ //
  // XML       : cupomOnlineVO, global, <complexType>
  // Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
  // ************************************************************************ //
  cupomOnlineVO = class(TRemotable)
  private
    FdsCodigo: WideString;
    FdsCodigo_Specified: boolean;
    FdsCupomFiscal: WideString;
    FdsCupomFiscal_Specified: boolean;
    FdsNomeExterna: WideString;
    FdsNomeExterna_Specified: boolean;
    FdsPremio: WideString;
    FdsPremio_Specified: boolean;
    FidCampanha: Integer;
    FidCampanha_Specified: boolean;
    procedure SetdsCodigo(Index: Integer; const AWideString: WideString);
    function  dsCodigo_Specified(Index: Integer): boolean;
    procedure SetdsCupomFiscal(Index: Integer; const AWideString: WideString);
    function  dsCupomFiscal_Specified(Index: Integer): boolean;
    procedure SetdsNomeExterna(Index: Integer; const AWideString: WideString);
    function  dsNomeExterna_Specified(Index: Integer): boolean;
    procedure SetdsPremio(Index: Integer; const AWideString: WideString);
    function  dsPremio_Specified(Index: Integer): boolean;
    procedure SetidCampanha(Index: Integer; const AInteger: Integer);
    function  idCampanha_Specified(Index: Integer): boolean;
  published
    property dsCodigo:      WideString  Index (IS_OPTN or IS_UNQL) read FdsCodigo write SetdsCodigo stored dsCodigo_Specified;
    property dsCupomFiscal: WideString  Index (IS_OPTN or IS_UNQL) read FdsCupomFiscal write SetdsCupomFiscal stored dsCupomFiscal_Specified;
    property dsNomeExterna: WideString  Index (IS_OPTN or IS_UNQL) read FdsNomeExterna write SetdsNomeExterna stored dsNomeExterna_Specified;
    property dsPremio:      WideString  Index (IS_OPTN or IS_UNQL) read FdsPremio write SetdsPremio stored dsPremio_Specified;
    property idCampanha:    Integer     Index (IS_OPTN or IS_UNQL) read FidCampanha write SetidCampanha stored idCampanha_Specified;
  end;

  ProdutosResgate = array of produto2;          { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }


  // ************************************************************************ //
  // XML       : Produto, global, <complexType>
  // Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
  // ************************************************************************ //
  Produto = class(TRemotable)
  private
    FcodigoProduto: Integer;
    FvalorPontosNPUnitario: Integer;
    FvalorUnitario: Double;
    FdescricaoProduto: WideString;
  published
    property codigoProduto:         Integer     Index (IS_UNQL) read FcodigoProduto write FcodigoProduto;
    property valorPontosNPUnitario: Integer     Index (IS_UNQL) read FvalorPontosNPUnitario write FvalorPontosNPUnitario;
    property valorUnitario:         Double      Index (IS_UNQL) read FvalorUnitario write FvalorUnitario;
    property descricaoProduto:      WideString  Index (IS_UNQL) read FdescricaoProduto write FdescricaoProduto;
  end;



  // ************************************************************************ //
  // XML       : erro, global, <element>
  // Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
  // ************************************************************************ //
  erro2 = class(Erro)
  private
  published
  end;



  // ************************************************************************ //
  // XML       : produto, alias
  // Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
  // ************************************************************************ //
  produto2 = class(Produto)
  private
  published
  end;

  Array_Of_cupomOnlineVO = array of cupomOnlineVO;   { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblUbnd] }


  // ************************************************************************ //
  // XML       : consultaAssociadoCompletoResponse, global, <complexType>
  // Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
  // ************************************************************************ //
  consultaAssociadoCompletoResponse = class(TRemotable)
  private
    Fcpf: TXSDecimal;
    Fcpf_Specified: boolean;
    Fcuponagem: Boolean;
    Fcuponagem_Specified: boolean;
    FcuponsOnlineVO: Array_Of_cupomOnlineVO;
    FcuponsOnlineVO_Specified: boolean;
    FdataNascimento: TXSDateTime;
    FdataNascimento_Specified: boolean;
    Ferro: Erro;
    Ferro_Specified: boolean;
    FidProposta: Integer;
    FidProposta_Specified: boolean;
    Fmensagem: WideString;
    Fmensagem_Specified: boolean;
    Fnome: WideString;
    Fnome_Specified: boolean;
    Fproduto: Produto;
    Fproduto_Specified: boolean;
    FprodutosResgate: ProdutosResgate;
    FprodutosResgate_Specified: boolean;
    FsaldoPontosNP: Integer;
    FsaldoPontosNP_Specified: boolean;
    Fstatus: Integer;
    Fstatus_Specified: boolean;
    procedure Setcpf(Index: Integer; const ATXSDecimal: TXSDecimal);
    function  cpf_Specified(Index: Integer): boolean;
    procedure Setcuponagem(Index: Integer; const ABoolean: Boolean);
    function  cuponagem_Specified(Index: Integer): boolean;
    procedure SetcuponsOnlineVO(Index: Integer; const AArray_Of_cupomOnlineVO: Array_Of_cupomOnlineVO);
    function  cuponsOnlineVO_Specified(Index: Integer): boolean;
    procedure SetdataNascimento(Index: Integer; const ATXSDateTime: TXSDateTime);
    function  dataNascimento_Specified(Index: Integer): boolean;
    procedure Seterro(Index: Integer; const AErro: Erro);
    function  erro_Specified(Index: Integer): boolean;
    procedure SetidProposta(Index: Integer; const AInteger: Integer);
    function  idProposta_Specified(Index: Integer): boolean;
    procedure Setmensagem(Index: Integer; const AWideString: WideString);
    function  mensagem_Specified(Index: Integer): boolean;
    procedure Setnome(Index: Integer; const AWideString: WideString);
    function  nome_Specified(Index: Integer): boolean;
    procedure Setproduto(Index: Integer; const AProduto: Produto);
    function  produto_Specified(Index: Integer): boolean;
    procedure SetprodutosResgate(Index: Integer; const AProdutosResgate: ProdutosResgate);
    function  produtosResgate_Specified(Index: Integer): boolean;
    procedure SetsaldoPontosNP(Index: Integer; const AInteger: Integer);
    function  saldoPontosNP_Specified(Index: Integer): boolean;
    procedure Setstatus(Index: Integer; const AInteger: Integer);
    function  status_Specified(Index: Integer): boolean;
  public
    destructor Destroy; override;
  published
    property cpf:             TXSDecimal              Index (IS_OPTN or IS_UNQL) read Fcpf write Setcpf stored cpf_Specified;
    property cuponagem:       Boolean                 Index (IS_OPTN or IS_UNQL) read Fcuponagem write Setcuponagem stored cuponagem_Specified;
    property cuponsOnlineVO:  Array_Of_cupomOnlineVO  Index (IS_OPTN or IS_UNBD or IS_NLBL or IS_UNQL) read FcuponsOnlineVO write SetcuponsOnlineVO stored cuponsOnlineVO_Specified;
    property dataNascimento:  TXSDateTime             Index (IS_OPTN or IS_UNQL) read FdataNascimento write SetdataNascimento stored dataNascimento_Specified;
    property erro:            Erro                    Index (IS_OPTN or IS_UNQL) read Ferro write Seterro stored erro_Specified;
    property idProposta:      Integer                 Index (IS_OPTN or IS_UNQL) read FidProposta write SetidProposta stored idProposta_Specified;
    property mensagem:        WideString              Index (IS_OPTN or IS_UNQL) read Fmensagem write Setmensagem stored mensagem_Specified;
    property nome:            WideString              Index (IS_OPTN or IS_UNQL) read Fnome write Setnome stored nome_Specified;
    property produto:         Produto                 Index (IS_OPTN or IS_UNQL) read Fproduto write Setproduto stored produto_Specified;
    property produtosResgate: ProdutosResgate         Index (IS_OPTN or IS_UNQL) read FprodutosResgate write SetprodutosResgate stored produtosResgate_Specified;
    property saldoPontosNP:   Integer                 Index (IS_OPTN or IS_UNQL) read FsaldoPontosNP write SetsaldoPontosNP stored saldoPontosNP_Specified;
    property status:          Integer                 Index (IS_OPTN or IS_UNQL) read Fstatus write Setstatus stored status_Specified;
  end;


  // ************************************************************************ //
  // Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
  // transport : http://schemas.xmlsoap.org/soap/http
  // style     : document
  // binding   : AssociadoCompletoMarisaServiceEndpointImplSoapBinding
  // service   : AssociadoCompletoMarisaServiceEndpointImpl
  // port      : AssociadoCompletoMarisaServiceEndpointImplPort
  // URL       : http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl
  // ************************************************************************ //
  AssociadoCompletoMarisaServiceEndpoint = interface(IInvokable)
  ['{CBF1F20D-EDA2-1C8D-E656-7A7D30462E07}']
    function  consultarStatusAssociadoCompleto(const consultaAssociadoCompletoRequest: consultaAssociadoCompletoRequest): consultaAssociadoCompletoResponse; stdcall;
  end;

function GetAssociadoCompletoMarisaServiceEndpoint(UseWSDL: Boolean=System.False; Addr: string=''; HTTPRIO: THTTPRIO = nil): AssociadoCompletoMarisaServiceEndpoint;


implementation
  uses SysUtils;

function GetAssociadoCompletoMarisaServiceEndpoint(UseWSDL: Boolean; Addr: string; HTTPRIO: THTTPRIO): AssociadoCompletoMarisaServiceEndpoint;
const
  defWSDL = 'http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl?wsdl';
  defURL  = 'http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl';
  defSvc  = 'AssociadoCompletoMarisaServiceEndpointImpl';
  defPrt  = 'AssociadoCompletoMarisaServiceEndpointImplPort';
var
  RIO: THTTPRIO;
begin
  Result := nil;
  if (Addr = '') then
  begin
    if UseWSDL then
      Addr := defWSDL
    else
      Addr := defURL;
  end;
  if HTTPRIO = nil then
    RIO := THTTPRIO.Create(nil)
  else
    RIO := HTTPRIO;
  try
    Result := (RIO as AssociadoCompletoMarisaServiceEndpoint);
    if UseWSDL then
    begin
      RIO.WSDLLocation := Addr;
      RIO.Service := defSvc;
      RIO.Port := defPrt;
    end else
      RIO.URL := Addr;
  finally
    if (Result = nil) and (HTTPRIO = nil) then
      RIO.Free;
  end;
end;


destructor consultaAssociadoCompletoRequest.Destroy;
begin
  FreeAndNil(Fcnpj);
  FreeAndNil(Fcpf);
  FreeAndNil(FvrProdutoParceiro);
  inherited Destroy;
end;

procedure consultaAssociadoCompletoRequest.Setatendente(Index: Integer; const AWideString: WideString);
begin
  Fatendente := AWideString;
  Fatendente_Specified := True;
end;

function consultaAssociadoCompletoRequest.atendente_Specified(Index: Integer): boolean;
begin
  Result := Fatendente_Specified;
end;

procedure consultaAssociadoCompletoRequest.Setcnpj(Index: Integer; const ATXSDecimal: TXSDecimal);
begin
  Fcnpj := ATXSDecimal;
  Fcnpj_Specified := True;
end;

function consultaAssociadoCompletoRequest.cnpj_Specified(Index: Integer): boolean;
begin
  Result := Fcnpj_Specified;
end;

procedure consultaAssociadoCompletoRequest.Setcpf(Index: Integer; const ATXSDecimal: TXSDecimal);
begin
  Fcpf := ATXSDecimal;
  Fcpf_Specified := True;
end;

function consultaAssociadoCompletoRequest.cpf_Specified(Index: Integer): boolean;
begin
  Result := Fcpf_Specified;
end;

procedure consultaAssociadoCompletoRequest.SetnuComprovante(Index: Integer; const AInt64: Int64);
begin
  FnuComprovante := AInt64;
  FnuComprovante_Specified := True;
end;

function consultaAssociadoCompletoRequest.nuComprovante_Specified(Index: Integer): boolean;
begin
  Result := FnuComprovante_Specified;
end;

procedure consultaAssociadoCompletoRequest.SetvrProdutoParceiro(Index: Integer; const ATXSDecimal: TXSDecimal);
begin
  FvrProdutoParceiro := ATXSDecimal;
  FvrProdutoParceiro_Specified := True;
end;

function consultaAssociadoCompletoRequest.vrProdutoParceiro_Specified(Index: Integer): boolean;
begin
  Result := FvrProdutoParceiro_Specified;
end;

procedure cupomOnlineVO.SetdsCodigo(Index: Integer; const AWideString: WideString);
begin
  FdsCodigo := AWideString;
  FdsCodigo_Specified := True;
end;

function cupomOnlineVO.dsCodigo_Specified(Index: Integer): boolean;
begin
  Result := FdsCodigo_Specified;
end;

procedure cupomOnlineVO.SetdsCupomFiscal(Index: Integer; const AWideString: WideString);
begin
  FdsCupomFiscal := AWideString;
  FdsCupomFiscal_Specified := True;
end;

function cupomOnlineVO.dsCupomFiscal_Specified(Index: Integer): boolean;
begin
  Result := FdsCupomFiscal_Specified;
end;

procedure cupomOnlineVO.SetdsNomeExterna(Index: Integer; const AWideString: WideString);
begin
  FdsNomeExterna := AWideString;
  FdsNomeExterna_Specified := True;
end;

function cupomOnlineVO.dsNomeExterna_Specified(Index: Integer): boolean;
begin
  Result := FdsNomeExterna_Specified;
end;

procedure cupomOnlineVO.SetdsPremio(Index: Integer; const AWideString: WideString);
begin
  FdsPremio := AWideString;
  FdsPremio_Specified := True;
end;

function cupomOnlineVO.dsPremio_Specified(Index: Integer): boolean;
begin
  Result := FdsPremio_Specified;
end;

procedure cupomOnlineVO.SetidCampanha(Index: Integer; const AInteger: Integer);
begin
  FidCampanha := AInteger;
  FidCampanha_Specified := True;
end;

function cupomOnlineVO.idCampanha_Specified(Index: Integer): boolean;
begin
  Result := FidCampanha_Specified;
end;

destructor consultaAssociadoCompletoResponse.Destroy;
var
  I: Integer;
begin
  for I := 0 to Length(FcuponsOnlineVO)-1 do
    FreeAndNil(FcuponsOnlineVO[I]);
  SetLength(FcuponsOnlineVO, 0);
  for I := 0 to Length(FprodutosResgate)-1 do
    FreeAndNil(FprodutosResgate[I]);
  SetLength(FprodutosResgate, 0);
  FreeAndNil(Fcpf);
  FreeAndNil(FdataNascimento);
  FreeAndNil(Ferro);
  FreeAndNil(Fproduto);
  inherited Destroy;
end;

procedure consultaAssociadoCompletoResponse.Setcpf(Index: Integer; const ATXSDecimal: TXSDecimal);
begin
  Fcpf := ATXSDecimal;
  Fcpf_Specified := True;
end;

function consultaAssociadoCompletoResponse.cpf_Specified(Index: Integer): boolean;
begin
  Result := Fcpf_Specified;
end;

procedure consultaAssociadoCompletoResponse.Setcuponagem(Index: Integer; const ABoolean: Boolean);
begin
  Fcuponagem := ABoolean;
  Fcuponagem_Specified := True;
end;

function consultaAssociadoCompletoResponse.cuponagem_Specified(Index: Integer): boolean;
begin
  Result := Fcuponagem_Specified;
end;

procedure consultaAssociadoCompletoResponse.SetcuponsOnlineVO(Index: Integer; const AArray_Of_cupomOnlineVO: Array_Of_cupomOnlineVO);
begin
  FcuponsOnlineVO := AArray_Of_cupomOnlineVO;
  FcuponsOnlineVO_Specified := True;
end;

function consultaAssociadoCompletoResponse.cuponsOnlineVO_Specified(Index: Integer): boolean;
begin
  Result := FcuponsOnlineVO_Specified;
end;

procedure consultaAssociadoCompletoResponse.SetdataNascimento(Index: Integer; const ATXSDateTime: TXSDateTime);
begin
  FdataNascimento := ATXSDateTime;
  FdataNascimento_Specified := True;
end;

function consultaAssociadoCompletoResponse.dataNascimento_Specified(Index: Integer): boolean;
begin
  Result := FdataNascimento_Specified;
end;

procedure consultaAssociadoCompletoResponse.Seterro(Index: Integer; const AErro: Erro);
begin
  Ferro := AErro;
  Ferro_Specified := True;
end;

function consultaAssociadoCompletoResponse.erro_Specified(Index: Integer): boolean;
begin
  Result := Ferro_Specified;
end;

procedure consultaAssociadoCompletoResponse.SetidProposta(Index: Integer; const AInteger: Integer);
begin
  FidProposta := AInteger;
  FidProposta_Specified := True;
end;

function consultaAssociadoCompletoResponse.idProposta_Specified(Index: Integer): boolean;
begin
  Result := FidProposta_Specified;
end;

procedure consultaAssociadoCompletoResponse.Setmensagem(Index: Integer; const AWideString: WideString);
begin
  Fmensagem := AWideString;
  Fmensagem_Specified := True;
end;

function consultaAssociadoCompletoResponse.mensagem_Specified(Index: Integer): boolean;
begin
  Result := Fmensagem_Specified;
end;

procedure consultaAssociadoCompletoResponse.Setnome(Index: Integer; const AWideString: WideString);
begin
  Fnome := AWideString;
  Fnome_Specified := True;
end;

function consultaAssociadoCompletoResponse.nome_Specified(Index: Integer): boolean;
begin
  Result := Fnome_Specified;
end;

procedure consultaAssociadoCompletoResponse.Setproduto(Index: Integer; const AProduto: Produto);
begin
  Fproduto := AProduto;
  Fproduto_Specified := True;
end;

function consultaAssociadoCompletoResponse.produto_Specified(Index: Integer): boolean;
begin
  Result := Fproduto_Specified;
end;

procedure consultaAssociadoCompletoResponse.SetprodutosResgate(Index: Integer; const AProdutosResgate: ProdutosResgate);
begin
  FprodutosResgate := AProdutosResgate;
  FprodutosResgate_Specified := True;
end;

function consultaAssociadoCompletoResponse.produtosResgate_Specified(Index: Integer): boolean;
begin
  Result := FprodutosResgate_Specified;
end;

procedure consultaAssociadoCompletoResponse.SetsaldoPontosNP(Index: Integer; const AInteger: Integer);
begin
  FsaldoPontosNP := AInteger;
  FsaldoPontosNP_Specified := True;
end;

function consultaAssociadoCompletoResponse.saldoPontosNP_Specified(Index: Integer): boolean;
begin
  Result := FsaldoPontosNP_Specified;
end;

procedure consultaAssociadoCompletoResponse.Setstatus(Index: Integer; const AInteger: Integer);
begin
  Fstatus := AInteger;
  Fstatus_Specified := True;
end;

function consultaAssociadoCompletoResponse.status_Specified(Index: Integer): boolean;
begin
  Result := Fstatus_Specified;
end;

initialization
  InvRegistry.RegisterInterface(TypeInfo(AssociadoCompletoMarisaServiceEndpoint), 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'UTF-8');
  InvRegistry.RegisterDefaultSOAPAction(TypeInfo(AssociadoCompletoMarisaServiceEndpoint), '');
  InvRegistry.RegisterInvokeOptions(TypeInfo(AssociadoCompletoMarisaServiceEndpoint), ioDocument);
  RemClassRegistry.RegisterXSClass(consultaAssociadoCompletoRequest, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'consultaAssociadoCompletoRequest');
  RemClassRegistry.RegisterXSClass(Erro, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'Erro');
  RemClassRegistry.RegisterXSClass(cupomOnlineVO, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'cupomOnlineVO');
  RemClassRegistry.RegisterXSInfo(TypeInfo(ProdutosResgate), 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'ProdutosResgate');
  RemClassRegistry.RegisterXSClass(Produto, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'Produto');
  RemClassRegistry.RegisterXSClass(erro2, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'erro2', 'erro');
  RemClassRegistry.RegisterXSClass(produto2, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'produto2', 'produto');
  RemClassRegistry.RegisterXSInfo(TypeInfo(Array_Of_cupomOnlineVO), 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'Array_Of_cupomOnlineVO');
  RemClassRegistry.RegisterXSClass(consultaAssociadoCompletoResponse, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'consultaAssociadoCompletoResponse');

end.
GOSTEI 0
Renato Rubinho

Renato Rubinho

09/06/2015

Segue, no post anterior deu pau ao subir:


// ************************************************************************ //
// The types declared in this file were generated from data read from the
// WSDL File described below:
// WSDL : http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl?wsdl
// >Import : http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl?wsdl:0
// Encoding : UTF-8
// Version : 1.0
// (12/06/2015 17:37:01 - - $Rev: 10138 $)
// ************************************************************************ //

unit AssociadoCompletoServiceEndpointImpl;

interface

uses InvokeRegistry, SOAPHTTPClient, Types, XSBuiltIns;

const
IS_OPTN = $0001;
IS_UNBD = $0002;
IS_NLBL = $0004;
IS_UNQL = $0008;


type

// ************************************************************************ //
// The following types, referred to in the WSDL document are not being represented
// in this file. They are either aliases[@] of other types represented or were referred
// to but never[!] declared in the document. The types from the latter category
// typically map to predefined/known XML or Borland types; however, they could also
// indicate incorrect WSDL documents that failed to declare or import a schema type.
// ************************************************************************ //
// !:string - "http://www.w3.org/2001/XMLSchema"[Gbl]
// !:decimal - "http://www.w3.org/2001/XMLSchema"[Gbl]
// !:long - "http://www.w3.org/2001/XMLSchema"[Gbl]
// !:boolean - "http://www.w3.org/2001/XMLSchema"[Gbl]
// !:dateTime - "http://www.w3.org/2001/XMLSchema"[Gbl]
// !:int - "http://www.w3.org/2001/XMLSchema"[Gbl]
// !:double - "http://www.w3.org/2001/XMLSchema"[Gbl]

consultaAssociadoCompletoRequest = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }
Erro = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }
cupomOnlineVO = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }
Produto = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }
erro2 = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblElm] }
produto2 = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[Alias] }
consultaAssociadoCompletoResponse = class; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }



// ************************************************************************ //
// XML : consultaAssociadoCompletoRequest, global, <complexType>
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
consultaAssociadoCompletoRequest = class(TRemotable)
private
Fatendente: WideString;
Fatendente_Specified: boolean;
Fcnpj: TXSDecimal;
Fcnpj_Specified: boolean;
Fcpf: TXSDecimal;
Fcpf_Specified: boolean;
FnuComprovante: Int64;
FnuComprovante_Specified: boolean;
FvrProdutoParceiro: TXSDecimal;
FvrProdutoParceiro_Specified: boolean;
procedure Setatendente(Index: Integer; const AWideString: WideString);
function atendente_Specified(Index: Integer): boolean;
procedure Setcnpj(Index: Integer; const ATXSDecimal: TXSDecimal);
function cnpj_Specified(Index: Integer): boolean;
procedure Setcpf(Index: Integer; const ATXSDecimal: TXSDecimal);
function cpf_Specified(Index: Integer): boolean;
procedure SetnuComprovante(Index: Integer; const AInt64: Int64);
function nuComprovante_Specified(Index: Integer): boolean;
procedure SetvrProdutoParceiro(Index: Integer; const ATXSDecimal: TXSDecimal);
function vrProdutoParceiro_Specified(Index: Integer): boolean;
public
destructor Destroy; override;
published
property atendente: WideString Index (IS_OPTN or IS_UNQL) read Fatendente write Setatendente stored atendente_Specified;
property cnpj: TXSDecimal Index (IS_OPTN or IS_UNQL) read Fcnpj write Setcnpj stored cnpj_Specified;
property cpf: TXSDecimal Index (IS_OPTN or IS_UNQL) read Fcpf write Setcpf stored cpf_Specified;
property nuComprovante: Int64 Index (IS_OPTN or IS_UNQL) read FnuComprovante write SetnuComprovante stored nuComprovante_Specified;
property vrProdutoParceiro: TXSDecimal Index (IS_OPTN or IS_UNQL) read FvrProdutoParceiro write SetvrProdutoParceiro stored vrProdutoParceiro_Specified;
end;



// ************************************************************************ //
// XML : Erro, global, <complexType>
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
Erro = class(TRemotable)
private
Fcodigo: Integer;
Fcategoria: WideString;
Fdescricao: WideString;
published
property codigo: Integer Index (IS_UNQL) read Fcodigo write Fcodigo;
property categoria: WideString Index (IS_UNQL) read Fcategoria write Fcategoria;
property descricao: WideString Index (IS_UNQL) read Fdescricao write Fdescricao;
end;



// ************************************************************************ //
// XML : cupomOnlineVO, global, <complexType>
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
cupomOnlineVO = class(TRemotable)
private
FdsCodigo: WideString;
FdsCodigo_Specified: boolean;
FdsCupomFiscal: WideString;
FdsCupomFiscal_Specified: boolean;
FdsNomeExterna: WideString;
FdsNomeExterna_Specified: boolean;
FdsPremio: WideString;
FdsPremio_Specified: boolean;
FidCampanha: Integer;
FidCampanha_Specified: boolean;
procedure SetdsCodigo(Index: Integer; const AWideString: WideString);
function dsCodigo_Specified(Index: Integer): boolean;
procedure SetdsCupomFiscal(Index: Integer; const AWideString: WideString);
function dsCupomFiscal_Specified(Index: Integer): boolean;
procedure SetdsNomeExterna(Index: Integer; const AWideString: WideString);
function dsNomeExterna_Specified(Index: Integer): boolean;
procedure SetdsPremio(Index: Integer; const AWideString: WideString);
function dsPremio_Specified(Index: Integer): boolean;
procedure SetidCampanha(Index: Integer; const AInteger: Integer);
function idCampanha_Specified(Index: Integer): boolean;
published
property dsCodigo: WideString Index (IS_OPTN or IS_UNQL) read FdsCodigo write SetdsCodigo stored dsCodigo_Specified;
property dsCupomFiscal: WideString Index (IS_OPTN or IS_UNQL) read FdsCupomFiscal write SetdsCupomFiscal stored dsCupomFiscal_Specified;
property dsNomeExterna: WideString Index (IS_OPTN or IS_UNQL) read FdsNomeExterna write SetdsNomeExterna stored dsNomeExterna_Specified;
property dsPremio: WideString Index (IS_OPTN or IS_UNQL) read FdsPremio write SetdsPremio stored dsPremio_Specified;
property idCampanha: Integer Index (IS_OPTN or IS_UNQL) read FidCampanha write SetidCampanha stored idCampanha_Specified;
end;

ProdutosResgate = array of produto2; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblCplx] }


// ************************************************************************ //
// XML : Produto, global, <complexType>
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
Produto = class(TRemotable)
private
FcodigoProduto: Integer;
FvalorPontosNPUnitario: Integer;
FvalorUnitario: Double;
FdescricaoProduto: WideString;
published
property codigoProduto: Integer Index (IS_UNQL) read FcodigoProduto write FcodigoProduto;
property valorPontosNPUnitario: Integer Index (IS_UNQL) read FvalorPontosNPUnitario write FvalorPontosNPUnitario;
property valorUnitario: Double Index (IS_UNQL) read FvalorUnitario write FvalorUnitario;
property descricaoProduto: WideString Index (IS_UNQL) read FdescricaoProduto write FdescricaoProduto;
end;



// ************************************************************************ //
// XML : erro, global, <element>
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
erro2 = class(Erro)
private
published
end;



// ************************************************************************ //
// XML : produto, alias
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
produto2 = class(Produto)
private
published
end;

Array_Of_cupomOnlineVO = array of cupomOnlineVO; { "http://endpoint.associadoservice.ws.netpoints.com.br/"[GblUbnd] }


// ************************************************************************ //
// XML : consultaAssociadoCompletoResponse, global, <complexType>
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// ************************************************************************ //
consultaAssociadoCompletoResponse = class(TRemotable)
private
Fcpf: TXSDecimal;
Fcpf_Specified: boolean;
Fcuponagem: Boolean;
Fcuponagem_Specified: boolean;
FcuponsOnlineVO: Array_Of_cupomOnlineVO;
FcuponsOnlineVO_Specified: boolean;
FdataNascimento: TXSDateTime;
FdataNascimento_Specified: boolean;
Ferro: Erro;
Ferro_Specified: boolean;
FidProposta: Integer;
FidProposta_Specified: boolean;
Fmensagem: WideString;
Fmensagem_Specified: boolean;
Fnome: WideString;
Fnome_Specified: boolean;
Fproduto: Produto;
Fproduto_Specified: boolean;
FprodutosResgate: ProdutosResgate;
FprodutosResgate_Specified: boolean;
FsaldoPontosNP: Integer;
FsaldoPontosNP_Specified: boolean;
Fstatus: Integer;
Fstatus_Specified: boolean;
procedure Setcpf(Index: Integer; const ATXSDecimal: TXSDecimal);
function cpf_Specified(Index: Integer): boolean;
procedure Setcuponagem(Index: Integer; const ABoolean: Boolean);
function cuponagem_Specified(Index: Integer): boolean;
procedure SetcuponsOnlineVO(Index: Integer; const AArray_Of_cupomOnlineVO: Array_Of_cupomOnlineVO);
function cuponsOnlineVO_Specified(Index: Integer): boolean;
procedure SetdataNascimento(Index: Integer; const ATXSDateTime: TXSDateTime);
function dataNascimento_Specified(Index: Integer): boolean;
procedure Seterro(Index: Integer; const AErro: Erro);
function erro_Specified(Index: Integer): boolean;
procedure SetidProposta(Index: Integer; const AInteger: Integer);
function idProposta_Specified(Index: Integer): boolean;
procedure Setmensagem(Index: Integer; const AWideString: WideString);
function mensagem_Specified(Index: Integer): boolean;
procedure Setnome(Index: Integer; const AWideString: WideString);
function nome_Specified(Index: Integer): boolean;
procedure Setproduto(Index: Integer; const AProduto: Produto);
function produto_Specified(Index: Integer): boolean;
procedure SetprodutosResgate(Index: Integer; const AProdutosResgate: ProdutosResgate);
function produtosResgate_Specified(Index: Integer): boolean;
procedure SetsaldoPontosNP(Index: Integer; const AInteger: Integer);
function saldoPontosNP_Specified(Index: Integer): boolean;
procedure Setstatus(Index: Integer; const AInteger: Integer);
function status_Specified(Index: Integer): boolean;
public
destructor Destroy; override;
published
property cpf: TXSDecimal Index (IS_OPTN or IS_UNQL) read Fcpf write Setcpf stored cpf_Specified;
property cuponagem: Boolean Index (IS_OPTN or IS_UNQL) read Fcuponagem write Setcuponagem stored cuponagem_Specified;
property cuponsOnlineVO: Array_Of_cupomOnlineVO Index (IS_OPTN or IS_UNBD or IS_NLBL or IS_UNQL) read FcuponsOnlineVO write SetcuponsOnlineVO stored cuponsOnlineVO_Specified;
property dataNascimento: TXSDateTime Index (IS_OPTN or IS_UNQL) read FdataNascimento write SetdataNascimento stored dataNascimento_Specified;
property erro: Erro Index (IS_OPTN or IS_UNQL) read Ferro write Seterro stored erro_Specified;
property idProposta: Integer Index (IS_OPTN or IS_UNQL) read FidProposta write SetidProposta stored idProposta_Specified;
property mensagem: WideString Index (IS_OPTN or IS_UNQL) read Fmensagem write Setmensagem stored mensagem_Specified;
property nome: WideString Index (IS_OPTN or IS_UNQL) read Fnome write Setnome stored nome_Specified;
property produto: Produto Index (IS_OPTN or IS_UNQL) read Fproduto write Setproduto stored produto_Specified;
property produtosResgate: ProdutosResgate Index (IS_OPTN or IS_UNQL) read FprodutosResgate write SetprodutosResgate stored produtosResgate_Specified;
property saldoPontosNP: Integer Index (IS_OPTN or IS_UNQL) read FsaldoPontosNP write SetsaldoPontosNP stored saldoPontosNP_Specified;
property status: Integer Index (IS_OPTN or IS_UNQL) read Fstatus write Setstatus stored status_Specified;
end;


// ************************************************************************ //
// Namespace : http://endpoint.associadoservice.ws.netpoints.com.br/
// transport : http://schemas.xmlsoap.org/soap/http
// style : document
// binding : AssociadoCompletoMarisaServiceEndpointImplSoapBinding
// service : AssociadoCompletoMarisaServiceEndpointImpl
// port : AssociadoCompletoMarisaServiceEndpointImplPort
// URL : http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl
// ************************************************************************ //
AssociadoCompletoMarisaServiceEndpoint = interface(IInvokable)
['{CBF1F20D-EDA2-1C8D-E656-7A7D30462E07}']
function consultarStatusAssociadoCompleto(const consultaAssociadoCompletoRequest: consultaAssociadoCompletoRequest): consultaAssociadoCompletoResponse; stdcall;
end;

function GetAssociadoCompletoMarisaServiceEndpoint(UseWSDL: Boolean=System.False; Addr: string=''; HTTPRIO: THTTPRIO = nil): AssociadoCompletoMarisaServiceEndpoint;


implementation
uses SysUtils;

function GetAssociadoCompletoMarisaServiceEndpoint(UseWSDL: Boolean; Addr: string; HTTPRIO: THTTPRIO): AssociadoCompletoMarisaServiceEndpoint;
const
defWSDL = 'http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl?wsdl';
defURL = 'http://homolog.netpoints.com.br/ws/AssociadoCompletoServiceEndpointImpl';
defSvc = 'AssociadoCompletoMarisaServiceEndpointImpl';
defPrt = 'AssociadoCompletoMarisaServiceEndpointImplPort';
var
RIO: THTTPRIO;
begin
Result := nil;
if (Addr = '') then
begin
if UseWSDL then
Addr := defWSDL
else
Addr := defURL;
end;
if HTTPRIO = nil then
RIO := THTTPRIO.Create(nil)
else
RIO := HTTPRIO;
try
Result := (RIO as AssociadoCompletoMarisaServiceEndpoint);
if UseWSDL then
begin
RIO.WSDLLocation := Addr;
RIO.Service := defSvc;
RIO.Port := defPrt;
end else
RIO.URL := Addr;
finally
if (Result = nil) and (HTTPRIO = nil) then
RIO.Free;
end;
end;


destructor consultaAssociadoCompletoRequest.Destroy;
begin
FreeAndNil(Fcnpj);
FreeAndNil(Fcpf);
FreeAndNil(FvrProdutoParceiro);
inherited Destroy;
end;

procedure consultaAssociadoCompletoRequest.Setatendente(Index: Integer; const AWideString: WideString);
begin
Fatendente := AWideString;
Fatendente_Specified := True;
end;

function consultaAssociadoCompletoRequest.atendente_Specified(Index: Integer): boolean;
begin
Result := Fatendente_Specified;
end;

procedure consultaAssociadoCompletoRequest.Setcnpj(Index: Integer; const ATXSDecimal: TXSDecimal);
begin
Fcnpj := ATXSDecimal;
Fcnpj_Specified := True;
end;

function consultaAssociadoCompletoRequest.cnpj_Specified(Index: Integer): boolean;
begin
Result := Fcnpj_Specified;
end;

procedure consultaAssociadoCompletoRequest.Setcpf(Index: Integer; const ATXSDecimal: TXSDecimal);
begin
Fcpf := ATXSDecimal;
Fcpf_Specified := True;
end;

function consultaAssociadoCompletoRequest.cpf_Specified(Index: Integer): boolean;
begin
Result := Fcpf_Specified;
end;

procedure consultaAssociadoCompletoRequest.SetnuComprovante(Index: Integer; const AInt64: Int64);
begin
FnuComprovante := AInt64;
FnuComprovante_Specified := True;
end;

function consultaAssociadoCompletoRequest.nuComprovante_Specified(Index: Integer): boolean;
begin
Result := FnuComprovante_Specified;
end;

procedure consultaAssociadoCompletoRequest.SetvrProdutoParceiro(Index: Integer; const ATXSDecimal: TXSDecimal);
begin
FvrProdutoParceiro := ATXSDecimal;
FvrProdutoParceiro_Specified := True;
end;

function consultaAssociadoCompletoRequest.vrProdutoParceiro_Specified(Index: Integer): boolean;
begin
Result := FvrProdutoParceiro_Specified;
end;

procedure cupomOnlineVO.SetdsCodigo(Index: Integer; const AWideString: WideString);
begin
FdsCodigo := AWideString;
FdsCodigo_Specified := True;
end;

function cupomOnlineVO.dsCodigo_Specified(Index: Integer): boolean;
begin
Result := FdsCodigo_Specified;
end;

procedure cupomOnlineVO.SetdsCupomFiscal(Index: Integer; const AWideString: WideString);
begin
FdsCupomFiscal := AWideString;
FdsCupomFiscal_Specified := True;
end;

function cupomOnlineVO.dsCupomFiscal_Specified(Index: Integer): boolean;
begin
Result := FdsCupomFiscal_Specified;
end;

procedure cupomOnlineVO.SetdsNomeExterna(Index: Integer; const AWideString: WideString);
begin
FdsNomeExterna := AWideString;
FdsNomeExterna_Specified := True;
end;

function cupomOnlineVO.dsNomeExterna_Specified(Index: Integer): boolean;
begin
Result := FdsNomeExterna_Specified;
end;

procedure cupomOnlineVO.SetdsPremio(Index: Integer; const AWideString: WideString);
begin
FdsPremio := AWideString;
FdsPremio_Specified := True;
end;

function cupomOnlineVO.dsPremio_Specified(Index: Integer): boolean;
begin
Result := FdsPremio_Specified;
end;

procedure cupomOnlineVO.SetidCampanha(Index: Integer; const AInteger: Integer);
begin
FidCampanha := AInteger;
FidCampanha_Specified := True;
end;

function cupomOnlineVO.idCampanha_Specified(Index: Integer): boolean;
begin
Result := FidCampanha_Specified;
end;

destructor consultaAssociadoCompletoResponse.Destroy;
var
I: Integer;
begin
for I := 0 to Length(FcuponsOnlineVO)-1 do
FreeAndNil(FcuponsOnlineVO[I]);
SetLength(FcuponsOnlineVO, 0);
for I := 0 to Length(FprodutosResgate)-1 do
FreeAndNil(FprodutosResgate[I]);
SetLength(FprodutosResgate, 0);
FreeAndNil(Fcpf);
FreeAndNil(FdataNascimento);
FreeAndNil(Ferro);
FreeAndNil(Fproduto);
inherited Destroy;
end;

procedure consultaAssociadoCompletoResponse.Setcpf(Index: Integer; const ATXSDecimal: TXSDecimal);
begin
Fcpf := ATXSDecimal;
Fcpf_Specified := True;
end;

function consultaAssociadoCompletoResponse.cpf_Specified(Index: Integer): boolean;
begin
Result := Fcpf_Specified;
end;

procedure consultaAssociadoCompletoResponse.Setcuponagem(Index: Integer; const ABoolean: Boolean);
begin
Fcuponagem := ABoolean;
Fcuponagem_Specified := True;
end;

function consultaAssociadoCompletoResponse.cuponagem_Specified(Index: Integer): boolean;
begin
Result := Fcuponagem_Specified;
end;

procedure consultaAssociadoCompletoResponse.SetcuponsOnlineVO(Index: Integer; const AArray_Of_cupomOnlineVO: Array_Of_cupomOnlineVO);
begin
FcuponsOnlineVO := AArray_Of_cupomOnlineVO;
FcuponsOnlineVO_Specified := True;
end;

function consultaAssociadoCompletoResponse.cuponsOnlineVO_Specified(Index: Integer): boolean;
begin
Result := FcuponsOnlineVO_Specified;
end;

procedure consultaAssociadoCompletoResponse.SetdataNascimento(Index: Integer; const ATXSDateTime: TXSDateTime);
begin
FdataNascimento := ATXSDateTime;
FdataNascimento_Specified := True;
end;

function consultaAssociadoCompletoResponse.dataNascimento_Specified(Index: Integer): boolean;
begin
Result := FdataNascimento_Specified;
end;

procedure consultaAssociadoCompletoResponse.Seterro(Index: Integer; const AErro: Erro);
begin
Ferro := AErro;
Ferro_Specified := True;
end;

function consultaAssociadoCompletoResponse.erro_Specified(Index: Integer): boolean;
begin
Result := Ferro_Specified;
end;

procedure consultaAssociadoCompletoResponse.SetidProposta(Index: Integer; const AInteger: Integer);
begin
FidProposta := AInteger;
FidProposta_Specified := True;
end;

function consultaAssociadoCompletoResponse.idProposta_Specified(Index: Integer): boolean;
begin
Result := FidProposta_Specified;
end;

procedure consultaAssociadoCompletoResponse.Setmensagem(Index: Integer; const AWideString: WideString);
begin
Fmensagem := AWideString;
Fmensagem_Specified := True;
end;

function consultaAssociadoCompletoResponse.mensagem_Specified(Index: Integer): boolean;
begin
Result := Fmensagem_Specified;
end;

procedure consultaAssociadoCompletoResponse.Setnome(Index: Integer; const AWideString: WideString);
begin
Fnome := AWideString;
Fnome_Specified := True;
end;

function consultaAssociadoCompletoResponse.nome_Specified(Index: Integer): boolean;
begin
Result := Fnome_Specified;
end;

procedure consultaAssociadoCompletoResponse.Setproduto(Index: Integer; const AProduto: Produto);
begin
Fproduto := AProduto;
Fproduto_Specified := True;
end;

function consultaAssociadoCompletoResponse.produto_Specified(Index: Integer): boolean;
begin
Result := Fproduto_Specified;
end;

procedure consultaAssociadoCompletoResponse.SetprodutosResgate(Index: Integer; const AProdutosResgate: ProdutosResgate);
begin
FprodutosResgate := AProdutosResgate;
FprodutosResgate_Specified := True;
end;

function consultaAssociadoCompletoResponse.produtosResgate_Specified(Index: Integer): boolean;
begin
Result := FprodutosResgate_Specified;
end;

procedure consultaAssociadoCompletoResponse.SetsaldoPontosNP(Index: Integer; const AInteger: Integer);
begin
FsaldoPontosNP := AInteger;
FsaldoPontosNP_Specified := True;
end;

function consultaAssociadoCompletoResponse.saldoPontosNP_Specified(Index: Integer): boolean;
begin
Result := FsaldoPontosNP_Specified;
end;

procedure consultaAssociadoCompletoResponse.Setstatus(Index: Integer; const AInteger: Integer);
begin
Fstatus := AInteger;
Fstatus_Specified := True;
end;

function consultaAssociadoCompletoResponse.status_Specified(Index: Integer): boolean;
begin
Result := Fstatus_Specified;
end;

initialization
InvRegistry.RegisterInterface(TypeInfo(AssociadoCompletoMarisaServiceEndpoint), 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'UTF-8');
InvRegistry.RegisterDefaultSOAPAction(TypeInfo(AssociadoCompletoMarisaServiceEndpoint), '');
InvRegistry.RegisterInvokeOptions(TypeInfo(AssociadoCompletoMarisaServiceEndpoint), ioDocument);
RemClassRegistry.RegisterXSClass(consultaAssociadoCompletoRequest, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'consultaAssociadoCompletoRequest');
RemClassRegistry.RegisterXSClass(Erro, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'Erro');
RemClassRegistry.RegisterXSClass(cupomOnlineVO, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'cupomOnlineVO');
RemClassRegistry.RegisterXSInfo(TypeInfo(ProdutosResgate), 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'ProdutosResgate');
RemClassRegistry.RegisterXSClass(Produto, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'Produto');
RemClassRegistry.RegisterXSClass(erro2, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'erro2', 'erro');
RemClassRegistry.RegisterXSClass(produto2, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'produto2', 'produto');
RemClassRegistry.RegisterXSInfo(TypeInfo(Array_Of_cupomOnlineVO), 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'Array_Of_cupomOnlineVO');
RemClassRegistry.RegisterXSClass(consultaAssociadoCompletoResponse, 'http://endpoint.associadoservice.ws.netpoints.com.br/', 'consultaAssociadoCompletoResponse');

end.
GOSTEI 0
POSTAR