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 محدودیت ردیف را برای جدول منبع داده برمی‌گرداند.
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 منتظر می ماند تا اجرای فعلی کامل شود و پس از تعداد ثانیه های ارائه شده به پایان می رسد.

مستندات دقیق

add Columns(columnNames)

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

پارامترها

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

بازگشت

Data Source Table - جدول منبع داده، برای زنجیره.

مجوز

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

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

add Filter(columnName, filterCriteria)

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

پارامترها

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

بازگشت

Data Source Table - جدول منبع داده، برای زنجیره.

مجوز

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

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

add Sort Spec(columnName, ascending)

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

پارامترها

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

بازگشت

Data Source Table - برگه منبع داده، برای زنجیر کردن.

مجوز

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

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

add Sort Spec(columnName, sortOrder)

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

پارامترها

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

بازگشت

Data Source Table - برگه منبع داده، برای زنجیر کردن.

مجوز

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

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

cancel Data Refresh()

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

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

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

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

بازگشت

Data Source Table - شی داده.

مجوز

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

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

force Refresh Data()

داده های این شی را بدون در نظر گرفتن وضعیت فعلی تازه می کند. برای جزئیات بیشتر به refresh Data() مراجعه کنید. اگر می‌خواهید یک به‌روزرسانی فعلی این شی را لغو کنید، cancel Data Refresh() مراجعه کنید.

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

بازگشت

Data Source Table - شی داده.

مجوز

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

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

get Columns()

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

بازگشت

Data Source Table Column[] - فهرستی از ستون های جدول منبع داده.

مجوز

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

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

get Data Source()

منبع داده ای را که شی به آن پیوند دارد را دریافت می کند.

بازگشت

Data Source - منبع داده.

مجوز

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

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

get Filters()

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

بازگشت

Data Source Table Filter[] - آرایه ای از تمام فیلترهای اعمال شده در جدول منبع داده.

مجوز

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

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

get Range()

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

بازگشت

Range - محدوده.

مجوز

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

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

get Row Limit()

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

بازگشت

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

مجوز

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

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

get Sort Specs()

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

بازگشت

Sort Spec[] - لیستی از مشخصات مرتب سازی.

مجوز

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

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

get Status()

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

بازگشت

Data Execution Status - وضعیت اجرای داده ها.

مجوز

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

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

is Syncing All Columns()

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

بازگشت

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

مجوز

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

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

refresh Data()

داده های شی را تازه می کند.

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

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

بازگشت

Data Source Table - شی داده.

مجوز

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

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

remove All Columns()

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

بازگشت

Data Source Table - جدول منبع داده، برای زنجیره.

مجوز

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

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

remove All Sort Specs()

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

بازگشت

Data Source Table - برگه منبع داده، برای زنجیر کردن.

مجوز

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

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

set Row Limit(rowLimit)

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

پارامترها

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

بازگشت

Data Source Table - جدول منبع داده، برای زنجیره.

مجوز

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

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

sync All Columns()

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

بازگشت

Data Source Table - جدول منبع داده، برای زنجیره.

مجوز

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

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

wait For Completion(timeoutInSeconds)

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

پارامترها

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

بازگشت

Data Execution Status - وضعیت اجرای داده ها.

مجوز

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

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