בעיות נפוצות

זוהי רשימה של הבעיות הנפוצות ביותר שהועלו בפורום בנושא סקריפטים של Google Ads.

שגיאות נפוצות ב-JavaScript

הסקריפט נכשל עם השגיאה 'לא ניתן למצוא את הפונקציה: FUNCTION_NAME'

בדרך כלל זה קורה בגלל שגיאת איות בשם של פונקציה בסקריפט.

  1. בודקים ששם הפונקציה מאוית נכון ושהאותיות הרישיות והקטנות נכונות. לדוגמה: ‫AdsApp.keywordz() יגרום לשגיאה הזו, כי keywordz היא לא פונקציה תקינה במחלקה AdsApp. הפונקציה AdsApp.Keywords() תיכשל גם היא בגלל שגיאת איות.keywords()

  2. בודקים שהפונקציה קיימת, למשל: הפעולה AdsApp.keywords().next() תיכשל כי AdsApp.keywords() מחזירה KeywordSelector, ואילו next() היא שיטה לאובייקט KeywordIterator. הקוד הנכון הוא AdsApp.keywords().get().next().

הסקריפט שלי פועל, אבל לא עושה כלום

הסיבה הנפוצה ביותר לבעיה הזו היא שיש לכם פונקציה שמבצעת פעולה, אבל אתם לא קוראים לה מהשיטה main(). בדרך כלל זה קורה כשמעתיקים ומדביקים קטעי קוד מהתיעוד שלנו.

שיטת התכנות קטע קוד
גרסה 1 (לא פועלת)
function main() {
  // Call to getCampaigns is missing, so this script does nothing.
}

function getCampaigns() {
  // AdsApp.campaigns() will return all Search and Display campaigns
  // that are not removed by default.
  let campaignIterator = AdsApp.campaigns().get();
  console.log('Total campaigns found : ' +
      campaignIterator.totalNumEntities());
  while (campaignIterator.hasNext()) {
    let campaign = campaignIterator.next();
    console.log(campaign.getName());
  }
}
Version 2 (doesn't work)
function main() {
  // Call to getCampaigns is missing, so this script does nothing.

  function getCampaigns() {
    // AdsApp.campaigns() will return all Search and Display campaigns
    // that are not removed by default.
    let campaignIterator = AdsApp.campaigns().get();
    console.log('Total campaigns found : ' +
        campaignIterator.totalNumEntities());
    while (campaignIterator.hasNext()) {
      let campaign = campaignIterator.next();
      console.log(campaign.getName());
    }
  }
}
גרסה 3 (פועלת)
function main() {
  getCampaigns();
}

function getCampaigns() {
  // AdsApp.campaigns() will return all Search and Display campaigns
  // that are not removed by default.
  let campaignIterator = AdsApp.campaigns().get();
  console.log('Total campaigns found : ' +
      campaignIterator.totalNumEntities());
  while (campaignIterator.hasNext()) {
    let campaign = campaignIterator.next();
    Logger.log(campaign.getName());
  }
}

מופיעה השגיאה "לא ניתן למצוא את הפונקציה getFinalUrl" כשמשדרגים את הסקריפטים

יכול להיות שתיתקלו בשגיאה הזו כשמשנים את הסקריפט כך שיפעל עם כתובות URL משודרגות. זה קורה כשמחליפים קריאות ל-ad.getDestinationUrl() בקריאות ל-ad.getFinalUrl(). ‫getFinalUrl() הוא חלק מהמחלקה AdUrls, ולכן צריך לשנות את הקוד ל-ad.urls().getFinalUrl():

function main() {
  // Incorrect snippet. getFinalUrl is not a member of the Ad class.
  let ad = AdsApp.ads().get().next();
  let url = ad.getFinalUrl();

  // Correct snippet.
  let ad = AdsApp.ads().get().next();
  let url = ad.urls().getFinalUrl();
}

לא מוצגים לי נתונים סטטיסטיים לגבי X

שגיאה נפוצה שאתם עשויים להיתקל בה כשאתם מריצים דוחות או מבצעים קריאות לנתונים סטטיסטיים היא חוסר זמינות של נתונים לגבי ישות מסוימת או טווח תאריכים מסוים. יש כמה דברים שאפשר לנסות:

  1. בודקים את טווח התאריכים של הנתונים הסטטיסטיים שאתם מאחזרים או של הדוחות שאתם מריצים.

  2. אם מאחזרים נתונים סטטיסטיים ברמת החשבון עבור סקריפט של Ads Manager שמנהל חשבונות במטבעות שונים, העלות שמתקבלת היא במטבע של חשבון הניהול.

  3. יכול להיות שעדיין אין ל-Google Ads את הנתונים שאתם מחפשים. לפרטים מומלץ לעיין במדריך בנושא עדכניות הנתונים.

איך משתמשים בתכונה X?

בדוגמאות לשימוש בתכונה מסוימת אפשר לעיין בקטעי הקוד ובפתרונות שלנו. אם לא מצאתם קטע קוד מתאים, אתם מוזמנים לפרסם בקשה בפורום.

עדיין צריכים עזרה?

אם אתם צריכים עזרה בתחום שבו אנחנו יכולים לעזור, אתם יכולים להיכנס לדף קבלת עזרה.