Problemas comuns

Esta é uma compilação dos problemas mais comuns levantados no fórum de scripts do Google Ads.

Erros comuns de JavaScript

O script apresenta a falha "Não foi possível encontrar a função: FUNCTION_NAME"

Geralmente, isso é resultado de um nome de função com erro ortográfico no script.

  1. Verifique se o nome da função está escrito corretamente e tem a capitalização correta. Por exemplo, AdsApp.keywordz() vai resultar nesse erro porque keywordz não é uma função válida na classe AdsApp. AdsApp.Keywords() também vai falhar devido ao uso incorreto de maiúsculas e minúsculas na função keywords().

  2. Verifique se a função existe. Por exemplo: AdsApp.keywords().next() vai falhar porque AdsApp.keywords() retorna um KeywordSelector, enquanto next() é um método para um KeywordIterator objeto. O código correto seria AdsApp.keywords().get().next().

Meu script é executado, mas não resulta em nenhuma ação

O motivo mais comum para esse problema é que você tem uma função que realiza uma operação, mas não a está chamando do método main(). Isso geralmente acontece quando você copia e cola trechos de código da nossa documentação.

Abordagem de programação Snippet de código
Versão 1 (não funciona)
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());
  }
}
Versão 2 (não funciona)
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());
    }
  }
}
Versão 3 (funciona)
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());
  }
}

Eu recebo um erro "Não é possível encontrar a função getFinalUrl" quando faço upgrade dos meus scripts

Esse erro pode ocorrer ao mudar o script para trabalhar com URLs atualizados. Isso acontece quando você substitui chamadas para ad.getDestinationUrl() por ad.getFinalUrl(). getFinalUrl() faz parte da classe AdUrls. Portanto, você precisa mudar seu código para 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();
}

Eu não vejo estatísticas para X

A indisponibilidade de dados para determinada entidade ou período é um erro comum que você pode encontrar ao gerar relatórios ou fazer chamadas de estatísticas. Há várias coisas que você pode tentar:

  1. Verifique o período para o qual você está recuperando estatísticas ou gerando relatórios.

  2. Se você recuperar estatísticas no nível da conta para um script do Ads Manager que gerencia contas de moedas diferentes, o custo será retornado na moeda da conta de administrador.

  3. É possível que o Google Ads ainda não tenha os dados que você deseja. Consulte nosso guia de atualização de dados para mais detalhes.

Como usar o recurso X?

Confira nossos snippets de código e soluções para exemplos de como usar um recurso específico. Se você não encontrar um snippet de código adequado, faça uma solicitação no fórum.

Ainda precisa de ajuda?

Se precisar de ajuda em uma área em que podemos ajudar, acesse a página Receber ajuda.