Gonzalo Rementeria

22 – Funciones batch usando la api de SharePoint

Anteriormente os traje un par de artículos sobre cómo utilizar las funciones batch en Dataverse con PowerAutomate y hoy os traigo como usar las funciones Batch para SharePoint.

Así que vamos con ellos. Lo primero es explicar que son las funciones Batch y no es otra cosa que crear, actualizar o borrar registros en paquetes de hasta 1000 registros de una sola tacada.

Esto es por un lado MUCHÍSIMO más rápido y por otro MUCHÍSIMO más eficiente (se hacen muchas menos llamadas) con lo cual para procesos donde trabajes con miles de registros deberías SÍ o SÍ usar esto.

Te recomiendo estos 2 artículos sobre como implementar las funcione BATCH con DV ya que la estructura es muy similar para SharePoint.

  • En ambos hay que preparar los parámetros
  • Crear el bucle para cada uno de los paquetes de registros
  • Preparar dichos paquetes de registros
  • Hacer la llamada enviando el paquete de registros

Por otro lado al final del artículo te dejo el flujo listo para copiar y pegar en un Power Automate.

Y aquí la explicación

Aquí en las settings pongo un ejemplo de lo que habría que poner.

La url de la lista, el nombre de la lista, el nombre interno, el tamaño de los paquetes (máx 1000 registros) y la acción (borrar,crear,editar)

Aquí vemos en este ejemplo se están haciendo 2 acciones usando las funciones Batch, primero el vaciado de una lista, borrando todos los registros y luego el llenado.

No voy a centrarme en la parte del bucle ya que como he dicho antes podéis encontrarlo en los artículos que muestro al principio.

Esta es la estructura del borrado

Para la parte del borrado primero genero 2 GUID aleatorios

luego preparo el cuerpo del envío que voy a realizar

Para la parte inferior en el batchData coloco esto que lo que le indica es que voy a ir juntando la información de cada registro. Es decir voy montando ese paquete de hasta 1000 registros.

join(body(‘Select’), decodeUriComponent(‘%0A’))

y en el SendBatch lo siguiente. En esta parte es muy importante que la estructura sea justamente esta. Ya que hasta un espacio de más puede hacer que no funcione.

Y para la parte de llenar las filas, la estructura es como vemos prácticamente la misma. Solo que tengo que darle también no solo el ID del registro, si no también el resto de datos.

Aquí estoy montando el JSON donde se le indica con que voy a llenar cada uno de sus campos.