Поделиться через


custom-functions-runtime package

Классы

CustomFunctions.Error

Используйте этот класс для обработки ошибок и записи пользовательских сообщений об ошибках.

Интерфейсы

CustomFunctions.CancelableInvocation

Содержит сведения о вызове настраиваемой функции с возможностью отмены. Отменяемая пользовательская функция может предоставить обработчик для события onCanceled.

Чтобы указать, что функция может быть отменена, в JSON-файле метаданных параметры функции должны указать: { "cancelable": true }

Если JSON-файл метаданных создается из комментариев JSDoc, добавьте тег @cancelable.

CustomFunctions.Invocation

Предоставляет сведения о вызове пользовательской функции.

CustomFunctions.StreamingInvocation

Содержит сведения о вызове пользовательской функции потоковой передачи. Пользовательская функция потоковой передачи может предоставлять результаты, которые могут изменяться с течением времени.

Вызовите setResult() один или несколько раз, чтобы предоставить результат, а не возвращать результат из функции.

Перечисления

CustomFunctions.ErrorCode

Коды ошибок для пользовательских функций. Коды ошибок появятся в ячейке, в которую была вызвана функция.

В дополнение к этим кодам ошибок отображаются пользовательские сообщения об ошибках. Пользовательские сообщения отображаются в меню индикатора ошибок, доступ к которому осуществляется путем наведении указателя мыши на флаг ошибки в каждой ячейке с ошибкой.

Функции

CustomFunctions.associate(id, functionObject)

Связывает функцию JavaScript с именем, заданным свойством id в JSON-файле метаданных.

CustomFunctions.associate(mappings)

Связывает функции JavaScript с именами, заданными свойствами id в JSON-файле метаданных.

Сведения о функции

CustomFunctions.associate(id, functionObject)

Связывает функцию JavaScript с именем, заданным свойством id в JSON-файле метаданных.

export function associate(id: string, functionObject: Function): void;

Параметры

id

string

functionObject

Function

Возвращаемое значение

void

Примеры

/**
* Adds two numbers together.
* @customfunction
* @param {number} first First number.
* @param {number} second Second number.
* @returns {number} The sum of the two numbers.
*/
// Define your custom function.
function add(first, second) {
  return first + second;
}

// Associate the "add" function with its ID from the JSON metadata. In this sample, the JSON metadata ID is "ADD".
CustomFunctions.associate("ADD", add);

CustomFunctions.associate(mappings)

Связывает функции JavaScript с именами, заданными свойствами id в JSON-файле метаданных.

export function associate(mappings: { [key: string]: Function }): void;

Параметры

mappings

{ [key: string]: Function }

Возвращаемое значение

void

Примеры

/**
* Calculates the area of a rectangle.
* @customfunction
* @param {number} width The width of the rectangle.
* @param {number} height The height of the rectangle.
* @returns {number} The area of the rectangle.
*/
function calculateArea(width, height) {
  return width * height;
}

/**
* Calculates the perimeter of a rectangle.
* @customfunction
* @param {number} width The width of the rectangle.
* @param {number} height The height of the rectangle.
* @returns {number} The perimeter of the rectangle.
*/
function calculatePerimeter(width, height) {
  return 2 * (width + height);
}

// Associate multiple functions at once using an object that maps JSON metadata IDs to function names.
// In this sample, the "calculateArea" and "calculatePerimeter" functions have the JSON metadata IDs "CALCULATEAREA" and "CALCULATEPERIMETER".
CustomFunctions.associate({
  "CALCULATEAREA": calculateArea,
  "CALCULATEPERIMETER": calculatePerimeter
});