我正在製作一個AdWords腳本(它使用javascript)並給我出現此錯誤:"Invalid assignment left-hand side. (line 1)"
。我找不到錯誤。請幫忙?由於左側的賦值無效。 (第1行)
function main() {
var todayDate = getDateString(new Date(),'H');
Logger.log('Son las '+todayDate+' horas');
if (todayDate = 11) {
var spreadsheet = SpreadsheetApp.create("CPC Log "+getDateString(new Date(), 'dd-MM-yy'));
var sheet = spreadsheet.getActiveSheet();
var report = AdWordsApp.report("SELECT CampaignName, AdGroupName, KeywordMaxCpc FROM ADGROUP_PERFORMANCE_REPORT DURING TODAY");
report.exportToSheet(sheet);
var expectedRatio = 30;
var CpcMultiplier = 1.2;
CPCmodifier(expectedRatio,sheet,CpcMultiplier);
}
}
我想補充的完整代碼,如果有人需要看一看吧:
function main() {
var todayDate = getDateString(new Date(), 'H');
Logger.log('Son las ' + todayDate + ' horas');
if (todayDate == 11) {
var spreadsheet = SpreadsheetApp.create("CPC Log " + getDateString(new Date(), 'dd-MM-yy'));
var sheet = spreadsheet.getActiveSheet();
var report = AdWordsApp.report("SELECT CampaignName, AdGroupName, KeywordMaxCpc FROM ADGROUP_PERFORMANCE_REPORT DURING TODAY");
report.exportToSheet(sheet);
var expectedRatio = 30;
var CpcMultiplier = 1.2;
CPCmodifier(expectedRatio, sheet, CpcMultiplier);
}
}
function getDateString(date, format) {
return Utilities.formatDate(new Date(date), AdWordsApp.currentAccount().getTimeZone(), format);
}
function CPCmodifier(ratio, sheet, CpcMultiplier) {
var CampaignIterator = AdWordsApp.campaigns().withCondition("Status = PAUSED").get();
while (CampaignIterator.hasNext()) {
var campaign = CampaignIterator.next();
var campaignName = campaign.getName();
var campaignBudget = campaign.getBudget();
var campaignSpent = campaign.getStatsFor("TODAY").getCost();
var campaignSpentRatio = (campaignSpent/campaignBudget) * 100;
Logger.log("La campaña " + campaignName + " lleva gastados $" + campaignSpent + " sobre un presupuesto de $" + campaignBudget + ". Esto representa el " + campaignSpentRatio + "%.");
if (campaignSpentRatio < ratio) {
var adGroupIterator = AdWordsApp.adGroups().withCondition("Status = ENABLED").withCondition("CampaignName = '" + campaignName + "'").get();
while (adGroupIterator.hasNext()) {
var adGroup = adGroupIterator.next();
var adGroupName = adGroup.getName();
for (var row = 2; row > 1; row++) {
var cName = sheet.getRange("A" + row).getValue();
var agName = sheet.getRange("B" + row).getValue();
if (cName == '') break;
if (cName == campaignName && agName = adGroupName) {
var agMaxCpc = sheet.getRange("C" + row).getValue();
if (agMaxCpc == '--') {
Logger.log("El grupo de anuncios " + adGroupName + "(campaña " + campaignName + ") no tiene CPC definido. No se aplicarán modificaciones.");
break;
} else {
var agNewCpc = agMaxCpc * CpcMultiplier;
Logger.log("El CPC Máximo predeterminado del grupo de anuncios " + adGroupName + "(campaña " + campaignName + ") es de " + agMaxCpc + ". Cambiándolo a " + agNewCpc);
break;
}
}
}
adGroup.setKeywordMaxCpc(agNewCpc);
}
}
}
}
解決:
我發現這一點:
if (cName == campaignName && agName **=** adGroupName) {
,它應該是:
if (cName == campaignName && agName == adGroupName) {
'如果(todayDate = 11)':這是分配;使用'=='(或'===')進行比較。 – iamnotmaynard
這是你唯一的錯誤嗎?這是完整的代碼嗎? – iamnotmaynard
是否有另一個在此之前導入的腳本? – Pointy