בעיות נפוצות

זוהי אוסף של הבעיות הנפוצות ביותר שצוינו בפורום הסקריפטים של 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 getAllCampaigns is missing, so this script does nothing.
}

function getAllCampaigns() {
  // AdsApp.campaigns() will return all 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 getAllCampaigns is missing, so this script does nothing.

  function getAllCampaigns() {
    // AdsApp.campaigns() will return all 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() {
  getAllCampaigns();
}

function getAllCampaigns() {
  // AdsApp.campaigns() will return all 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. אם מאחזרים נתונים סטטיסטיים ברמת החשבון עבור סקריפט ב-Ad Manager שמנהל חשבונות במטבעות שונים, העלות תוחזר במטבע של חשבון הניהול.

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

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

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

עדיין דרושה לך תמיכה?

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