Layanan Dokumen lanjutan memungkinkan Anda menggunakan Google Docs API di Apps Script. Seperti layanan Dokumen bawaan Apps Script, API ini memungkinkan skrip membaca, mengedit, dan memformat konten di Google Dokumen. Dalam sebagian besar kasus, layanan bawaan lebih mudah digunakan, tetapi layanan lanjutan ini menyediakan beberapa fitur tambahan.
Referensi
Untuk mengetahui informasi mendetail tentang layanan ini, lihat dokumentasi referensi untuk Docs API. Seperti semua layanan lanjutan di Apps Script, layanan Dokumen lanjutan menggunakan objek, metode, dan parameter yang sama dengan API publik. Untuk mengetahui informasi selengkapnya, lihat Cara menentukan tanda tangan metode.
Untuk melaporkan masalah dan menemukan dukungan lainnya, lihat panduan dukungan Docs API.
Kode contoh
Contoh kode di bawah menggunakan API versi 1.
Buat dokumen
Contoh ini membuat dokumen baru.
Menemukan dan mengganti teks
Contoh ini menemukan dan mengganti pasangan teks di semua tab dalam dokumen. Tindakan ini dapat berguna saat mengganti placeholder dalam salinan dokumen template dengan nilai dari database.
Menyisipkan dan mengatur gaya teks
Contoh ini menyisipkan teks baru di awal tab pertama dalam dokumen dan
menata gayanya dengan font dan ukuran tertentu. Perhatikan bahwa jika memungkinkan, Anda harus
menggabungkan beberapa operasi ke dalam satu panggilan batchUpdate
agar
efisien.
Baca paragraf pertama
Contoh ini mencatat teks paragraf pertama dari tab pertama dalam dokumen. Karena sifat paragraf yang terstruktur dalam Docs API, hal ini melibatkan penggabungan teks dari beberapa sub-elemen.
Praktik Terbaik
Update Batch
Saat menggunakan layanan Dokumen tingkat lanjut, gabungkan beberapa permintaan dalam array, bukan memanggil batchUpdate
dalam loop.
Jangan — Panggil batchUpdate
dalam loop.
var textToReplace = ['foo', 'bar'];
for (var i = 0; i < textToReplace.length; i++) {
Docs.Documents.batchUpdate({
requests: [{
replaceAllText: ...
}]
}, docId);
}
Do — Panggil batchUpdate
dengan array update.
var requests = [];
var textToReplace = ['foo', 'bar'];
for (var i = 0; i < textToReplace.length; i++) {
requests.push({ replaceAllText: ... });
}
Docs.Documents.batchUpdate({
requests: requests
}, docId);