일반적인 문제

다음은 Google Ads 스크립트 포럼에서 제기된 가장 일반적인 문제의 모음입니다.

일반적인 JavaScript 오류

'함수를 찾을 수 없음: FUNCTION_NAME' 오류와 함께 스크립트가 실패합니다.

이는 일반적으로 스크립트에 있는 함수 이름의 철자가 틀렸기 때문에 발생합니다.

  1. 함수 이름의 철자가 올바르고 맞춤법이 맞는지 확인합니다.예를 들면 다음과 같습니다. keywordzAdsApp 클래스의 유효한 함수가 아니기 때문에 AdsApp.keywordz()의 경우 이 오류가 발생합니다. AdsApp.Keywords()keywords() 함수의 철자가 올바르지 않으면 실패합니다.

  2. 함수가 있는지 확인합니다. 예: AdsApp.keywords()KeywordSelector를 반환하지만 next()KeywordIterator 객체의 메서드이므로 AdsApp.keywords().next()은 실패합니다. 올바른 코드는 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());
  }
}
버전 2 (작동하지 않음)
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. 다른 통화의 계정을 관리하는 Ads Manager 스크립트에 대한 계정 수준 통계를 검색하면 관리자 계정의 통화로 비용이 반환됩니다.

  3. 찾고 있는 데이터가 Google Ads에 아직 없을 수 있습니다. 자세한 내용은 데이터 최신성 가이드를 참고하세요.

기능 요청하기

기능 X를 사용할 수 있나요?

참조 문서를 확인하세요.

X 기능은 언제 사용할 수 있나요?

가장 많은 요청이 있었던 기능을 먼저 개발하기 위해 노력하고 있습니다. 원하는 기능이 있다면 다음 단계를 따르세요.

  1. 먼저 참조 문서를 확인하여 Google Ads 스크립트에서 이 기능이 지원되지 않는지 확인하세요.

  2. 사용할 수 없는 경우 Google Ads 스크립트 포럼을 검색하여 이전에 질문을 받은 적이 있는지 확인하세요. 그렇다면 해당 스레드에 찬성 투표하거나 사용 사례와 같은 추가 세부정보를 공유하려면 댓글을 남겨 주세요.

  3. 아직 요청되지 않은 기능이 있으면 Google Ads 스크립트 포럼에서 새 대화목록을 열어 기능을 요청하세요. 이 기능으로 해결할 수 있는 사용 사례를 제공해야 합니다. 가능하면 이 기능을 설명하는 도움말 센터 가이드 또는 애드워즈 API 블로그 게시물 / 가이드를 연결하세요. 이렇게 하면 다른 개발자가 기능 요청에 찬성 투표할 때 도움이 됩니다. YouTube는 인기도에 따라 기능 요청의 우선순위를 정합니다.

  4. 게시물에 '기능 요청' 태그를 지정하면 사용자는 물론 사용자가 기능 요청을 더 쉽게 빠르게 확인할 수 있습니다.

기능 X를 사용하려면 어떻게 해야 하나요?

특정 기능을 사용하는 방법의 예는 코드 스니펫솔루션을 참고하세요. 적합한 코드 스니펫을 찾을 수 없는 경우 언제든지 포럼에서 요청하세요.