Excel.CustomXmlPartScopedCollection class
Colección con ámbito de elementos XML personalizados. Una colección con ámbito es el resultado de alguna operación (por ejemplo, el filtrado por espacio de nombres). Una colección con ámbito no se puede limitar aún más.
- Extends
Comentarios
[ Conjunto de API: ExcelApi 1.5 ]
Propiedades
context | Contexto de solicitud asociado al objeto . Esto conecta el proceso del complemento al proceso de la aplicación host de Office. |
items | Obtiene los elementos secundarios cargados en esta colección. |
Métodos
get |
Obtiene el número de elementos CustomXML de esta colección. |
get |
Obtiene un elemento XML personalizado a partir de su identificador. |
get |
Obtiene un elemento XML personalizado a partir de su identificador.
|
get |
Si la colección contiene exactamente un elemento, este método lo devuelve. De lo contrario, este método genera un error. |
get |
Si la colección contiene exactamente un elemento, este método lo devuelve. De lo contrario, este método devuelve |
load(options) | Pone en cola un comando para cargar las propiedades especificadas del objeto. Debe llamar a |
load(property |
Pone en cola un comando para cargar las propiedades especificadas del objeto. Debe llamar a |
load(property |
Pone en cola un comando para cargar las propiedades especificadas del objeto. Debe llamar a |
toJSON() | Invalida el método JavaScript |
Detalles de las propiedades
context
Contexto de solicitud asociado al objeto . Esto conecta el proceso del complemento al proceso de la aplicación host de Office.
context: RequestContext;
Valor de propiedad
items
Obtiene los elementos secundarios cargados en esta colección.
readonly items: Excel.CustomXmlPart[];
Valor de propiedad
Detalles del método
getCount()
Obtiene el número de elementos CustomXML de esta colección.
getCount(): OfficeExtension.ClientResult<number>;
Devoluciones
OfficeExtension.ClientResult<number>
Comentarios
[ Conjunto de API: ExcelApi 1.5 ]
Ejemplos
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/18-custom-xml-parts/test-xml-for-unique-namespace.yaml
await Excel.run(async (context) => {
$("#display-xml").text("");
const contosoNamespace = "http://schemas.contoso.com/review/1.0";
const customXmlParts = context.workbook.customXmlParts;
const filteredXmlParts = customXmlParts.getByNamespace(contosoNamespace);
const numberOfPartsInNamespace = filteredXmlParts.getCount();
await context.sync();
if (numberOfPartsInNamespace.value == 1) {
const onlyXmlPartInNamespace = filteredXmlParts.getOnlyItem();
const xmlBlob = onlyXmlPartInNamespace.getXml();
await context.sync();
// Make it a bit more readable.
const readableXml = xmlBlob.value.replace(/></g, ">\n<");
$("#display-xml").text(`The only XML part in the namespace ${contosoNamespace} is:
${readableXml}`);
} else {
console.log(`There are ${numberOfPartsInNamespace.value} XML parts with namespace ${contosoNamespace}. There should be exactly 1.`);
}
await context.sync();
});
getItem(id)
Obtiene un elemento XML personalizado a partir de su identificador.
getItem(id: string): Excel.CustomXmlPart;
Parámetros
- id
-
string
Identificador del objeto que se va a recuperar.
Devoluciones
Comentarios
getItemOrNullObject(id)
Obtiene un elemento XML personalizado a partir de su identificador.
CustomXmlPart
Si no existe, este método devuelve un objeto con su isNullObject
propiedad establecida en true
. Para obtener más información, vea *OrNullObject methods and properties( Métodos y propiedades de *OrNullObject).
getItemOrNullObject(id: string): Excel.CustomXmlPart;
Parámetros
- id
-
string
Identificador del objeto que se va a recuperar.
Devoluciones
Comentarios
[ Conjunto de API: ExcelApi 1.5 ]
Ejemplos
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/18-custom-xml-parts/create-set-get-and-delete-custom-xml-parts.yaml
await Excel.run(async (context) => {
const settings = context.workbook.settings;
const xmlPartIDSetting = settings.getItemOrNullObject("ContosoReviewXmlPartId").load("value");
await context.sync();
if (xmlPartIDSetting.value) {
let customXmlPart = context.workbook.customXmlParts.getItem(xmlPartIDSetting.value);
const xmlBlob = customXmlPart.getXml();
customXmlPart.delete();
customXmlPart = context.workbook.customXmlParts.getItemOrNullObject(xmlPartIDSetting.value);
await context.sync();
if (customXmlPart.isNullObject) {
$("#display-xml").text(`The XML part with the id ${xmlPartIDSetting.value} has been deleted.`);
// Delete the unneeded setting too.
xmlPartIDSetting.delete();
} else {
const readableXml = addLineBreaksToXML(xmlBlob.value);
const strangeMessage = `This is strange. The XML part with the id ${xmlPartIDSetting.value} has not been deleted:\n${readableXml}`
$("#display-xml").text(strangeMessage);
}
await context.sync();
}
});
getOnlyItem()
Si la colección contiene exactamente un elemento, este método lo devuelve. De lo contrario, este método genera un error.
getOnlyItem(): Excel.CustomXmlPart;
Devoluciones
Comentarios
[ Conjunto de API: ExcelApi 1.5 ]
Ejemplos
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/18-custom-xml-parts/test-xml-for-unique-namespace.yaml
await Excel.run(async (context) => {
$("#display-xml").text("");
const contosoNamespace = "http://schemas.contoso.com/review/1.0";
const customXmlParts = context.workbook.customXmlParts;
const filteredXmlParts = customXmlParts.getByNamespace(contosoNamespace);
const numberOfPartsInNamespace = filteredXmlParts.getCount();
await context.sync();
if (numberOfPartsInNamespace.value == 1) {
const onlyXmlPartInNamespace = filteredXmlParts.getOnlyItem();
const xmlBlob = onlyXmlPartInNamespace.getXml();
await context.sync();
// Make it a bit more readable.
const readableXml = xmlBlob.value.replace(/></g, ">\n<");
$("#display-xml").text(`The only XML part in the namespace ${contosoNamespace} is:
${readableXml}`);
} else {
console.log(`There are ${numberOfPartsInNamespace.value} XML parts with namespace ${contosoNamespace}. There should be exactly 1.`);
}
await context.sync();
});
getOnlyItemOrNullObject()
Si la colección contiene exactamente un elemento, este método lo devuelve. De lo contrario, este método devuelve null
.
getOnlyItemOrNullObject(): Excel.CustomXmlPart;
Devoluciones
Comentarios
load(options)
Pone en cola un comando para cargar las propiedades especificadas del objeto. Debe llamar a context.sync()
antes de leer las propiedades.
load(options?: Excel.Interfaces.CustomXmlPartScopedCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions): Excel.CustomXmlPartScopedCollection;
Parámetros
- options
-
Excel.Interfaces.CustomXmlPartScopedCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions
Proporciona opciones para las propiedades del objeto que se van a cargar.
Devoluciones
load(propertyNames)
Pone en cola un comando para cargar las propiedades especificadas del objeto. Debe llamar a context.sync()
antes de leer las propiedades.
load(propertyNames?: string | string[]): Excel.CustomXmlPartScopedCollection;
Parámetros
- propertyNames
-
string | string[]
Una cadena delimitada por comas o una matriz de cadenas que especifican las propiedades que se van a cargar.
Devoluciones
load(propertyNamesAndPaths)
Pone en cola un comando para cargar las propiedades especificadas del objeto. Debe llamar a context.sync()
antes de leer las propiedades.
load(propertyNamesAndPaths?: OfficeExtension.LoadOption): Excel.CustomXmlPartScopedCollection;
Parámetros
- propertyNamesAndPaths
- OfficeExtension.LoadOption
propertyNamesAndPaths.select
es una cadena delimitada por comas que especifica las propiedades que se van a cargar y propertyNamesAndPaths.expand
es una cadena delimitada por comas que especifica las propiedades de navegación que se van a cargar.
Devoluciones
toJSON()
Invalida el método JavaScript toJSON()
para proporcionar una salida más útil cuando se pasa un objeto de API a JSON.stringify()
. (JSON.stringify
a su vez, llama al toJSON
método del objeto que se le pasa). Mientras que el objeto original Excel.CustomXmlPartScopedCollection
es un objeto de API, el toJSON
método devuelve un objeto JavaScript sin formato (escrito como Excel.Interfaces.CustomXmlPartScopedCollectionData
) que contiene una matriz de "elementos" con copias superficiales de las propiedades cargadas de los elementos de la colección.
toJSON(): Excel.Interfaces.CustomXmlPartScopedCollectionData;