Вызов внешней службы один раз для всех строк в надстройке пользовательских функций Excel
Рассмотрите этот пример по этой ссылке: https://docs.microsoft.com/en-us/office/dev/add-ins/excel/excel-tutorial-custom-functions
function stockPrice(ticker) {
var url = "https://api.iextrading.com/1.0/stock/" + ticker + "/price";
return fetch(url)
.then(function(response) {
return response.text();
})
.then(function(text) {
return parseFloat(text);
});
// Note: in case of an error, the returned rejected Promise
// will be bubbled up to Excel to indicate an error.
}
CustomFunctionMappings.STOCKPRICE = stockPrice;
Существует ли возможность пакетировать запрос веб-службы и вызывать его только один раз, задавая все параметры каждой строки в одном запросе и, следовательно, обновляя все строки соответствующими ответами, возвращенными из службы сразу, вместо вызова веб-службы для каждого ряда? Это поможет в случае большого количества строк.
1 ответ
Да, таким образом можно группировать запросы. Один из наших инженеров по пользовательским функциям, Михаил Златковский, подготовил пример для GitHub, который показывает, как это сделать. Кроме того, в предстоящем месяце команда разработчиков пользовательских функций работает над документом, специально предназначенным для пакетной обработки, поскольку мы знаем, что эта тема вызывает большой интерес. Дайте мне знать, если вам нужна дополнительная помощь - спасибо!