Demande de données de classeur Excel à partir de l'utilisation d'OData de SharePoint ServerRequesting Excel workbook data from SharePoint Server using OData

Notes

L’API REST Excel Services s’applique à l’environnement local SharePoint et SharePoint 2016.The Excel Services REST API applies to SharePoint and SharePoint 2016 on-premises. Pour les comptes Office 365 Éducation, Business et Entreprise, utilisez les API REST Excel qui font partie du point de terminaison Microsoft Graph.For Office 365 Education, Business, and Enterprise accounts, use the Excel REST APIs that are part of the Microsoft Graph endpoint.

OData utilise des URL pour demander des informations à partir d'une ressource. Vous concevoir l'URL d'une manière spécifique, à l'aide des options de requête pour renvoyer les informations que vous demandez. L'URL suivante montre ce à quoi ressemble une requête OData classique. http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$top=20OData uses URLs to request information from a resource. You craft the URL in a specific way, using query options, to return the information that you are requesting. The following URL shows what a typical OData request looks like. http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$top=20

Cet exemple de requête OData est structuré de sorte qu'il reçoive les 20 premières lignes d'une table nommée Table1 dans le classeur ProductSales.xlsx qui est stocké dans le dossier Documents sur le serveur contoso1. L'URL utilise l' option du requête système $top pour spécifier le nombre de lignes à renvoyer.Examiner l'URL, vous pouvez voir sa structure de trois parties : la racine du service URI ; le chemin d'accès de la ressource ; et les options de requête.This sample OData request is structured so that it gets the first 20 rows from a table named Table1 in the workbook ProductSales.xlsx which is stored in the Documents folder on the contoso1 server. The URL uses the system query option $top to specify the number of rows to return.Looking closely at the URL, you can see its three part structure: the service root URI; the resource path; and the query options.

Racine URI de serviceService root URI

La partie initiale de l'URL est appelée racine du service et reste identique pour toutes les requêtes OData que vous effectuez sur un serveur SharePoint, à l'exception du nom du serveur.The initial part of the URL is called the service root and remains the same for every OData request that you make to a SharePoint server except for the name of the server. Il inclut le nom du serveur SharePoint où se trouve le classeur et le chemin, le _vti_bin/ExcelRest.aspx, comme dans l'exemple suivant.It includes the name of the SharePoint server where the workbook is stored and the path, _vti_bin/ExcelRest.aspx, as in the following example.

http://contoso1/_vti_bin/ExcelRest.aspx

Chemin d’accès à la ressourceResource path

La seconde partie de l'URL est le chemin d'accès au classeur Excel et spécifie qu'il s'agit d'une requête OData.The second part of the URL has the path to the Excel workbook and specifies that this is an OData request.

/Documents/ProductSales.xlsx/OData/Documents/ProductSales.xlsx/OData

Options de la requêteSystem query options

La troisième partie de l'URL fournit des options de requête pour la demande au système. Options de requête toujours commencent par un signe dollar ($) et sont ajoutées à la fin de l'URI en tant que paramètres de requête. Dans cet exemple, la demande concerne les 20 premières lignes de la table nommée Table1.The third part of the URL gives the system query options for the request. Query options always begin with a dollar sign ($) and are appended to the end of the URI as query parameters. In this example, the request is for the first 20 rows in the table named Table1.

/ Table1 ? $top = 20/Table1?$top=20

Options de requête de système fournissent un moyen d'obtenir des données spécifiques à partir d'une ressource. L'implémentation d'Excel Services OData prend en charge un nombre d'options de requête, comme indiqué dans la section suivante.System query options provide a way to get specific data from a resource. The Excel Services OData implementation supports a number of query options as listed in the following section.

Options de la requêteSystem query options

L'implémentation d'Excel Services de OData prend en charge un nombre des options de requête OData système standard. Ces options de requête sont au cœur de demandes d'OData, étant donné que vous utilisez les options pour spécifier les données que vous souhaitez obtenir à partir d'une ressource. Le tableau suivant répertorie les options de requête système actuellement prend en charge la mise en œuvre de Excel Services de OData.The Excel Services implementation of OData supports a number of the standard OData system query options. These query options are at the heart of OData requests since you use the options to specify what data you want to get from a resource. The following table lists the system query options that Excel Services implementation of OData currently supports.

Le tableau 1. Options de requête Excel Services OData systèmeTable 1. Excel Services OData system query options

Option de requête systèmeSystem Query Option DescriptionDescription
/<NomTableau>/<tableName>
Renvoie toutes les lignes de la table spécifiée <par>TableName, <où> TableName est le nom d'une table dans un classeur Excel qui contient les lignes que vous souhaitez récupérer.Returns all rows for the table specified by <tableName>, where <tableName> is the name of a table in an Excel workbook that contains the rows that you want to retrieve.
Important: Cette forme de requête OData ne renvoie pas plus de 500 lignes à la fois.Important: This form of OData request returns no more than 500 rows at a time. Each set of 500 rows is one page.Each set of 500 rows is one page. To get rows in further pages in a table that has more than 500 rows, use the $skiptoken query option (see below).To get rows in further pages in a table that has more than 500 rows, use the $skiptoken query option (see below).
The following example returns all rows up to the 500th row in Table1 in the ProductSales.xlsx workbook.The following example returns all rows up to the 500th row in Table1 in the ProductSales.xlsx workbook.
$metadata$metadata
Renvoie toutes les tables disponibles et les informations de type pour toutes les lignes de chaque table dans le classeur spécifié.Returns all the available tables and the type information for all rows in each table in the specified workbook.
L'exemple suivant renvoie les tables et les informations de type pour les tables dans le classeur ProductSales.xlsx.The following example returns the tables and type information for the tables in the ProductSales.xlsx workbook.
http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/$metadatahttp://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/$metadata
$orderby$orderby
Renvoie les lignes dans le tableau spécifié, trié par la valeur spécifiée par $orderby.Returns rows in the specified table, sorted by the value specified by $orderby.
L'exemple suivant renvoie toutes les lignes du tableau 1, triés dans la colonne nom, dans le classeur ProductSales.xlsx.The following example returns all rows from Table 1, sorted by the Name column, in the ProductSales.xlsx workbook.
Remarque: la valeur par défaut de $orderby est croissant.Note: The default value for $orderby is ascending. http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$orderby=Namehttp://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$orderby=Name
$top$top
Cette propriété renvoie N lignes à partir de la table où N est un nombre spécifié par la valeur de $top.Returns N rows from the table where N is a number specified by the value of $top.
L'exemple suivant renvoie les 5 premières lignes from Table1, triés dans la colonne nom, dans le classeur ProductSales.xlsx.The following example returns the first 5 rows from Table1, sorted by the Name column, in the ProductSales.xlsx workbook.
http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$orderby=Name&$top=5http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$orderby=Name&$top=5
$skip$skip
Lignes ignore N, où N est le nombre spécifié par la valeur de $skipet renvoie ensuite les autres lignes du tableau.Skips N rows, where N is the number specified by the value of $skip, and then returns the remaining rows of the table.
L'exemple suivant renvoie toutes les lignes restantes après la cinquième ligne from Table1 dans le classeur ProductSales.xlsx.The following example returns all remaining rows after the fifth row from Table1 in the ProductSales.xlsx workbook.
http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$skip=5http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$skip=5
$skiptoken$skiptoken
Cherche à la nième ligne, où N est la position ordinale de ligne indiquée par la valeur de $skiptokenet renvoie toutes les lignes restantes, en commençant à la ligne N + 1. La collection est zéro, afin que la deuxième ligne, par exemple, est indiquée par $skiptoken = 1.Seeks to the Nth row, where N is the row ordinal position indicated by the value of $skiptoken, and then returns all remaining rows, beginning at row N + 1. The collection is zero-based, so the second row, for example, is indicated by $skiptoken=1.
L'exemple suivant renvoie toutes les lignes restantes après la deuxième ligne from Table1 dans le classeur ProductSales.xlsx.The following example returns all remaining rows after the second row from Table1 in the ProductSales.xlsx workbook.
http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$skiptoken=1http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$skiptoken=1
Vous pouvez également utiliser l'option de requête $skiptoken pour obtenir des lignes dans les pages après la première page d'un tableau qui contient plus de 500 lignes. L'exemple suivant montre comment obtenir la ligne 500e et supérieure d'une table avec plus de 500 lignes.You can also use the $skiptoken query option to get rows in pages after the first page from a table that contains more than 500 rows. The following example shows how to get the 500th row and greater from a table with more than 500 rows.
http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$skiptoken=499http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$skiptoken=499
$filter$filter
Retourne le sous-ensemble de lignes qui répondent aux conditions spécifiées dans la valeur de $filter. Pour plus d'informations sur les opérateurs et le jeu de fonctions que vous pouvez utiliser avec $filter, consultez la documentationde OData. Returns the subset of rows that satisfy the conditions specified in the value of $filter. For more information about the operators and set of functions that you can use with $filter, see the OData documentation.
L'exemple suivant renvoie uniquement les lignes où la valeur de la colonne Price est supérieure à 100.The following example returns only those rows where the value of the Price column is greater than 100.
http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$ filter = prix gt 100http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$filter=Price gt 100
$format$format
Au format Atom XML est la seule valeur prise en charge et la valeur par défaut pour l'option de requête $format.The Atom XML format is the only supported value and is the default for the $format query option.
$select$select
Renvoie l'entité spécifiée par $select.Returns the entity specified by $select.
L'exemple suivant sélectionne la colonne nom dans Table1 dans le classeur ProductSales.xlsx.The following example selects the Name column from Table1 in the ProductSales.xlsx workbook.
http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$select=Namehttp://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$select=Name
$inlinecount$inlinecount
Renvoie le nombre de lignes du tableau spécifié.Returns the number of rows in the specified table.
$ inlinecount peut utiliser uniquement de 1 / 2 des valeurs suivantes.$ inlinecount can only use 1 of 2 of the following values.
  • allpages - renvoie le nombre de toutes les lignes dans la table.allpages - Returns the count for all rows in the table.
  • none - n'inclut pas le nombre de lignes dans le tableau.none - Does not include a count of rows in the table.

L'exemple suivant renvoie le nombre pour le nombre total de lignes dans le tableau 1 dans le classeur ProductSales.xlsx.The following example returns the count for the total number of rows in Table1 in the ProductSales.xlsx workbook.
http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$inlinecount=allpageshttp://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$inlinecount=allpages

Voir aussiSee also