Untitled
unknown
plain_text
2 years ago
1.9 kB
6
Indexable
// Hàm doGet được gọi khi có yêu cầu HTTP GET function doGet() { // Lấy bảng tính hiện đang hoạt động var ss = SpreadsheetApp.getActiveSpreadsheet(); // Lấy tất cả các sheet trong bảng tính var sheets = ss.getSheets(); // Khởi tạo một đối tượng để lưu trữ dữ liệu từ tất cả các sheet var output = {}; // Duyệt qua tất cả các sheet for (var i = 0; i < sheets.length; i++) { // Lấy sheet hiện tại var sheet = sheets[i]; // Lấy dữ liệu từ sheet hiện tại và thêm vào đối tượng output[sheet.getName()] = getSheetDataId(sheet); // Sử dụng tên của sheet làm key } // Trả về dữ liệu dưới dạng JSON return ContentService.createTextOutput( JSON.stringify(output) ).setMimeType(ContentService.MimeType.JSON); } // Hàm getSheetDataId lấy dữ liệu từ một sheet function getSheetDataId(dataSh) { // Lấy phạm vi dữ liệu của sheet var dataRange = dataSh.getDataRange(); // Lấy tất cả giá trị trong phạm vi dữ liệu var dataValues = dataRange.getValues(); // Lấy hàng đầu tiên làm key var keys = dataValues[0]; // Khởi tạo mảng để lưu trữ các đối tượng var objects = []; // Duyệt qua từng hàng dữ liệu, bắt đầu từ hàng thứ hai for (var i = 1; i < dataValues.length; i++) { // Khởi tạo đối tượng để lưu trữ dữ liệu của hàng hiện tại var obj = {}; // Duyệt qua từng giá trị trong hàng for (var j = 0; j < dataValues[i].length; j++) { // Thêm giá trị vào đối tượng với key tương ứng obj[keys[j]] = dataValues[i][j]; } // Thêm đối tượng vào mảng objects.push(obj); } // Trả về mảng các đối tượng return objects; }
Editor is loading...
Leave a Comment