Class DataSourceTable

جدول منبع داده

دسترسی و تغییر جدول منبع داده موجود. برای ایجاد یک جدول منبع داده جدید در یک برگه جدید، Spreadsheet.insertSheetWithDataSourceTable(spec) استفاده کنید.

فقط از این کلاس با منابع داده BigQuery استفاده کنید.

این مثال نحوه ایجاد یک جدول منبع داده جدید را نشان می‌دهد.

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

این مثال نحوه ویرایش یک منبع داده را نشان می‌دهد.

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

روش‌ها

روش نوع بازگشتی شرح مختصر
add Columns(columnNames) Data Source Table ستون‌هایی را به جدول منبع داده اضافه می‌کند.
add Filter(columnName, filterCriteria) Data Source Table یک فیلتر اعمال شده به جدول منبع داده اضافه می‌کند.
add Sort Spec(columnName, ascending) Data Source Table یک مشخصات مرتب‌سازی روی یک ستون در جدول منبع داده اضافه می‌کند.
add Sort Spec(columnName, sortOrder) Data Source Table یک مشخصات مرتب‌سازی روی یک ستون در جدول منبع داده اضافه می‌کند.
cancel Data Refresh() Data Source Table اگر در حال حاضر این شیء در حال اجرا باشد، به‌روزرسانی داده‌های مرتبط با آن را لغو می‌کند.
force Refresh Data() Data Source Table داده‌های این شیء را صرف نظر از وضعیت فعلی آن، به‌روزرسانی می‌کند.
get Columns() Data Source Table Column[] تمام ستون‌های منبع داده اضافه شده به جدول منبع داده را دریافت می‌کند.
get Data Source() Data Source منبع داده‌ای که شیء به آن لینک شده است را دریافت می‌کند.
get Filters() Data Source Table Filter[] تمام فیلترهای اعمال شده روی جدول منبع داده را برمی‌گرداند.
get Range() Range Range این جدول منبع داده پوشش می‌دهد را برمی‌گرداند.
get Row Limit() Integer|null محدودیت ردیف را برای جدول منبع داده برمی‌گرداند.
get Sort Specs() Sort Spec[] تمام مشخصات مرتب‌سازی را در جدول منبع داده دریافت می‌کند.
get Status() Data Execution Status وضعیت اجرای داده‌ی شیء را دریافت می‌کند.
is Syncing All Columns() Boolean برمی‌گرداند که آیا جدول منبع داده، تمام ستون‌های منبع داده مرتبط را همگام‌سازی می‌کند یا خیر.
refresh Data() Data Source Table داده‌های شیء را به‌روزرسانی می‌کند.
remove All Columns() Data Source Table تمام ستون‌های جدول منبع داده را حذف می‌کند.
remove All Sort Specs() Data Source Table تمام مشخصات مرتب‌سازی را در جدول منبع داده حذف می‌کند.
set Row Limit(rowLimit) Data Source Table محدودیت تعداد سطرها را برای جدول منبع داده به‌روزرسانی می‌کند.
sync All Columns() Data Source Table تمام ستون‌های فعلی و آینده در منبع داده مرتبط را با جدول منبع داده همگام‌سازی کنید.
wait For Completion(timeoutInSeconds) Data Execution Status منتظر می‌ماند تا اجرای فعلی کامل شود و پس از تعداد ثانیه‌های ارائه شده، زمان‌بندی خاتمه می‌یابد.

مستندات دقیق

addColumns(columnNames)

ستون‌هایی را به جدول منبع داده اضافه می‌کند.

پارامترها

نام نوع توضیحات
column Names String[] فهرست نام ستون‌هایی که باید اضافه شوند.

بازگشت

DataSourceTable - جدول منبع داده، برای زنجیره‌سازی.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

addFilter(columnName, filterCriteria)

یک فیلتر اعمال شده به جدول منبع داده اضافه می‌کند.

پارامترها

نام نوع توضیحات
column Name String نام ستونی که قرار است این فیلتر روی آن اعمال شود.
filter Criteria Filter Criteria معیارهای فیلتری که باید اعمال شوند.

بازگشت

DataSourceTable - جدول منبع داده، برای زنجیره‌سازی.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

addSortSpec(columnName, ascending)

یک مشخصات مرتب‌سازی روی یک ستون در جدول منبع داده اضافه می‌کند.

پارامترها

نام نوع توضیحات
column Name String نام ستونی که قرار است مرتب شود.
ascending Boolean اگر true ، ستون را به ترتیب صعودی مرتب می‌کند؛ اگر false ، ستون را به ترتیب نزولی مرتب می‌کند.

بازگشت

DataSourceTable - برگه منبع داده، برای زنجیره‌سازی.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

addSortSpec(columnName, sortOrder)

یک مشخصات مرتب‌سازی روی یک ستون در جدول منبع داده اضافه می‌کند.

پارامترها

نام نوع توضیحات
column Name String نام ستونی که قرار است مرتب شود.
sort Order Sort Order ترتیب مرتب‌سازی.

بازگشت

DataSourceTable - برگه منبع داده، برای زنجیره‌سازی.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

cancelDataRefresh()

اگر در حال حاضر این شیء در حال اجرا باشد، به‌روزرسانی داده‌های مرتبط با آن را لغو می‌کند.

این مثال نحوه لغو به‌روزرسانی فرمول را نشان می‌دهد.

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

اگر نوع منبع داده فعال نباشد، یک استثنا ایجاد می‌کند. از متدهای SpreadsheetApp#enable...Execution() برای فعال کردن اجرای داده برای نوع منبع داده خاص استفاده کنید.

بازگشت

DataSourceTable - شیء داده.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

forceRefreshData()

داده‌های این شیء را صرف نظر از وضعیت فعلی، به‌روزرسانی می‌کند. برای جزئیات بیشتر refreshData() مراجعه کنید. اگر می‌خواهید به‌روزرسانی در حال انجام این شیء را لغو کنید، به cancelDataRefresh() مراجعه کنید.

اگر نوع منبع داده فعال نباشد، یک استثنا ایجاد می‌کند. از متدهای SpreadsheetApp#enable...Execution() برای فعال کردن اجرای داده برای نوع منبع داده خاص استفاده کنید.

بازگشت

DataSourceTable - شیء داده.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

getColumns()

تمام ستون‌های منبع داده اضافه شده به جدول منبع داده را دریافت می‌کند.

بازگشت

DataSourceTableColumn[] — فهرستی از ستون‌های جدول منبع داده.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

getDataSource()

منبع داده‌ای که شیء به آن لینک شده است را دریافت می‌کند.

بازگشت

DataSource - منبع داده.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

getFilters()

تمام فیلترهای اعمال شده روی جدول منبع داده را برمی‌گرداند.

بازگشت

DataSourceTableFilter[] — آرایه‌ای از تمام فیلترهای اعمال شده روی جدول منبع داده.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

getRange()

Range این جدول منبع داده پوشش می‌دهد را برمی‌گرداند.

بازگشت

Range - محدوده.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

getRowLimit()

محدودیت ردیف را برای جدول منبع داده برمی‌گرداند.

بازگشت

Integer|null - محدودیت ردیف برای جدول منبع داده، یا null اگر هیچ محدودیتی تعیین نشده باشد و جدول از حداکثر محدودیت پیش‌فرض مانند رابط کاربری Google Sheets استفاده کند.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

getSortSpecs()

تمام مشخصات مرتب‌سازی را در جدول منبع داده دریافت می‌کند.

بازگشت

SortSpec[] — فهرستی از مشخصات مرتب‌سازی.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

getStatus()

وضعیت اجرای داده‌ی شیء را دریافت می‌کند.

بازگشت

DataExecutionStatus — وضعیت اجرای داده‌ها.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

isSyncingAllColumns()

برمی‌گرداند که آیا جدول منبع داده، تمام ستون‌های منبع داده مرتبط را همگام‌سازی می‌کند یا خیر.

بازگشت

Boolean - اگر جدول منبع داده در حال همگام‌سازی تمام ستون‌های منبع داده مرتبط باشد، True و در غیر این صورت false برمی‌گرداند.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

refreshData()

داده‌های شیء را به‌روزرسانی می‌کند.

اگر در حال حاضر در حالت error باشد، یک استثنا ایجاد می‌کند. برای به‌روزرسانی مشخصات DataSource#updateSpec() استفاده کنید. این روش نسبت به forceRefreshData() ترجیح داده می‌شود تا از ویرایش‌های غیرمنتظره در منبع داده جلوگیری شود.

اگر نوع منبع داده فعال نباشد، یک استثنا ایجاد می‌کند. از متدهای SpreadsheetApp#enable...Execution() برای فعال کردن اجرای داده برای نوع منبع داده خاص استفاده کنید.

بازگشت

DataSourceTable - شیء داده.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

removeAllColumns()

تمام ستون‌های جدول منبع داده را حذف می‌کند.

بازگشت

DataSourceTable - جدول منبع داده، برای زنجیره‌سازی.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

removeAllSortSpecs()

تمام مشخصات مرتب‌سازی را در جدول منبع داده حذف می‌کند.

بازگشت

DataSourceTable - برگه منبع داده، برای زنجیره‌سازی.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

setRowLimit(rowLimit)

محدودیت ردیف را برای جدول منبع داده به‌روزرسانی می‌کند. اگر محدودیت ردیف ارائه شده null باشد، جدول منبع داده را به‌روزرسانی می‌کند تا از حداکثر محدودیت ردیف پیش‌فرض مانند رابط کاربری Google Sheets استفاده کند.

پارامترها

نام نوع توضیحات
row Limit Integer محدودیت ردیف جدید برای جدول داده‌ها. اگر null ، جدول را به‌روزرسانی می‌کند تا از محدودیت ردیف پیش‌فرض استفاده کند.

بازگشت

DataSourceTable - جدول منبع داده، برای زنجیره‌سازی.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

syncAllColumns()

تمام ستون‌های فعلی و آینده در منبع داده مرتبط را با جدول منبع داده همگام‌سازی کنید.

بازگشت

DataSourceTable - جدول منبع داده، برای زنجیره‌سازی.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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

waitForCompletion(timeoutInSeconds)

منتظر می‌ماند تا اجرای فعلی کامل شود و پس از تعداد ثانیه‌های مشخص شده، زمان‌بندی خاتمه می‌یابد. اگر اجرا هنگام اتمام زمان‌بندی کامل نشود، استثنا ایجاد می‌کند، اما اجرای داده‌ها را لغو نمی‌کند.

پارامترها

نام نوع توضیحات
timeout In Seconds Integer زمان انتظار برای اجرای داده، بر حسب ثانیه. حداکثر ۳۰۰ ثانیه است.

بازگشت

DataExecutionStatus — وضعیت اجرای داده‌ها.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

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