במאמר הזה מוסבר איך משתמשים בשיטה spreadsheets.batchUpdate במשאב spreadsheets.
בנוסף לנתוני הערכים שבתאים, גיליון אלקטרוני כולל סוגים רבים אחרים של נתונים, כמו:
- מידות
- פורמטים וגבולות של תאים
- טווחים בעלי שם
- טווחים מוגנים
- עיצוב מותנה
אלה רק חלק מסוגי הנתונים הרבים ששולטים במראה ובפעולה של גיליון אלקטרוני. השיטה spreadsheets.batchUpdate מאפשרת לכם לעדכן את כל הפרטים האלה בגיליון האלקטרוני. השינויים מקובצים בחבילה, כך שאם בקשה אחת לא מצליחה, אף אחד מהשינויים האחרים (שיכול להיות שהם תלויים בה) לא נכתב.
אם אתם צריכים לקרוא ולכתוב נתונים של ערכי תאים, אתם יכולים גם להשתמש במשאב spreadsheets.values, כפי שמתואר במאמר קריאה וכתיבה של ערכי תאים.
סוגי פעולות
אפשר לקבץ את הפעולות הספציפיות שנתמכות על ידי השיטה spreadsheets.batchUpdate לסוגי הפעולות הרחבים הבאים:
| קטגוריה | תיאור |
|---|---|
| הוספה (ושכפול) | הוספת אובייקטים חדשים (לפעמים על סמך אובייקטים ישנים, כמו בבקשות לשכפול). |
| עדכון (והגדרה) | עדכון של מאפיינים מסוימים של אובייקט, בדרך כלל בלי לשנות את המאפיינים הקודמים (לעומת בקשת Set שדורסת את הנתונים הקודמים). |
| מחיקה | הסרת אובייקטים. |
הקטגוריות האלה משמשות בקטע הבא לתיאור ההתנהגות של פעולות ספציפיות.
פעולות של חבילת עדכונים
השיטה spreadsheets.batchUpdate פועלת על ידי קבלת אובייקט Request אחד או יותר, שכל אחד מהם מציין סוג בקשה יחיד לביצוע. בטבלה הבאה מפורטים סוגי הבקשות לעדכון בכמות גדולה, מקובצים לפי אובייקט משאב וסוג פעולה:
בקשות לטיפול בנתונים
יש גם כמה בקשות נוספות שמחקות פעולות של משתמשים כדי לשנות נתונים:
| בקשה | תיאור |
|---|---|
AutoFillRequest |
מילוי אוטומטי של נתונים נוספים על סמך נתונים קיימים. |
CopyPasteRequest |
מעתיק נתונים מאזור אחד ומדביק אותם באזור אחר. |
CutPasteRequest |
גזירה של נתונים מאזור אחד והדבקה שלהם באזור אחר. |
DeleteDuplicatesRequest |
מסירה שורות שמכילות ערכים כפולים בעמודות שצוינו בטווח תאים. |
FindReplaceRequest |
הפונקציה מחפשת מופעים של טקסט מסוים ומחליפה אותם בטקסט אחר. |
PasteDataRequest |
מדביקה נתונים (HTML או מופרדים) בגיליון. |
RandomizeRangeRequest |
הפונקציה קובעת באופן אקראי את סדר השורות בטווח. |
SortRangeRequest |
מיון נתונים בטווח. |
TextToColumnsRequest |
הפונקציה ממירה עמודה של טקסט לכמה עמודות של טקסט. |
TrimWhitespaceRequest |
הפונקציה מסירה רווחים לבנים (כמו רווחים, טאבים או שורות חדשות) מהתאים. |
מידע נוסף על מגבלות התאים והשורות ב-Google Sheets זמין במאמר קבצים שאפשר לאחסן ב-Google Drive.
שימוש באנונימיזציה של שדות לעדכון שדות ספציפיים
הרבה בקשות עדכון דורשות FieldMask. מסכת שדות היא רשימה של שדות שמופרדים באמצעות פסיקים, ומשמשת לציון השדות באובייקט שצריך לעדכן, בלי לשנות את כל השדות האחרים. שימוש במסכת שדות מונע החלפות בטעות של שדות שלא צוינו בבקשה.
מידע נוסף על מסכות שדות מופיע במאמר עדכון באמצעות מסכת שדות.
בדוגמת הקוד הבאה אפשר לראות איך משתמשים ב-UpdateSpreadsheetPropertiesRequest כדי לעדכן רק את השם של גיליון אלקטרוני:
בקשה
POST https://sheets.googleapis.com/v4/spreadsheets/spreadsheetId:batchUpdate
גוף הבקשה
{
"requests": [{
"updateSpreadsheetProperties": {
"properties": {"title": "TITLE"},
"fields": "title"
}
}]
}מחליפים את TITLE בשם החדש של הגיליון האלקטרוני.
עדכון תשובות בכמות גדולה
כשמעדכנים גיליון אלקטרוני, יכול להיות שסוגים מסוימים של בקשות יחזירו תשובות. התשובות מוחזרות במערך, וכל תשובה תופסת את אותו אינדקס כמו הבקשה התואמת. יש בקשות שלא מתקבלות עליהן תשובות, ובמקרים כאלה התשובה ריקה.
בדרך כלל, בקשות מסוג add (הוספה) מקבלות תגובות שמחזירות מידע כמו המזהה של האובייקט שנוסף. רשימת התגובות הנתמכות מופיעה במאמר Responses.
דוגמת קוד: חבילת עדכונים של גיליון אלקטרוני
בדוגמת הקוד הבאה אפשר לראות איך לבצע את הפעולות האלה:
- מעדכנים את שם הגיליון האלקטרוני באמצעות המשתנה
title. - מחפשים ומחליפים ערכים של תאים בגיליון האלקטרוני באמצעות המשתנים
findו-replacement.