Estoy tratando de importar los datos que tengo de mi documento de hojas de Google a MongoDB Atlas. He escrito el script de la aplicación, así como la función en el editor de funciones. Cuando ejecuto mi código en el editor de funciones en MongoDB, aparece este ERROR "inserción de mongodb: el argumento debe ser un objeto". Esto es lo que tengo hasta ahora:
Secuencia de comandos de la aplicación Google Sheet
function exportSheetsToMongo () { var spreadsheet = SpreadsheetApp.getActiveSpreadsheet(); var sheet = spreadsheet.getSheetByName("US"); var headersRows = 1; var range = sheet.getDataRange(); var numsRows = range.getNumRows; var data = range.getValues(); for (var i = headersRows; i < numsRows; i++) { var usZipIdCell = range.getCell( i +1, columns.zip+1) // Error possible here // var description = data[i][columns.description]; var formData = { // 'country': data[i][columns.description], 'zip': data[i][columns.zip], 'city': data[i][columns.city], 'state': data[i][columns.state], 'state_code': data[i][columns.state_code], 'county': data[i][columns.county], 'county_code': data[i][columns.county_code], 'lattitude': data[i][columns.lattitude], 'longitude': data[i][columns.longitude], 'accuracy': data[i][columns.accurcay] }; var options = { 'method':'post', 'payload': formData }; if(description) { var insertID = UrlFetchApp.fetch("https://us-east-1.aws.data.mongodb-api.com/app/mmc-backend-mzbhi/endpoint", options); usZipIdCell.setValue(insertID) } } }Editor de funciones MongoDB Realm
exports = async function(payload) { const mongodb = context.services.get("mongodb-atlas"); const eventsdb = mongodb.db("us_zip"); const eventscoll = eventsdb.collection("zip"); const result = await eventscoll.insertOne(payload.query); var id = result.insertedId.toString(); if(result) { return JSON.stringify(id,false,false); } return {text: 'Error saving'} };Datos parciales de la hoja de Google
Base de datos