Dịch vụ Tài liệu nâng cao cho phép bạn sử dụng API Google Tài liệu trong Apps Script. Giống như dịch vụ Tài liệu tích hợp sẵn của Apps Script, API này cho phép tập lệnh đọc, chỉnh sửa và định dạng nội dung trong Google Tài liệu. Trong hầu hết các trường hợp, dịch vụ tích hợp sẵn sẽ dễ dùng hơn, nhưng dịch vụ nâng cao này cung cấp thêm một vài tính năng.
Tài liệu tham khảo
Để biết thông tin chi tiết về dịch vụ này, hãy xem tài liệu tham khảo dành cho API Tài liệu. Giống như tất cả các dịch vụ nâng cao trong Apps Script, dịch vụ Tài liệu nâng cao sử dụng cùng đối tượng, phương thức và tham số như API công khai. Để biết thêm thông tin, hãy xem phần Cách xác định chữ ký phương thức.
Để báo cáo sự cố và tìm dịch vụ hỗ trợ khác, hãy xem Hướng dẫn hỗ trợ API Tài liệu.
Mã mẫu
Mã mẫu bên dưới sử dụng phiên bản 1 của API.
Tạo tài liệu
Mẫu này sẽ tạo một tài liệu mới.
Tìm và thay thế văn bản
Mẫu này sẽ tìm và thay thế các cặp văn bản trong một tài liệu. Việc này có thể hữu ích khi thay thế phần giữ chỗ trong bản sao của tài liệu mẫu bằng các giá trị từ một cơ sở dữ liệu.
Chèn và tạo kiểu cho văn bản
Mẫu này sẽ chèn văn bản mới vào đầu tài liệu và các kiểu nếu có phông chữ và kích thước cụ thể. Xin lưu ý rằng khi có thể, bạn nên kết hợp nhiều thao tác thành một lệnh gọi batchUpdate
để tăng tính hiệu quả.
Đọc đoạn đầu tiên
Mẫu này sẽ ghi lại văn bản của đoạn đầu tiên trong tài liệu. Do tính chất có cấu trúc của các đoạn văn trong API Tài liệu, nên cần phải kết hợp văn bản của nhiều phần tử phụ.
Những phương pháp hay nhất
Cập nhật theo lô
Khi sử dụng dịch vụ Tài liệu nâng cao, hãy kết hợp nhiều yêu cầu trong một mảng thay vì gọi batchUpdate
trong một vòng lặp.
Không nên — Gọi batchUpdate
trong một vòng lặp.
var textToReplace = ['foo', 'bar'];
for (var i = 0; i < textToReplace.length; i++) {
Docs.Documents.batchUpdate({
requests: [{
replaceAllText: ...
}]
}, docId);
}
Do (Nên làm) – Gọi batchUpdate
với một loạt các nội dung cập nhật.
var requests = [];
var textToReplace = ['foo', 'bar'];
for (var i = 0; i < textToReplace.length; i++) {
requests.push({ replaceAllText: ... });
}
Docs.Documents.batchUpdate({
requests: requests
}, docId);