2015-12-07 2 views
1

Как я могу сгенерировать отчет CAMPAIGN_PERFORMANCE_REPORT без скачивания файла (например, просто показывая результат). Вот на самом деле то, что я делаю:Как создать отчет с помощью Google adwords api без скачивания файла?

$reportQuery = 'SELECT CampaignId,CampaignName, Impressions, Clicks, Ctr , Cost ' 
        . ' FROM CAMPAIGN_PERFORMANCE_REPORT ' 
        . ' WHERE CampaignId = '.$campaignId.' DURING '.$date.','.$date; 

     // Download report. 
     ReportUtils::DownloadReportWithAwql($reportQuery, $filePath, $user,$reportFormat, $options); 
     $dataArray =file($filePath); 

загрузить файл, а затем я прочитал из данных, чтобы показать его.

+1

Здравствуйте, вы нашли способ, чтобы получить отчеты Adwords в более удобной для пользователей версии, чем эти файлы? Я ищу тот же банкомат. –

+1

@JeremyBelolo привет, я добавил, как я могу устранить свою проблему. – user3911183

ответ

3

Actualy я не нашел способ, кроме того, что я генерировать файл затем я прочитал от него, и я использую этот результат:

$reportQuery = 'SELECT CampaignId,CampaignName, Impressions, Clicks, Ctr , ConversionRate ' 
        . ' FROM CAMPAIGN_PERFORMANCE_REPORT ' 
        . ' WHERE CampaignId = '.$id.' DURING '.$date.','.$date; 

     // Download report. 
     ReportUtils::DownloadReportWithAwql($reportQuery, $filePath, $user,$reportFormat, $options); 
     $dataArray =file($filePath); 
     foreach ($dataArray as $value) { 
      $data = explode(",", $value); 
      $resultat[$i-1]['jours'] = $date; 
      $resultat[$i-1]['impressions'] = $data[2]; 
      $resultat[$i-1]['clicks'] = $data[3]; 
      $resultat[$i-1]['taux_click'] = $data[4]; 
      $resultat[$i-1]['taux_conversion'] = $data[5]; 
     } 
    echo json_encode($resultat); 

Надеется, что это помогает.

0

Через день я нашел решение:

В источнике Либерал метод DownloadReport из Utils/ReportUtils.php говорят, что:

Загружает новый экземпляр существующего определения отчета , Если указан параметр пути, он будет загружен в файл по этому пути, иначе он будет загружен в память и будет возвращен в виде строки.

Вы можете набор NULL для пути и использовать возвращаемое значение

$filePath = null; 
$stringOfResult = $reportUtils->DownloadReport($reportDefinition, $filePath, $user, $options); 

//now you can parse the result 
Смежные вопросы