Class DataSourceTable

DataSourceTable

גישה לטבלה של מקור נתונים קיים ושינוי שלה. כדי ליצור טבלה חדשה של מקור נתונים בגיליון חדש, משתמשים ב-Spreadsheet.insertSheetWithDataSourceTable(spec).

אפשר להשתמש בכיתה הזו רק עם מקורות נתונים של BigQuery.

בדוגמה הזו תוכלו לראות איך ליצור טבלה חדשה של מקור נתונים.

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

בדוגמה הזו מוסבר איך לערוך מקור נתונים.

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

שיטות

שיטהסוג הערך המוחזרתיאור קצר
addColumns(columnNames)DataSourceTableהוספת עמודות לטבלה של מקור הנתונים.
addFilter(columnName, filterCriteria)DataSourceTableהוספת מסנן שהוחל על הטבלה של מקור הנתונים.
addSortSpec(columnName, ascending)DataSourceTableהוספת מפרט מיון לעמודה בטבלה של מקור הנתונים.
addSortSpec(columnName, sortOrder)DataSourceTableמוסיף מפרט מיון בעמודה בטבלת מקור הנתונים.
cancelDataRefresh()DataSourceTableביטול רענון הנתונים שמשויך לאובייקט הזה, אם הוא פועל כרגע.
forceRefreshData()DataSourceTableרענון הנתונים של האובייקט הזה, ללא קשר למצב הנוכחי.
getColumns()DataSourceTableColumn[]קבלת כל העמודות של מקור הנתונים שנוספו לטבלה של מקור הנתונים.
getDataSource()DataSourceהפונקציה מקבלת את מקור הנתונים שאליו האובייקט מקושר.
getFilters()DataSourceTableFilter[]הפונקציה מחזירה את כל המסננים שהוחלו על הטבלה של מקור הנתונים.
getRange()Rangeהפונקציה מקבלת את Range שבו הטבלה של מקור הנתונים משתרעת.
getRowLimit()Integerמחזירה את מגבלת השורות בטבלה של מקור הנתונים.
getSortSpecs()SortSpec[]קבלת כל המפרטים למיון בטבלה של מקור הנתונים.
getStatus()DataExecutionStatusהפונקציה מקבלת את סטטוס ביצוע הנתונים של האובייקט.
isSyncingAllColumns()Booleanהפונקציה מחזירה אם הטבלה של מקור הנתונים מסנכרנת את כל העמודות במקור הנתונים המשויך.
refreshData()DataSourceTableרענון של נתוני האובייקט.
removeAllColumns()DataSourceTableמסיר את כל העמודות בטבלה של מקור הנתונים.
removeAllSortSpecs()DataSourceTableהסרת כל המפרטים למיון בטבלת מקור הנתונים.
setRowLimit(rowLimit)DataSourceTableעדכון מגבלת השורות בטבלה של מקור הנתונים.
syncAllColumns()DataSourceTableמסנכרנים את כל העמודות, הנוכחיות והעתידיות במקור הנתונים המשויך, לטבלה של מקור הנתונים.
waitForCompletion(timeoutInSeconds)DataExecutionStatusבהמתנה לסיום הביצוע הנוכחי, הזמן הקצוב יסתיים אחרי מספר השניות שצוין.

תיעוד מפורט

addColumns(columnNames)

הוספת עמודות לטבלה של מקור הנתונים.

פרמטרים

שםסוגתיאור
columnNamesString[]רשימת שמות העמודות להוספה.

חזרה

DataSourceTable – הטבלה של מקור הנתונים, לשרשור.

אישור

סקריפטים שמשתמשים בשיטה הזו מחייבים הרשאה עם אחד או יותר מהיקפי ההרשאות הבאים:

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

addFilter(columnName, filterCriteria)

הוספת מסנן לטבלה של מקור הנתונים.

פרמטרים

שםסוגתיאור
columnNameStringשם העמודה שעליה רוצים להחיל את המסנן הזה.
filterCriteriaFilterCriteriaקריטריוני הסינון שצריך להחיל.

חזרה

DataSourceTable – הטבלה של מקור הנתונים, לשרשור.

אישור

סקריפטים שמשתמשים בשיטה הזו מחייבים הרשאה עם אחד או יותר מהיקפי ההרשאות הבאים:

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

addSortSpec(columnName, ascending)

מוסיף מפרט מיון בעמודה בטבלת מקור הנתונים.

פרמטרים

שםסוגתיאור
columnNameStringהשם של העמודה שרוצים למיין.
ascendingBooleanאם הערך שלו הוא true, צריך למיין את העמודה בסדר עולה. אם false, מיון העמודה בסדר יורד.

חזרה

DataSourceTable – הגיליון של מקור הנתונים, לשרשור.

אישור

סקריפטים שמשתמשים בשיטה הזו מחייבים הרשאה עם אחד או יותר מהיקפי ההרשאות הבאים:

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

addSortSpec(columnName, sortOrder)

הוספת מפרט מיון לעמודה בטבלה של מקור הנתונים.

פרמטרים

שםסוגתיאור
columnNameStringשם העמודה למיון.
sortOrderSortOrderסדר המיון.

חזרה

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 אם לא הוגדרה מגבלה, וגם משתמש במגבלת ברירת המחדל המקסימלית כמו בממשק המשתמש של 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()

הפונקציה מחזירה אם הטבלה של מקור הנתונים מסנכרנת את כל העמודות במקור הנתונים המשויך.

חזרה

BooleanTrue אם הטבלה של מקור הנתונים מסנכרנת את כל העמודות בנתונים המשויכים מקור, או 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.

פרמטרים

שםסוגתיאור
rowLimitIntegerמגבלת השורות החדשה בטבלת הנתונים. אם הערך שלו הוא 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)

בהמתנה לסיום הביצוע הנוכחי, הזמן הקצוב יסתיים אחרי מספר השניות שצוין. מחריגה חריג אם הביצוע לא הושלם בזמן הסיום, אבל לא מבטל את ביצוע נתונים.

פרמטרים

שםסוגתיאור
timeoutInSecondsIntegerזמן ההמתנה להפעלת נתונים, בשניות. המקסימום הוא 300 שניות.

חזרה

DataExecutionStatus – סטטוס הפעלת הנתונים.

אישור

סקריפטים שמשתמשים בשיטה הזו מחייבים הרשאה עם אחד או יותר מהיקפי ההרשאות הבאים:

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