Excel.CustomXmlPartScopedCollection class

Collection étendue de parties XML personnalisées. Une collection étendue est le résultat d’une opération (par exemple, un filtrage par espace de noms). Une collection étendue ne peut pas être étendue plus loin.

Extends

Propriétés

context

Contexte de requête associé à l’objet. Cette opération connecte le processus du complément à celui de l’application hôte Office.

items

Obtient l’élément enfant chargé dans cette collection de sites.

Méthodes

getCount()

Obtient le nombre de parties CustomXML dans cette collection.

getItem(id)

Obtient une partie XML personnalisée en fonction de son ID.

getItemOrNullObject(id)

Obtient une partie XML personnalisée en fonction de son ID. Si la n’existe pas, cette méthode renvoie un objet dont la CustomXmlPart propriété est définie sur true.isNullObject Pour plus d’informations, consultez * Méthodes et propriétés d’OrNullObject.

getOnlyItem()

Si la collection contient exactement un élément, cette méthode le renvoie. Sinon, cette méthode produit une erreur.

getOnlyItemOrNullObject()

Si la collection contient exactement un élément, cette méthode le renvoie. Dans le cas contraire, cette méthode renvoie .null

load(options)

Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter context.sync() avant de lire les propriétés.

load(propertyNames)

Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter context.sync() avant de lire les propriétés.

load(propertyNamesAndPaths)

Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter context.sync() avant de lire les propriétés.

toJSON()

Remplace la méthode JavaScript toJSON() afin de fournir une sortie plus utile lorsqu’un objet API est passé à JSON.stringify(). (JSON.stringify, à son tour, appelle la toJSON méthode de l’objet qui lui est passé.) Alors que l’objet d’origine Excel.CustomXmlPartScopedCollection est un objet API, la toJSON méthode renvoie un objet JavaScript simple (typé ) Excel.Interfaces.CustomXmlPartScopedCollectionDataqui contient un tableau « items » avec des copies superficielles de toutes les propriétés chargées à partir des éléments de la collection.

Détails de la propriété

context

Contexte de requête associé à l’objet. Cette opération connecte le processus du complément à celui de l’application hôte Office.

context: RequestContext;

Valeur de propriété

items

Obtient l’élément enfant chargé dans cette collection de sites.

readonly items: Excel.CustomXmlPart[];

Valeur de propriété

Détails de la méthode

getCount()

Obtient le nombre de parties CustomXML dans cette collection.

getCount(): OfficeExtension.ClientResult<number>;

Retours

Remarques

Jeu d’API : ExcelApi 1.5

Exemples

// 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) => {
    document.getElementById("display-xml").textContent = "";
    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<");

        document.getElementById("display-xml").textContent = `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)

Obtient une partie XML personnalisée en fonction de son ID.

getItem(id: string): Excel.CustomXmlPart;

Paramètres

id

string

ID de l’objet à récupérer.

Retours

Remarques

Jeu d’API : ExcelApi 1.5

getItemOrNullObject(id)

Obtient une partie XML personnalisée en fonction de son ID. Si la n’existe pas, cette méthode renvoie un objet dont la CustomXmlPart propriété est définie sur true.isNullObject Pour plus d’informations, consultez * Méthodes et propriétés d’OrNullObject.

getItemOrNullObject(id: string): Excel.CustomXmlPart;

Paramètres

id

string

ID de l’objet à récupérer.

Retours

Remarques

Jeu d’API : ExcelApi 1.5

Exemples

// 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) {
            document.getElementById("display-xml").textContent = `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}`
            document.getElementById("display-xml").textContent = strangeMessage;
        }

        await context.sync();
    }
});

getOnlyItem()

Si la collection contient exactement un élément, cette méthode le renvoie. Sinon, cette méthode produit une erreur.

getOnlyItem(): Excel.CustomXmlPart;

Retours

Remarques

Jeu d’API : ExcelApi 1.5

Exemples

// 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) => {
    document.getElementById("display-xml").textContent = "";
    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<");

        document.getElementById("display-xml").textContent = `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 collection contient exactement un élément, cette méthode le renvoie. Dans le cas contraire, cette méthode renvoie .null

getOnlyItemOrNullObject(): Excel.CustomXmlPart;

Retours

Remarques

Jeu d’API : ExcelApi 1.5

load(options)

Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter context.sync() avant de lire les propriétés.

load(options?: Excel.Interfaces.CustomXmlPartScopedCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions): Excel.CustomXmlPartScopedCollection;

Paramètres

options

Excel.Interfaces.CustomXmlPartScopedCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions

Fournit des options pour les propriétés de l’objet à charger.

Retours

load(propertyNames)

Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter context.sync() avant de lire les propriétés.

load(propertyNames?: string | string[]): Excel.CustomXmlPartScopedCollection;

Paramètres

propertyNames

string | string[]

Chaîne délimitée par des virgules ou tableau de chaînes spécifiant les propriétés à charger.

Retours

load(propertyNamesAndPaths)

Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter context.sync() avant de lire les propriétés.

load(propertyNamesAndPaths?: OfficeExtension.LoadOption): Excel.CustomXmlPartScopedCollection;

Paramètres

propertyNamesAndPaths
OfficeExtension.LoadOption

propertyNamesAndPaths.select est une chaîne délimitée par des virgules qui spécifie les propriétés à charger, et propertyNamesAndPaths.expand est une chaîne délimitée par des virgules qui spécifie les propriétés de navigation à charger.

Retours

toJSON()

Remplace la méthode JavaScript toJSON() afin de fournir une sortie plus utile lorsqu’un objet API est passé à JSON.stringify(). (JSON.stringify, à son tour, appelle la toJSON méthode de l’objet qui lui est passé.) Alors que l’objet d’origine Excel.CustomXmlPartScopedCollection est un objet API, la toJSON méthode renvoie un objet JavaScript simple (typé ) Excel.Interfaces.CustomXmlPartScopedCollectionDataqui contient un tableau « items » avec des copies superficielles de toutes les propriétés chargées à partir des éléments de la collection.

toJSON(): Excel.Interfaces.CustomXmlPartScopedCollectionData;

Retours