Please take a look at the script below and let me know where i went wrong..
function main() {
var ACCOUNTS = ['xxx-xxx-xxx'];
var ADWORDS_REPORT = 'KEYWORDS_PERFORMANCE_REPORT';
var FILTER = 'Impressions > 0';
var DATE_RANGE = 'LAST_30_DAYS';
var COLUMNS = [
'AccountDescriptiveName'
,'Date'
,'CampaignName'
,'AdGroupName'
,'Keywordtext'
,'ConversionsManyPerClick'
,'Id'
,'ExternalCustomerId'
,'CreativeDestinationUrl'
,'Clicks'
,'Impressions'
,'Ctr'
,'AverageCpc'
,'Cost'
,'AveragePosition'
,'CustomerDescriptiveName'
,'PrimaryCompanyName'
];
var REPORT_NAME = 'XXX-XXX-XXX';
var adwords_columns = COLUMNS.join(',');
var mccAccount = AdWordsApp.currentAccount();
var childAccounts = MccApp.accounts().withIds(ACCOUNTS).get();
var childAccount = childAccounts.next();
MccApp.select(childAccount);
var report = KeywordsPerformance.report(
'SELECT ' + keywords_columns +
' FROM ' + keywords_REPORT +
' WHERE ' + FILTER +
' DURING ' + DATE_RANGE);
csv = '';
for(i = 0; i < COLUMNS.length; i++) {
csv += i === 0 ? '' : ','
csv += COLUMNS[i];
}
var rows = report.rows();
while (rows.hasNext()) {
var row = rows.next();
csv += '\n';
for(i = 0; i < COLUMNS.length; i++) {
csv += i === 0 ? '' : ','
csv += row[COLUMNS[i]];
}
}
DriveApp.createFile(REPORT_NAME, csv, MimeType.CSV);
}