Excel.LinkedEntityDataDomainCollection class
Представляет коллекцию LinkedEntityDataDomain объектов. Коллекция может содержать домены данных связанных сущностей, такие как акции, география или валюты, определенные поставщиками данных служб, такими как Bing или Power BI, или домены данных связанных сущностей, определенные надстройками Office.
- Extends
Комментарии
Этот класс не поддерживается в Excel в Интернете.
Используется
Примеры
// Registers linked entity data domains when the add-in loads.
await Excel.run(async (context) => {
const productsDomainOptions: Excel.LinkedEntityDataDomainCreateOptions = {
dataProvider: "Contoso",
id: "products",
name: "Products",
// ID of the custom function called by Excel to resolve or refresh linked entity cell values.
loadFunctionId: "CONTOSOLOADSERVICE",
// periodicRefreshInterval is only required when supportedRefreshModes contains "Periodic".
periodicRefreshInterval: 300,
// Manual refresh mode is always supported, even if unspecified.
supportedRefreshModes: [
Excel.LinkedEntityDataDomainRefreshMode.periodic,
Excel.LinkedEntityDataDomainRefreshMode.onLoad
]
};
// Add the data domain to the collection to register it.
const domains: Excel.LinkedEntityDataDomainCollection = context.workbook.linkedEntityDataDomains;
domains.add(productsDomainOptions);
await context.sync();
});
Свойства
| context | Контекст запроса, связанный с объектом. Это соединяет процесс надстройки с процессом основного приложения Office. |
| items | Получает загруженные дочерние элементы в этой коллекции. |
Методы
| add(options) | Добавляет в коллекцию связанный объект предмета данных сущности, определенный надстройкой Office. После добавления домена данных связанного объекта его можно использовать для создания |
| get |
Получает количество связанных доменов данных в коллекции. |
| get |
Получает домен данных связанного объекта с помощью . |
| get |
Получает домен данных связанного объекта по его индексу в коллекции. |
| get |
Получает домен данных связанного объекта с помощью . |
| get |
Получает домен данных связанного объекта с помощью . |
| get |
Получает домен данных связанного объекта с помощью . |
| load(options) | Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
| load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
| load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
| load |
Отправляет запрос на загрузку |
| refresh |
Обновляет все |
| toJSON() | Переопределяет метод JavaScript |
События
| on |
Возникает при выполнении запроса на загрузку a |
| on |
Возникает при добавлении в книгу нового связанного домена данных сущности. |
| on |
Возникает при выполнении запроса на обновление |
| on |
Возникает при изменении домена |
Сведения о свойстве
context
Контекст запроса, связанный с объектом. Это соединяет процесс надстройки с процессом основного приложения Office.
context: RequestContext;
Значение свойства
items
Получает загруженные дочерние элементы в этой коллекции.
readonly items: Excel.LinkedEntityDataDomain[];
Значение свойства
Сведения о методе
add(options)
Добавляет в коллекцию связанный объект предмета данных сущности, определенный надстройкой Office. После добавления домена данных связанного объекта его можно использовать для создания LinkedEntityCellValue объектов.
add(options: Excel.LinkedEntityDataDomainCreateOptions): void;
Параметры
Параметры, используемые для создания добавляемого домена данных связанного объекта.
Возвращаемое значение
void
Комментарии
Этот метод не поддерживается в Excel в Интернете.
Примеры
// Registers linked entity data domains when the add-in loads.
await Excel.run(async (context) => {
const productsDomainOptions: Excel.LinkedEntityDataDomainCreateOptions = {
dataProvider: "Contoso",
id: "products",
name: "Products",
// ID of the custom function called by Excel to resolve or refresh linked entity cell values.
loadFunctionId: "CONTOSOLOADSERVICE",
// periodicRefreshInterval is only required when supportedRefreshModes contains "Periodic".
periodicRefreshInterval: 300,
// Manual refresh mode is always supported, even if unspecified.
supportedRefreshModes: [
Excel.LinkedEntityDataDomainRefreshMode.periodic,
Excel.LinkedEntityDataDomainRefreshMode.onLoad
]
};
// Add the data domain to the collection to register it.
context.workbook.linkedEntityDataDomains.add(productsDomainOptions);
await context.sync();
});
getCount()
Получает количество связанных доменов данных в коллекции.
getCount(): OfficeExtension.ClientResult<number>;
Возвращаемое значение
OfficeExtension.ClientResult<number>
Комментарии
Этот метод не поддерживается в Excel в Интернете.
getItem(id)
Получает домен данных связанного объекта с помощью .id
getItem(id: string): Excel.LinkedEntityDataDomain;
Параметры
- id
-
string
объекта id , LinkedEntityDataDomain который необходимо извлечь.
Возвращаемое значение
Домен данных связанного объекта с заданным idдоменом . При наличии нескольких связанных доменов данных сущностей с одинаковыми idдоменами будет возвращен домен, определенный данной надстройкой Office.
Комментарии
Этот метод не поддерживается в Excel в Интернете.
Примеры
// Refreshes all linked entity cell values for a specific data domain.
await Excel.run(async (context) => {
const dataDomains: Excel.LinkedEntityDataDomainCollection = context.workbook.linkedEntityDataDomains;
// Get a specific data domain by ID and refresh it.
const productsDomain: Excel.LinkedEntityDataDomain = dataDomains.getItem("products");
productsDomain.refresh();
await context.sync();
});
getItemAt(index)
Получает домен данных связанного объекта по его индексу в коллекции.
getItemAt(index: number): Excel.LinkedEntityDataDomain;
Параметры
- index
-
number
Индекс связанного домена данных объекта в коллекции.
Возвращаемое значение
Домен данных связанного объекта в заданном индексе.
Комментарии
Этот метод не поддерживается в Excel в Интернете.
getItemByName(name)
Получает домен данных связанного объекта с помощью .name
getItemByName(name: string): Excel.LinkedEntityDataDomain;
Параметры
- name
-
string
объекта name , LinkedEntityDataDomain который необходимо извлечь.
Возвращаемое значение
Домен данных связанного объекта с заданным nameдоменом . При наличии нескольких связанных доменов данных сущностей с одинаковыми nameдоменами будет возвращен домен, определенный данной надстройкой Office.
Комментарии
Этот метод не поддерживается в Excel в Интернете.
getItemByNameOrNullObject(name)
Получает домен данных связанного объекта с помощью .name Если связанного домена данных сущности не существует, этот метод возвращает объект со свойством isNullObject , установленным в trueзначение . Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.
getItemByNameOrNullObject(name: string): Excel.LinkedEntityDataDomain;
Параметры
- name
-
string
объекта name , LinkedEntityDataDomain который необходимо извлечь.
Возвращаемое значение
Домен данных связанного объекта с заданным nameдоменом . При наличии нескольких связанных доменов данных сущностей с одинаковыми nameдоменами будет возвращен домен, определенный данной надстройкой Office.
Комментарии
Этот метод не поддерживается в Excel в Интернете.
getItemOrNullObject(id)
Получает домен данных связанного объекта с помощью .id Если связанного домена данных сущности не существует, этот метод возвращает объект со свойством isNullObject , установленным в trueзначение . Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.
getItemOrNullObject(id: string): Excel.LinkedEntityDataDomain;
Параметры
- id
-
string
объекта id , LinkedEntityDataDomain который необходимо извлечь.
Возвращаемое значение
Домен данных связанного объекта с заданным idдоменом . При наличии нескольких связанных доменов данных сущностей с одинаковыми idдоменами будет возвращен домен, определенный данной надстройкой Office.
Комментарии
Этот метод не поддерживается в Excel в Интернете.
load(options)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().
load(options?: Excel.Interfaces.LinkedEntityDataDomainCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions): Excel.LinkedEntityDataDomainCollection;
Параметры
- options
-
Excel.Interfaces.LinkedEntityDataDomainCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions
Предоставляет параметры для загружаемых свойств объекта.
Возвращаемое значение
load(propertyNames)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().
load(propertyNames?: string | string[]): Excel.LinkedEntityDataDomainCollection;
Параметры
- propertyNames
-
string | string[]
Строка с разделителями-запятыми или массив строк, которые определяют свойства для загрузки.
Возвращаемое значение
load(propertyNamesAndPaths)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().
load(propertyNamesAndPaths?: OfficeExtension.LoadOption): Excel.LinkedEntityDataDomainCollection;
Параметры
- propertyNamesAndPaths
- OfficeExtension.LoadOption
propertyNamesAndPaths.select — это строка с разделителями-запятыми, указывающая загружаемые свойства, и строка propertyNamesAndPaths.expand через запятую, указывающая свойства навигации для загрузки.
Возвращаемое значение
loadLinkedEntityCellValue(id)
Отправляет запрос на загрузку LinkedEntityCellValue объекта с указанным LinkedEntityIdзначением . Если он найден, LinkedEntityCellValue объект будет возвращен через LinkedEntityCellValueLoaded событие.
loadLinkedEntityCellValue(id: LinkedEntityId): void;
Параметры
Конкретная LinkedEntityId
Возвращаемое значение
void
Комментарии
Примеры
// Loads the linked entity cell value for the specified domain and entity IDs.
async function loadLinkedEntity(domainId: string, entityId: string ) {
await Excel.run(async (context) => {
// Specify the linked entity ID to load.
const linkedEntityId: Excel.LinkedEntityId = {
entityId: entityId,
domainId: domainId,
serviceId: 268436224, // Service ID used by Excel to identify linked entity cell values associated with an add-in.
culture: "en-US",
};
// Load the linked entity cell value.
context.workbook.linkedEntityDataDomains.loadLinkedEntityCellValue(linkedEntityId);
await context.sync();
// The onLinkedEntityCellValueLoaded event occurs once the linked entity cell value is loaded.
});
}
refreshAll()
Обновляет все LinkedEntityCellValue объекты всех связанных доменов данных в этой коллекции. Запрос на обновление может завершиться ошибкой, если поставщики данных заняты или временно недоступны.
refreshAll(): void;
Возвращаемое значение
void
Комментарии
Этот метод не поддерживается в Excel в Интернете.
Примеры
// Refreshes all linked entity cell values across all data domains.
await Excel.run(async (context) => {
const dataDomains: Excel.LinkedEntityDataDomainCollection = context.workbook.linkedEntityDataDomains;
// Refresh all linked entity cell values in all data domains.
dataDomains.refreshAll();
await context.sync();
});
toJSON()
Переопределяет метод JavaScript toJSON() , чтобы обеспечить более полезные выходные данные при передаче объекта API в JSON.stringify(). (JSON.stringify, в свою очередь, вызывает toJSON метод переданного ему объекта.) В то время как исходный Excel.LinkedEntityDataDomainCollection объект является объектом API, toJSON метод возвращает простой объект JavaScript (типизированный как Excel.Interfaces.LinkedEntityDataDomainCollectionData), который содержит массив «items» с неглубокими копиями любых загруженных свойств из элементов коллекции.
toJSON(): Excel.Interfaces.LinkedEntityDataDomainCollectionData;
Возвращаемое значение
Сведения о событии
onLinkedEntityCellValueLoaded
Возникает при выполнении запроса на загрузку a LinkedEntityCellValue .
readonly onLinkedEntityCellValueLoaded: OfficeExtension.EventHandlers<Excel.LinkedEntityCellValueLoadedEventArgs>;
Тип события
Комментарии
Это событие не поддерживается в Excel в Интернете.
Примеры
// Registers an event handler for the onLinkedEntityCellValueLoaded event.
async function registerEvent() {
await Excel.run(async (context) => {
const linkedEntityDataDomains: Excel.LinkedEntityDataDomainCollection = context.workbook.linkedEntityDataDomains;
linkedEntityDataDomains.onLinkedEntityCellValueLoaded.add(handleLoadedLinkedEntity);
await context.sync();
console.log("Event handler registered successfully. You''ll be notified when linked entities are loaded.");
});
}
// Handles the onLinkedEntityCellValueLoaded event that occurs when a linked entity cell value is loaded.
async function handleLoadedLinkedEntity(event: Excel.LinkedEntityCellValueLoadedEventArgs) {
await Excel.run(async (context) => {
console.log(`The ${event.type} event occurred from a ${event.source} source.`);
console.log(`The linked entity cell value with ID ${event.id} is loaded.`);
const loadedLinkedEntityCellValue: Excel.LinkedEntityCellValue = event.linkedEntityCellValue;
console.log(`Loaded linked entity cell value: ${loadedLinkedEntityCellValue}`);
// Queue operations on the loaded entity value here.
await context.sync();
});
}
onLinkedEntityDataDomainAdded
Возникает при добавлении в книгу нового связанного домена данных сущности.
readonly onLinkedEntityDataDomainAdded: OfficeExtension.EventHandlers<Excel.LinkedEntityDataDomainAddedEventArgs>;
Тип события
Комментарии
Это событие не поддерживается в Excel в Интернете.
Примеры
// Registers an event handler for the onLinkedEntityDataDomainAdded event.
await Excel.run(async (context) => {
const dataDomains: Excel.LinkedEntityDataDomainCollection = context.workbook.linkedEntityDataDomains;
dataDomains.onLinkedEntityDataDomainAdded.add(onDataDomainAdded);
await context.sync();
});
async function onDataDomainAdded(eventArgs: Excel.LinkedEntityDataDomainAddedEventArgs): Promise<void> {
console.log(`Linked entity data domain added: ${eventArgs.id}`);
console.log(`Event type: ${eventArgs.type}`);
console.log(`Event source: ${eventArgs.source}`);
console.log(`Service ID: ${eventArgs.serviceId}`);
}
onRefreshCompleted
Возникает при выполнении запроса на обновление LinkedEntityCellValue объектов в домене данных связанного объекта.
readonly onRefreshCompleted: OfficeExtension.EventHandlers<Excel.LinkedEntityDataDomainRefreshCompletedEventArgs>;
Тип события
Комментарии
Это событие не поддерживается в Excel в Интернете.
Примеры
// Registers an event handler for the onRefreshCompleted event.
await Excel.run(async (context) => {
const dataDomains: Excel.LinkedEntityDataDomainCollection = context.workbook.linkedEntityDataDomains;
dataDomains.onRefreshCompleted.add(onLinkedEntityDomainRefreshed);
await context.sync();
});
async function onLinkedEntityDomainRefreshed(eventArgs: Excel.LinkedEntityDataDomainRefreshCompletedEventArgs): Promise<void> {
console.log(`Linked entity domain refreshed: ${eventArgs.id}`);
console.log(`Event type: ${eventArgs.type}`);
console.log(`Event source: ${eventArgs.source}`);
console.log(`Service ID: ${eventArgs.serviceId}`);
console.log(`Refresh status: ${eventArgs.refreshed}`);
console.log(`Refresh errors: ${eventArgs.errors}`);
}
onRefreshModeChanged
Возникает при изменении домена refreshMode данных связанного объекта.
readonly onRefreshModeChanged: OfficeExtension.EventHandlers<Excel.LinkedEntityDataDomainRefreshModeChangedEventArgs>;
Тип события
Комментарии
Это событие не поддерживается в Excel в Интернете.
Примеры
// Registers an event handler for the onRefreshModeChanged event.
await Excel.run(async (context) => {
const dataDomains: Excel.LinkedEntityDataDomainCollection = context.workbook.linkedEntityDataDomains;
dataDomains.onRefreshModeChanged.add(onRefreshModeChanged);
await context.sync();
});
async function onRefreshModeChanged(eventArgs: Excel.LinkedEntityDataDomainRefreshModeChangedEventArgs): Promise<void> {
console.log(`Linked entity domain refresh mode changed: ${eventArgs.id}`);
console.log(`Event type: ${eventArgs.type}`);
console.log(`Event source: ${eventArgs.source}`);
console.log(`Service ID: ${eventArgs.serviceId}`);
console.log(`New refresh mode: ${eventArgs.refreshMode}`);
}