Delphi 2007 - Can't compile interface file created by Service Builder CodeGen

I am starting a new project and the interface file that is created by the RemObjects Service Builder (ver 7.0.65.1067) compiles with error: [DCC Error] PPILibrary_Intf.pas(1418): E2003 Undeclared identifier: ‘TROUri’

The code in question is:
{ CoInvoiceServices }
CoInvoiceServices = class
class function Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IInvoiceServices; overload;
class function Create(const aUri: TROUri): IInvoiceServices; overload;
class function Create(const aUrl: string): IInvoiceServices; overload;
end;

Do I have a mismatch of the Service Builder being used and the RemObject SDK in my project search path? I did a search for TROUri on my hard drive and found no hits. Any ideas?

Thanks, Terrence Koehn

Hello,

TROUri type is located in uROClientIntf unit. This RO unit should be in uses section of your _Intf file.

Best regrads

Hello Terrence,

That is to say, the mismatch is very likely. Please check the uROClientIntf.pas file which is used by your project, that class must be there.
This class was introduced in the “Fall 2012” Release i.e. version 7.0.63 (Build .1055)

Best regards - Sergey.

Arg! I downloaded the latest release to re-install only to find our D2007 is no longer supported. It looks like D2007 support is coming back soon. When will this be released? What version/build currently supports D2007?

Thanks, Terrence Koehn

I installed the latest beta build and the project now compiles correctly. Unfortunately I still get an error when calling a third-party web service I’m trying to connect to. The error apparently has to do with the format of the generated XML. Details in following post.

To help in trouble shooting I created a project using the native .NET tooling and VS which works OK.

Attached is a file which shows the XML from the .NET project and my D2007 project.

The error that is returned is: Unexpected wrapper element getInvoiceDetail found. Expected {http://api.webservice.paygateway.com/}getInvoiceDetail.

I have been trying different setting in my SoapMessage instance (TROSOAPMessage.SerializationOptions) but have been unable to get a valid request/response.

Any ideas? Thanks for your time, Terrence Koehn

Hi,

can you send wsdl (and all xsd’s) for your web service? you can send it to support@remobjects.com.

I don’t have access to the web server which is owned/developed by a third-party. I am using the Service Builder’s Import SOAP Web Service option to create the interface. Wsdl url sent to support@remobjects.com