2016-02-26 2 views
1

Из-за google spreadshhet я пытаюсь собрать записи из Zoho.Google Spreadsheet - Получить записи из Zoho

Я тестировал этот код:

var urlgetRecords = 'https://crm.zoho.com/crm/private/json/Leads/getRecords?newFormat=1&authtoken=00000&scope=crmapi&selectColumns=Leads(First Name,Last Name,Email)&fromIndex=1&toIndex=2&sortColumnString=First Name&sortOrderString=desc'; 
 

 
var jsonResponse = UrlFetchApp.fetch(urlgetgetRecords);

Это то, что получаем:

{ "отклика": { "результат": { "потенциальных": { "строка": [{ "нет": "1", "FL": [{ "содержание": "1412559000000441145", "вал": "LEADID"}, { "содержание": "Виктор", "вал" : «Сначала Название»}, {«content»: «Aguilera Moreno», «val»: «Last Nam е "}, {" содержание ":" [email protected] " "вал": "Электронная почта"}]}, { "нет": "2", "FL": [{ "содержание":" 1412559000000308001 "," val ":" LEADID "}, {" content ":" Victor "," val ":" First Имя "}, {" content ":" Porta "," val ":" Last Имя " }, {«content»: «[email protected]», «val»: «Email»}]}]}}, «uri»: «/ crm/private/json/Leads/getRecords»}}

Пожалуйста, как написать каждую строку в этом ответе в электронной таблице?

Большое спасибо заранее :)

ответ

0

Запись Zoho данных в Google таблицу. Чтобы использовать приведенный ниже код, отредактируйте имя вкладки листа в методе getSheetByName('Sheet2') на вкладке листа, куда вы хотите добавить данные.

Я тестировал этот код и он работает:

function writeZohoToSheet(zohoDataObject) { 
    var zohoDataObject = {"response": 
         {"result": 
         {"Leads": 
          {"row": 
          [{"no":"1","FL":[ 
           {"content":"12345678IDNumber","val":"LEADID"}, 
           {"content":"Víctor","val":"First Name"}, 
           {"content":"Aguilera Moreno","val":"Last Name"}, 
           {"content":"[email protected]","val":"Email"}] 
          }, 
          {"no":"2","FL":[ 
           {"content":"987654321IDNumber","val":"LEADID"}, 
           {"content":"Victor","val":"First Name"}, 
           {"content":"Porta","val":"Last Name"}, 
           {"content":"[email protected]","val":"Email"}] 
          } 
          ] 
          } 
         },"uri":"/crm/private/json/Leads/getRecords"}}; 

    var rows = zohoDataObject.response.result.Leads.row; 
    Logger.log('rows: ' + rows); 
    Logger.log('rows.length: ' + rows.length); 

    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sh = ss.getSheetByName('Sheet2'); 
    var array = [], thisRow, thisContent, innerObj; 

    for (var r in rows) { 
    array = []; //reset 
    thisRow = rows[r]; 
    thisContent = thisRow.FL; 

    array.push(r); 

    for (var i=0;i<thisContent.length;i+=1) { 
     innerObj = thisContent[i]; 
     array.push(innerObj.val); 
     array.push(innerObj.content); 
    }; 

    sh.appendRow(array); 
    }; 
}; 

Вы бы вызвать функцию с:

writeZohoToSheet(jsonResponse); 

Снимите «жестко» литерал объекта или закомментировать в порядке для передачи в восстановленном объекте.

+0

Большое спасибо. Ваш код работает отлично :) –

+0

Спасибо, что сообщили мне, и голос. –

1

Код Sandy Good является совершенным. Мне пришлось добавить еще две строки.

Наконец код, который работает в:

var urlgetRecords = 'https://crm.zoho.com/crm/private/json/Leads/getRecords?newFormat=1&authtoken=' + authToken + '&scope=crmapi&selectColumns=Leads(First Name,Last Name,Email)&fromIndex=1&toIndex=2&sortColumnString=First Name&sortOrderString=desc'; 
 
var jsonResponse = UrlFetchApp.fetch(urlgetRecords); 
 
var jsonText = jsonResponse.getContentText(); 
 
var objetoFinal = JSON.parse(jsonText); 
 
writeZohoToSheet(objetoFinal);

Большое спасибо за вашу помощь @SandyGood

 Смежные вопросы

  • Нет связанных вопросов^_^