گذشته از دادههای مقداری موجود در سلولهای آن، یک صفحه گسترده شامل انواع دیگری از دادهها نیز میشود، مانند:
- ابعاد
- قالبها و حاشیههای سلول
- محدودههای نامگذاری شده
- محدودههای حفاظتشده
- قالببندی شرطی
اینها برخی از انواع دادههایی هستند که ظاهر و عملکرد یک صفحه گسترده را کنترل میکنند. متد spreadsheets.batchUpdate به شما امکان میدهد هر یک از این جزئیات صفحه گسترده را بهروزرسانی کنید. تغییرات در یک دسته گروهبندی میشوند، به طوری که اگر یک درخواست ناموفق باشد، هیچ یک از تغییرات دیگر (که به طور بالقوه وابسته هستند) نوشته نمیشوند.
این صفحه اصول اولیه استفاده از متد spreadsheets.batchUpdate را شرح میدهد. اگر نیاز به خواندن و نوشتن دادههای مقدار سلول دارید، میتوانید از منبع spreadsheets.values که در بخش «خواندن و نوشتن مقادیر سلول» توضیح داده شده است، نیز استفاده کنید.
دسته بندی عملیات
عملیات خاصی که توسط spreadsheets.batchUpdate پشتیبانی میشوند را میتوان در دستههای کلی زیر گروهبندی کرد:
| دسته بندی | توضیحات |
|---|---|
| اضافه کردن (و کپی کردن ) | اشیاء جدید اضافه کنید (گاهی اوقات بر اساس اشیاء قدیمی، مانند درخواستهای تکراری). |
| بهروزرسانی (و تنظیم ) | بهروزرسانی ویژگیهای خاصی از یک شیء، معمولاً بدون تغییر ویژگیهای قدیمی (در حالی که درخواست Set دادههای قبلی را بازنویسی میکند). |
| حذف | اشیاء را بردارید. |
این دسته بندی ها در بخش بعدی برای توصیف رفتار عملیات خاص استفاده می شوند.
عملیات بهروزرسانی دستهای
متد spreadsheets.batchUpdate با گرفتن یک یا چند شیء Request کار میکند که هر کدام نوع درخواستی را برای اجرا مشخص میکنند. انواع مختلفی از درخواستها وجود دارد. در اینجا به تفصیل انواع درخواستها که در دستههای مختلف گروهبندی شدهاند، آمده است.
همچنین برخی درخواستهای اضافی وجود دارد که اقدامات کاربر را برای دستکاری دادهها تقلید میکنند:
- درخواست تکمیل خودکار
- درخواست برش و چسباندن
- درخواست کپی پیست
- درخواست جایگزینی را پیدا کنید
- درخواست چسباندن داده
- درخواست متن به ستونها
- درخواست مرتبسازی
محدودیتها
برای کسب اطلاعات بیشتر در مورد محدودیتهای سلول و ردیف در Google Sheets، به فایلهایی که میتوانید در Google Drive ذخیره کنید مراجعه کنید.
ماسکهای صحرایی
بسیاری از درخواستهای «بهروزرسانی» نیاز به ماسکهای فیلد دارند. این ماسکها فهرستی از فیلدها هستند که با کاما از هم جدا شدهاند تا فقط فیلدهای خاصی را در یک شیء بهروزرسانی کنند و سایر فیلدها را بدون تغییر باقی بگذارند. ماسک فیلد * مانند یک کاراکتر جایگزین رفتار میکند و خلاصهای از مشخص کردن هر فیلد در یک پیام است (به این معنی که اگر مقداری برای یک فیلد در درخواست مشخص نکنید، ممکن است به حالت پیشفرض خود بازگردد). برای اطلاعات بیشتر در مورد ماسکهای فیلد، به بخش «استفاده از ماسکهای فیلد» مراجعه کنید.
نمونه زیر از UpdateSpreadsheetPropertiesRequest برای بهروزرسانی فقط عنوان یک صفحه گسترده استفاده میکند:
درخواست:
POST .../v4/spreadsheets/spreadsheetId:batchUpdate
متن درخواست:
{
"requests": [{
"updateSpreadsheetProperties": {
"properties": {"title": "TITLE"},
"fields": "title"
}
}]
}
TITLE با عنوان جدید صفحه گسترده جایگزین کنید.
پاسخها
هنگام بهروزرسانی یک صفحه گسترده، برخی از انواع درخواستها ممکن است پاسخهایی را برگردانند. این پاسخها در یک آرایه برگردانده میشوند و هر پاسخ، اندیس مشابهی با درخواست مربوطه دارد. برخی از درخواستها پاسخی ندارند و برای آنها پاسخ خالی است.
معمولاً درخواستهای «افزودن» پاسخهایی دارند که اطلاعاتی مانند شناسه شیء اضافه شده را برمیگردانند. برای فهرست پاسخهای پشتیبانیشده، به بخش پاسخها مراجعه کنید.
مثال
نمونه کد زیر این اقدامات را انجام میدهد:
- عنوان صفحه گسترده را با استفاده از متغیر
titleبهروزرسانی میکند. - با استفاده از متغیرهای
findوreplacementمقادیر سلولها را در صفحه گسترده پیدا و جایگزین میکند.