Esta es una recopilación de los problemas habituales que plantean los desarrolladores de scripts de Google Ads.
Errores comunes de JavaScript
Estos son algunos errores comunes de JavaScript.
La secuencia de comandos falla con el mensaje "No se puede encontrar la función: FUNCTION_NAME"
Por lo general, esto se debe a que el nombre de una función está mal escrito en la secuencia de comandos.
Verifica que el nombre de la función esté escrito correctamente y que se respeten las mayúsculas y minúsculas. Por ejemplo,
AdsApp.keywordz()generará este error, ya quekeywordzno es una función válida en la clase AdsApp.AdsApp.Keywords()también fallará debido a que la funciónkeywords()se escribió con mayúsculas y minúsculas incorrectas.Verifica que la función exista; por ejemplo,
AdsApp.keywords().next()fallará porqueAdsApp.keywords()devuelve unKeywordSelector, mientras quenext()es un método para un objetoKeywordIterator. El código correcto seríaAdsApp.keywords().get().next().
Mi secuencia de comandos se ejecuta, pero no hace nada
El motivo más común de este problema es que tienes una función que realiza
una operación, pero no la llamas desde el método main(). Esto suele
suceder cuando copias y pegas fragmentos de código
de nuestra documentación.
| Enfoque de programación | Fragmento de código |
|---|---|
| Versión 1 (no 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());
}
}
|
| Versión 2 (no 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());
}
}
}
|
| Versión 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());
}
}
|
Cuando actualizo mis secuencias de comandos, aparece el error "No se puede encontrar la función getFinalUrl"
Es posible que encuentres este error cuando cambies tu secuencia de comandos para que funcione con las URLs actualizadas. Esto sucede cuando reemplazas las llamadas a ad.getDestinationUrl() por ad.getFinalUrl().
getFinalUrl() forma parte de la clase AdUrls, por lo que deberías cambiar tu código a 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();
}
No obtengo estadísticas para X
La falta de disponibilidad de datos para una entidad o un período específicos es un error común que puedes encontrar cuando ejecutas informes o realizas llamadas de estadísticas. Puedes probar varias opciones:
Verifica el período para el que recuperas estadísticas o ejecutas informes.
Si recuperas las estadísticas a nivel de la cuenta para una secuencia de comandos de administrador de Google Ads que administra cuentas con diferentes monedas, obtendrás el costo en la moneda de la cuenta de administrador.
Es posible que Google Ads aún no tenga los datos que buscas. Consulta nuestra guía de actualidad de los datos para obtener más detalles.
¿Cómo uso la función X?
Consulta nuestros fragmentos de código y soluciones para ver ejemplos de cómo usar una función en particular. Si no encuentras un fragmento de código adecuado, no dudes en realizar una solicitud en Discord.
¿Aún necesitas asistencia?
Si necesitas asistencia con un área en la que podemos ayudarte, visita la página Obtener ayuda.