$reportQuery = new ReportQuery(); $reportQuery->setAdUnitView('FLAT');
$reportQuery->setDateRangeType('CUSTOM_DATE'); $reportQuery->setStartDate(new DfpDate($date->year, $date->month, $date->day)); $reportQuery->setEndDate(new DfpDate($date->year, $date->month, $date->day)); $reportQuery->setDimensions([ 'ADVERTISER_NAME', 'AD_UNIT_ID', 'AD_UNIT_NAME', 'AD_EXCHANGE_INVENTORY_SIZE', 'AD_EXCHANGE_AD_TYPE', ]); $reportQuery->setColumns([ 'AD_EXCHANGE_AD_REQUESTS', 'AD_EXCHANGE_MATCHED_REQUESTS', 'AD_EXCHANGE_CLICKS', 'AD_EXCHANGE_ESTIMATED_REVENUE', 'AD_EXCHANGE_IMPRESSIONS', 'AD_EXCHANGE_ACTIVE_VIEW_MEASURABLE', 'AD_EXCHANGE_ACTIVE_VIEW_VIEWABLE', 'AD_EXCHANGE_ACTIVE_VIEW_ENABLED_IMPRESSIONS', 'AD_EXCHANGE_ACTIVE_VIEW_MEASURED_IMPRESSIONS', 'AD_EXCHANGE_ACTIVE_VIEW_VIEWED_IMPRESSIONS', 'AD_EXCHANGE_ACTIVE_VIEW_AVERAGE_VIEWABLE_TIME', ]); $reportService = $this->getServiceByType(self::service); // self::service = 'ReportService'
$reportQuery = new ReportQuery(); $reportQuery->setAdUnitView('FLAT'); $reportQuery->setDateRangeType('CUSTOM_DATE');
$reportQuery->setStartDate(new DfpDate($date->year, $date->month, $date->day)); $reportQuery->setEndDate(new DfpDate($date->year, $date->month, $date->day)); $reportQuery->setDimensions([ 'AD_EXCHANGE_DATE', 'AD_EXCHANGE_DFP_AD_UNIT', 'AD_EXCHANGE_INVENTORY_SIZE', 'AD_EXCHANGE_AD_TYPE', ]); $reportQuery->setColumns([ 'AD_EXCHANGE_AD_REQUESTS', 'AD_EXCHANGE_MATCHED_REQUESTS', 'AD_EXCHANGE_CLICKS', 'AD_EXCHANGE_ESTIMATED_REVENUE', 'AD_EXCHANGE_IMPRESSIONS', 'AD_EXCHANGE_ACTIVE_VIEW_MEASURABLE', 'AD_EXCHANGE_ACTIVE_VIEW_VIEWABLE', 'AD_EXCHANGE_ACTIVE_VIEW_ENABLED_IMPRESSIONS', 'AD_EXCHANGE_ACTIVE_VIEW_MEASURED_IMPRESSIONS', 'AD_EXCHANGE_ACTIVE_VIEW_VIEWED_IMPRESSIONS', 'AD_EXCHANGE_ACTIVE_VIEW_AVERAGE_VIEWABLE_TIME', ]);
$statementBuilder = new StatementBuilder();
$statementBuilder->where('ADVERTISER_NAME = :ADVERTISER_NAME')->withBindVariableValue('ADVERTISER_NAME', 'Ad Exchange');
$reportQuery->setStatement($statementBuilder->toStatement());
/** @var \Google\AdsApi\Dfp\v201802\ReportJob $reportJob */ $reportJob = new ReportJob(); $reportJob->setReportQuery($reportQuery); $reportJob = $reportService->runReportJob($reportJob);use Google\AdsApi\Dfp\v201802\Date as DfpDate;
new DfpDate($date->year, $date->month, $date->day)
Google\AdsApi\Dfp\v201802\Date {#628 #year: 2018 #month: 4 #day: 20}Google\AdsApi\Dfp\v201802\ApiException : [ReportError.COLUMNS_NOT_SUPPORTED_FOR_REQUESTED_DIMENSIONS @ columns; trigger:'AD_EXCHANGE_ACTIVE_VIEW_AVERAGE_VIEWABLE_TIME', ReportError.COLUMN_VIEW_NOT_ALLOWED @ columns; trigger:'AD_EXCHANGE_ACTIVE_VIEW_AVERAGE_VIEWABLE_TIME, AD_EXCHANGE_ACTIVE_VIEW_ENABLED_IMPRESSIONS,AD_EXCHANGE_ACTIVE_VIEW_MEASURABLE, AD_EXCHANGE_ACTIVE_VIEW_MEASURED_IMPRESSIONS, AD_EXCHANGE_ACTIVE_VIEW_VIEWABLE, AD_EXCHANGE_ACTIVE_VIEW_VIEWED_IMPRESSIONS,AD_EXCHANGE_AD_REQUESTS, AD_EXCHANGE_CLICKS, AD_EXCHANGE_ESTIMATED_REVENUE, AD_EXCHANGE_IMPRESSIONS, AD_EXCHANGE_MATCHED_REQUESTS']