Aspose.Cells Cloud API – Trabajo con la tarea CellsObjectOperate (REST)
Visión general
La tarea CellsObjectOperate le permite realizar operaciones de creación, lectura, actualización y eliminación (CRUD) sobre objetos de Excel, como libros, hojas de cálculo, gráficos, tablas dinámicas, formas, saltos de página y otros, mediante una única llamada REST. Especifique el tipo de objeto con OperateObjectType y proporcione el bloque de parámetros correspondiente (por ejemplo, ChartOperateParameter para acciones relacionadas con gráficos).
OperateObject
| Nombre del parámetro | Tipo | Descripción |
|---|---|---|
| OperateObjectType | string | Tipo de objeto de Excel sobre el que se realizará la operación. Valores permitidos: Workbook, Worksheet, PageSetup, Cells, Chart, Shape, ListObject, PivotTable, WorkbookSettings, PageBreak. |
| OperateObjectPosition | object | Contenedor que identifica la ubicación del objeto objetivo (por ejemplo, nombre del libro, nombre de la hoja de cálculo, índice del gráfico). Obligatorio para la mayoría de las operaciones. |
OperateObjectPosition
| Nombre del parámetro | Tipo | Descripción |
|---|---|---|
| Workbook | object | El libro que contiene el objeto objetivo. Debe incluir FileName (almacén en la nube) o FileContent (codificado en base64). |
| SheetName | string | Nombre de la hoja de cálculo donde se aplica la operación. Obligatorio para objetos a nivel de hoja (gráficos, formas, etc.). |
| ChartIndex | integer | Índice de base cero del gráfico dentro de la hoja de cálculo (se usa cuando OperateObjectType es Chart). |
| ShapeIndex | integer | Índice de base cero de la forma dentro de la hoja de cálculo (se usa cuando OperateObjectType es Shape). |
| CellName | string | Referencia de celda estilo A1 (por ejemplo, A1). Se utiliza para operaciones a nivel de celda. |
| ListObjectIndex | integer | Índice de base cero del objeto lista (se usa cuando OperateObjectType es ListObject). |
ChartOperateParameter
| Nombre del parámetro | Tipo | Descripción |
|---|---|---|
| ChartIndex | integer | Índice del gráfico que se va a modificar. Obligatorio al actualizar un gráfico existente. |
| ChartType | string | Tipo de gráfico a crear (por ejemplo, Bar, Line, Pie). |
| UpperLeftRow | integer | Número de fila de la esquina superior izquierda del gráfico (de base cero). |
| UpperLeftColumn | integer | Número de columna de la esquina superior izquierda del gráfico (de base cero). |
| LowerRightRow | integer | Número de fila de la esquina inferior derecha del gráfico. |
| LowerRightColumn | integer | Número de columna de la esquina inferior derecha del gráfico. |
| Area | string | Rango de datos del gráfico (por ejemplo, A1:B5). |
| IsVertical | string | true si la orientación del gráfico es vertical; de lo contrario, false. |
| CategoryData | string | Rango que proporciona las etiquetas del eje X (categorías). |
| IsAutoGetSerialName | string | true para generar automáticamente los nombres de las series; false para usar nombres personalizados. |
| Title | string | Texto del título que se mostrará en el gráfico. |
ListObjectOperateParameter
| Nombre del parámetro | Tipo | Descripción |
|---|---|---|
| ListObject | object | Objeto de configuración para una operación de lista (tabla). Incluye propiedades como ShowHeader, ShowTotal y Style. |
PageBreakOperateParameter
| Nombre del parámetro | Tipo | Descripción |
|---|---|---|
| PageBreakType | string | Tipo de salto de página (Horizontal o Vertical). |
| Index | integer | Índice de base cero del salto de página que se va a eliminar o modificar. |
| Row | integer | Número de fila donde se coloca un salto de página horizontal. |
| Column | integer | Número de columna donde se coloca un salto de página vertical. |
| StartIndex | integer | Índice inicial para una operación de salto de página basada en un rango. |
| EndIndex | integer | Índice final para una operación de salto de página basada en un rango. |
PageSetupOperateParameter
| Nombre del parámetro | Tipo | Descripción |
|---|---|---|
| PageSetup | object | Configuración para el diseño de página (márgenes, orientación, tamaño de papel, etc.). |
PivotTableOperateParameter
| Nombre del parámetro | Tipo | Descripción |
|---|---|---|
| DestCellName | string | Celda superior izquierda del rango de destino para la tabla dinámica (por ejemplo, C5). |
| SourceData | string | Rango de origen para la tabla dinámica (por ejemplo, A1:D100). |
| TableName | string | Nombre asignado a la tabla dinámica creada. |
| UseSameSource | string | true para reutilizar un rango de origen existente; false para crear uno nuevo. |
| PivotTableIndex | integer | Índice de la tabla dinámica que se va a actualizar (obligatorio para acciones de modificación/eliminación). |
| PivotFieldRows | integer[] | Colección de índices de campos que aparecerán en el área de filas. |
| PivotFieldColumns | integer[] | Colección de índices de campos que aparecerán en el área de columnas. |
| PivotFieldData | integer[] | Colección de índices de campos que aparecerán en el área de datos. |
ShapeOperateParameter
| Nombre del parámetro | Tipo | Descripción |
|---|---|---|
| Shape | object | Definición de la forma (tipo, posición, tamaño, texto, etc.). |
WorkbookSettingsOperateParameter
| Nombre del parámetro | Tipo | Descripción |
|---|---|---|
| WorkbookSettings | object | Configuración que afecta a todo el libro (por ejemplo, modo de cálculo, precisión). |
WorksheetOperateParameter
| Nombre del parámetro | Tipo | Descripción |
|---|---|---|
| Name | string | Nombre actual de la hoja de cálculo que se va a operar. |
| SheetType | string | Tipo de hoja (Worksheet, Chart, etc.). |
| NewName | string | Nuevo nombre para la hoja de cálculo al cambiarle el nombre. |
| MovingRequest | object | Parámetros para mover una hoja de cálculo (por ejemplo, FromIndex, ToIndex). |
API REST
| API | Tipo | Descripción | Enlace al recurso |
|---|---|---|---|
| /cells/task/runtask | POST | Ejecutar tarea | PostRunTask |
La Especificación OpenAPI define una interfaz de programación accesible públicamente y le permite realizar interacciones REST directamente desde un navegador web.
Requisitos previos
- Autenticación – Incluya una cabecera válida
Authorization: Bearer <access_token>. - Almacenamiento – El libro de origen debe estar almacenado en Aspose Cloud Storage, o bien debe proporcionarse como contenido codificado en base64 en el cuerpo de la solicitud.
- Versión de la API – Esta documentación se refiere a la v3.0 de la API de Aspose.Cells Cloud.
Solicitud de ejemplo (cURL)
curl -X POST "https://api.aspose.cloud/v3.0/cells/task/runtask" \
-H "Authorization: Bearer {access_token}" \
-H "Content-Type: application/json" \
-d '{
"OperateObject": {
"OperateObjectType": "Chart",
"OperateObjectPosition": {
"Workbook": { "FileName": "Sample.xlsx" },
"SheetName": "Sheet1"
}
},
"ChartOperateParameter": {
"ChartType": "Bar",
"UpperLeftRow": 5,
"UpperLeftColumn": 2,
"LowerRightRow": 15,
"LowerRightColumn": 8,
"Area": "A1:B5",
"Title": "Sales Chart",
"IsVertical": "true"
}
}'
El cuerpo de la solicitud sigue el esquema CellsObjectOperateRequest definido a continuación:
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "CellsObjectOperateRequest",
"type": "object",
"required": ["OperateObject"],
"properties": {
"OperateObject": {
"type": "object",
"required": ["OperateObjectType"],
"properties": {
"OperateObjectType": { "type": "string", "enum": ["Workbook","Worksheet","PageSetup","Cells","Chart","Shape","ListObject","PivotTable","WorkbookSettings","PageBreak"] },
"OperateObjectPosition": { "$ref": "#/definitions/OperateObjectPosition" }
}
},
"ChartOperateParameter": { "$ref": "#/definitions/ChartOperateParameter" },
"ListObjectOperateParameter": { "$ref": "#/definitions/ListObjectOperateParameter" },
"PageBreakOperateParameter": { "$ref": "#/definitions/PageBreakOperateParameter" },
"PageSetupOperateParameter": { "$ref": "#/definitions/PageSetupOperateParameter" },
"PivotTableOperateParameter": { "$ref": "#/definitions/PivotTableOperateParameter" },
"ShapeOperateParameter": { "$ref": "#/definitions/ShapeOperateParameter" },
"WorkbookSettingsOperateParameter": { "$ref": "#/definitions/WorkbookSettingsOperateParameter" },
"WorksheetOperateParameter": { "$ref": "#/definitions/WorksheetOperateParameter" }
},
"definitions": {
"OperateObjectPosition": {
"type": "object",
"properties": {
"Workbook": { "type": "object" },
"SheetName": { "type": "string" },
"ChartIndex": { "type": "integer" },
"ShapeIndex": { "type": "integer" },
"CellName": { "type": "string" },
"ListObjectIndex": { "type": "integer" }
}
},
"ChartOperateParameter": {
"type": "object",
"properties": {
"ChartIndex": { "type": "integer" },
"ChartType": { "type": "string" },
"UpperLeftRow": { "type": "integer" },
"UpperLeftColumn": { "type": "integer" },
"LowerRightRow": { "type": "integer" },
"LowerRightColumn": { "type": "integer" },
"Area": { "type": "string" },
"IsVertical": { "type": "string", "enum": ["true","false"] },
"CategoryData": { "type": "string" },
"IsAutoGetSerialName": { "type": "string", "enum": ["true","false"] },
"Title": { "type": "string" }
}
}
/* Definiciones adicionales omitidas por brevedad */
}
}
Respuesta de ejemplo (éxito – 200)
{
"Code": 200,
"Status": "OK",
"TaskId": "d9f2c4a1-5b6e-4a9c-8f2a-7e3b9c0e5f1a",
"Result": {
"ChartId": 0,
"Message": "Chart created successfully."
}
}
La respuesta contiene los siguientes campos:
| Campo | Tipo | Descripción |
|---|---|---|
| Code | integer | Código de estado similar a HTTP devuelto por el motor de tareas. |
| Status | string | Estado legible por humanos (por ejemplo, OK). |
| TaskId | string | Identificador de la tarea asincrónica. |
| Result | object | Objeto que contiene los resultados específicos de la operación. |
| Result.ChartId | integer | Identificador del gráfico creado o modificado. |
| Result.Message | string | Mensaje breve que describe el resultado. |
Manejo de errores
| Estado HTTP | Código de error | Descripción | Recomendación |
|---|---|---|---|
| 400 | InvalidParameter | Uno o más parámetros de la solicitud faltan o están mal formados. | Verifique los campos obligatorios y los tipos de datos. |
| 401 | Unauthorized | Token de autenticación inválido o faltante. | Renueve el token de acceso e inclúyalo en la cabecera Authorization. |
| 404 | NotFound | El libro, hoja de cálculo u objeto especificado no existe. | Verifique FileName, SheetName e índices de objetos. |
| 500 | ServerError | Se produjo un error inesperado en el servidor. | Intente nuevamente la solicitud; si el problema persiste, póngase en contacto con soporte técnico. |
Casos de uso comunes
- Agregar un nuevo gráfico a una hoja de cálculo.
- Cambiar el nombre de una hoja de cálculo (
OperateObjectType = "Worksheet"conWorksheetOperateParameter.NewName). - Insertar un salto de página (
OperateObjectType = "PageBreak"conPageBreakOperateParameter). - Actualizar los datos de origen de una tabla dinámica (
OperateObjectType = "PivotTable"conPivotTableOperateParameter.SourceData). - Modificar la configuración del libro, como el modo de cálculo (
OperateObjectType = "WorkbookSettings").