Class DataSourceTable

DataSourceTable

Truy cập và sửa đổi bảng nguồn dữ liệu hiện có. Để tạo bảng nguồn dữ liệu mới trên một trang tính mới, hãy sử dụng Spreadsheet.insertSheetWithDataSourceTable(spec).

Chỉ sử dụng lớp này với nguồn dữ liệu BigQuery.

Ví dụ này cho biết cách tạo bảng nguồn dữ liệu mới.

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());

Ví dụ này cho biết cách chỉnh sửa nguồn dữ liệu.

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());

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
addColumns(columnNames)DataSourceTableThêm cột vào bảng nguồn dữ liệu.
addFilter(columnName, filterCriteria)DataSourceTableThêm một bộ lọc được áp dụng cho bảng nguồn dữ liệu.
addSortSpec(columnName, ascending)DataSourceTableThêm thông số sắp xếp trên một cột trong bảng nguồn dữ liệu.
addSortSpec(columnName, sortOrder)DataSourceTableThêm thông số sắp xếp trên một cột trong bảng nguồn dữ liệu.
cancelDataRefresh()DataSourceTableHuỷ quá trình làm mới dữ liệu được liên kết với đối tượng này nếu đối tượng hiện đang chạy.
forceRefreshData()DataSourceTableLàm mới dữ liệu của đối tượng này bất kể trạng thái hiện tại.
getColumns()DataSourceTableColumn[]Lấy tất cả các cột nguồn dữ liệu được thêm vào bảng nguồn dữ liệu.
getDataSource()DataSourceLấy nguồn dữ liệu liên kết với đối tượng.
getFilters()DataSourceTableFilter[]Trả về tất cả bộ lọc được áp dụng cho bảng nguồn dữ liệu.
getRange()RangeLấy Range mà bảng nguồn dữ liệu này mở rộng.
getRowLimit()IntegerTrả về giới hạn số hàng cho bảng nguồn dữ liệu.
getSortSpecs()SortSpec[]Lấy tất cả thông số sắp xếp trong bảng nguồn dữ liệu.
getStatus()DataExecutionStatusLấy trạng thái thực thi dữ liệu của đối tượng.
isSyncingAllColumns()BooleanTrả về thông tin về việc bảng nguồn dữ liệu có đang đồng bộ hoá tất cả các cột trong nguồn dữ liệu được liên kết hay không.
refreshData()DataSourceTableLàm mới dữ liệu của đối tượng.
removeAllColumns()DataSourceTableXoá tất cả các cột trong bảng nguồn dữ liệu.
removeAllSortSpecs()DataSourceTableXoá tất cả thông số sắp xếp trong bảng nguồn dữ liệu.
setRowLimit(rowLimit)DataSourceTableCập nhật hạn mức về số hàng cho bảng nguồn dữ liệu.
syncAllColumns()DataSourceTableĐồng bộ hoá tất cả cột hiện tại và trong tương lai trong nguồn dữ liệu đã liên kết với bảng nguồn dữ liệu.
waitForCompletion(timeoutInSeconds)DataExecutionStatusChờ cho đến khi quá trình thực thi hiện tại hoàn tất, hết thời gian chờ sau số giây đã cho.

Tài liệu chi tiết

addColumns(columnNames)

Thêm cột vào bảng nguồn dữ liệu.

Thông số

TênLoạiMô tả
columnNamesString[]Danh sách tên của các cột cần thêm.

Cầu thủ trả bóng

DataSourceTable — Bảng nguồn dữ liệu, để tạo chuỗi.

Ủy quyền

Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:

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

addFilter(columnName, filterCriteria)

Thêm một bộ lọc được áp dụng vào bảng nguồn dữ liệu.

Thông số

TênLoạiMô tả
columnNameStringTên của cột để áp dụng bộ lọc này.
filterCriteriaFilterCriteriaTiêu chí bộ lọc để áp dụng.

Cầu thủ trả bóng

DataSourceTable – Bảng nguồn dữ liệu, để tạo chuỗi.

Ủy quyền

Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

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

addSortSpec(columnName, ascending)

Thêm thông số sắp xếp trên một cột trong bảng nguồn dữ liệu.

Thông số

TênLoạiMô tả
columnNameStringTên của cột cần sắp xếp.
ascendingBooleanNếu là true, hãy sắp xếp cột theo thứ tự tăng dần; nếu là false, hãy sắp xếp cột theo thứ tự giảm dần.

Cầu thủ trả bóng

DataSourceTable – Trang tính nguồn dữ liệu, để tạo chuỗi.

Ủy quyền

Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:

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

addSortSpec(columnName, sortOrder)

Thêm thông số sắp xếp trên một cột trong bảng nguồn dữ liệu.

Thông số

TênLoạiMô tả
columnNameStringTên của cột cần sắp xếp.
sortOrderSortOrderThứ tự sắp xếp.

Cầu thủ trả bóng

DataSourceTable — Trang tính nguồn dữ liệu, để tạo chuỗi.

Ủy quyền

Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

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

cancelDataRefresh()

Huỷ quá trình làm mới dữ liệu được liên kết với đối tượng này nếu đối tượng hiện đang chạy.

Ví dụ này trình bày cách huỷ quá trình làm mới công thức.

const spreadsheet = SpreadsheetApp.getActive();
const formula = spreadsheet.getDataSourceFormulas()[0];
// Cancel the ongoing refresh on the formula.
formula.cancelDataRefresh();

Gửi một ngoại lệ nếu loại nguồn dữ liệu không được bật. Sử dụng các phương thức SpreadsheetApp#enable...Execution() để cho phép thực thi dữ liệu cho một loại nguồn dữ liệu cụ thể.

Cầu thủ trả bóng

DataSourceTable – Đối tượng dữ liệu.

Ủy quyền

Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

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

forceRefreshData()

Làm mới dữ liệu của đối tượng này bất kể trạng thái hiện tại. Hãy xem refreshData() để biết thêm thông tin chi tiết. Nếu bạn muốn huỷ quá trình làm mới hiện đang chạy của đối tượng này, hãy xem cancelDataRefresh().

Gửi một trường hợp ngoại lệ nếu loại nguồn dữ liệu không được bật. Sử dụng các phương thức SpreadsheetApp#enable...Execution() để cho phép thực thi dữ liệu đối với nguồn dữ liệu cụ thể loại.

Cầu thủ trả bóng

DataSourceTable – Đối tượng dữ liệu.

Ủy quyền

Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:

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

getColumns()

Lấy tất cả các cột nguồn dữ liệu được thêm vào bảng nguồn dữ liệu.

Cầu thủ trả bóng

DataSourceTableColumn[] – Danh sách các cột trong bảng nguồn dữ liệu.

Ủy quyền

Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

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

getDataSource()

Lấy nguồn dữ liệu liên kết với đối tượng.

Cầu thủ trả bóng

DataSource – Nguồn dữ liệu.

Ủy quyền

Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:

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

getFilters()

Trả về tất cả bộ lọc được áp dụng cho bảng nguồn dữ liệu.

Cầu thủ trả bóng

DataSourceTableFilter[] – Một mảng gồm tất cả các bộ lọc được áp dụng cho bảng nguồn dữ liệu.

Ủy quyền

Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

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

getRange()

Lấy Range mà bảng nguồn dữ liệu này mở rộng.

Cầu thủ trả bóng

Range — Dải ô.

Ủy quyền

Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

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

getRowLimit()

Trả về giới hạn số hàng cho bảng nguồn dữ liệu.

Cầu thủ trả bóng

Integer – Hạn mức hàng cho bảng nguồn dữ liệu hoặc null nếu không đặt hạn mức và bảng sử dụng hạn mức tối đa mặc định như trong giao diện người dùng Google Trang tính.

Ủy quyền

Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

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

getSortSpecs()

Lấy tất cả thông số sắp xếp trong bảng nguồn dữ liệu.

Cầu thủ trả bóng

SortSpec[] – Danh sách các thông số sắp xếp.

Ủy quyền

Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

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

getStatus()

Xem trạng thái thực thi dữ liệu của đối tượng.

Cầu thủ trả bóng

DataExecutionStatus – Trạng thái thực thi dữ liệu.

Ủy quyền

Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:

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

isSyncingAllColumns()

Trả về xem bảng nguồn dữ liệu có đang đồng bộ hoá tất cả các cột trong nguồn dữ liệu được liên kết hay không.

Cầu thủ trả bóng

BooleanTrue nếu bảng nguồn dữ liệu đang đồng bộ hoá tất cả các cột trong dữ liệu được liên kết nguồn hoặc false nếu không.

Ủy quyền

Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

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

refreshData()

Làm mới dữ liệu của đối tượng.

Gửi một ngoại lệ nếu hiện đang ở trạng thái error. Sử dụng DataSource#updateSpec() để cập nhật thông số kỹ thuật. Phương thức là được ưu tiên hơn forceRefreshData() để ngăn các chỉnh sửa không mong muốn đối với nguồn dữ liệu.

Gửi một trường hợp ngoại lệ nếu loại nguồn dữ liệu không được bật. Sử dụng các phương thức SpreadsheetApp#enable...Execution() để cho phép thực thi dữ liệu đối với nguồn dữ liệu cụ thể loại.

Cầu thủ trả bóng

DataSourceTable – Đối tượng dữ liệu.

Ủy quyền

Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

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

removeAllColumns()

Xoá tất cả các cột trong bảng nguồn dữ liệu.

Cầu thủ trả bóng

DataSourceTable – Bảng nguồn dữ liệu, để tạo chuỗi.

Ủy quyền

Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

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

removeAllSortSpecs()

Xoá tất cả thông số sắp xếp trong bảng nguồn dữ liệu.

Cầu thủ trả bóng

DataSourceTable — Trang tính nguồn dữ liệu, để tạo chuỗi.

Ủy quyền

Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

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

setRowLimit(rowLimit)

Cập nhật hạn mức về số hàng cho bảng nguồn dữ liệu. Nếu giới hạn số hàng đã cung cấp là null, sau đó cập nhật bảng nguồn dữ liệu để sử dụng giới hạn số hàng tối đa mặc định như trong giao diện người dùng Google Trang tính.

Thông số

TênLoạiMô tả
rowLimitIntegerGiới hạn hàng mới cho bảng dữ liệu. Nếu là null, hãy cập nhật bảng để sử dụng giới hạn hàng mặc định.

Cầu thủ trả bóng

DataSourceTable — Bảng nguồn dữ liệu, để tạo chuỗi.

Ủy quyền

Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

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

syncAllColumns()

Đồng bộ hoá tất cả cột hiện tại và trong tương lai trong nguồn dữ liệu được liên kết với bảng nguồn dữ liệu.

Cầu thủ trả bóng

DataSourceTable — Bảng nguồn dữ liệu, để tạo chuỗi.

Ủy quyền

Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

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

waitForCompletion(timeoutInSeconds)

Chờ cho đến khi quá trình thực thi hiện tại hoàn tất, hết thời gian chờ sau số giây đã cung cấp. Gửi một ngoại lệ nếu quá trình thực thi không hoàn tất khi hết thời gian chờ, nhưng không huỷ thực thi dữ liệu.

Thông số

TênLoạiMô tả
timeoutInSecondsIntegerThời gian để chờ thực thi dữ liệu, tính bằng giây. Tối đa là 300 giây.

Cầu thủ trả bóng

DataExecutionStatus – Trạng thái thực thi dữ liệu.

Ủy quyền

Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:

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