การรายงาน

รายงานจะให้ข้อมูลเกี่ยวกับแหล่งข้อมูลต่างๆ ทั้งหมดในบัญชี คุณสามารถดึงข้อมูลเกี่ยวกับแคมเปญ กลุ่มโฆษณา และสถิติของแคมเปญและกลุ่มโฆษณา ประวัติการเปลี่ยนแปลงของบัญชี และอื่นๆ โครงสร้างพื้นฐานการรายงานได้รับการสนับสนุนจาก Google Ads API และใช้ GAQL เพื่อระบุ ฟิลด์ เมตริก และเงื่อนไขที่คุณต้องการตั้งค่า

กลไกหลักในการรายงานมี 2 อย่าง ทั้ง 2 แบบรับคำค้นหาประเภทเดียวกัน และมีความแตกต่างกันหลักๆ ตรงที่วิธีแสดงผลลัพธ์

สำหรับทั้ง 2 กรณี เราจะใช้การค้นหาต่อไปนี้

SELECT
  campaign.id,
  campaign.status,
  metrics.clicks,
  metrics.impressions,
  customer.id
FROM campaign
WHERE
  metrics.impressions > 0
AdsApp.report()
ซึ่งจะแสดงผลการค้นหาในรูปแบบที่เรียบง่ายคล้ายพจนานุกรม คุณเข้าถึงฟิลด์ได้ราวกับใช้พจนานุกรม เช่น row["campaign.id"] และ row["metrics.impressions"] โดยตรง เมื่อใช้รูปแบบนี้ คุณจะส่งออกผลลัพธ์ไปยังสเปรดชีตได้โดยตรงโดยใช้วิธี exportToSheet() นี่ไม่ใช่รูปแบบเริ่มต้นที่ Google Ads API แสดงผลลัพธ์ ดังนั้นในบางกรณี ฟิลด์บางรายการอาจไม่พร้อมใช้งานในรูปแบบนี้ ในกรณีนี้ คุณควรใช้ search แทน
AdsApp.search()
การดำเนินการนี้จะแสดงผลรายการออบเจ็กต์ GoogleAdsRow ซึ่งมีฟิลด์ต่างๆ แต่ละฟิลด์อาจมีฟิลด์ย่อย ดังนั้นคุณจะเข้าถึง row.campaign.id และ row.metrics.impressions เพื่อดึงข้อมูล โดยทั่วไปแล้วจะมีประโยชน์มากกว่าในกรณีที่คุณวางแผนที่จะประมวลผลข้อมูลแบบเป็นโปรแกรม และฟิลด์บางรายการอาจใช้ได้เฉพาะในรูปแบบ search หากแปลงเป็นรูปแบบแบนไม่ได้
เพื่อดึงผลลัพธ์จากแถว

ตัวอย่างรายงาน

let report = AdsApp.report(
    "SELECT " +
    " ad_group.id, search_term_view.search_term, metrics.ctr, metrics.cost_micros, metrics.impressions " +
    "FROM search_term_view " +
    "WHERE metrics.impressions < 10 AND segments.date DURING LAST_30_DAYS");

let rows = report.rows();
while (rows.hasNext()) {
    let row = rows.next();
    let query = row["search_term_view.search_term"];
    let impressions = row["metrics.impressions"];
}

ดูรายละเอียดทั้งหมดเกี่ยวกับการใช้มุมมองนี้ได้ใน AdsApp.report เอกสารประกอบ

ตัวอย่างการค้นหา

let search = AdsApp.search(
    "SELECT " +
    " ad_group.id, search_term_view.search_term, metrics.ctr, metrics.cost_micros, metrics.impressions " +
    "FROM search_term_view " +
    "WHERE metrics.impressions < 10 AND segments.date DURING LAST_30_DAYS");

while (search.hasNext()) {
    let row = search.next();
    let query = row.searchTermView.searchTerm;
    let impressions = row.metrics.impressions;
}

ดูการตั้งค่าทั้งหมดที่เป็นไปได้ในเอกสารประกอบฉบับเต็ม Adsapp.search