Class DataSourceTable

BảngNguồndữ liệu

Truy cập và sửa đổi bảng nguồn dữ liệu hiện có. Để tạo một 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 các nguồn dữ liệu BigQuery.

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

SpreadsheetApp.enableBigQueryExecution();
const spreadsheet = SpreadsheetApp.getActive();
const 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.
const dataSheet = spreadsheet.insertSheetWithDataSourceTable(spec);
const 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 thấy cách chỉnh sửa nguồn dữ liệu.

SpreadsheetApp.enableBigQueryExecution();
const dataSheet = SpreadsheetApp.getActive().getSheetByName('Data Sheet 1');
const dataSourceTable = dataSheet.getDataSourceTables()[0];
const dataSource = dataSourceTable.getDataSource();
const 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 bộ lọc được áp dụng cho bảng nguồn dữ liệu.
addSortSpec(columnName, ascending)DataSourceTableThêm thông số kỹ thuật sắp xếp vào một cột trong bảng nguồn dữ liệu.
addSortSpec(columnName, sortOrder)DataSourceTableThêm thông số kỹ thuật sắp xếp vào một cột trong bảng nguồn dữ liệu.
cancelDataRefresh()DataSourceTableHuỷ làm mới dữ liệu liên kết với đối tượng này nếu đối tượng đó đ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[]Thêm tất cả cột nguồn dữ liệu vào bảng nguồn dữ liệu.
getDataSource()DataSourceLấy nguồn dữ liệu mà đối tượng được liên kết.
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 trải dài.
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 giới hạn 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 được 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 đã cung cấp.

Tài liệu chi tiết

addColumns(columnNames)

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

Tham số

TênLoạiMô tả
columnNamesString[]Danh sách tên 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 bộ lọc được áp dụng cho bảng nguồn dữ liệu.

Tham số

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

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

addSortSpec(columnName, ascending)

Thêm thông số kỹ thuật sắp xếp vào một cột trong bảng nguồn dữ liệu.

Tham 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ố kỹ thuật sắp xếp vào một cột trong bảng nguồn dữ liệu.

Tham 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

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

cancelDataRefresh()

Huỷ làm mới dữ liệu liên kết với đối tượng này nếu đối tượng đó đang chạy.

Ví dụ này cho thấy cách huỷ 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

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

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 đối tượng này đang chạy, hãy xem 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

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

Thêm tất cả cột nguồn dữ liệu 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

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

getDataSource()

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

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ả bộ lọc được áp dụng cho bảng 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

getRange()

Lấy Range mà bảng nguồn dữ liệu này trải dài.

Cầu thủ trả bóng

Range – Dả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

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

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

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 thông số kỹ thuật sắp xếp.

Ủ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

getStatus()

Lấy 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ề 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.

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 nguồn dữ liệu được liên kết, hoặc false nếu không.

Ủ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

refreshData()

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

Trả về ngoại lệ nếu đang ở trạng thái error. Sử dụng DataSource#updateSpec() để cập nhật thông số kỹ thuật. Bạn nên sử dụng phương thức này thay vì forceRefreshData() để ngăn chặn các nội dung chỉnh sửa không mong muốn trên nguồn dữ liệu.

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

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

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

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

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

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

setRowLimit(rowLimit)

Cập nhật giới hạn số hàng cho bảng nguồn dữ liệu. Nếu giới hạn số hàng được cung cấp là null, hãy 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.

Tham 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

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

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

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

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 chưa hoàn tất khi hết thời gian chờ, nhưng không huỷ quá trình thực thi dữ liệu.

Tham số

TênLoạiMô tả
timeoutInSecondsIntegerThời gian chờ thực thi dữ liệu, tính bằng giây. Thời lượng 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

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