Class DataSourceTable

ตารางแหล่งข้อมูล

เข้าถึงและแก้ไขตารางแหล่งข้อมูลที่มีอยู่ หากต้องการสร้างตารางแหล่งข้อมูลใหม่บนชีตใหม่ ให้ใช้ Spreadsheet.insertSheetWithDataSourceTable(spec)

ใช้คลาสนี้กับข้อมูลที่เชื่อมต่อกับฐานข้อมูลเท่านั้น

ตัวอย่างนี้แสดงวิธีสร้างตารางแหล่งข้อมูลใหม่

SpreadsheetApp.enableBigQueryExecution();
var spreadsheet = SpreadsheetApp.getActive();
var spec = SpreadsheetApp.newDataSourceSpec()
           .asBigQuery()
           .setProjectId('big_query_project')
           .setRawQuery('select @FIELD from table limit @LIMIT')
           .setParameterFromCell('FIELD', 'Sheet1!A1')
           .setParameterFromCell('LIMIT', 'namedRangeCell')
           .build();
// Starts data execution asynchronously.
var dataSheet = spreadsheet.insertSheetWithDataSourceTable(spec);
var dataSourceTable = dataSheet.getDataSourceTables()[0];
// waitForCompletion() blocks script execution until data execution completes.
dataSourceTable.waitForCompletion(60);
// Check status after execution.
Logger.log("Data execution state: %s.", dataSourceTable.getStatus().getExecutionState());

ตัวอย่างนี้แสดงวิธีแก้ไขแหล่งข้อมูล

SpreadsheetApp.enableBigQueryExecution();
var dataSheet = SpreadsheetApp.getActive().getSheetByName("Data Sheet 1");
var dataSourceTable = dataSheet.getDataSourceTables()[0];
var dataSource = dataSourceTable.getDataSource();
var newSpec = dataSource.getSpec()
              .copy()
              .asBigQuery()
              .setRawQuery('select name from table limit 2')
              .removeAllParameters()
              .build();
// Updates data source specification and starts data execution asynchronously.
dataSource.updateSpec(newSpec);
// Check status during execution.
Logger.log("Data execution state: %s.", dataSourceTable.getStatus().getExecutionState());
// waitForCompletion() blocks script execution until data execution completes.
dataSourceTable.waitForCompletion(60);
// Check status after execution.
Logger.log("Data execution state: %s.", dataSourceTable.getStatus().getExecutionState());

วิธีการ

วิธีการประเภทการแสดงผลรายละเอียดแบบย่อ
addColumns(columnNames)DataSourceTableเพิ่มคอลัมน์ในตารางแหล่งข้อมูล
addFilter(columnName, filterCriteria)DataSourceTableเพิ่มตัวกรองที่ใช้กับตารางแหล่งข้อมูล
addSortSpec(columnName, ascending)DataSourceTableเพิ่มข้อกําหนดในการจัดเรียงในคอลัมน์ในตารางแหล่งข้อมูล
addSortSpec(columnName, sortOrder)DataSourceTableเพิ่มข้อกําหนดในการจัดเรียงในคอลัมน์ในตารางแหล่งข้อมูล
forceRefreshData()DataSourceTableรีเฟรชข้อมูลของออบเจ็กต์นี้โดยไม่คํานึงถึงสถานะปัจจุบัน
getColumns()DataSourceTableColumn[]เพิ่มคอลัมน์แหล่งข้อมูลทั้งหมดลงในตารางแหล่งข้อมูล
getDataSource()DataSourceรับแหล่งข้อมูลที่ออบเจ็กต์ลิงก์
getFilters()DataSourceTableFilter[]แสดงผลตัวกรองทั้งหมดที่ใช้กับตารางแหล่งข้อมูล
getRange()Rangeรับ Range ตารางแหล่งข้อมูลนี้ที่ครอบคลุม
getRowLimit()Integerแสดงผลขีดจํากัดแถวสําหรับตารางแหล่งข้อมูล
getSortSpecs()SortSpec[]รับข้อกําหนดในการจัดเรียงทั้งหมดในตารางแหล่งข้อมูล
getStatus()DataExecutionStatusรับสถานะการเรียกใช้ข้อมูลของออบเจ็กต์
isSyncingAllColumns()Booleanแสดงผลว่าตารางแหล่งข้อมูลซิงค์คอลัมน์ทั้งหมดในแหล่งข้อมูลที่เกี่ยวข้องหรือไม่
refreshData()DataSourceTableรีเฟรชข้อมูลของออบเจ็กต์
removeAllColumns()DataSourceTableนําคอลัมน์ทั้งหมดในตารางแหล่งข้อมูลออก
removeAllSortSpecs()DataSourceTableนําข้อกําหนดการจัดเรียงทั้งหมดในตารางแหล่งข้อมูลออก
setRowLimit(rowLimit)DataSourceTableอัปเดตจํานวนแถวสูงสุดสําหรับตารางแหล่งข้อมูล
syncAllColumns()DataSourceTableซิงค์คอลัมน์ปัจจุบันและอนาคตทั้งหมดในแหล่งข้อมูลที่เชื่อมโยงกับตารางแหล่งข้อมูล
waitForCompletion(timeoutInSeconds)DataExecutionStatusรอจนกว่าการดําเนินการปัจจุบันจะเสร็จสมบูรณ์และจะหมดเวลาหลังจากจํานวนวินาทีที่ระบุ

เอกสารประกอบโดยละเอียด

addColumns(columnNames)

เพิ่มคอลัมน์ในตารางแหล่งข้อมูล

พารามิเตอร์

ชื่อประเภทคำอธิบาย
columnNamesString[]รายการชื่อคอลัมน์ที่จะเพิ่ม

ไปกลับ

DataSourceTable — ตารางแหล่งข้อมูลสําหรับเชนธุรกิจ

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

addFilter(columnName, filterCriteria)

เพิ่มตัวกรองที่ใช้กับตารางแหล่งข้อมูล

พารามิเตอร์

ชื่อประเภทคำอธิบาย
columnNameStringชื่อของคอลัมน์ที่จะใช้ตัวกรองนี้
filterCriteriaFilterCriteriaเกณฑ์การกรองที่จะใช้

ไปกลับ

DataSourceTable — ตารางแหล่งข้อมูลสําหรับเชนธุรกิจ

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

addSortSpec(columnName, ascending)

เพิ่มข้อกําหนดในการจัดเรียงในคอลัมน์ในตารางแหล่งข้อมูล

พารามิเตอร์

ชื่อประเภทคำอธิบาย
columnNameStringชื่อของคอลัมน์ที่จะจัดเรียง
ascendingBooleanหาก true ให้จัดเรียงคอลัมน์จากน้อยไปหามาก หาก false ให้จัดเรียงคอลัมน์จากมากไปหาน้อย

ไปกลับ

DataSourceTable — ชีตแหล่งข้อมูลสําหรับเชนธุรกิจ

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

addSortSpec(columnName, sortOrder)

เพิ่มข้อกําหนดในการจัดเรียงในคอลัมน์ในตารางแหล่งข้อมูล

พารามิเตอร์

ชื่อประเภทคำอธิบาย
columnNameStringชื่อของคอลัมน์ที่จะจัดเรียง
sortOrderSortOrderลําดับการจัดเรียง

ไปกลับ

DataSourceTable — ชีตแหล่งข้อมูลสําหรับเชนธุรกิจ

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

forceRefreshData()

รีเฟรชข้อมูลของออบเจ็กต์นี้โดยไม่คํานึงถึงสถานะปัจจุบัน ดูรายละเอียดเพิ่มเติมได้ที่ refreshData()

ส่งข้อยกเว้นหากไม่ได้เปิดใช้ประเภทแหล่งข้อมูล ใช้ SpreadsheetApp#enable...Execution() วิธีเพื่อเปิดใช้การประมวลผลข้อมูลสําหรับแหล่งข้อมูลเฉพาะประเภท

ไปกลับ

DataSourceTable — ออบเจ็กต์ข้อมูล

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getColumns()

เพิ่มคอลัมน์แหล่งข้อมูลทั้งหมดลงในตารางแหล่งข้อมูล

ไปกลับ

DataSourceTableColumn[] — รายการคอลัมน์ของตารางแหล่งข้อมูล

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getDataSource()

รับแหล่งข้อมูลที่ออบเจ็กต์ลิงก์

ไปกลับ

DataSource — แหล่งข้อมูล

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getFilters()

แสดงผลตัวกรองทั้งหมดที่ใช้กับตารางแหล่งข้อมูล

ไปกลับ

DataSourceTableFilter[] — อาร์เรย์ของตัวกรองทั้งหมดที่ใช้กับตารางแหล่งข้อมูล

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getRange()

รับ Range ตารางแหล่งข้อมูลนี้ที่ครอบคลุม

ไปกลับ

Range - ช่วง

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getRowLimit()

แสดงผลขีดจํากัดแถวสําหรับตารางแหล่งข้อมูล

ไปกลับ

Integer — จํานวนแถวสูงสุดสําหรับตารางแหล่งข้อมูล หรือ null หากไม่มีการตั้งค่าขีดจํากัด และตารางจะใช้ขีดจํากัดสูงสุดเริ่มต้นเช่นเดียวกับใน UI ของ Google ชีต

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getSortSpecs()

รับข้อกําหนดในการจัดเรียงทั้งหมดในตารางแหล่งข้อมูล

ไปกลับ

SortSpec[] — รายการข้อมูลจําเพาะของการจัดเรียง

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getStatus()

รับสถานะการเรียกใช้ข้อมูลของออบเจ็กต์

ไปกลับ

DataExecutionStatus — สถานะการประมวลผลข้อมูล

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

isSyncingAllColumns()

แสดงผลว่าตารางแหล่งข้อมูลซิงค์คอลัมน์ทั้งหมดในแหล่งข้อมูลที่เกี่ยวข้องหรือไม่

ไปกลับ

Boolean - True หากตารางแหล่งข้อมูลซิงค์คอลัมน์ทั้งหมดในแหล่งข้อมูลที่เกี่ยวข้อง หรือไม่เช่นนั้น false

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

refreshData()

รีเฟรชข้อมูลของออบเจ็กต์

ส่งข้อยกเว้นหากปัจจุบันมีสถานะerror ใช้ DataSource#updateSpec() เพื่ออัปเดตข้อกําหนด วิธีการนี้เหมาะสําหรับ forceRefreshData() ซึ่งป้องกันการแก้ไขข้อมูลต้นฉบับโดยไม่คาดคิด

ส่งข้อยกเว้นหากไม่ได้เปิดใช้ประเภทแหล่งข้อมูล ใช้ SpreadsheetApp#enable...Execution() วิธีเพื่อเปิดใช้การประมวลผลข้อมูลสําหรับแหล่งข้อมูลเฉพาะประเภท

ไปกลับ

DataSourceTable — ออบเจ็กต์ข้อมูล

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

removeAllColumns()

นําคอลัมน์ทั้งหมดในตารางแหล่งข้อมูลออก

ไปกลับ

DataSourceTable — ตารางแหล่งข้อมูลสําหรับเชนธุรกิจ

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

removeAllSortSpecs()

นําข้อกําหนดการจัดเรียงทั้งหมดในตารางแหล่งข้อมูลออก

ไปกลับ

DataSourceTable — ชีตแหล่งข้อมูลสําหรับเชนธุรกิจ

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

setRowLimit(rowLimit)

อัปเดตจํานวนแถวสูงสุดสําหรับตารางแหล่งข้อมูล หากขีดจํากัดแถวที่ระบุคือ null ให้อัปเดตตารางแหล่งข้อมูลเพื่อใช้ขีดจํากัดจํานวนแถวสูงสุดเริ่มต้น เช่นเดียวกับใน UI ของ Google ชีต

พารามิเตอร์

ชื่อประเภทคำอธิบาย
rowLimitIntegerขีดจํากัดแถวใหม่สําหรับตารางข้อมูล หากเป็น null ให้อัปเดตตารางเพื่อใช้ขีดจํากัดแถวเริ่มต้น

ไปกลับ

DataSourceTable — ตารางแหล่งข้อมูลสําหรับเชนธุรกิจ

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

syncAllColumns()

ซิงค์คอลัมน์ปัจจุบันและอนาคตทั้งหมดในแหล่งข้อมูลที่เชื่อมโยงกับตารางแหล่งข้อมูล

ไปกลับ

DataSourceTable — ตารางแหล่งข้อมูลสําหรับเชนธุรกิจ

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

waitForCompletion(timeoutInSeconds)

รอจนกว่าการดําเนินการปัจจุบันจะเสร็จสมบูรณ์และจะหมดเวลาหลังจากจํานวนวินาทีที่ระบุ ส่งข้อยกเว้นหากการดําเนินการไม่เสร็จสมบูรณ์เมื่อหมดเวลา แต่ไม่ยกเลิกการประมวลผลข้อมูล

พารามิเตอร์

ชื่อประเภทคำอธิบาย
timeoutInSecondsIntegerเวลาที่ต้องใช้ในการเรียกใช้ข้อมูลในหน่วยวินาที ความยาวสูงสุด 300 วินาที

ไปกลับ

DataExecutionStatus — สถานะการประมวลผลข้อมูล

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets