Typowe problemy

Oto zestawienie najczęstszych problemów zgłaszanych na forum skryptów Google Ads.

Typowe błędy JavaScriptu

Skrypt nie działa z powodu komunikatu „Nie można znaleźć funkcji: FUNCTION_NAME”

Zwykle jest to spowodowane błędem w nazwie funkcji w skrypcie.

  1. Sprawdź, czy nazwa funkcji jest zapisana prawidłowo i z uwzględnieniem właściwej wielkości liter (np. AdsApp.keywordz() spowoduje ten błąd, ponieważ keywordz nie jest prawidłową funkcją w klasie AdsApp. AdsApp.Keywords() również się nie powiedzie z powodu nieprawidłowej pisowni funkcji keywords().

  2. Sprawdź, czy funkcja istnieje, np. AdsApp.keywords().next() zakończy się niepowodzeniem, ponieważ AdsApp.keywords() zwracaKeywordSelector, a next() to metoda obiektu KeywordIterator. Prawidłowy kod to AdsApp.keywords().get().next().

Skrypt działa, ale nic nie robi

Najczęstszą przyczyną tego problemu jest to, że masz funkcję, która wykonuje operację, ale nie wywołujesz jej z metody main(). Zwykle dzieje się tak, gdy kopiujesz i wklejasz fragmenty kodu z naszej dokumentacji.

Sposób kodowania Fragment kodu
Wersja 1 (nie działa)
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());
  }
}
wersja 2 (nie działa)
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());
    }
  }
}
Wersja 3 (działa)
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());
  }
}

Podczas uaktualniania skryptów pojawia się błąd „Nie można znaleźć funkcji getFinalUrl”

Ten błąd może wystąpić, gdy zmienisz skrypt, aby działał z ulepszonymi adresami URL. Dzieje się tak, gdy zastąpisz wywołania funkcji ad.getDestinationUrl() wywołaniem funkcji ad.getFinalUrl(). getFinalUrl() należy do klasy AdUrls, więc musisz zmienić kod na 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();
}

Nie mam żadnych statystyk dotyczących X

Niedostępność danych dotyczących konkretnej encji lub zakresu dat to typowy błąd, z którym możesz się spotkać podczas uruchamiania raportów lub wywoływania funkcji statystycznych. Możesz spróbować wykonać kilka czynności:

  1. Sprawdź zakres dat, w którym pobierasz statystyki lub generujesz raporty.

  2. Jeśli pobierasz statystyki na poziomie konta dla skryptu Google Ads, który zarządza kontami w różnych walutach, otrzymasz koszt w walucie konta menedżera.

  3. Google Ads może nie mieć jeszcze szukanych danych. Więcej informacji znajdziesz w przewodniku dotyczącym aktualności danych.

Jak korzystać z funkcji X?

Przykłady korzystania z konkretnej funkcji znajdziesz w fragmentach kodurozwiązaniach. Jeśli nie możesz znaleźć odpowiedniego fragmentu kodu, prześlij prośbę na forum.

Nadal potrzebujesz pomocy?

Jeśli potrzebujesz pomocy w kwestii, w której możemy Ci pomóc, odwiedź stronę Uzyskaj pomoc.