[DUG] SOAP Question (lets see who the soap guru's are :P)
Nick
nick at salehoo.com
Fri Apr 27 08:53:33 NZST 2007
Hey there,
Thanks for that! :-)
I compared the different between the D2007 and D2006 and I can see the
D2007 is better, some calls much simpler. ie
D2007 -> function getUsageQuotaThisMonth: Int64; stdcall;
D2006 -> function getUsageQuotaThisMonth(const parameters:
getUsageQuotaThisMonth): getUsageQuotaThisMonthResponse; stdcall;
I got the D2006 one working, but would of been simplir if I had 2007 lol.
I got my other pas files working except when the parameter is an array,
I also just tried with the D2007 and also get an error when the
parameter is an array.
Here is an example.
var
param : Array_Of_KeywordRequest; { decleared as
Array_Of_KeywordRequest = array of KeywordRequest; }
begin
Setlength(param, 1);
param[0] := KeywordRequest.Create;
param[0].id := 0;
param[0].maxCpc := 5;
param[0].negative := false;
param[0].text := 'ipod';
param[0].type_ := Broad;
res := ( Intf as TrafficEstimatorInterface ).estimateKeywordList(param);
it complies fine but when it runs it gets a soap error. Any call that
doesn't use an array as a param runs fine.
O.o
Jeremy North wrote:
> Hi Nick,
>
> Here are two from D2007. Don't know if they are correct.
>
> Let me know if they are still wrong and I'll bug the right guy at
> CodeGear about this.
>
> cheers,
> Jeremy
>
> On 4/26/07, Nick <nick at salehoo.com> wrote:
>> Right, I am trying to get an app written which in Delphi 2006 to do
>> with the
>> Google Adwords API.
>> The old method I did was
>> Program sends data to my web server --> Web server handles all the
>> soap to
>> Google --> Info is sent back to my program
>> All done with indy.
>>
>> However I want to get away from that method and talk soap right to
>> Google.
>> So, I fired up Delphi, created a new application.
>> Then Imported one of the WSDL's from Google
>> ( With project open (must be open), File, New, Other, Webservices, WSDL
>> importer)
>> And now I have my pas file.
>> I put that in the uses section of my first form (at the top before the
>> types)
>>
>> Now... what the heck do I do with it. I have spent the best part of 4
>> hours
>> trying to figure this out and im getting no-where.
>> Here is the WSDL location (of one of them)
>> https://adwords.google.com/api/adwords/v10/TrafficEstimatorService?wsdl
>>
>> I have also attached the generated pas file.
>> O.o
>>
>> My brain hurts, and all I have got is With
>> GetInfoInterface(true,'',HTTPRIO1) do
>> lol
>>
>> Cheers
>>
>> //
>> ************************************************************************
>> //
>> // The types declared in this file were generated from data read from
>> the
>> // WSDL File described below:
>> // WSDL :
>> https://adwords.google.com/api/adwords/v10/InfoService?wsdl
>> // Encoding : UTF-8
>> // Version : 1.0
>> // (24/04/2007 11:04:16 a.m. - 16.03.2006)
>> //
>> ************************************************************************
>> //
>>
>> unit InfoService;
>>
>> 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"
>> // !:long - "http://www.w3.org/2001/XMLSchema"
>> // !:int - "http://www.w3.org/2001/XMLSchema"
>> // !:boolean - "http://www.w3.org/2001/XMLSchema"
>> // !:date - "http://www.w3.org/2001/XMLSchema"
>>
>> getFreeUsageQuotaThisMonth = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> getOperationsQuotaThisMonth = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> getUsageQuotaThisMonth = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> getUsageQuotaThisMonthResponse = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> getUnitCountResponse = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> getUnitCountForMethodResponse = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> getOperationsQuotaThisMonthResponse = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> getOperationCountResponse = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> getFreeUsageQuotaThisMonthResponse = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> getMethodCostResponse = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> ApiError = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> ApiException = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> getUnitCountForMethod = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> getUnitCountForClients = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> getUnitCount = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> getOperationCount = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> getMethodCost = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> ClientUsageRecord = class; {
>> "https://adwords.google.com/api/adwords/v10" }
>> useragent = class; {
>> "https://adwords.google.com/api/adwords/v10"[H] }
>> password = class; {
>> "https://adwords.google.com/api/adwords/v10"[H] }
>> email = class; {
>> "https://adwords.google.com/api/adwords/v10"[H] }
>> clientEmail = class; {
>> "https://adwords.google.com/api/adwords/v10"[H] }
>> clientCustomerId = class; {
>> "https://adwords.google.com/api/adwords/v10"[H] }
>> developerToken = class; {
>> "https://adwords.google.com/api/adwords/v10"[H] }
>> applicationToken = class; {
>> "https://adwords.google.com/api/adwords/v10"[H] }
>> responseTime = class; {
>> "https://adwords.google.com/api/adwords/v10"[H] }
>> operations = class; {
>> "https://adwords.google.com/api/adwords/v10"[H] }
>> units = class; {
>> "https://adwords.google.com/api/adwords/v10"[H] }
>> requestId = class; {
>> "https://adwords.google.com/api/adwords/v10"[H] }
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoLiteralParam]
>> //
>> ************************************************************************
>> //
>> getFreeUsageQuotaThisMonth = class(TRemotable)
>> private
>> public
>> constructor Create; override;
>> published
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoLiteralParam]
>> //
>> ************************************************************************
>> //
>> getOperationsQuotaThisMonth = class(TRemotable)
>> private
>> public
>> constructor Create; override;
>> published
>> end;
>>
>> getUnitCountForClientsResponse = array of ClientUsageRecord; {
>> "https://adwords.google.com/api/adwords/v10" }
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoLiteralParam]
>> //
>> ************************************************************************
>> //
>> getUsageQuotaThisMonth = class(TRemotable)
>> private
>> public
>> constructor Create; override;
>> published
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoLiteralParam]
>> //
>> ************************************************************************
>> //
>> getUsageQuotaThisMonthResponse = class(TRemotable)
>> private
>> FgetUsageQuotaThisMonthReturn: Int64;
>> public
>> constructor Create; override;
>> published
>> property getUsageQuotaThisMonthReturn: Int64 read
>> FgetUsageQuotaThisMonthReturn write FgetUsageQuotaThisMonthReturn;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoLiteralParam]
>> //
>> ************************************************************************
>> //
>> getUnitCountResponse = class(TRemotable)
>> private
>> FgetUnitCountReturn: Int64;
>> public
>> constructor Create; override;
>> published
>> property getUnitCountReturn: Int64 read FgetUnitCountReturn write
>> FgetUnitCountReturn;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoLiteralParam]
>> //
>> ************************************************************************
>> //
>> getUnitCountForMethodResponse = class(TRemotable)
>> private
>> FgetUnitCountForMethodReturn: Int64;
>> public
>> constructor Create; override;
>> published
>> property getUnitCountForMethodReturn: Int64 read
>> FgetUnitCountForMethodReturn write FgetUnitCountForMethodReturn;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoLiteralParam]
>> //
>> ************************************************************************
>> //
>> getOperationsQuotaThisMonthResponse = class(TRemotable)
>> private
>> FgetOperationsQuotaThisMonthReturn: Int64;
>> public
>> constructor Create; override;
>> published
>> property getOperationsQuotaThisMonthReturn: Int64 read
>> FgetOperationsQuotaThisMonthReturn write
>> FgetOperationsQuotaThisMonthReturn;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoLiteralParam]
>> //
>> ************************************************************************
>> //
>> getOperationCountResponse = class(TRemotable)
>> private
>> FgetOperationCountReturn: Int64;
>> public
>> constructor Create; override;
>> published
>> property getOperationCountReturn: Int64 read FgetOperationCountReturn
>> write FgetOperationCountReturn;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoLiteralParam]
>> //
>> ************************************************************************
>> //
>> getFreeUsageQuotaThisMonthResponse = class(TRemotable)
>> private
>> FgetFreeUsageQuotaThisMonthReturn: Int64;
>> public
>> constructor Create; override;
>> published
>> property getFreeUsageQuotaThisMonthReturn: Int64 read
>> FgetFreeUsageQuotaThisMonthReturn write
>> FgetFreeUsageQuotaThisMonthReturn;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoLiteralParam]
>> //
>> ************************************************************************
>> //
>> getMethodCostResponse = class(TRemotable)
>> private
>> FgetMethodCostReturn: Integer;
>> public
>> constructor Create; override;
>> published
>> property getMethodCostReturn: Integer read FgetMethodCostReturn write
>> FgetMethodCostReturn;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> //
>> ************************************************************************
>> //
>> ApiError = class(TRemotable)
>> private
>> Fcode: Integer;
>> Fdetail: WideString;
>> Ffield: WideString;
>> Findex_: Integer;
>> FisExemptable: Boolean;
>> FtextIndex: Integer;
>> FtextLength: Integer;
>> Ftrigger: WideString;
>> published
>> property code: Integer read Fcode write Fcode;
>> property detail: WideString read Fdetail write Fdetail;
>> property field: WideString read Ffield write Ffield;
>> property index_: Integer read Findex_ write Findex_;
>> property isExemptable: Boolean read FisExemptable write
>> FisExemptable;
>> property textIndex: Integer read FtextIndex write FtextIndex;
>> property textLength: Integer read FtextLength write FtextLength;
>> property trigger: WideString read Ftrigger write Ftrigger;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> //
>> ************************************************************************
>> //
>> ApiException = class(TRemotable)
>> private
>> Fcode: Integer;
>> Ferrors: ApiError;
>> Finternal: Boolean;
>> Fmessage_: WideString;
>> Ftrigger: WideString;
>> public
>> destructor Destroy; override;
>> published
>> property code: Integer read Fcode write Fcode;
>> property errors: ApiError read Ferrors write Ferrors;
>> property internal: Boolean read Finternal write Finternal;
>> property message_: WideString read Fmessage_ write Fmessage_;
>> property trigger: WideString read Ftrigger write Ftrigger;
>> end;
>>
>> fault = ApiException; {
>> "https://adwords.google.com/api/adwords/v10"[F] }
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoLiteralParam]
>> //
>> ************************************************************************
>> //
>> getUnitCountForMethod = class(TRemotable)
>> private
>> Fservice: WideString;
>> Fmethod: WideString;
>> FstartDate: TXSDate;
>> FendDate: TXSDate;
>> public
>> constructor Create; override;
>> destructor Destroy; override;
>> published
>> property service: WideString read Fservice write Fservice;
>> property method: WideString read Fmethod write Fmethod;
>> property startDate: TXSDate read FstartDate write FstartDate;
>> property endDate: TXSDate read FendDate write FendDate;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoLiteralParam]
>> //
>> ************************************************************************
>> //
>> getUnitCountForClients = class(TRemotable)
>> private
>> FclientEmails: WideString;
>> FstartDate: TXSDate;
>> FendDate: TXSDate;
>> public
>> constructor Create; override;
>> destructor Destroy; override;
>> published
>> property clientEmails: WideString read FclientEmails write
>> FclientEmails;
>> property startDate: TXSDate read FstartDate write FstartDate;
>> property endDate: TXSDate read FendDate write FendDate;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoLiteralParam]
>> //
>> ************************************************************************
>> //
>> getUnitCount = class(TRemotable)
>> private
>> FstartDate: TXSDate;
>> FendDate: TXSDate;
>> public
>> constructor Create; override;
>> destructor Destroy; override;
>> published
>> property startDate: TXSDate read FstartDate write FstartDate;
>> property endDate: TXSDate read FendDate write FendDate;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoLiteralParam]
>> //
>> ************************************************************************
>> //
>> getOperationCount = class(TRemotable)
>> private
>> FstartDate: TXSDate;
>> FendDate: TXSDate;
>> public
>> constructor Create; override;
>> destructor Destroy; override;
>> published
>> property startDate: TXSDate read FstartDate write FstartDate;
>> property endDate: TXSDate read FendDate write FendDate;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoLiteralParam]
>> //
>> ************************************************************************
>> //
>> getMethodCost = class(TRemotable)
>> private
>> Fservice: WideString;
>> Fmethod: WideString;
>> Fdate: TXSDate;
>> public
>> constructor Create; override;
>> destructor Destroy; override;
>> published
>> property service: WideString read Fservice write Fservice;
>> property method: WideString read Fmethod write Fmethod;
>> property date: TXSDate read Fdate write Fdate;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> //
>> ************************************************************************
>> //
>> ClientUsageRecord = class(TRemotable)
>> private
>> FclientEmail: WideString;
>> FquotaUnits: Int64;
>> published
>> property clientEmail: WideString read FclientEmail write
>> FclientEmail;
>> property quotaUnits: Int64 read FquotaUnits write FquotaUnits;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoSimpleTypeWrapper]
>> //
>> ************************************************************************
>> //
>> useragent = class(TSOAPHeader)
>> private
>> FValue: WideString;
>> published
>> property Value: WideString read FValue write FValue;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoSimpleTypeWrapper]
>> //
>> ************************************************************************
>> //
>> password = class(TSOAPHeader)
>> private
>> FValue: WideString;
>> published
>> property Value: WideString read FValue write FValue;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoSimpleTypeWrapper]
>> //
>> ************************************************************************
>> //
>> email = class(TSOAPHeader)
>> private
>> FValue: WideString;
>> published
>> property Value: WideString read FValue write FValue;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoSimpleTypeWrapper]
>> //
>> ************************************************************************
>> //
>> clientEmail = class(TSOAPHeader)
>> private
>> FValue: WideString;
>> published
>> property Value: WideString read FValue write FValue;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoSimpleTypeWrapper]
>> //
>> ************************************************************************
>> //
>> clientCustomerId = class(TSOAPHeader)
>> private
>> FValue: WideString;
>> published
>> property Value: WideString read FValue write FValue;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoSimpleTypeWrapper]
>> //
>> ************************************************************************
>> //
>> developerToken = class(TSOAPHeader)
>> private
>> FValue: WideString;
>> published
>> property Value: WideString read FValue write FValue;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoSimpleTypeWrapper]
>> //
>> ************************************************************************
>> //
>> applicationToken = class(TSOAPHeader)
>> private
>> FValue: WideString;
>> published
>> property Value: WideString read FValue write FValue;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoSimpleTypeWrapper]
>> //
>> ************************************************************************
>> //
>> responseTime = class(TSOAPHeader)
>> private
>> FValue: Int64;
>> published
>> property Value: Int64 read FValue write FValue;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoSimpleTypeWrapper]
>> //
>> ************************************************************************
>> //
>> operations = class(TSOAPHeader)
>> private
>> FValue: Int64;
>> published
>> property Value: Int64 read FValue write FValue;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoSimpleTypeWrapper]
>> //
>> ************************************************************************
>> //
>> units = class(TSOAPHeader)
>> private
>> FValue: Int64;
>> published
>> property Value: Int64 read FValue write FValue;
>> end;
>>
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // Serializtn: [xoSimpleTypeWrapper]
>> //
>> ************************************************************************
>> //
>> requestId = class(TSOAPHeader)
>> private
>> FValue: WideString;
>> published
>> property Value: WideString read FValue write FValue;
>> end;
>>
>>
>> //
>> ************************************************************************
>> //
>> // Namespace : https://adwords.google.com/api/adwords/v10
>> // transport : http://schemas.xmlsoap.org/soap/http
>> // style : document
>> // binding : InfoServiceSoapBinding
>> // service : InfoService
>> // port : InfoService
>> // URL :
>> https://adwords.google.com/api/adwords/v10/InfoService
>> //
>> ************************************************************************
>> //
>> InfoInterface = interface(IInvokable)
>> ['{C9DFB757-3500-B070-5EF2-260E77A5696F}']
>> function getFreeUsageQuotaThisMonth(const parameters:
>> getFreeUsageQuotaThisMonth):
>> getFreeUsageQuotaThisMonthResponse; stdcall;
>> function getMethodCost(const parameters: getMethodCost):
>> getMethodCostResponse; stdcall;
>> function getOperationCount(const parameters: getOperationCount):
>> getOperationCountResponse; stdcall;
>> function getOperationsQuotaThisMonth(const parameters:
>> getOperationsQuotaThisMonth):
>> getOperationsQuotaThisMonthResponse; stdcall;
>> function getUnitCount(const parameters: getUnitCount):
>> getUnitCountResponse; stdcall;
>> function getUnitCountForClients(const parameters:
>> getUnitCountForClients): getUnitCountForClientsResponse;
>> stdcall;
>> function getUnitCountForMethod(const parameters:
>> getUnitCountForMethod):
>> getUnitCountForMethodResponse; stdcall;
>> function getUsageQuotaThisMonth(const parameters:
>> getUsageQuotaThisMonth): getUsageQuotaThisMonthResponse;
>> stdcall;
>> end;
>>
>> function GetInfoInterface(UseWSDL: Boolean=System.False; Addr:
>> string='';
>> HTTPRIO: THTTPRIO = nil): InfoInterface;
>>
>>
>> implementation
>>
>> function GetInfoInterface(UseWSDL: Boolean; Addr: string; HTTPRIO:
>> THTTPRIO): InfoInterface;
>> const
>> defWSDL =
>> 'https://adwords.google.com/api/adwords/v10/InfoService?wsdl';
>> defURL =
>> 'https://adwords.google.com/api/adwords/v10/InfoService';
>> defSvc = 'InfoService';
>> defPrt = 'InfoService';
>> 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 InfoInterface);
>> 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;
>>
>>
>> constructor getFreeUsageQuotaThisMonth.Create;
>> begin
>> inherited Create;
>> FSerializationOptions := [xoLiteralParam];
>> end;
>>
>> constructor getOperationsQuotaThisMonth.Create;
>> begin
>> inherited Create;
>> FSerializationOptions := [xoLiteralParam];
>> end;
>>
>> constructor getUsageQuotaThisMonth.Create;
>> begin
>> inherited Create;
>> FSerializationOptions := [xoLiteralParam];
>> end;
>>
>> constructor getUsageQuotaThisMonthResponse.Create;
>> begin
>> inherited Create;
>> FSerializationOptions := [xoLiteralParam];
>> end;
>>
>> constructor getUnitCountResponse.Create;
>> begin
>> inherited Create;
>> FSerializationOptions := [xoLiteralParam];
>> end;
>>
>> constructor getUnitCountForMethodResponse.Create;
>> begin
>> inherited Create;
>> FSerializationOptions := [xoLiteralParam];
>> end;
>>
>> constructor getOperationsQuotaThisMonthResponse.Create;
>> begin
>> inherited Create;
>> FSerializationOptions := [xoLiteralParam];
>> end;
>>
>> constructor getOperationCountResponse.Create;
>> begin
>> inherited Create;
>> FSerializationOptions := [xoLiteralParam];
>> end;
>>
>> constructor getFreeUsageQuotaThisMonthResponse.Create;
>> begin
>> inherited Create;
>> FSerializationOptions := [xoLiteralParam];
>> end;
>>
>> constructor getMethodCostResponse.Create;
>> begin
>> inherited Create;
>> FSerializationOptions := [xoLiteralParam];
>> end;
>>
>> destructor ApiException.Destroy;
>> begin
>> if Assigned(Ferrors) then
>> Ferrors.Free;
>> inherited Destroy;
>> end;
>>
>> constructor getUnitCountForMethod.Create;
>> begin
>> inherited Create;
>> FSerializationOptions := [xoLiteralParam];
>> end;
>>
>> destructor getUnitCountForMethod.Destroy;
>> begin
>> if Assigned(FstartDate) then
>> FstartDate.Free;
>> if Assigned(FendDate) then
>> FendDate.Free;
>> inherited Destroy;
>> end;
>>
>> constructor getUnitCountForClients.Create;
>> begin
>> inherited Create;
>> FSerializationOptions := [xoLiteralParam];
>> end;
>>
>> destructor getUnitCountForClients.Destroy;
>> begin
>> if Assigned(FstartDate) then
>> FstartDate.Free;
>> if Assigned(FendDate) then
>> FendDate.Free;
>> inherited Destroy;
>> end;
>>
>> constructor getUnitCount.Create;
>> begin
>> inherited Create;
>> FSerializationOptions := [xoLiteralParam];
>> end;
>>
>> destructor getUnitCount.Destroy;
>> begin
>> if Assigned(FstartDate) then
>> FstartDate.Free;
>> if Assigned(FendDate) then
>> FendDate.Free;
>> inherited Destroy;
>> end;
>>
>> constructor getOperationCount.Create;
>> begin
>> inherited Create;
>> FSerializationOptions := [xoLiteralParam];
>> end;
>>
>> destructor getOperationCount.Destroy;
>> begin
>> if Assigned(FstartDate) then
>> FstartDate.Free;
>> if Assigned(FendDate) then
>> FendDate.Free;
>> inherited Destroy;
>> end;
>>
>> constructor getMethodCost.Create;
>> begin
>> inherited Create;
>> FSerializationOptions := [xoLiteralParam];
>> end;
>>
>> destructor getMethodCost.Destroy;
>> begin
>> if Assigned(Fdate) then
>> Fdate.Free;
>> inherited Destroy;
>> end;
>>
>> initialization
>> InvRegistry.RegisterInterface(TypeInfo(InfoInterface),
>> 'https://adwords.google.com/api/adwords/v10', 'UTF-8');
>> InvRegistry.RegisterDefaultSOAPAction(TypeInfo(InfoInterface),
>> '');
>> InvRegistry.RegisterInvokeOptions(TypeInfo(InfoInterface),
>> ioDocument);
>> InvRegistry.RegisterInvokeOptions(TypeInfo(InfoInterface),
>> ioLiteral);
>> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface),
>> useragent, 'useragent', '');
>> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface),
>> password, 'password', '');
>> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface),
>> email, 'email', '');
>> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface),
>> clientEmail, 'clientEmail', '');
>> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface),
>> clientCustomerId, 'clientCustomerId', '');
>> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface),
>> developerToken, 'developerToken', '');
>> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface),
>> applicationToken, 'applicationToken', '');
>> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface),
>> responseTime, 'responseTime', '');
>> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface),
>> operations, 'operations', '');
>> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface),
>> units, 'units', '');
>> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface),
>> requestId, 'requestId', '');
>> RemClassRegistry.RegisterXSClass(getFreeUsageQuotaThisMonth,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'getFreeUsageQuotaThisMonth');
>> RemClassRegistry.RegisterSerializeOptions(getFreeUsageQuotaThisMonth,
>> [xoLiteralParam]);
>> RemClassRegistry.RegisterXSClass(getOperationsQuotaThisMonth,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'getOperationsQuotaThisMonth');
>> RemClassRegistry.RegisterSerializeOptions(getOperationsQuotaThisMonth,
>> [xoLiteralParam]);
>> RemClassRegistry.RegisterXSInfo(TypeInfo(getUnitCountForClientsResponse),
>>
>> 'https://adwords.google.com/api/adwords/v10',
>> 'getUnitCountForClientsResponse');
>> RemClassRegistry.RegisterXSClass(getUsageQuotaThisMonth,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'getUsageQuotaThisMonth');
>> RemClassRegistry.RegisterSerializeOptions(getUsageQuotaThisMonth,
>> [xoLiteralParam]);
>> RemClassRegistry.RegisterXSClass(getUsageQuotaThisMonthResponse,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'getUsageQuotaThisMonthResponse');
>> RemClassRegistry.RegisterSerializeOptions(getUsageQuotaThisMonthResponse,
>>
>> [xoLiteralParam]);
>> RemClassRegistry.RegisterXSClass(getUnitCountResponse,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'getUnitCountResponse');
>> RemClassRegistry.RegisterSerializeOptions(getUnitCountResponse,
>> [xoLiteralParam]);
>> RemClassRegistry.RegisterXSClass(getUnitCountForMethodResponse,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'getUnitCountForMethodResponse');
>> RemClassRegistry.RegisterSerializeOptions(getUnitCountForMethodResponse,
>> [xoLiteralParam]);
>> RemClassRegistry.RegisterXSClass(getOperationsQuotaThisMonthResponse,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'getOperationsQuotaThisMonthResponse');
>> RemClassRegistry.RegisterSerializeOptions(getOperationsQuotaThisMonthResponse,
>>
>> [xoLiteralParam]);
>> RemClassRegistry.RegisterXSClass(getOperationCountResponse,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'getOperationCountResponse');
>> RemClassRegistry.RegisterSerializeOptions(getOperationCountResponse,
>> [xoLiteralParam]);
>> RemClassRegistry.RegisterXSClass(getFreeUsageQuotaThisMonthResponse,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'getFreeUsageQuotaThisMonthResponse');
>> RemClassRegistry.RegisterSerializeOptions(getFreeUsageQuotaThisMonthResponse,
>>
>> [xoLiteralParam]);
>> RemClassRegistry.RegisterXSClass(getMethodCostResponse,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'getMethodCostResponse');
>> RemClassRegistry.RegisterSerializeOptions(getMethodCostResponse,
>> [xoLiteralParam]);
>> RemClassRegistry.RegisterXSClass(ApiError,
>> 'https://adwords.google.com/api/adwords/v10', 'ApiError');
>> RemClassRegistry.RegisterExternalPropName(TypeInfo(ApiError),
>> 'index_', 'index');
>> RemClassRegistry.RegisterXSClass(ApiException,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'ApiException');
>> RemClassRegistry.RegisterExternalPropName(TypeInfo(ApiException),
>> 'message_', 'message');
>> RemClassRegistry.RegisterXSInfo(TypeInfo(fault),
>> 'https://adwords.google.com/api/adwords/v10', 'fault');
>> RemClassRegistry.RegisterXSClass(getUnitCountForMethod,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'getUnitCountForMethod');
>> RemClassRegistry.RegisterSerializeOptions(getUnitCountForMethod,
>> [xoLiteralParam]);
>> RemClassRegistry.RegisterXSClass(getUnitCountForClients,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'getUnitCountForClients');
>> RemClassRegistry.RegisterSerializeOptions(getUnitCountForClients,
>> [xoLiteralParam]);
>> RemClassRegistry.RegisterXSClass(getUnitCount,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'getUnitCount');
>> RemClassRegistry.RegisterSerializeOptions(getUnitCount,
>> [xoLiteralParam]);
>> RemClassRegistry.RegisterXSClass(getOperationCount,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'getOperationCount');
>> RemClassRegistry.RegisterSerializeOptions(getOperationCount,
>> [xoLiteralParam]);
>> RemClassRegistry.RegisterXSClass(getMethodCost,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'getMethodCost');
>> RemClassRegistry.RegisterSerializeOptions(getMethodCost,
>> [xoLiteralParam]);
>> RemClassRegistry.RegisterXSClass(ClientUsageRecord,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'ClientUsageRecord');
>> RemClassRegistry.RegisterXSClass(useragent,
>> 'https://adwords.google.com/api/adwords/v10', 'useragent');
>> RemClassRegistry.RegisterSerializeOptions(useragent,
>> [xoSimpleTypeWrapper]);
>> RemClassRegistry.RegisterXSClass(password,
>> 'https://adwords.google.com/api/adwords/v10', 'password');
>> RemClassRegistry.RegisterSerializeOptions(password,
>> [xoSimpleTypeWrapper]);
>> RemClassRegistry.RegisterXSClass(email,
>> 'https://adwords.google.com/api/adwords/v10', 'email');
>> RemClassRegistry.RegisterSerializeOptions(email,
>> [xoSimpleTypeWrapper]);
>> RemClassRegistry.RegisterXSClass(clientEmail,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'clientEmail');
>> RemClassRegistry.RegisterSerializeOptions(clientEmail,
>> [xoSimpleTypeWrapper]);
>> RemClassRegistry.RegisterXSClass(clientCustomerId,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'clientCustomerId');
>> RemClassRegistry.RegisterSerializeOptions(clientCustomerId,
>> [xoSimpleTypeWrapper]);
>> RemClassRegistry.RegisterXSClass(developerToken,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'developerToken');
>> RemClassRegistry.RegisterSerializeOptions(developerToken,
>> [xoSimpleTypeWrapper]);
>> RemClassRegistry.RegisterXSClass(applicationToken,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'applicationToken');
>> RemClassRegistry.RegisterSerializeOptions(applicationToken,
>> [xoSimpleTypeWrapper]);
>> RemClassRegistry.RegisterXSClass(responseTime,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'responseTime');
>> RemClassRegistry.RegisterSerializeOptions(responseTime,
>> [xoSimpleTypeWrapper]);
>> RemClassRegistry.RegisterXSClass(operations,
>> 'https://adwords.google.com/api/adwords/v10',
>> 'operations');
>> RemClassRegistry.RegisterSerializeOptions(operations,
>> [xoSimpleTypeWrapper]);
>> RemClassRegistry.RegisterXSClass(units,
>> 'https://adwords.google.com/api/adwords/v10', 'units');
>> RemClassRegistry.RegisterSerializeOptions(units,
>> [xoSimpleTypeWrapper]);
>> RemClassRegistry.RegisterXSClass(requestId,
>> 'https://adwords.google.com/api/adwords/v10', 'requestId');
>> RemClassRegistry.RegisterSerializeOptions(requestId,
>> [xoSimpleTypeWrapper]);
>>
>> end.
>> _______________________________________________
>> NZ Borland Developers Group - Delphi mailing list
>> Post: delphi at delphi.org.nz
>> Admin: http://delphi.org.nz/mailman/listinfo/delphi
>> Unsubscribe: send an email to delphi-request at delphi.org.nz with Subject:
>> unsubscribe
>>
> ------------------------------------------------------------------------
>
> // ************************************************************************ //
> // The types declared in this file were generated from data read from the
> // WSDL File described below:
> // WSDL : https://adwords.google.com/api/adwords/v10/TrafficEstimatorService?wsdl
> // >Import : https://adwords.google.com/api/adwords/v10/TrafficEstimatorService?wsdl:0
> // Encoding : UTF-8
> // Version : 1.0
> // (26/04/2007 6:49:18 PM - * $Rev: 5154 $)
> // ************************************************************************ //
>
> unit TrafficEstimatorService;
>
> interface
>
> uses InvokeRegistry, SOAPHTTPClient, Types, XSBuiltIns;
>
> const
> IS_OPTN = $0001;
> IS_UNBD = $0002;
> IS_NLBL = $0004;
> IS_UNQL = $0008;
> IS_ATTR = $0010;
> IS_TEXT = $0020;
>
> 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.
> // ************************************************************************ //
> // !:int - "http://www.w3.org/2001/XMLSchema"
> // !:long - "http://www.w3.org/2001/XMLSchema"
> // !:string - "http://www.w3.org/2001/XMLSchema"
> // !:boolean - "http://www.w3.org/2001/XMLSchema"
> // !:float - "http://www.w3.org/2001/XMLSchema"
>
> ApiError = class; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
> Circle = class; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
> KeywordEstimate = class; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
> KeywordRequest = class; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
> KeywordTrafficRequest = class; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
> useragent = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> password = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> email = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> clientEmail = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> clientCustomerId = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> developerToken = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> applicationToken = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> responseTime = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> operations = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> units = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> requestId = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> circles = class; { "https://adwords.google.com/api/adwords/v10"[alias] }
> GeoTarget = class; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
> AdGroupEstimate = class; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
> AdGroupRequest = class; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
> ApiException = class; { "https://adwords.google.com/api/adwords/v10"[Flt][GblCplx] }
> fault = class; { "https://adwords.google.com/api/adwords/v10"[Flt][GblElm] }
> CampaignEstimate = class; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
> CampaignRequest = class; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
>
> { "https://adwords.google.com/api/adwords/v10"[GblSmpl] }
> KeywordType = (Broad, Phrase, Exact);
>
> { "https://adwords.google.com/api/adwords/v10"[GblSmpl] }
> NetworkType = (GoogleSearch, SearchNetwork, ContentNetwork);
>
> { "https://adwords.google.com/api/adwords/v10"[GblSmpl] }
> KeywordTraffic = (HasTraffic, VeryLowTraffic, Unknown);
>
>
>
> // ************************************************************************ //
> // XML : ApiError, global, <complexType>
> // Namespace : https://adwords.google.com/api/adwords/v10
> // ************************************************************************ //
> ApiError = class(TRemotable)
> private
> Fcode: Integer;
> Fdetail: WideString;
> Ffield: WideString;
> Ffield_Specified: boolean;
> Findex_: Integer;
> FisExemptable: Boolean;
> FtextIndex: Integer;
> FtextIndex_Specified: boolean;
> FtextLength: Integer;
> FtextLength_Specified: boolean;
> Ftrigger: WideString;
> Ftrigger_Specified: boolean;
> procedure Setfield(Index: Integer; const AWideString: WideString);
> function field_Specified(Index: Integer): boolean;
> procedure SettextIndex(Index: Integer; const AInteger: Integer);
> function textIndex_Specified(Index: Integer): boolean;
> procedure SettextLength(Index: Integer; const AInteger: Integer);
> function textLength_Specified(Index: Integer): boolean;
> procedure Settrigger(Index: Integer; const AWideString: WideString);
> function trigger_Specified(Index: Integer): boolean;
> published
> property code: Integer read Fcode write Fcode;
> property detail: WideString read Fdetail write Fdetail;
> property field: WideString Index (IS_OPTN) read Ffield write Setfield stored field_Specified;
> property index_: Integer read Findex_ write Findex_;
> property isExemptable: Boolean read FisExemptable write FisExemptable;
> property textIndex: Integer Index (IS_OPTN) read FtextIndex write SettextIndex stored textIndex_Specified;
> property textLength: Integer Index (IS_OPTN) read FtextLength write SettextLength stored textLength_Specified;
> property trigger: WideString Index (IS_OPTN) read Ftrigger write Settrigger stored trigger_Specified;
> end;
>
>
>
> // ************************************************************************ //
> // XML : Circle, global, <complexType>
> // Namespace : https://adwords.google.com/api/adwords/v10
> // ************************************************************************ //
> Circle = class(TRemotable)
> private
> FlatitudeMicroDegrees: Integer;
> FlongitudeMicroDegrees: Integer;
> FradiusMeters: Integer;
> published
> property latitudeMicroDegrees: Integer read FlatitudeMicroDegrees write FlatitudeMicroDegrees;
> property longitudeMicroDegrees: Integer read FlongitudeMicroDegrees write FlongitudeMicroDegrees;
> property radiusMeters: Integer read FradiusMeters write FradiusMeters;
> end;
>
> ProximityTargets = array of circles; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
>
>
> // ************************************************************************ //
> // XML : KeywordEstimate, global, <complexType>
> // Namespace : https://adwords.google.com/api/adwords/v10
> // ************************************************************************ //
> KeywordEstimate = class(TRemotable)
> private
> Fid: Int64;
> Fid_Specified: boolean;
> FlowerAvgPosition: Single;
> FlowerClicksPerDay: Single;
> FlowerCpc: Int64;
> FupperAvgPosition: Single;
> FupperClicksPerDay: Single;
> FupperCpc: Int64;
> procedure Setid(Index: Integer; const AInt64: Int64);
> function id_Specified(Index: Integer): boolean;
> published
> property id: Int64 Index (IS_OPTN) read Fid write Setid stored id_Specified;
> property lowerAvgPosition: Single read FlowerAvgPosition write FlowerAvgPosition;
> property lowerClicksPerDay: Single read FlowerClicksPerDay write FlowerClicksPerDay;
> property lowerCpc: Int64 read FlowerCpc write FlowerCpc;
> property upperAvgPosition: Single read FupperAvgPosition write FupperAvgPosition;
> property upperClicksPerDay: Single read FupperClicksPerDay write FupperClicksPerDay;
> property upperCpc: Int64 read FupperCpc write FupperCpc;
> end;
>
>
>
> // ************************************************************************ //
> // XML : KeywordRequest, global, <complexType>
> // Namespace : https://adwords.google.com/api/adwords/v10
> // ************************************************************************ //
> KeywordRequest = class(TRemotable)
> private
> Fid: Int64;
> Fid_Specified: boolean;
> FmaxCpc: Int64;
> FmaxCpc_Specified: boolean;
> Fnegative: Boolean;
> Fnegative_Specified: boolean;
> Ftext: WideString;
> Ftext_Specified: boolean;
> Ftype_: KeywordType;
> Ftype__Specified: boolean;
> procedure Setid(Index: Integer; const AInt64: Int64);
> function id_Specified(Index: Integer): boolean;
> procedure SetmaxCpc(Index: Integer; const AInt64: Int64);
> function maxCpc_Specified(Index: Integer): boolean;
> procedure Setnegative(Index: Integer; const ABoolean: Boolean);
> function negative_Specified(Index: Integer): boolean;
> procedure Settext(Index: Integer; const AWideString: WideString);
> function text_Specified(Index: Integer): boolean;
> procedure Settype_(Index: Integer; const AKeywordType: KeywordType);
> function type__Specified(Index: Integer): boolean;
> published
> property id: Int64 Index (IS_OPTN) read Fid write Setid stored id_Specified;
> property maxCpc: Int64 Index (IS_OPTN) read FmaxCpc write SetmaxCpc stored maxCpc_Specified;
> property negative: Boolean Index (IS_OPTN) read Fnegative write Setnegative stored negative_Specified;
> property text: WideString Index (IS_OPTN) read Ftext write Settext stored text_Specified;
> property type_: KeywordType Index (IS_OPTN) read Ftype_ write Settype_ stored type__Specified;
> end;
>
>
>
> // ************************************************************************ //
> // XML : KeywordTrafficRequest, global, <complexType>
> // Namespace : https://adwords.google.com/api/adwords/v10
> // ************************************************************************ //
> KeywordTrafficRequest = class(TRemotable)
> private
> FkeywordText: WideString;
> FkeywordType: KeywordType;
> Flanguage: WideString;
> published
> property keywordText: WideString read FkeywordText write FkeywordText;
> property keywordType: KeywordType read FkeywordType write FkeywordType;
> property language: WideString read Flanguage write Flanguage;
> end;
>
>
>
> // ************************************************************************ //
> // XML : useragent, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> useragent = class(TSOAPHeader)
> private
> FValue: WideString;
> published
> property Value: WideString read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : password, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> password = class(TSOAPHeader)
> private
> FValue: WideString;
> published
> property Value: WideString read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : email, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> email = class(TSOAPHeader)
> private
> FValue: WideString;
> published
> property Value: WideString read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : clientEmail, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> clientEmail = class(TSOAPHeader)
> private
> FValue: WideString;
> published
> property Value: WideString read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : clientCustomerId, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> clientCustomerId = class(TSOAPHeader)
> private
> FValue: WideString;
> published
> property Value: WideString read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : developerToken, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> developerToken = class(TSOAPHeader)
> private
> FValue: WideString;
> published
> property Value: WideString read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : applicationToken, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> applicationToken = class(TSOAPHeader)
> private
> FValue: WideString;
> published
> property Value: WideString read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : responseTime, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> responseTime = class(TSOAPHeader)
> private
> FValue: Int64;
> published
> property Value: Int64 read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : operations, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> operations = class(TSOAPHeader)
> private
> FValue: Int64;
> published
> property Value: Int64 read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : units, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> units = class(TSOAPHeader)
> private
> FValue: Int64;
> published
> property Value: Int64 read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : requestId, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> requestId = class(TSOAPHeader)
> private
> FValue: WideString;
> published
> property Value: WideString read FValue write FValue;
> end;
>
> languages = type WideString; { "http://www.w3.org/2001/XMLSchema"[alias] }
> LanguageTarget = array of languages; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
> networkTypes = NetworkType; { "https://adwords.google.com/api/adwords/v10"[alias] }
> NetworkTarget = array of networkTypes; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
> cities = type WideString; { "http://www.w3.org/2001/XMLSchema"[alias] }
> CityTargets = array of cities; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
> countries = type WideString; { "http://www.w3.org/2001/XMLSchema"[alias] }
> CountryTargets = array of countries; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
> metros = type WideString; { "http://www.w3.org/2001/XMLSchema"[alias] }
> MetroTargets = array of metros; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
>
>
> // ************************************************************************ //
> // XML : circles, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // ************************************************************************ //
> circles = class(Circle)
> private
> published
> end;
>
> regions = type WideString; { "http://www.w3.org/2001/XMLSchema"[alias] }
> RegionTargets = array of regions; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
>
>
> // ************************************************************************ //
> // XML : GeoTarget, global, <complexType>
> // Namespace : https://adwords.google.com/api/adwords/v10
> // ************************************************************************ //
> GeoTarget = class(TRemotable)
> private
> FcityTargets: CityTargets;
> FcityTargets_Specified: boolean;
> FcountryTargets: CountryTargets;
> FcountryTargets_Specified: boolean;
> FmetroTargets: MetroTargets;
> FmetroTargets_Specified: boolean;
> FproximityTargets: ProximityTargets;
> FproximityTargets_Specified: boolean;
> FregionTargets: RegionTargets;
> FregionTargets_Specified: boolean;
> FtargetAll: Boolean;
> procedure SetcityTargets(Index: Integer; const ACityTargets: CityTargets);
> function cityTargets_Specified(Index: Integer): boolean;
> procedure SetcountryTargets(Index: Integer; const ACountryTargets: CountryTargets);
> function countryTargets_Specified(Index: Integer): boolean;
> procedure SetmetroTargets(Index: Integer; const AMetroTargets: MetroTargets);
> function metroTargets_Specified(Index: Integer): boolean;
> procedure SetproximityTargets(Index: Integer; const AProximityTargets: ProximityTargets);
> function proximityTargets_Specified(Index: Integer): boolean;
> procedure SetregionTargets(Index: Integer; const ARegionTargets: RegionTargets);
> function regionTargets_Specified(Index: Integer): boolean;
> public
> destructor Destroy; override;
> published
> property cityTargets: CityTargets Index (IS_OPTN) read FcityTargets write SetcityTargets stored cityTargets_Specified;
> property countryTargets: CountryTargets Index (IS_OPTN) read FcountryTargets write SetcountryTargets stored countryTargets_Specified;
> property metroTargets: MetroTargets Index (IS_OPTN) read FmetroTargets write SetmetroTargets stored metroTargets_Specified;
> property proximityTargets: ProximityTargets Index (IS_OPTN) read FproximityTargets write SetproximityTargets stored proximityTargets_Specified;
> property regionTargets: RegionTargets Index (IS_OPTN) read FregionTargets write SetregionTargets stored regionTargets_Specified;
> property targetAll: Boolean read FtargetAll write FtargetAll;
> end;
>
> Array_Of_KeywordEstimate = array of KeywordEstimate; { "https://adwords.google.com/api/adwords/v10"[Gblunbnd] }
>
>
> // ************************************************************************ //
> // XML : AdGroupEstimate, global, <complexType>
> // Namespace : https://adwords.google.com/api/adwords/v10
> // ************************************************************************ //
> AdGroupEstimate = class(TRemotable)
> private
> Fid: Integer;
> Fid_Specified: boolean;
> FkeywordEstimates: Array_Of_KeywordEstimate;
> procedure Setid(Index: Integer; const AInteger: Integer);
> function id_Specified(Index: Integer): boolean;
> public
> destructor Destroy; override;
> published
> property id: Integer Index (IS_OPTN) read Fid write Setid stored id_Specified;
> property keywordEstimates: Array_Of_KeywordEstimate Index (IS_UNBD) read FkeywordEstimates write FkeywordEstimates;
> end;
>
> Array_Of_KeywordRequest = array of KeywordRequest; { "https://adwords.google.com/api/adwords/v10"[Gblunbnd] }
>
>
> // ************************************************************************ //
> // XML : AdGroupRequest, global, <complexType>
> // Namespace : https://adwords.google.com/api/adwords/v10
> // ************************************************************************ //
> AdGroupRequest = class(TRemotable)
> private
> Fid: Integer;
> Fid_Specified: boolean;
> FkeywordRequests: Array_Of_KeywordRequest;
> FmaxCpc: Int64;
> FmaxCpc_Specified: boolean;
> procedure Setid(Index: Integer; const AInteger: Integer);
> function id_Specified(Index: Integer): boolean;
> procedure SetmaxCpc(Index: Integer; const AInt64: Int64);
> function maxCpc_Specified(Index: Integer): boolean;
> public
> destructor Destroy; override;
> published
> property id: Integer Index (IS_OPTN or IS_NLBL) read Fid write Setid stored id_Specified;
> property keywordRequests: Array_Of_KeywordRequest Index (IS_UNBD) read FkeywordRequests write FkeywordRequests;
> property maxCpc: Int64 Index (IS_OPTN) read FmaxCpc write SetmaxCpc stored maxCpc_Specified;
> end;
>
> Array_Of_ApiError = array of ApiError; { "https://adwords.google.com/api/adwords/v10"[Gblunbnd] }
>
>
> // ************************************************************************ //
> // XML : ApiException, global, <complexType>
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Info : Fault
> // ************************************************************************ //
> ApiException = class(ERemotableException)
> private
> Fcode: Integer;
> Ferrors: Array_Of_ApiError;
> Finternal: Boolean;
> Fmessage_: WideString;
> Ftrigger: WideString;
> public
> destructor Destroy; override;
> published
> property code: Integer read Fcode write Fcode;
> property errors: Array_Of_ApiError Index (IS_UNBD or IS_NLBL) read Ferrors write Ferrors;
> property internal: Boolean read Finternal write Finternal;
> property message_: WideString Index (IS_NLBL) read Fmessage_ write Fmessage_;
> property trigger: WideString Index (IS_NLBL) read Ftrigger write Ftrigger;
> end;
>
>
>
> // ************************************************************************ //
> // XML : fault, global, <element>
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Info : Fault
> // ************************************************************************ //
> fault = class(ApiException)
> private
> published
> end;
>
> Array_Of_AdGroupEstimate = array of AdGroupEstimate; { "https://adwords.google.com/api/adwords/v10"[Gblunbnd] }
>
>
> // ************************************************************************ //
> // XML : CampaignEstimate, global, <complexType>
> // Namespace : https://adwords.google.com/api/adwords/v10
> // ************************************************************************ //
> CampaignEstimate = class(TRemotable)
> private
> FadGroupEstimates: Array_Of_AdGroupEstimate;
> Fid: Integer;
> Fid_Specified: boolean;
> procedure Setid(Index: Integer; const AInteger: Integer);
> function id_Specified(Index: Integer): boolean;
> public
> destructor Destroy; override;
> published
> property adGroupEstimates: Array_Of_AdGroupEstimate Index (IS_UNBD) read FadGroupEstimates write FadGroupEstimates;
> property id: Integer Index (IS_OPTN) read Fid write Setid stored id_Specified;
> end;
>
> Array_Of_AdGroupRequest = array of AdGroupRequest; { "https://adwords.google.com/api/adwords/v10"[Gblunbnd] }
>
>
> // ************************************************************************ //
> // XML : CampaignRequest, global, <complexType>
> // Namespace : https://adwords.google.com/api/adwords/v10
> // ************************************************************************ //
> CampaignRequest = class(TRemotable)
> private
> FadGroupRequests: Array_Of_AdGroupRequest;
> FgeoTargeting: GeoTarget;
> FgeoTargeting_Specified: boolean;
> Fid: Integer;
> Fid_Specified: boolean;
> FlanguageTargeting: LanguageTarget;
> FlanguageTargeting_Specified: boolean;
> FnetworkTargeting: NetworkTarget;
> FnetworkTargeting_Specified: boolean;
> procedure SetgeoTargeting(Index: Integer; const AGeoTarget: GeoTarget);
> function geoTargeting_Specified(Index: Integer): boolean;
> procedure Setid(Index: Integer; const AInteger: Integer);
> function id_Specified(Index: Integer): boolean;
> procedure SetlanguageTargeting(Index: Integer; const ALanguageTarget: LanguageTarget);
> function languageTargeting_Specified(Index: Integer): boolean;
> procedure SetnetworkTargeting(Index: Integer; const ANetworkTarget: NetworkTarget);
> function networkTargeting_Specified(Index: Integer): boolean;
> public
> destructor Destroy; override;
> published
> property adGroupRequests: Array_Of_AdGroupRequest Index (IS_UNBD) read FadGroupRequests write FadGroupRequests;
> property geoTargeting: GeoTarget Index (IS_OPTN) read FgeoTargeting write SetgeoTargeting stored geoTargeting_Specified;
> property id: Integer Index (IS_OPTN) read Fid write Setid stored id_Specified;
> property languageTargeting: LanguageTarget Index (IS_OPTN or IS_NLBL) read FlanguageTargeting write SetlanguageTargeting stored languageTargeting_Specified;
> property networkTargeting: NetworkTarget Index (IS_OPTN) read FnetworkTargeting write SetnetworkTargeting stored networkTargeting_Specified;
> end;
>
> Array_Of_KeywordTrafficRequest = array of KeywordTrafficRequest; { "https://adwords.google.com/api/adwords/v10"[Gblunbnd] }
> Array_Of_KeywordTraffic = array of KeywordTraffic; { "https://adwords.google.com/api/adwords/v10"[Gblunbnd] }
> Array_Of_CampaignRequest = array of CampaignRequest; { "https://adwords.google.com/api/adwords/v10"[Gblunbnd] }
> Array_Of_CampaignEstimate = array of CampaignEstimate; { "https://adwords.google.com/api/adwords/v10"[Gblunbnd] }
>
> // ************************************************************************ //
> // Namespace : https://adwords.google.com/api/adwords/v10
> // transport : http://schemas.xmlsoap.org/soap/http
> // style : document
> // binding : TrafficEstimatorServiceSoapBinding
> // service : TrafficEstimatorService
> // port : TrafficEstimatorService
> // URL : https://adwords.google.com/api/adwords/v10/TrafficEstimatorService
> // ************************************************************************ //
> TrafficEstimatorInterface = interface(IInvokable)
> ['{DA291CD4-CFA7-A713-BF96-933EEFFEF667}']
>
> // Headers: useragent:pIn, password:pIn, email:pIn, clientEmail:pIn, clientCustomerId:pIn, developerToken:pIn, applicationToken:pIn, responseTime:pOut, operations:pOut, units:pOut, requestId:pOut
> function checkKeywordTraffic(const requests: Array_Of_KeywordTrafficRequest): Array_Of_KeywordTraffic; stdcall;
>
> // Headers: useragent:pIn, password:pIn, email:pIn, clientEmail:pIn, clientCustomerId:pIn, developerToken:pIn, applicationToken:pIn, responseTime:pOut, operations:pOut, units:pOut, requestId:pOut
> function estimateAdGroupList(const adGroupRequests: Array_Of_AdGroupRequest): Array_Of_AdGroupEstimate; stdcall;
>
> // Headers: useragent:pIn, password:pIn, email:pIn, clientEmail:pIn, clientCustomerId:pIn, developerToken:pIn, applicationToken:pIn, responseTime:pOut, operations:pOut, units:pOut, requestId:pOut
> function estimateCampaignList(const campaignRequests: Array_Of_CampaignRequest): Array_Of_CampaignEstimate; stdcall;
>
> // Headers: useragent:pIn, password:pIn, email:pIn, clientEmail:pIn, clientCustomerId:pIn, developerToken:pIn, applicationToken:pIn, responseTime:pOut, operations:pOut, units:pOut, requestId:pOut
> function estimateKeywordList(const keywordRequests: Array_Of_KeywordRequest): Array_Of_KeywordEstimate; stdcall;
> end;
>
> function GetTrafficEstimatorInterface(UseWSDL: Boolean=System.False; Addr: string=''; HTTPRIO: THTTPRIO = nil): TrafficEstimatorInterface;
>
>
> implementation
> uses SysUtils;
>
> function GetTrafficEstimatorInterface(UseWSDL: Boolean; Addr: string; HTTPRIO: THTTPRIO): TrafficEstimatorInterface;
> const
> defWSDL = 'https://adwords.google.com/api/adwords/v10/TrafficEstimatorService?wsdl';
> defURL = 'https://adwords.google.com/api/adwords/v10/TrafficEstimatorService';
> defSvc = 'TrafficEstimatorService';
> defPrt = 'TrafficEstimatorService';
> 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 TrafficEstimatorInterface);
> 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;
>
>
> procedure ApiError.Setfield(Index: Integer; const AWideString: WideString);
> begin
> Ffield := AWideString;
> Ffield_Specified := True;
> end;
>
> function ApiError.field_Specified(Index: Integer): boolean;
> begin
> Result := Ffield_Specified;
> end;
>
> procedure ApiError.SettextIndex(Index: Integer; const AInteger: Integer);
> begin
> FtextIndex := AInteger;
> FtextIndex_Specified := True;
> end;
>
> function ApiError.textIndex_Specified(Index: Integer): boolean;
> begin
> Result := FtextIndex_Specified;
> end;
>
> procedure ApiError.SettextLength(Index: Integer; const AInteger: Integer);
> begin
> FtextLength := AInteger;
> FtextLength_Specified := True;
> end;
>
> function ApiError.textLength_Specified(Index: Integer): boolean;
> begin
> Result := FtextLength_Specified;
> end;
>
> procedure ApiError.Settrigger(Index: Integer; const AWideString: WideString);
> begin
> Ftrigger := AWideString;
> Ftrigger_Specified := True;
> end;
>
> function ApiError.trigger_Specified(Index: Integer): boolean;
> begin
> Result := Ftrigger_Specified;
> end;
>
> procedure KeywordEstimate.Setid(Index: Integer; const AInt64: Int64);
> begin
> Fid := AInt64;
> Fid_Specified := True;
> end;
>
> function KeywordEstimate.id_Specified(Index: Integer): boolean;
> begin
> Result := Fid_Specified;
> end;
>
> procedure KeywordRequest.Setid(Index: Integer; const AInt64: Int64);
> begin
> Fid := AInt64;
> Fid_Specified := True;
> end;
>
> function KeywordRequest.id_Specified(Index: Integer): boolean;
> begin
> Result := Fid_Specified;
> end;
>
> procedure KeywordRequest.SetmaxCpc(Index: Integer; const AInt64: Int64);
> begin
> FmaxCpc := AInt64;
> FmaxCpc_Specified := True;
> end;
>
> function KeywordRequest.maxCpc_Specified(Index: Integer): boolean;
> begin
> Result := FmaxCpc_Specified;
> end;
>
> procedure KeywordRequest.Setnegative(Index: Integer; const ABoolean: Boolean);
> begin
> Fnegative := ABoolean;
> Fnegative_Specified := True;
> end;
>
> function KeywordRequest.negative_Specified(Index: Integer): boolean;
> begin
> Result := Fnegative_Specified;
> end;
>
> procedure KeywordRequest.Settext(Index: Integer; const AWideString: WideString);
> begin
> Ftext := AWideString;
> Ftext_Specified := True;
> end;
>
> function KeywordRequest.text_Specified(Index: Integer): boolean;
> begin
> Result := Ftext_Specified;
> end;
>
> procedure KeywordRequest.Settype_(Index: Integer; const AKeywordType: KeywordType);
> begin
> Ftype_ := AKeywordType;
> Ftype__Specified := True;
> end;
>
> function KeywordRequest.type__Specified(Index: Integer): boolean;
> begin
> Result := Ftype__Specified;
> end;
>
> destructor GeoTarget.Destroy;
> var
> I: Integer;
> begin
> for I := 0 to Length(FproximityTargets)-1 do
> FreeAndNil(FproximityTargets[I]);
> SetLength(FproximityTargets, 0);
> inherited Destroy;
> end;
>
> procedure GeoTarget.SetcityTargets(Index: Integer; const ACityTargets: CityTargets);
> begin
> FcityTargets := ACityTargets;
> FcityTargets_Specified := True;
> end;
>
> function GeoTarget.cityTargets_Specified(Index: Integer): boolean;
> begin
> Result := FcityTargets_Specified;
> end;
>
> procedure GeoTarget.SetcountryTargets(Index: Integer; const ACountryTargets: CountryTargets);
> begin
> FcountryTargets := ACountryTargets;
> FcountryTargets_Specified := True;
> end;
>
> function GeoTarget.countryTargets_Specified(Index: Integer): boolean;
> begin
> Result := FcountryTargets_Specified;
> end;
>
> procedure GeoTarget.SetmetroTargets(Index: Integer; const AMetroTargets: MetroTargets);
> begin
> FmetroTargets := AMetroTargets;
> FmetroTargets_Specified := True;
> end;
>
> function GeoTarget.metroTargets_Specified(Index: Integer): boolean;
> begin
> Result := FmetroTargets_Specified;
> end;
>
> procedure GeoTarget.SetproximityTargets(Index: Integer; const AProximityTargets: ProximityTargets);
> begin
> FproximityTargets := AProximityTargets;
> FproximityTargets_Specified := True;
> end;
>
> function GeoTarget.proximityTargets_Specified(Index: Integer): boolean;
> begin
> Result := FproximityTargets_Specified;
> end;
>
> procedure GeoTarget.SetregionTargets(Index: Integer; const ARegionTargets: RegionTargets);
> begin
> FregionTargets := ARegionTargets;
> FregionTargets_Specified := True;
> end;
>
> function GeoTarget.regionTargets_Specified(Index: Integer): boolean;
> begin
> Result := FregionTargets_Specified;
> end;
>
> destructor AdGroupEstimate.Destroy;
> var
> I: Integer;
> begin
> for I := 0 to Length(FkeywordEstimates)-1 do
> FreeAndNil(FkeywordEstimates[I]);
> SetLength(FkeywordEstimates, 0);
> inherited Destroy;
> end;
>
> procedure AdGroupEstimate.Setid(Index: Integer; const AInteger: Integer);
> begin
> Fid := AInteger;
> Fid_Specified := True;
> end;
>
> function AdGroupEstimate.id_Specified(Index: Integer): boolean;
> begin
> Result := Fid_Specified;
> end;
>
> destructor AdGroupRequest.Destroy;
> var
> I: Integer;
> begin
> for I := 0 to Length(FkeywordRequests)-1 do
> FreeAndNil(FkeywordRequests[I]);
> SetLength(FkeywordRequests, 0);
> inherited Destroy;
> end;
>
> procedure AdGroupRequest.Setid(Index: Integer; const AInteger: Integer);
> begin
> Fid := AInteger;
> Fid_Specified := True;
> end;
>
> function AdGroupRequest.id_Specified(Index: Integer): boolean;
> begin
> Result := Fid_Specified;
> end;
>
> procedure AdGroupRequest.SetmaxCpc(Index: Integer; const AInt64: Int64);
> begin
> FmaxCpc := AInt64;
> FmaxCpc_Specified := True;
> end;
>
> function AdGroupRequest.maxCpc_Specified(Index: Integer): boolean;
> begin
> Result := FmaxCpc_Specified;
> end;
>
> destructor ApiException.Destroy;
> var
> I: Integer;
> begin
> for I := 0 to Length(Ferrors)-1 do
> FreeAndNil(Ferrors[I]);
> SetLength(Ferrors, 0);
> inherited Destroy;
> end;
>
> destructor CampaignEstimate.Destroy;
> var
> I: Integer;
> begin
> for I := 0 to Length(FadGroupEstimates)-1 do
> FreeAndNil(FadGroupEstimates[I]);
> SetLength(FadGroupEstimates, 0);
> inherited Destroy;
> end;
>
> procedure CampaignEstimate.Setid(Index: Integer; const AInteger: Integer);
> begin
> Fid := AInteger;
> Fid_Specified := True;
> end;
>
> function CampaignEstimate.id_Specified(Index: Integer): boolean;
> begin
> Result := Fid_Specified;
> end;
>
> destructor CampaignRequest.Destroy;
> var
> I: Integer;
> begin
> for I := 0 to Length(FadGroupRequests)-1 do
> FreeAndNil(FadGroupRequests[I]);
> SetLength(FadGroupRequests, 0);
> FreeAndNil(FgeoTargeting);
> inherited Destroy;
> end;
>
> procedure CampaignRequest.SetgeoTargeting(Index: Integer; const AGeoTarget: GeoTarget);
> begin
> FgeoTargeting := AGeoTarget;
> FgeoTargeting_Specified := True;
> end;
>
> function CampaignRequest.geoTargeting_Specified(Index: Integer): boolean;
> begin
> Result := FgeoTargeting_Specified;
> end;
>
> procedure CampaignRequest.Setid(Index: Integer; const AInteger: Integer);
> begin
> Fid := AInteger;
> Fid_Specified := True;
> end;
>
> function CampaignRequest.id_Specified(Index: Integer): boolean;
> begin
> Result := Fid_Specified;
> end;
>
> procedure CampaignRequest.SetlanguageTargeting(Index: Integer; const ALanguageTarget: LanguageTarget);
> begin
> FlanguageTargeting := ALanguageTarget;
> FlanguageTargeting_Specified := True;
> end;
>
> function CampaignRequest.languageTargeting_Specified(Index: Integer): boolean;
> begin
> Result := FlanguageTargeting_Specified;
> end;
>
> procedure CampaignRequest.SetnetworkTargeting(Index: Integer; const ANetworkTarget: NetworkTarget);
> begin
> FnetworkTargeting := ANetworkTarget;
> FnetworkTargeting_Specified := True;
> end;
>
> function CampaignRequest.networkTargeting_Specified(Index: Integer): boolean;
> begin
> Result := FnetworkTargeting_Specified;
> end;
>
> initialization
> InvRegistry.RegisterInterface(TypeInfo(TrafficEstimatorInterface), 'https://adwords.google.com/api/adwords/v10', 'UTF-8');
> InvRegistry.RegisterDefaultSOAPAction(TypeInfo(TrafficEstimatorInterface), '');
> InvRegistry.RegisterInvokeOptions(TypeInfo(TrafficEstimatorInterface), ioDocument);
> InvRegistry.RegisterHeaderClass(TypeInfo(TrafficEstimatorInterface), useragent, 'useragent', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(TrafficEstimatorInterface), password, 'password', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(TrafficEstimatorInterface), email, 'email', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(TrafficEstimatorInterface), clientEmail, 'clientEmail', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(TrafficEstimatorInterface), clientCustomerId, 'clientCustomerId', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(TrafficEstimatorInterface), developerToken, 'developerToken', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(TrafficEstimatorInterface), applicationToken, 'applicationToken', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(TrafficEstimatorInterface), responseTime, 'responseTime', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(TrafficEstimatorInterface), operations, 'operations', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(TrafficEstimatorInterface), units, 'units', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(TrafficEstimatorInterface), requestId, 'requestId', 'https://adwords.google.com/api/adwords/v10');
> RemClassRegistry.RegisterXSClass(ApiError, 'https://adwords.google.com/api/adwords/v10', 'ApiError');
> RemClassRegistry.RegisterExternalPropName(TypeInfo(ApiError), 'index_', 'index');
> RemClassRegistry.RegisterXSClass(Circle, 'https://adwords.google.com/api/adwords/v10', 'Circle');
> RemClassRegistry.RegisterXSInfo(TypeInfo(ProximityTargets), 'https://adwords.google.com/api/adwords/v10', 'ProximityTargets');
> RemClassRegistry.RegisterXSClass(KeywordEstimate, 'https://adwords.google.com/api/adwords/v10', 'KeywordEstimate');
> RemClassRegistry.RegisterXSInfo(TypeInfo(KeywordType), 'https://adwords.google.com/api/adwords/v10', 'KeywordType');
> RemClassRegistry.RegisterXSClass(KeywordRequest, 'https://adwords.google.com/api/adwords/v10', 'KeywordRequest');
> RemClassRegistry.RegisterExternalPropName(TypeInfo(KeywordRequest), 'type_', 'type');
> RemClassRegistry.RegisterXSClass(KeywordTrafficRequest, 'https://adwords.google.com/api/adwords/v10', 'KeywordTrafficRequest');
> RemClassRegistry.RegisterXSInfo(TypeInfo(NetworkType), 'https://adwords.google.com/api/adwords/v10', 'NetworkType');
> RemClassRegistry.RegisterXSInfo(TypeInfo(KeywordTraffic), 'https://adwords.google.com/api/adwords/v10', 'KeywordTraffic');
> RemClassRegistry.RegisterXSClass(useragent, 'https://adwords.google.com/api/adwords/v10', 'useragent');
> RemClassRegistry.RegisterSerializeOptions(useragent, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(password, 'https://adwords.google.com/api/adwords/v10', 'password');
> RemClassRegistry.RegisterSerializeOptions(password, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(email, 'https://adwords.google.com/api/adwords/v10', 'email');
> RemClassRegistry.RegisterSerializeOptions(email, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(clientEmail, 'https://adwords.google.com/api/adwords/v10', 'clientEmail');
> RemClassRegistry.RegisterSerializeOptions(clientEmail, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(clientCustomerId, 'https://adwords.google.com/api/adwords/v10', 'clientCustomerId');
> RemClassRegistry.RegisterSerializeOptions(clientCustomerId, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(developerToken, 'https://adwords.google.com/api/adwords/v10', 'developerToken');
> RemClassRegistry.RegisterSerializeOptions(developerToken, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(applicationToken, 'https://adwords.google.com/api/adwords/v10', 'applicationToken');
> RemClassRegistry.RegisterSerializeOptions(applicationToken, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(responseTime, 'https://adwords.google.com/api/adwords/v10', 'responseTime');
> RemClassRegistry.RegisterSerializeOptions(responseTime, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(operations, 'https://adwords.google.com/api/adwords/v10', 'operations');
> RemClassRegistry.RegisterSerializeOptions(operations, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(units, 'https://adwords.google.com/api/adwords/v10', 'units');
> RemClassRegistry.RegisterSerializeOptions(units, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(requestId, 'https://adwords.google.com/api/adwords/v10', 'requestId');
> RemClassRegistry.RegisterSerializeOptions(requestId, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSInfo(TypeInfo(languages), 'http://www.w3.org/2001/XMLSchema', 'languages');
> RemClassRegistry.RegisterXSInfo(TypeInfo(LanguageTarget), 'https://adwords.google.com/api/adwords/v10', 'LanguageTarget');
> RemClassRegistry.RegisterXSInfo(TypeInfo(networkTypes), 'https://adwords.google.com/api/adwords/v10', 'networkTypes');
> RemClassRegistry.RegisterXSInfo(TypeInfo(NetworkTarget), 'https://adwords.google.com/api/adwords/v10', 'NetworkTarget');
> RemClassRegistry.RegisterXSInfo(TypeInfo(cities), 'http://www.w3.org/2001/XMLSchema', 'cities');
> RemClassRegistry.RegisterXSInfo(TypeInfo(CityTargets), 'https://adwords.google.com/api/adwords/v10', 'CityTargets');
> RemClassRegistry.RegisterXSInfo(TypeInfo(countries), 'http://www.w3.org/2001/XMLSchema', 'countries');
> RemClassRegistry.RegisterXSInfo(TypeInfo(CountryTargets), 'https://adwords.google.com/api/adwords/v10', 'CountryTargets');
> RemClassRegistry.RegisterXSInfo(TypeInfo(metros), 'http://www.w3.org/2001/XMLSchema', 'metros');
> RemClassRegistry.RegisterXSInfo(TypeInfo(MetroTargets), 'https://adwords.google.com/api/adwords/v10', 'MetroTargets');
> RemClassRegistry.RegisterXSClass(circles, 'https://adwords.google.com/api/adwords/v10', 'circles');
> RemClassRegistry.RegisterXSInfo(TypeInfo(regions), 'http://www.w3.org/2001/XMLSchema', 'regions');
> RemClassRegistry.RegisterXSInfo(TypeInfo(RegionTargets), 'https://adwords.google.com/api/adwords/v10', 'RegionTargets');
> RemClassRegistry.RegisterXSClass(GeoTarget, 'https://adwords.google.com/api/adwords/v10', 'GeoTarget');
> RemClassRegistry.RegisterXSInfo(TypeInfo(Array_Of_KeywordEstimate), 'https://adwords.google.com/api/adwords/v10', 'Array_Of_KeywordEstimate');
> RemClassRegistry.RegisterSerializeOptions(TypeInfo(Array_Of_KeywordEstimate), [xoInlineArrays]);
> RemClassRegistry.RegisterXSClass(AdGroupEstimate, 'https://adwords.google.com/api/adwords/v10', 'AdGroupEstimate');
> RemClassRegistry.RegisterXSInfo(TypeInfo(Array_Of_KeywordRequest), 'https://adwords.google.com/api/adwords/v10', 'Array_Of_KeywordRequest');
> RemClassRegistry.RegisterSerializeOptions(TypeInfo(Array_Of_KeywordRequest), [xoInlineArrays]);
> RemClassRegistry.RegisterXSClass(AdGroupRequest, 'https://adwords.google.com/api/adwords/v10', 'AdGroupRequest');
> RemClassRegistry.RegisterXSInfo(TypeInfo(Array_Of_ApiError), 'https://adwords.google.com/api/adwords/v10', 'Array_Of_ApiError');
> RemClassRegistry.RegisterXSClass(ApiException, 'https://adwords.google.com/api/adwords/v10', 'ApiException');
> RemClassRegistry.RegisterExternalPropName(TypeInfo(ApiException), 'message_', 'message');
> RemClassRegistry.RegisterXSClass(fault, 'https://adwords.google.com/api/adwords/v10', 'fault');
> RemClassRegistry.RegisterXSInfo(TypeInfo(Array_Of_AdGroupEstimate), 'https://adwords.google.com/api/adwords/v10', 'Array_Of_AdGroupEstimate');
> RemClassRegistry.RegisterSerializeOptions(TypeInfo(Array_Of_AdGroupEstimate), [xoInlineArrays]);
> RemClassRegistry.RegisterXSClass(CampaignEstimate, 'https://adwords.google.com/api/adwords/v10', 'CampaignEstimate');
> RemClassRegistry.RegisterXSInfo(TypeInfo(Array_Of_AdGroupRequest), 'https://adwords.google.com/api/adwords/v10', 'Array_Of_AdGroupRequest');
> RemClassRegistry.RegisterSerializeOptions(TypeInfo(Array_Of_AdGroupRequest), [xoInlineArrays]);
> RemClassRegistry.RegisterXSClass(CampaignRequest, 'https://adwords.google.com/api/adwords/v10', 'CampaignRequest');
> RemClassRegistry.RegisterXSInfo(TypeInfo(Array_Of_KeywordTrafficRequest), 'https://adwords.google.com/api/adwords/v10', 'Array_Of_KeywordTrafficRequest');
> RemClassRegistry.RegisterSerializeOptions(TypeInfo(Array_Of_KeywordTrafficRequest), [xoInlineArrays]);
> RemClassRegistry.RegisterXSInfo(TypeInfo(Array_Of_KeywordTraffic), 'https://adwords.google.com/api/adwords/v10', 'Array_Of_KeywordTraffic');
> RemClassRegistry.RegisterSerializeOptions(TypeInfo(Array_Of_KeywordTraffic), [xoInlineArrays]);
> RemClassRegistry.RegisterXSInfo(TypeInfo(Array_Of_CampaignRequest), 'https://adwords.google.com/api/adwords/v10', 'Array_Of_CampaignRequest');
> RemClassRegistry.RegisterSerializeOptions(TypeInfo(Array_Of_CampaignRequest), [xoInlineArrays]);
> RemClassRegistry.RegisterXSInfo(TypeInfo(Array_Of_CampaignEstimate), 'https://adwords.google.com/api/adwords/v10', 'Array_Of_CampaignEstimate');
> RemClassRegistry.RegisterSerializeOptions(TypeInfo(Array_Of_CampaignEstimate), [xoInlineArrays]);
>
> end.
> ------------------------------------------------------------------------
>
> // ************************************************************************ //
> // The types declared in this file were generated from data read from the
> // WSDL File described below:
> // WSDL : https://adwords.google.com/api/adwords/v10/InfoService?wsdl
> // >Import : https://adwords.google.com/api/adwords/v10/InfoService?wsdl:0
> // Encoding : UTF-8
> // Version : 1.0
> // (26/04/2007 6:50:13 PM - * $Rev: 5154 $)
> // ************************************************************************ //
>
> unit InfoService;
>
> interface
>
> uses InvokeRegistry, SOAPHTTPClient, Types, XSBuiltIns;
>
> const
> IS_OPTN = $0001;
> IS_UNBD = $0002;
> IS_NLBL = $0004;
> IS_UNQL = $0008;
> IS_ATTR = $0010;
> IS_TEXT = $0020;
>
> 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.
> // ************************************************************************ //
> // !:int - "http://www.w3.org/2001/XMLSchema"
> // !:string - "http://www.w3.org/2001/XMLSchema"
> // !:boolean - "http://www.w3.org/2001/XMLSchema"
> // !:long - "http://www.w3.org/2001/XMLSchema"
> // !:date - "http://www.w3.org/2001/XMLSchema"
>
> ApiError = class; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
> ClientUsageRecord = class; { "https://adwords.google.com/api/adwords/v10"[GblCplx] }
> useragent = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> password = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> email = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> clientEmail = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> clientCustomerId = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> developerToken = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> applicationToken = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> responseTime = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> operations = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> units = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> requestId = class; { "https://adwords.google.com/api/adwords/v10"[Hdr][alias] }
> ApiException = class; { "https://adwords.google.com/api/adwords/v10"[Flt][GblCplx] }
> fault = class; { "https://adwords.google.com/api/adwords/v10"[Flt][GblElm] }
>
>
>
> // ************************************************************************ //
> // XML : ApiError, global, <complexType>
> // Namespace : https://adwords.google.com/api/adwords/v10
> // ************************************************************************ //
> ApiError = class(TRemotable)
> private
> Fcode: Integer;
> Fdetail: WideString;
> Ffield: WideString;
> Ffield_Specified: boolean;
> Findex_: Integer;
> FisExemptable: Boolean;
> FtextIndex: Integer;
> FtextIndex_Specified: boolean;
> FtextLength: Integer;
> FtextLength_Specified: boolean;
> Ftrigger: WideString;
> Ftrigger_Specified: boolean;
> procedure Setfield(Index: Integer; const AWideString: WideString);
> function field_Specified(Index: Integer): boolean;
> procedure SettextIndex(Index: Integer; const AInteger: Integer);
> function textIndex_Specified(Index: Integer): boolean;
> procedure SettextLength(Index: Integer; const AInteger: Integer);
> function textLength_Specified(Index: Integer): boolean;
> procedure Settrigger(Index: Integer; const AWideString: WideString);
> function trigger_Specified(Index: Integer): boolean;
> published
> property code: Integer read Fcode write Fcode;
> property detail: WideString read Fdetail write Fdetail;
> property field: WideString Index (IS_OPTN) read Ffield write Setfield stored field_Specified;
> property index_: Integer read Findex_ write Findex_;
> property isExemptable: Boolean read FisExemptable write FisExemptable;
> property textIndex: Integer Index (IS_OPTN) read FtextIndex write SettextIndex stored textIndex_Specified;
> property textLength: Integer Index (IS_OPTN) read FtextLength write SettextLength stored textLength_Specified;
> property trigger: WideString Index (IS_OPTN) read Ftrigger write Settrigger stored trigger_Specified;
> end;
>
>
>
> // ************************************************************************ //
> // XML : ClientUsageRecord, global, <complexType>
> // Namespace : https://adwords.google.com/api/adwords/v10
> // ************************************************************************ //
> ClientUsageRecord = class(TRemotable)
> private
> FclientEmail: WideString;
> FquotaUnits: Int64;
> published
> property clientEmail: WideString read FclientEmail write FclientEmail;
> property quotaUnits: Int64 read FquotaUnits write FquotaUnits;
> end;
>
>
>
> // ************************************************************************ //
> // XML : useragent, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> useragent = class(TSOAPHeader)
> private
> FValue: WideString;
> published
> property Value: WideString read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : password, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> password = class(TSOAPHeader)
> private
> FValue: WideString;
> published
> property Value: WideString read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : email, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> email = class(TSOAPHeader)
> private
> FValue: WideString;
> published
> property Value: WideString read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : clientEmail, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> clientEmail = class(TSOAPHeader)
> private
> FValue: WideString;
> published
> property Value: WideString read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : clientCustomerId, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> clientCustomerId = class(TSOAPHeader)
> private
> FValue: WideString;
> published
> property Value: WideString read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : developerToken, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> developerToken = class(TSOAPHeader)
> private
> FValue: WideString;
> published
> property Value: WideString read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : applicationToken, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> applicationToken = class(TSOAPHeader)
> private
> FValue: WideString;
> published
> property Value: WideString read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : responseTime, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> responseTime = class(TSOAPHeader)
> private
> FValue: Int64;
> published
> property Value: Int64 read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : operations, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> operations = class(TSOAPHeader)
> private
> FValue: Int64;
> published
> property Value: Int64 read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : units, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> units = class(TSOAPHeader)
> private
> FValue: Int64;
> published
> property Value: Int64 read FValue write FValue;
> end;
>
>
>
> // ************************************************************************ //
> // XML : requestId, alias
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Serializtn: [xoSimpleTypeWrapper]
> // Info : Header
> // ************************************************************************ //
> requestId = class(TSOAPHeader)
> private
> FValue: WideString;
> published
> property Value: WideString read FValue write FValue;
> end;
>
> Array_Of_ApiError = array of ApiError; { "https://adwords.google.com/api/adwords/v10"[Gblunbnd] }
>
>
> // ************************************************************************ //
> // XML : ApiException, global, <complexType>
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Info : Fault
> // ************************************************************************ //
> ApiException = class(ERemotableException)
> private
> Fcode: Integer;
> Ferrors: Array_Of_ApiError;
> Finternal: Boolean;
> Fmessage_: WideString;
> Ftrigger: WideString;
> public
> destructor Destroy; override;
> published
> property code: Integer read Fcode write Fcode;
> property errors: Array_Of_ApiError Index (IS_UNBD or IS_NLBL) read Ferrors write Ferrors;
> property internal: Boolean read Finternal write Finternal;
> property message_: WideString Index (IS_NLBL) read Fmessage_ write Fmessage_;
> property trigger: WideString Index (IS_NLBL) read Ftrigger write Ftrigger;
> end;
>
>
>
> // ************************************************************************ //
> // XML : fault, global, <element>
> // Namespace : https://adwords.google.com/api/adwords/v10
> // Info : Fault
> // ************************************************************************ //
> fault = class(ApiException)
> private
> published
> end;
>
> Array_Of_string = array of WideString; { "http://www.w3.org/2001/XMLSchema"[Gblunbnd] }
> Array_Of_ClientUsageRecord = array of ClientUsageRecord; { "https://adwords.google.com/api/adwords/v10"[Gblunbnd] }
>
> // ************************************************************************ //
> // Namespace : https://adwords.google.com/api/adwords/v10
> // transport : http://schemas.xmlsoap.org/soap/http
> // style : document
> // binding : InfoServiceSoapBinding
> // service : InfoService
> // port : InfoService
> // URL : https://adwords.google.com/api/adwords/v10/InfoService
> // ************************************************************************ //
> InfoInterface = interface(IInvokable)
> ['{C9DFB757-3500-B070-5EF2-260E77A5696F}']
>
> // Headers: useragent:pIn, password:pIn, email:pIn, clientEmail:pIn, clientCustomerId:pIn, developerToken:pIn, applicationToken:pIn, responseTime:pOut, operations:pOut, units:pOut, requestId:pOut
> function getFreeUsageQuotaThisMonth: Int64; stdcall;
>
> // Headers: useragent:pIn, password:pIn, email:pIn, clientEmail:pIn, clientCustomerId:pIn, developerToken:pIn, applicationToken:pIn, responseTime:pOut, operations:pOut, units:pOut, requestId:pOut
> function getMethodCost(const service: WideString; const method: WideString; const date: TXSDate): Integer; stdcall;
>
> // Headers: useragent:pIn, password:pIn, email:pIn, clientEmail:pIn, clientCustomerId:pIn, developerToken:pIn, applicationToken:pIn, responseTime:pOut, operations:pOut, units:pOut, requestId:pOut
> function getOperationCount(const startDate: TXSDate; const endDate: TXSDate): Int64; stdcall;
>
> // Headers: useragent:pIn, password:pIn, email:pIn, clientEmail:pIn, clientCustomerId:pIn, developerToken:pIn, applicationToken:pIn, responseTime:pOut, operations:pOut, units:pOut, requestId:pOut
> function getOperationsQuotaThisMonth: Int64; stdcall;
>
> // Headers: useragent:pIn, password:pIn, email:pIn, clientEmail:pIn, clientCustomerId:pIn, developerToken:pIn, applicationToken:pIn, responseTime:pOut, operations:pOut, units:pOut, requestId:pOut
> function getUnitCount(const startDate: TXSDate; const endDate: TXSDate): Int64; stdcall;
>
> // Headers: useragent:pIn, password:pIn, email:pIn, clientEmail:pIn, clientCustomerId:pIn, developerToken:pIn, applicationToken:pIn, responseTime:pOut, operations:pOut, units:pOut, requestId:pOut
> function getUnitCountForClients(const clientEmails: Array_Of_string; const startDate: TXSDate; const endDate: TXSDate): Array_Of_ClientUsageRecord; stdcall;
>
> // Headers: useragent:pIn, password:pIn, email:pIn, clientEmail:pIn, clientCustomerId:pIn, developerToken:pIn, applicationToken:pIn, responseTime:pOut, operations:pOut, units:pOut, requestId:pOut
> function getUnitCountForMethod(const service: WideString; const method: WideString; const startDate: TXSDate; const endDate: TXSDate): Int64; stdcall;
>
> // Headers: useragent:pIn, password:pIn, email:pIn, clientEmail:pIn, clientCustomerId:pIn, developerToken:pIn, applicationToken:pIn, responseTime:pOut, operations:pOut, units:pOut, requestId:pOut
> function getUsageQuotaThisMonth: Int64; stdcall;
> end;
>
> function GetInfoInterface(UseWSDL: Boolean=System.False; Addr: string=''; HTTPRIO: THTTPRIO = nil): InfoInterface;
>
>
> implementation
> uses SysUtils;
>
> function GetInfoInterface(UseWSDL: Boolean; Addr: string; HTTPRIO: THTTPRIO): InfoInterface;
> const
> defWSDL = 'https://adwords.google.com/api/adwords/v10/InfoService?wsdl';
> defURL = 'https://adwords.google.com/api/adwords/v10/InfoService';
> defSvc = 'InfoService';
> defPrt = 'InfoService';
> 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 InfoInterface);
> 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;
>
>
> procedure ApiError.Setfield(Index: Integer; const AWideString: WideString);
> begin
> Ffield := AWideString;
> Ffield_Specified := True;
> end;
>
> function ApiError.field_Specified(Index: Integer): boolean;
> begin
> Result := Ffield_Specified;
> end;
>
> procedure ApiError.SettextIndex(Index: Integer; const AInteger: Integer);
> begin
> FtextIndex := AInteger;
> FtextIndex_Specified := True;
> end;
>
> function ApiError.textIndex_Specified(Index: Integer): boolean;
> begin
> Result := FtextIndex_Specified;
> end;
>
> procedure ApiError.SettextLength(Index: Integer; const AInteger: Integer);
> begin
> FtextLength := AInteger;
> FtextLength_Specified := True;
> end;
>
> function ApiError.textLength_Specified(Index: Integer): boolean;
> begin
> Result := FtextLength_Specified;
> end;
>
> procedure ApiError.Settrigger(Index: Integer; const AWideString: WideString);
> begin
> Ftrigger := AWideString;
> Ftrigger_Specified := True;
> end;
>
> function ApiError.trigger_Specified(Index: Integer): boolean;
> begin
> Result := Ftrigger_Specified;
> end;
>
> destructor ApiException.Destroy;
> var
> I: Integer;
> begin
> for I := 0 to Length(Ferrors)-1 do
> FreeAndNil(Ferrors[I]);
> SetLength(Ferrors, 0);
> inherited Destroy;
> end;
>
> initialization
> InvRegistry.RegisterInterface(TypeInfo(InfoInterface), 'https://adwords.google.com/api/adwords/v10', 'UTF-8');
> InvRegistry.RegisterDefaultSOAPAction(TypeInfo(InfoInterface), '');
> InvRegistry.RegisterInvokeOptions(TypeInfo(InfoInterface), ioDocument);
> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface), useragent, 'useragent', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface), password, 'password', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface), email, 'email', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface), clientEmail, 'clientEmail', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface), clientCustomerId, 'clientCustomerId', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface), developerToken, 'developerToken', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface), applicationToken, 'applicationToken', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface), responseTime, 'responseTime', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface), operations, 'operations', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface), units, 'units', 'https://adwords.google.com/api/adwords/v10');
> InvRegistry.RegisterHeaderClass(TypeInfo(InfoInterface), requestId, 'requestId', 'https://adwords.google.com/api/adwords/v10');
> RemClassRegistry.RegisterXSClass(ApiError, 'https://adwords.google.com/api/adwords/v10', 'ApiError');
> RemClassRegistry.RegisterExternalPropName(TypeInfo(ApiError), 'index_', 'index');
> RemClassRegistry.RegisterXSClass(ClientUsageRecord, 'https://adwords.google.com/api/adwords/v10', 'ClientUsageRecord');
> RemClassRegistry.RegisterXSClass(useragent, 'https://adwords.google.com/api/adwords/v10', 'useragent');
> RemClassRegistry.RegisterSerializeOptions(useragent, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(password, 'https://adwords.google.com/api/adwords/v10', 'password');
> RemClassRegistry.RegisterSerializeOptions(password, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(email, 'https://adwords.google.com/api/adwords/v10', 'email');
> RemClassRegistry.RegisterSerializeOptions(email, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(clientEmail, 'https://adwords.google.com/api/adwords/v10', 'clientEmail');
> RemClassRegistry.RegisterSerializeOptions(clientEmail, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(clientCustomerId, 'https://adwords.google.com/api/adwords/v10', 'clientCustomerId');
> RemClassRegistry.RegisterSerializeOptions(clientCustomerId, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(developerToken, 'https://adwords.google.com/api/adwords/v10', 'developerToken');
> RemClassRegistry.RegisterSerializeOptions(developerToken, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(applicationToken, 'https://adwords.google.com/api/adwords/v10', 'applicationToken');
> RemClassRegistry.RegisterSerializeOptions(applicationToken, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(responseTime, 'https://adwords.google.com/api/adwords/v10', 'responseTime');
> RemClassRegistry.RegisterSerializeOptions(responseTime, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(operations, 'https://adwords.google.com/api/adwords/v10', 'operations');
> RemClassRegistry.RegisterSerializeOptions(operations, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(units, 'https://adwords.google.com/api/adwords/v10', 'units');
> RemClassRegistry.RegisterSerializeOptions(units, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSClass(requestId, 'https://adwords.google.com/api/adwords/v10', 'requestId');
> RemClassRegistry.RegisterSerializeOptions(requestId, [xoSimpleTypeWrapper]);
> RemClassRegistry.RegisterXSInfo(TypeInfo(Array_Of_ApiError), 'https://adwords.google.com/api/adwords/v10', 'Array_Of_ApiError');
> RemClassRegistry.RegisterXSClass(ApiException, 'https://adwords.google.com/api/adwords/v10', 'ApiException');
> RemClassRegistry.RegisterExternalPropName(TypeInfo(ApiException), 'message_', 'message');
> RemClassRegistry.RegisterXSClass(fault, 'https://adwords.google.com/api/adwords/v10', 'fault');
> RemClassRegistry.RegisterXSInfo(TypeInfo(Array_Of_string), 'http://www.w3.org/2001/XMLSchema', 'Array_Of_string');
> RemClassRegistry.RegisterSerializeOptions(TypeInfo(Array_Of_string), [xoInlineArrays]);
> RemClassRegistry.RegisterXSInfo(TypeInfo(Array_Of_ClientUsageRecord), 'https://adwords.google.com/api/adwords/v10', 'Array_Of_ClientUsageRecord');
> RemClassRegistry.RegisterSerializeOptions(TypeInfo(Array_Of_ClientUsageRecord), [xoInlineArrays]);
>
> end.
> ------------------------------------------------------------------------
>
> _______________________________________________
> NZ Borland Developers Group - Delphi mailing list
> Post: delphi at delphi.org.nz
> Admin: http://delphi.org.nz/mailman/listinfo/delphi
> Unsubscribe: send an email to delphi-request at delphi.org.nz with Subject: unsubscribe
More information about the Delphi
mailing list