while (campaignsIterator.hasNext()) {
var campaign = campaignsIterator.next();
var month = 12;
var year = 2012;
var day = 1;
for(i = 0; i < number_of_days_you_want; i++){
date = new Date(year, month, day + i); // should work: Dec 46 2012 gets you Jan 15 2013
// use the date functions to make the string for startdate (=enddate); make sure to watch out for leading zeros
...
}
}
I would like the spreadsheet to be updated on a daily basis.
Thanks.
Mads
function main() {
// Get all campaigns
var campaignsIterator = AdWordsApp.campaigns().get();
var cost = 0;
var impressions = 0;
var clicks = 0;
var conversions = 0;
while (campaignsIterator.hasNext()) {
var campaign = campaignsIterator.next();
var stats = campaign.getStatsFor("YESTERDAY");
cost += stats.getCost();
impressions += stats.getImpressions();
clicks += stats.getClicks();
conversions += stats.getConversions();
}
Logger.log("Cost " + cost);
Logger.log("Impressions " + impressions);
Logger.log("Clicks " + clicks);
Logger.log("Conversions " + conversions);
}Fon: +49 (2236) 886-0 - Fax: +49 (2236) 88 66 99
Sitz Köln, HRA 25531, Umsatzsteuer-ID: DE-209867661var today = new Date();var todayNum = today.getDate();var yesterday = new Date();yesterday.setDate( today.getDate() - 1 );var yesterdayStr = Utilities.formatDate( yesterday, "CET", "dd.MM.yyyy" );
function main() {
// Get all campaigns var campaignsIterator = AdWordsApp.campaigns().get(); var cost = 0; var impressions = 0; var clicks = 0; var conversions = 0;
while (campaignsIterator.hasNext()) { var campaign = campaignsIterator.next(); var stats = campaign.getStatsFor("YESTERDAY");cost += stats.getCost(); impressions += stats.getImpressions(); clicks += stats.getClicks(); conversions += stats.getConversions(); } var spreadsheet = SpreadsheetApp.openById("<insert id here>");var sheet = spreadsheet.getActiveSheet();
sheet.getRange( 2, 1, 1, 1 ).setValue( "Cost" ); sheet.getRange( 3, 1, 1, 1 ).setValue( "Impressions" ); sheet.getRange( 4, 1, 1, 1 ).setValue( "Clicks" ); sheet.getRange( 5, 1, 1, 1 ).setValue( "Conversions" ); sheet.insertColumnAfter(1); sheet.getRange( 1, 2, 1, 1 ).setValue( yesterdayStr ); sheet.getRange( 2, 2, 1, 1 ).setValue( cost ); sheet.getRange( 3, 2, 1, 1 ).setValue( impressions ); sheet.getRange( 4, 2, 1, 1 ).setValue( clicks ); sheet.getRange( 5, 2, 1, 1 ).setValue( conversions ); Logger.log("Cost " + cost); Logger.log("Impressions " + impressions); Logger.log("Clicks " + clicks); Logger.log("Conversions " + conversions);
}var numDays = 5;
/* Stop editing */
function main() {
for ( i = 1; i <= numDays; i++ ) {
// Get all campaigns var campaignsIterator = AdWordsApp.campaigns().get();
var cost = 0; var impressions = 0; var clicks = 0; var conversions = 0;
while (campaignsIterator.hasNext()) { var campaign = campaignsIterator.next(); var stats = campaign.getStatsFor( getDayFromToday( i ), getDayFromToday( i ) ); cost += stats.getCost(); impressions += stats.getImpressions(); clicks += stats.getClicks(); conversions += stats.getConversions();
} var spreadsheet = SpreadsheetApp.openById("<inser id here>"); var sheet = spreadsheet.getActiveSheet();
sheet.getRange( 1, 2).setValue( "Cost" ); sheet.getRange( 1, 3 ).setValue( "Impressions" ); sheet.getRange( 1, 4 ).setValue( "Clicks" ); sheet.getRange( 1, 5 ).setValue( "Conversions" ); sheet.insertRowAfter(1)
sheet.getRange( 2, 1 ).setValue( getDayFromToday( i ) ); sheet.getRange( 2, 2 ).setValue( cost ); sheet.getRange( 2, 3 ).setValue( impressions ); sheet.getRange( 2, 4 ).setValue( clicks ); sheet.getRange( 2, 5 ).setValue( conversions );
Logger.log("Cost " + cost); Logger.log("Impressions " + impressions); Logger.log("Clicks " + clicks); Logger.log("Conversions " + conversions); }}
function getDayFromToday( i ) {
var today = new Date( ); var yesterday = new Date( ); yesterday.setDate( today.getDate( ) - i );
var yesterdaysMonth = yesterday.getMonth(); // Jan = 0, is used to get month out of months-array + to calculate daysInMonthThisYear var yesterdayString = Utilities.formatDate( yesterday, "CET", "dd" ); var yesterdayInt = parseInt( yesterdayString, 10 );
var yesterdaysMonthString = Utilities.formatDate( yesterday, "CET", "MM" );
var thisYear = yesterday.getFullYear(); var thisYearString = thisYear.toString();
/* get the date ranges */ var dateFirstDayMonth = thisYearString + yesterdaysMonthString + "01"; var dateYesterday = thisYearString + yesterdaysMonthString + yesterdayString;
return dateYesterday; }var numDays = 5;
function main() {
for ( i = 1; i <= numDays; i++ ) { // Get all campaigns var campaignsIterator = AdWordsApp.campaigns().get();
var cost = 0; var impressions = 0; var clicks = 0; var conversions = 0;
while (campaignsIterator.hasNext()) { var campaign = campaignsIterator.next(); var stats = campaign.getStatsFor( getDayFromToday( i ), getDayFromToday( i ) ); cost += stats.getCost(); impressions += stats.getImpressions(); clicks += stats.getClicks(); conversions += stats.getConversions();
} var spreadsheet = SpreadsheetApp.openById("0AjxLaNR5hTIsdFJsOEl5M2lkUzhlNlRKZ3VuOUJqRlE"); var sheet = spreadsheet.getActiveSheet();
sheet.getRange( 1, 2).setValue( "Cost" ); sheet.getRange( 1, 3 ).setValue( "Impressions" ); sheet.getRange( 1, 4 ).setValue( "Clicks" ); sheet.getRange( 1, 5 ).setValue( "Conversions" ); sheet.insertRowAfter(1)
sheet.getRange( 2, 1 ).setValue( getDayFromToday( i ) ); sheet.getRange( 2, 2 ).setValue( cost ); sheet.getRange( 2, 3 ).setValue( impressions ); sheet.getRange( 2, 4 ).setValue( clicks ); sheet.getRange( 2, 5 ).setValue( conversions );
Logger.log("Cost " + cost); Logger.log("Impressions " + impressions); Logger.log("Clicks " + clicks); Logger.log("Conversions " + conversions); }}
function getDayFromToday( days ) {
var today = new Date( ); var otherDay = new Date( ); otherDay.setDate( otherDay.getDate( ) - days );
var dateotherDay = otherDay.getFullYear().toString() + Utilities.formatDate( otherDay, "CET", "MM" ) + Utilities.formatDate( otherDay, "CET", "dd" );
return dateotherDay; }