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 যদি কোনো সীমা নির্ধারণ করা না থাকে এবং টেবিলটি গুগল শিটস ইউআই-এর মতো ডিফল্ট সর্বোচ্চ সীমা ব্যবহার করে।

অনুমোদন

যে স্ক্রিপ্টগুলো এই পদ্ধতি ব্যবহার করে, সেগুলোর জন্য নিম্নলিখিত এক বা একাধিক স্কোপের মাধ্যমে অনুমোদনের প্রয়োজন হয়:

  • 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 হয়, তাহলে এটি গুগল শিটস UI-এর ডিফল্ট সর্বোচ্চ সারি সীমা ব্যবহার করার জন্য ডেটা সোর্স টেবিলটি আপডেট করে।

প্যারামিটার

নাম প্রকার বর্ণনা
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