Compartir a través de


Solicitud de datos de un libro de Excel desde SharePoint Server con OData

Nota:

La API de REST de Excel Services se aplica a SharePoint y a SharePoint 2016 local. Para las cuentas de Office 365 Educación, Empresa y Enterprise, use las API de REST de Excel que forman parte del punto de conexión de Microsoft Graph.

OData utiliza direcciones URL para solicitar información de un recurso. Crear la dirección URL de una manera específica, utilizando opciones de consulta para devolver la información que solicita. La dirección URL siguiente muestra qué aspecto tiene una solicitud típica de OData:

http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$top=20

Esta solicitud de OData de ejemplo se estructura de manera que obtenga las primeras 20 filas de una tabla denominada Table1 del libro ProductSales.xlsx, que está almacenado en la carpeta Documents del servidor contoso1. La dirección URL usa la opción de consulta del sistema $top para especificar el número de filas que debe devolver.Si observa la dirección URL con atención, verá las tres partes de su estructura: el URI de la raíz del servicio, la ruta de acceso del recurso y las opciones de consulta.

URI raíz del servicio

La parte inicial de la dirección URL se denomina el servicio raíz y permanece igual para cada solicitud de OData que realiza en un servidor de SharePoint, excepto para el nombre del servidor. Incluye el nombre del servidor de SharePoint en el que se almacena el libro y la ruta de acceso, _vti_bin/ExcelRest.aspx, como en el siguiente ejemplo:

http://contoso1/_vti_bin/ExcelRest.aspx

Ruta de acceso al recurso

La segunda parte de la dirección URL contiene la ruta de acceso al libro de Excel y especifica que es una solicitud de OData: /Documents/ProductSales.xlsx/OData

Opciones de consulta de sistema

La tercera parte de la dirección URL aporta las opciones de consulta del sistema para la solicitud. Las opciones de consulta siempre comienzan con el signo de dólar ($) y se anexan al final del URI como parámetros de consulta. En este ejemplo, la solicitud es para las primeras 20 filas de la tabla denominada Table1: /Table1?$top=20

Las opciones de consulta del sistema son una manera de obtener datos específicos de un recurso. La implementación de OData que hacen los Servicios de Excel admite varias opciones de consulta, que se indican en la siguiente sección.

La implementación de OData que hacen los Servicios de Excel admite varias opciones de consulta del sistema estándar de OData. Estas opciones de consulta son el núcleo de las solicitudes de OData porque se usan para especificar qué datos desea obtener de un recurso. La tabla siguiente enumera las opciones de consulta del sistema que actualmente admite la implementación de OData que hacen los Servicios de Excel.

Tabla 1. Opciones de consulta del sistema de OData de Servicios de Excel

Opción de consulta del sistema Descripción
<tableName> Devuelve todas las filas para la tabla especificada por <tableName>, donde <tableName> es el nombre de una tabla, en un libro de Excel, que contiene las filas que desea recuperar. Importante: este formulario de solicitud de OData no devuelve más de 500 filas a la vez. Each set of 500 rows is one page. Para obtener filas de más páginas de una tabla que contiene más de 500 filas, use la opción de consulta $skiptoken (vea más adelante). El siguiente ejemplo devuelve todas las filas hasta legar a la 500 (inclusive) en Table1 en el libro ProductSales.xlsx
$metadata Devuelve todas las tablas disponibles y la información sobre tipos de todas las filas de cada tabla del libro especificado. El ejemplo siguiente devuelve las tablas y la información sobre tipos de las tablas del libro ProductSales.xlsx. http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/$metadata
$orderby Devuelve las filas de la tabla especificada, ordenadas por el valor especificado por $orderby. El ejemplo siguiente devuelve todas las filas de la tabla Table1, ordenadas por la columna Name, del libro ProductSales.xlsx. Nota:: el valor predeterminado de $orderby es ascendente. http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$orderby=Name
$top Devuelve N filas de la tabla, donde N es un número especificado por el valor de $top. El ejemplo siguiente devuelve las primeras 5 filas de la tabla Table1, ordenadas por la columna Name, del libro ProductSales.xlsx. http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$orderby=Nombre&$top=5
$skip Omite N filas, donde N es el número especificado por el valor de $skip y, después, devuelve las demás filas de la tabla. El ejemplo siguiente devuelve todas las filas a partir de la quinta fila de la tabla Table1 del libro ProductSales.xlsx. http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$skip=5
$skiptoken Busca la fila número N, donde N es la posición ordinal de la fila indicada por el valor de $skiptoken, y después devuelve todas las demás filas comenzando por la fila N+1. La colección es de base cero por lo que, por ejemplo, la segunda fila se indica mediante $skiptoken=1. El ejemplo siguiente devuelve todas las filas a partir de la segunda fila de la tabla Table1 del libro ProductSales.xlsx. http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$skiptoken=1 También puede usar la opción de consulta $skiptoken para obtener filas en las páginas posteriores a la primera página de una tabla que contiene más de 500 filas. El ejemplo siguiente muestra cómo obtener la fila 500 y posteriores de una tabla con más de 500 filas. http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$skiptoken=499
$filter Devuelve el subconjunto de filas que cumplan las condiciones especificadas en el valor de $filter. Para más información acerca de los operadores y un conjunto de funciones que puede utilizar con $filter, consulte la documentación de OData. El ejemplo siguiente devuelve solo las filas en las que el valor de la columna Price es mayor que 100. http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$filter=Price gt 100
$format El formato XML de Atom es el único valor admitido y es el predeterminado para la opción de consulta $format.
$select Devuelve la entidad especificada por $select. El ejemplo siguiente selecciona la columna Name en la tabla Table1 del libro ProductSales.xlsx. http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$select=Name
$inlinecount Devuelve el número de filas de la tabla especificada. $ inlinecount solo puede usar uno de los dos valores siguientes.
  • allpages: devuelve el número total de filas de la tabla.
  • none: no incluye el número de filas de la tabla.
El ejemplo siguiente devuelve el número total de filas de la tabla Table1 del libro ProductSales.xlsx. http://contoso1/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1?$inlinecount=allpages

Consulte también