Thanks for the response. I took what you said into account and changed the
file as follows (Date,Cost,Impressions) and I'm getting the same result:

<?php
error_reporting(E_STRICT | E_ALL);
$path = dirname(__FILE__) . '/../../src';
set_include_path(get_include_path() . PATH_SEPARATOR . $path);
require_once 'Google/Api/Ads/AdWords/Lib/AdWordsUser.php';
try {
  $user = new AdWordsUser();
  $user->LogDefaults();
  $reportDefinitionService = $user->GetReportDefinitionService('v201101');
  $adGroupId = (float) 'HIDDEN';
  $startDate = '20110501';
  $endDate = '20110502';
  $selector = new Selector();
  $selector->fields = array(*'Date','Impressions','Cost'*);
  $selector->dateRange = new DateRange($startDate, $endDate);
  $adGroupIdPredicate = new Predicate('AdGroupId', 'EQUALS',
array($adGroupId));
  $selector->predicates = array($adGroupIdPredicate);
  // Create report definition.
  $reportDefinition = new ReportDefinition();
  $reportDefinition->reportName = "Test Report";
  $reportDefinition->dateRangeType = 'YESTERDAY';
    $reportDefinition->reportType = 'ACCOUNT_PERFORMANCE_REPORT';
  $reportDefinition->downloadFormat = 'CSV';
  $reportDefinition->selector = $selector;

  // Create operations.
  $operation = new ReportDefinitionOperation();
  $operation->operand = $reportDefinition;
  $operation->operator = 'ADD';

  $operations = array($operation);

  // Add report definition.
  $result = $reportDefinitionService->mutate($operations);

  // Display report definitions.
  if ($result != null) {
    foreach ($result as $reportDefinition) {
      printf("Report definition with name '%s' and id '%s' was added.\n",
          $reportDefinition->reportName, $reportDefinition->id);
    }
  } else {
    print "No report definitions were added.\n";
  }
} catch (Exception $e) {
  print $e->getMessage();
}


v201101$ php AddAccountPerformanceReport.php
ReportDefinitionError.INVALID_FIELD_NAME_FOR_REPORT @ AdGroupIdDev~14:48:18
v201101$

Any help would be appreciated
---------------------------------
On Thu, May 5, 2011 at 5:51 PM, Ron Jacobson <[email protected]> wrote:

> I run the following to see the available fields for an
> account_performance_report:
>
>
> php GetReportFields.php
> The report type 'ACCOUNT_PERFORMANCE_REPORT' contains the following
> fields:
> - AccountCurrencyCode (String)
> - AccountDescriptiveName (String)
> - AccountTimeZoneId (Integer)
> - AdNetworkType1 (AdNetworkType1) := [SEARCH, CONTENT]
> - AdNetworkType2 (AdNetworkType2) := [SEARCH, SEARCH_PARTNERS,
> CONTENT]
> - AverageCpc (Money)
> - AverageCpm (Money)
> - AveragePosition (Double)
> - BudgetLostImpressionShare (Double)
> - Clicks (Long)
> - ClickType (ClickType) := [URL_CLICKS, CALLS, OTHER,
> PRODUCT_EXTENSION_CLICKS, SITELINKS, PRODUCT_LISTING_AD_CLICKS,
> GET_DIRECTIONS, OFFER_PRINTS]
> - ConversionCategoryName (String)
> - ConversionRate (Double)
> - ConversionRateManyPerClick (Double)
> - Conversions (Long)
> - ConversionsManyPerClick (Long)
> - ConversionTypeName (String)
> - ConversionValue (Long)
> - Cost (Money)
> - CostPerConversion (Money)
> - CostPerConversionManyPerClick (Money)
> - Ctr (Double)
> - CustomerDescriptiveName (String)
> - Date (Date)
> - DayOfWeek (DayOfWeek) := [MONDAY, TUESDAY, WEDNESDAY, THURSDAY,
> FRIDAY, SATURDAY, SUNDAY]
> - Device (DeviceType) := [DESKTOP, HIGH_END_MOBILE]
> - ExactMatchImpressionShare (Double)
> - ExternalCustomerId (Long)
> - HourOfDay (Integer)
>
> The ones I care about are Date,Cost and Impressions. I then make the
> following script to try to make a ACCOUNT_PERFORMANCE_REPORT with the
> above listed fields.
>
>
> <?php
> error_reporting(E_STRICT | E_ALL);
> $path = dirname(__FILE__) . '/../../src';
> set_include_path(get_include_path() . PATH_SEPARATOR . $path);
> require_once 'Google/Api/Ads/AdWords/Lib/AdWordsUser.php';
> try {
>  $user = new AdWordsUser();
>  $user->LogDefaults();
>  $reportDefinitionService = $user-
> >GetReportDefinitionService('v201101');
>  $adGroupId = (float) '(hiding number)';
>  $startDate = '20110501';
>  $endDate = '20110502';
>  $selector = new Selector();
>  $selector->fields = array('Date','Imps','Spend');
>  $selector->dateRange = new DateRange($startDate, $endDate);
>  var_dump($selector);
>  $adGroupIdPredicate = new Predicate('AdGroupId', 'EQUALS',
> array($adGroupId));
>  $selector->predicates = array($adGroupIdPredicate);
>  // Create report definition.
>  $reportDefinition = new ReportDefinition();
>  $reportDefinition->reportName = "Test Report";
>  $reportDefinition->dateRangeType = 'YESTERDAY';
>    $reportDefinition->reportType = 'ACCOUNT_PERFORMANCE_REPORT';
>  $reportDefinition->downloadFormat = 'CSV';
>  $reportDefinition->selector = $selector;
>
>  // Create operations.
>  $operation = new ReportDefinitionOperation();
>  $operation->operand = $reportDefinition;
>  $operation->operator = 'ADD';
>
>  $operations = array($operation);
>
>  // Add report definition.
>  $result = $reportDefinitionService->mutate($operations);
>
>  // Display report definitions.
>  if ($result != null) {
>    foreach ($result as $reportDefinition) {
>      printf("Report definition with name '%s' and id '%s' was added.
> \n",
>          $reportDefinition->reportName, $reportDefinition->id);
>    }
>  } else {
>    print "No report definitions were added.\n";
>  }
> } catch (Exception $e) {
>  print $e->getMessage();
> }
>
>
> When I run, I get the following output:
>
> Dev~21:49:55 v201101$ php AddAccountPerformanceReport.php
> ReportDefinitionError.INVALID_FIELD_NAME_FOR_REPORT @ ;
> trigger:'Imps'Dev~21:49:58 v201101$
>
>
> I don't understand why the field names are invalid as the earlier
> GetReportFields output included the field names I'm loking for.
>
> Any help that anyone can provide would be great.
>
> Thanks!!

-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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