Hi,

You could try the IN operator instead of the EQUALS operator while
constructing your report definition. See
http://code.google.com/apis/adwords/docs/reference/latest/ReportDefinitionService.Predicate.html#operator
for all the available operators.

Cheers,
Anash P. Oommen,
AdWords API Advisor.

On Oct 15, 11:13 pm, SW <[email protected]> wrote:
> Hi
>
> I am using ReportDefinitionService version v201008.  When I try to
> generate the report for multiple campaigns or adgroups, the xml
> returned doesn't get statistics info.  However, when I specify single
> adgroupId or campaignid in the Predicate, it retrieves the statistics
> information.
>
> Older version (v13) allowed us to specify multiple campaignIds.  I
> don't want to make seperate api call for each campaign or adgroups.  I
> want to pass number of campaignIds and generate report.
>
> Here is my code which works on one campaignId.  I want to pass in an
> array of campaignIds but api doesn't return any stats.  I tried
> passing in multiple campaignId to one Predicate instance.  I also
> tried creating new instance of Predicate for each separate campaignid
> but it returns the same results (i.e no stats data)
>
> Please shed some light:
>
>  public List<ReportDefinition> GenerateCampaignKeywordReport(string
> campaignId, string minDate, string maxDate, string reportName, string
> folderPath, ref XmlDocument reportXml)
>         {
>             List<Predicate> predicates = new List<Predicate>();
>             Predicate predicate = GetPredicate("CampaignId", new
> string[] { campaignId }, PredicateOperator.EQUALS);
>             Predicate predicate2 = GetPredicate("CampaignStatus", new
> string[] { "DELETED" }, PredicateOperator.NOT_EQUALS);
>             Predicate predicate3 = GetPredicate("AdGroupStatus", new
> string[] { "DELETED" }, PredicateOperator.NOT_EQUALS);
>             Predicate predicate4 = GetPredicate("Status", new string[]
> { "DELETED" }, PredicateOperator.NOT_EQUALS);
>
>             predicates.Add(predicate);
>             predicates.Add(predicate2);
>             predicates.Add(predicate3);
>             predicates.Add(predicate4);
>
>             return GenerateReport(minDate, maxDate,
> keywordReportFields, reportName, folderPath,
> ReportDefinitionReportType.KEYWORDS_PERFORMANCE_REPORT, reportXml,
> predicates);
>         }
>
>         private List<ReportDefinition> GenerateReport(string minDate,
> string maxDate, string[] fields, string reportName, string folderPath,
> ReportDefinitionReportType reportType, XmlDocument reportXml,
> List<Predicate> predicates)
>         {
>             Selector selector = GetReportSelector(minDate, maxDate,
> fields, predicates.ToArray());
>             ReportDefinition reportDefinition =
> GetReportDefinition(selector, reportName, reportType, true,
> ReportDefinitionDateRangeType.CUSTOM_DATE, DownloadFormat.XML);
>             ReportDefinitionOperation reportOperation =
> GetOperation(reportDefinition, Operator.ADD);
>
>             List<ReportDefinitionOperation> defList = new
> List<ReportDefinitionOperation>();
>             defList.Add(reportOperation);
>
>             List<ReportDefinition> mutatedDefinitions =
> Mutate(defList);
>
>             if (mutatedDefinitions.Count >= 1)
>             {
>                 ReportUtilities utility = new ReportUtilities(user);
>                 string reportFile = folderPath + reportName + ".xml";
>
> utility.DownloadReportDefinition(mutatedDefinitions[0].id,
> reportFile);
>                 reportXml.Load(reportFile);
>             }
>             return mutatedDefinitions;
>         }

-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
Also find us on our blog and discussion group:
http://adwordsapi.blogspot.com
http://groups.google.com/group/adwords-api
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~

You received this message because you are subscribed to the Google
Groups "AdWords API Forum" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/adwords-api?hl=en

Reply via email to