Una de las conocidas desventajas de SharePoint Online es que no tiene Timer Jobs. Cuando queremos que, de forma automática, se realicen determinadas tareas cada cierto tiempo, dependemos de soluciones más complejas, normalmente aptas para desarrolladores y, por tanto, costosas de aplicar… hasta ahora.
Con Flow tenemos la posibilidad de automatizar tareas, permitiéndonos realizar algo tan básico como, por ejemplo, crear un campo que indique cuánto tiempo lleva un ítem en una lista desde que se creó y que además se actualice automáticamente cada cierto tiempo.
Existe una función para las columnas calculadas de las listas de SharePoint Online llamada TODAY().
Si en la lista creamos una columna calculada con la fórmula =TODAY()-Created
, veremos que nos realizará correctamente el cálculo. Sin embargo, mientras no haya ninguna modificación en el ítem, seguirá mostrando el mismo valor día tras día. Para que lo haga, deberemos modificar el ítem y aún así no nos modificará el resto de ítems de dicha lista. En este artículo vamos a ver cómo con la ayuda de Flow, podemos hacerlo sin mucha dificultad.
En primer lugar he creado una lista para hacer las pruebas y he creado unas cuantas columnas para simular una lista en la que nuestros usuarios crearán incidencias y queremos un campo actualizado cada hora que nos indique el tiempo que llevan puestas las que no están resueltas.
Esto es el detalle de los campos usados en la lista:
El campo o columna «Categoría» es del tipo «Elección» y tiene como valores «HardWare», «SoftWare Interno», «SoftWare Terceros» y «Periféricos».
El campo o columna «Prioridad» es del tipo «Elección» y tiene como valores «Normal», «Urgente» y «No Urgente».
El campo o columna «Status» es del tipo «Elección» y tiene como valores «Pendiente», «En Curso» y «Resuelta».
El campo «Creado» lo modificaremos para que muestre fecha y hora en el formato Estándar.
El campo «TodayDate» es el campo que nos mostrará la fecha y hora actuales, también en el formato Estándar.
Y finalmente tenemos el campo «Dias_Inc» del tipo «Calculado», que nos mostrará la diferencia en días entre la fecha y hora actual, y la fecha y hora de su creación.
A tener en cuenta en la fórmula:
- Utilizamos la condición «IF».
- La función va en Inglés.
- Primero la condición, un punto y coma, el valor si la condición es verdadera, otro punto y coma, y el valor si la condición es falsa.
- Van puntos y comas porque en la configuración regional de mi equipo tengo puesto el «;» como símbolo para el separador de listas (si no os funciona, probad con una coma).
- Y la fórmula:
=IF(Status="Resuelta";"";(TodayDate-Creado))
.
Una vez configurada, si añadimos algunos ítems, veremos que nos calcula el valor, pero no se actualiza hasta que no volvemos a editar los ítems. Con todo esto preparado, ya podemos ir a Flow a través del lanzador de aplicaciones de Office 365 (símbolo de los 9 cuadraditos blancos sobre fondo azul de la esquina superior izquierda).
Vamos a «Mis Flujos» y le damos a «Nueva» > «Crear desde cero»:
Nos aparecerá la interfaz para empezar a poner lo que queramos. Lo primero que haremos es buscar «periodicidad» o «programación» («recurrence» en inglés) y nos encontrará la primera acción que necesitamos, la seleccionamos:
Veremos algo como esto y podremos empezar a trabajar con nuestra primera acción:
Aquí podemos configurar la periodicidad y agregar otros parámetros. Yo, para las pruebas, lo he puesto tal que así:
Esto, en realidad, será nuestro «Timer Job». Lo programaremos en función de lo que queramos conseguir. Le damos al botón de «Nuevo Paso» y buscamos la acción «Obtener» («Get» en inglés). Escogiendo la acción «Obtener Elementos SharePoint»:
Al añadir esta acción, podemos escoger la colección de sitios y la lista a la que lo queremos aplicar:
El siguiente paso del Flow será el de aplicar una acción a cada uno de los elementos obtenidos en el paso anterior, es decir, en todos los elementos de la lista escogida. Para hacerlo le damos a «Nuevo Paso» y pinchamos en el botón «Control»:
Nos aparecerán varias opciones escogiendo la de «Aplicar a cada uno»:
Ello nos pondrá el control para configurarlo. Pincharemos en el cajetín vacío y nos aparecerá la opción lateral para escoger el «Valor – Lista de Elementos»:
Seguidamente agregaremos una acción dentro del Control y buscaremos por «Actualizar» («Update» en inglés):
Esto nos colocará la acción y podremos escoger la colección y la lista que queremos actualizar que, en este caso, será la misma que en el paso anterior:
Una vez seleccionada la lista, nos aparecerán los campos de la misma. Tendremos que indicarle qué queremos hacer con sus valores al actualizarlos:
En todos ellos, dejaremos el mismo valor que tienen y que hemos obtenido en el paso anterior. Para hacerlo pincharemos en el campo y nos aparecerán las opciones a la derecha. Buscaremos la que le corresponde, en el Identificador el ID y en el título, el Título:
En el caso de los campos con un desplegable, es un poco distinto. Si desplegamos aparecerán las opciones del campo definidos en la configuración de la lista, pero aparece una opción para escribir un valor personalizado, lo cual hará que aparezca de nuevo el menú lateral en el que podremos escribir el valor recogido antes, es decir, para que le podamos poner el mismo valor que tenía antes:
Debería quedarnos así:
Finalmente, configuramos el campo que realmente nos interesa que Flow sí actualice (hasta ahora hemos dejado los valores tal y como estaban), es decir, el «TodayDate». Pinchamos en el campo y en el menú lateral escogemos la pestaña expresiones:
Si tuviéramos algún problema con la definición del sitio y su configuración horaria, podemos agregar o quitar tiempo a dicha función con addhours()
.
Como ejemplo, añadir una hora a la fecha actual sería > addhours(utcnow(),1)
.
Yo lo he dejado con addhours(utcnow(),0)
por si lo tengo que modificar en algún momento. Al final nos tiene que quedar así:
Ya tenemos el flujo terminado, lo guardamos, le ponemos el nombre que queramos (pinchando en el nombre nos dejará editarlo), y lo probamos para comprobar que no haya errores.
A partir de aquí veremos cómo se nos actualiza el valor del campo «TodayDate» cada hora, indicándonos el tiempo que llevan abiertas las incidencias no resueltas de nuestra lista.
Historial de ejecuciones del Flow:
Así nos quedaría la Lista:
Y esto es todo, un saludo!
Buen instructivo, quisiera saber si para un flujo que busca actualizar de una lista un campo calculado hay alguna opción, he tratado de hacerlo pero no me permite visualizar el campo calculado.
Hola. Gracias por el comentario y disculpa la demora en contestar. No entiendo bien la pregunta, ya que los campos calculados se actualizan solos en cuanto hay una modificación en alguno de los valores de la fórmula. Por eso Flow no te deja incluir campos calculados, solo columnas de valores de la lista/biblioteca. Si puedes, cuéntame con más detalle lo que se pretende, a ver si te puedo ayudar. Muchas gracias y un saludo.
Hola qué tal, yo tengo la misma duda. Tengo un campo calculado que intenta generar códificación automática concatenando dos valores de la lista. Pero solamente se actualiza cuando entro a la modificación del campo calculado y le doy actualizar. Buscaba una forma en MS Flow pero no me aparece el campo, sabes de alguna solución al respecto?
Gracias me funciono perfecto para un proyecto que estamos realizando en nuestra compañía.
Gracias por el aporte, a funcionado bien.
he tenido solo un inconveniente, que al llegar al ítem numero 101 en adelante el flujo no agrega el día en la columna «todaydate», quisiera saber si me puedes ayudar como solucionar ese inconveniente.
Hola Emilio. Gracias por tu aportación.
Cierto, a mí también me pasa. Y es fácil de solucionar. Es una limitación propia de ‘Flow’ (ahora ‘Power Automate’) con la función ‘get-items’ u ‘obtener elementos’, ya que, por defecto, recoge solamente los 100 primeros. Ve al paso ‘obtener elementos’ del Flow (editándolo) y clic a los 3 puntos de la derecha. Aparecerá un menú con una opción de configuración. La primera opción que te aparecerá será la de paginación. Actívala y pon 5000 que es el máximo para SharePoint Online (treshold view limit). Cuando se vuelva a ejecutar el Flow se actualizarán los elementos.
Un saludo.
Gracias Raul por tu aporte,
afirmativamente el flujo actualizo toda la columna.
Otro inconveniente adicional que no se que pueda ser, es al momento en que en mi columna de «Status» solo tengo dos opciones «Pendiente» y «finalizado» y que al momento de actualizar un elemento y cambiar de «pendiente» a «finalizado», al cabo de unos segundos me devuelve al valor a «Pendiente», pero como te digo esto es muy esporádicamente.
Hola Emilio. Me alegro de que te haya funcionado.
Para lo que me comentas, si es esporádico es más complicado de diagnosticar y habría que analizar qué pasa exactamente y hacer una serie de pruebas: ver el comportamiento en varios navegadores, usando sesiones en privado, poner la periodicidad del flow lo más amplia posible para que su ejecución no influya en el comportamiento de la lista, probar con distintos usuarios y distintos niveles de permisos y más cosas. Pero sí te puedo comentar que hay que ir con cuidado con los flujos de listas, ya que cuantos más elementos haya en la misma, más tardará en procesar (Flow) todos esos cambios y más complicaciones podremos encontrarnos. Hay formas de evitar estas situaciones haciendo que, por ejemplo, permanezcan en la lista solo los ítems que estén ‘pendientes’ y moviendo los ítems ‘finalizados’ hacia otra lista (lo puede hacer el mismo Flow).
Un saludo, Raul
A ok gracias, la verdad si es de realizar varias pruebas, para identificar el correcto funcionamiento, y esta muy buena la idea de copiar los elementos. excelente aporte.
Hola, quisiera hacerte una pregunta a lo mejor puedes ayudarme;
Necesito crear una columna calculada en una biblioteca que use en la formula el nombre del documento (debe extraer del titulo una parte del texto (que es un codigo )para podeer agrupar luego los documentos por codigo) pero en sharepoint no me parece la opcion de la columna «nombre» para incluirla en una formula, a que se debe?existe una manera de solucionarlo?
Desde ya mil gracias por leerme 🙂
Ejemplo! nombre del archivo en Excel:» 600_f30154h45_maria»(deseo crear otra columna que extraiga f30154h45 para luego agrupar por codigo)
Hola Eliana, muchas gracias por tu comentario y espero poder ayudarte.
Efectivamente la interfaz gráfica no permite usar esos campos de ‘sistema’ en las columnas calculadas. Lo que nos obliga a usar otras herramientas que sí pueden llegar a utilizar esos campos para lo que nosotros necesitamos.
En este caso lo puedes hacer con un FLOW o con un simple WorkFlow. Todo dependerá de la complejidad del nombre del archivo, y me explico.
Lo que se pretende es separar un string o cadena de caracteres que en el ejemplo es: ‘600_f30154h45_maria’ y que en realidad es un campo de la biblioteca de documentos que aloja este archivo, llamada ‘Nombre’. La idea sería separar esta cadena ‘600_f30154h45_maria’ en 3 partes ‘600’ ‘f30154h45’ ‘maria’ y poner cada una de ellas en un campo distinto, para así poder agrupar los ‘n’ archivos que habrá en dicha biblioteca por cada uno de esos campos. O eso entiendo yo, claro.
Los WF de SharePoint pueden obtener el nombre del archivo y por tanto esa cadena y también trabajar con esas cadenas ‘separándolas’ de una forma muy mecánica, es decir, puedo decirle que separe esa cadena en subcadenas basándose en un caracter delimitador como en tu caso el ‘_’ o una simple coma, como en este ejemplo.
El único handicap en este caso, será ver como se hace para que se ejecute el Wf una vez creado (3 opciones para los WF, ejecutarlos manualmente, cuando se crea un documento o cuando se edita), en cada uno de los ítems que hay en dicha biblioteca, y que pueden ser muchos.
Pero hay alternativas que consisten en hacer correr un script que actualice algo en cada uno de los items de la biblioteca, o que ejecute ese WF de forma manual en cada uno también.
Espero haber sido de utilidad.
Un saludo, Raul
Hola qué tal, yo tengo la misma duda. Tengo un campo calculado que intenta generar códificación automática concatenando dos valores de la lista. Pero solamente se actualiza cuando entro a la modificación del campo calculado y le doy actualizar. Buscaba una forma en MS Flow pero no me aparece el campo, sabes de alguna solución al respecto?
Hola Edú. Antes de nada muchas gracias por tu comentario. Efectivamente, si dejas que, por ejemplo, un campo calculado de la propia lista al que vamos a llamar 3 calcule el valor de la resta de otras dos que llamaremos 1 y 2, el valor de 3 solo cambiará cuando cambies el valor de 1 o de 2. Mientras no haya ningún cambio, no realizará ningun cálculo. Si quieres que sea Flow, no podrás usar campos calculados, deberás usar otro campo al que puedes llamar 4 para que sea Flow quien te haga dicho cálculo (1+2) en una periodicidad indicada. En dicho caso, no te recalculará cuando haya cambios en 1 o 2, eso lo hará tu campo 3, el 4 se recalculará cada espacio de tiempo indicado. Se puede hacer con Flow usándolo como con este artículo, con la periodicidad como disparador. No sé si me he explicado o está claro para ti. Si no es así ya me lo indicas.
Hola,
Yo tengo una duda sobre algo un poco diferente pero que tiene un poco de relación con esto. Aclarar que no soy ni mucho menos desarrollador pero me gusta ir aprendiendo. Estoy seguro de que la solución a esto es bastante fácil utilizando una expresión.
Al lío. Yo tengo una lista de usuarios de mi organización de los que necesito que me rellenen un formulario. En esta lista he creado un campo «Respondido» con elección SI/NO, creando un flujo de envío automático de correo recordatorio cada dos días para que rellenen el forms en caso de que este campo esté en NO.
El problema viene al crear el otro flujo conectado a FORMS. De modo que cada vez que alguien responde, se actualice el elemento correspondiente a su usuario y el estado del campo RESPONDIDO, se actualice a SÍ, de modo que ya no se le envíen más correos.
Lo que no consigo es que el flujo identifique el elemento a actualizar mediante el correo electrónico de la persona que contesta el formulario, que coincide con la lista en Sharepoint.
Obtengo elementos en sharepoint y forms, pero el problema está en el identificador del elemento en el paso «Actualizar elemento» que solo me deja elegir ID, por lo tanto no puedo filtrar qué elementos quiero que me actualice en función de otros campos, en este caso el de correo/usuario.
Estoy seguro de que esto se soluciona con una expresión sencilla, pero voy un poco pez jeje.
Mil gracias de antemano!
Hola Santiago. Muchas gracias por tu comentario.
Creo haber entendido lo que pretendes hacer. Intentaré ayudarte reproduciendo tu escenario para ver cómo puede hacerse lo que necesitas. Dame tiempo para ello y te contesto de nuevo por aqui.
Un saludo
Muchas gracias Raúl. Estoy seguro de que se soluciona filtrando el elemento a actualizar mediante alguna expresión.
Hola Santiago
Ya he conseguido reproducir el escenario y he logrado una solución al respecto. Te cuento
En primer lugar he llenado una lista con algunas cuentas de mi tenant de esta forma, y voy a usar el campo ‘userprincipalname’ porque es el campo que usarán mis usuarios para acceder al forms que crearé:
En segundo lugar he creado un forms muy simple en la que indico a los usuarios que contesten a una pregunta:
He configurado el forms para que contesten solo los usuarios de mi organización, de esta forma no hay errores, el sistema capturará la cuenta con la que han iniciado sesión para contestar el forms:
Ya tengo todo, vamos a por el Flow, una imagen de la lógica general
Los detalles
He usado uno de esos usuarios de la lista para que conteste al forms y después de hacerlo se me ha actualizado el item de la lista con un ‘si’ en el campo que indica que ese usuario ha contestado el forms
Espero que te ayude
De nuevo, muchas gracias por vuestros comentarios
Un saludo, Raul
Hi! I have a problem related to calculated columns, I’m just beginning to learn about all of this.
In our company we have a list in sharepoint with some calculated columns (3 of them) that display a «score number» on each item depending of the option selected in another column i’ll leave an example:
col1S:
=IF([colum1]=»VeryLow»,»1″,IF([colum1]=»Low»,»2″,IF([colum1]=»Normal»,»3″,IF([colum1]=»High»,»4″,IF([colum1]=»VeryHigh»,»5″,»0″)))))
but now they want to sums all 3 of them in another column called «total score» and to get the total score for each item ex.:
title | colum1 | colum2 | colum3 | col1S | col2S | col3S | totalS |
item | Low |Normal | Low | 2 | 3 | 2 | 7 |
item2|Normal |Normal | Low | 3 | 3 | 2 | 8 |
how can I achieve this? I’ve been looking throught the net but nothing seems to work. could you help me?
Hi Sandra. Thanks for your comments. I will try to reproduce your scenario and I will answer you with my comments.
Hi Sandra
For achieve this, you must to create a new custom list in a Sharepoint Site and create these columns, for example:
‘Priority’ > column type ‘choose’ with these values
Very Low
Low
Normal
Hight
Very Hight
‘Priority Score’ > calculated column with this formula
IF([Priority]=»Very Low»;1;IF([Priority]=»Low»;2;IF([Priority]=»Normal»;3;IF([Priority]=»Hight»;4;IF([Priority]=»Very Hight»;5;0)))))
or this if the ‘region’ of the site is US
IF([Priority]=»Very Low»,1,IF([Priority]=»Low»,2,IF([Priority]=»Normal»,3,IF([Priority]=»Hight»,4,IF([Priority]=»Very Hight»,5,0)))))
‘Severity’ > column type ‘choose’ with these values
Very Low
Low
Normal
Hight
Very Hight
‘Severity Score’ > calculated column with this formula
IF([Severity]=»Very Low»;1;IF([Severity]=»Low»;2;IF([Severity]=»Normal»;3;IF([Severity]=»Hight»;4;IF([Severity]=»Very Hight»;5;0)))))
or this if the ‘region’ of the site is US
IF([Severity]=»Very Low»,1,IF([Severity]=»Low»,2,IF([Severity]=»Normal»,3,IF([Severity]=»Hight»,4,IF([Severity]=»Very Hight»,5,0)))))
‘Urgency’ column type ‘choose’ with these values
Very Low
Low
Normal
Hight
Very Hight
‘Urgency Score’ > calculated column with this formula
IF([Urgency]=»Very Low»;1;IF([Urgency]=»Low»;2;IF([Urgency]=»Normal»;3;IF([Urgency]=»Hight»;4;IF([Urgency]=»Very Hight»;5;0)))))
or this if the ‘region’ of the site is US
IF([Urgency]=»Very Low»,1,IF([Urgency]=»Low»,2,IF([Urgency]=»Normal»,3,IF([Urgency]=»Hight»,4,IF([Urgency]=»Very Hight»,5,0)))))
‘Total Score’ > calculated column with this formula
=[Priority Score]+[Severity Score]+[Urgency Score]
This works for me, the result:
Feel you free to ask me any question about this.
Thanks again!
Hola Raul: he visto con agrado como ayudas a gente que tiene algun tropiezo con Flujos. Mi caso no esta lejos. te comento que tengo una lista y se actualiza de manera correcta utilizando PowerApps. Pero extrañamente en el flujo de aprobación, los campos ya actualizado no los lee y en el envío de correo no los muestra, mientras que en la lista de sharepoint estan actualizados los datos. La verdad ya se me han acabado las ideas y lo que realizado es no mostrar los campos; solución parches, pues se que en un futuro muy cercano, me pedirán los datos. Espero me puedas ayudar.
saludos,
Hernán
Hola Hernán. Muchas gracias por tus comentarios. Para poder ayudarte necesito reproducir tu escenario. ¿Puedes darme detalles de cómo está montado? Listas necesarias, detalles de los Flujos, etc. No me hago una idea clara de cómo funciona tu entorno, mencionas un flujo de aprobación y un envío de correo pero no sé cómo funciona exactamente. Te agradecería más detalles. Un saludo y gracias e nuevo.
Hola Raul: disculpas la demora en responder. El escenario es el siguiente: Se creo una lista con los campos que van a tener la solicitud de crédito. Los formularios fueron creados por PowerApps. Al actualización de registros es correcta, sin embargo, el flujo como tal, no funciona como se debe. El problema es que cuando se actualizan los datos a través del formulario, se actualizan en Sharepoint, pero el flujo «no ve las actualizaciones».
No se si pude aclarar el tema.
Agradezco tus comentarios.
Hola Hernán, gracias por la respuesta. A ver si lo he entendido. Sé que tenéis creado en PowerApps un formulario que actualiza (imagino que crea y edita) elementos en una lista de SharePoint. En dicha lista hay un Flujo de trabajo (workflow) de aprobación que no se dispara cuando los elementos son creados/modificados mediante esa aplicación, bueno más bien formulario, de PowerApps ¿no? La pregunta es, si desactivas el formulario de PowerApps y usas los formularios por defecto de SharePoint, ¿el flujo de aprobación funciona?. Es más. ¿Alguna vez ha funcionado el flujo de aprobación? Lo digo porque sospecho que no es un problema de PowerApps sino del propio Flujo de Aprobación.
Puedes encontrar información aquí:
Personalización de un formulario de biblioteca o lista de SharePoint con Power apps > Usar el formulario predeterminado
Esto sería para aislar el problema y ver si es cosa de PowerApps o no.
También puedes ir a los detalles del Flujo en la lista para comprobar si se está disparando o para saber qué ocurre si es que se dispara:
Configuración de la lista > Configuración del Flujo de Trabajo > Si el flujo está asociado a la lista aparecerá listado
En esta página te aparecerá entre paréntesis «(Estado del flujo de trabajo)» en el puedes pinchar y te llevará a la pantalla de la salud de los flujos de trabajo en el que podrás ver el estado de todas las instancias ejecutadas
Si al crear un nuevo ítem a través del formulario de PowerApps, aquí te aparece una nueva instancia, es que el WorkFlow se está ejecutando. Si no es así, es que no se está arrancando.
Si se arranca y manda un correo pero éste no contiene los datos que tu quieres, deberás revisar la configuración del flujo de trabajo.
Un saludo, Raul
Hola Raul:
Aclaro tus dudas. Desde Sharepoint de Offices365, se ha creado el Flujo y el formulario por Power Apps. Como mencionas, no es problema del formularios, pues la accesiones sobre los elementos de la lista funciona bien. Tu análisis es correcto: el problema es el flujo. El flujo fue creado desde Sharepoint . Lamento no poder pegarte la foto de donde realice la acción. Si creas un elemento desde Sharepoint, el flujo si se dispara correctamente; pero vuelve a saltar exactamente el mismo error (la actualización de elementos).
Es claro que el error es nivel del flujo al tratar de actualizar los elementos.
lamentablemente he intentado varias acciones, sin que ninguna funcione de manera correcta.
No se si se te ocurra alguna otra idea para solventar el problema.
Agradezco tus comentarios.
Hola Hernán. Muchas gracias por tus aclaraciones. ¿Has probado creando el WF desde SP Designer? Puedes empezar con uno simple que mande un correo para ver si se completa todo correctamente. Y después, si funciona, crear uno de Aprobación. Tienes un ejemplo aqui. ¡Ya me cuentas!
Hola Raúl,como te encuentras?
Bueno he mirado a detalle tú lista sharepoint, tu flow y he quedado maravillado. Pero me surge una pregunta. En el caso de que sólo quiero que avance el tiempo de horas en el horario hábil laboral? Por ejemplo : de las 8:30 am hasta las 16:00pm y despues se pare el flujo hasta el siguiente día y avance denuevo en horas. Como sería la lógica?
Saludos
Hola Christian.


En primer lugar muchas gracias por escribirnos. Me encuentro bien y espero y deseo que tú también.
En cuanto a tu pregunta, no hay ningún problema en hacerlo. Mira, para la ejecución del Flow he usado un Scheduler o programador. Yo, por mi conveniencia, he usado un programador que hace que se ejecute el Flow cada 1 hora. Pero puedes usar el mismo programador para ejecutarlo cuando tú quieras, y te pongo un ejemplo para que puedas ver cómo puede adaptarse a las necesidades que explicas en tu pregunta.
En este caso, puedes hacer que se ejecute el flow cada hora, desde las 9 a las 17 de lunes a viernes
O también puedes hacer que se ejecute cada 15 minutos configurándolo de esta otra forma
Espero que te sirva
Un saludo, Raul
Buenos días Raul,
Gracias por la pronta respuesta y esperando que estés bien.
Contexto: Power automate comienza flujo cuando se crea elemento sharepoint e inicia tarea inmediatamente y el usuario puede finalizar el proceso cuando lo desee.
Lo que sucede es que poseo 3 grandes variables en mi columna sharepoint que reciben los datos de esta manera:
Inicio_Tarea: En powerAutomate al momento de realizar inicio de la acción, este guarda una hora con addHoursnow(utc(),0).
Fin_Tarea: En powerAutomate al momento de finalizar la acción, este guarda una hora con addHoursnow(utc(),0).
DiferenciaHorasTarea: Es una columna personaliza que saca la diferencia entre estas dos horas con condicional IF en el caso de que aun no finalice la tarea y lo deja en formato int de esta manera- > =IF(ISBLANK(Fin_Tarea);»»;INT((Fin_Tarea-[Inicio Itinerario])*24)).
Pero mi consulta es, en donde puedo contar la diferencia de estas horas «sólo en un rango de tiempo». Ósea que si tengo un rango de tiempo por ejemplo de las 13:00 hasta las 17:00 de trabajo y ejecuto el inicio de la tarea a las 16:00, este va a llevar 1 hora de conteo hasta las 17:00 y que al día siguiente de nuevo comience a contar desde las 13:00. Por que ahora me saca la diferencia horaria en duro, sin contar el rango horario.
Saludos.
Hola Christian y gracias por la aclaración. Ahora entiendo lo que te ocurre.
Creo que lo puedes resolver si además de las columnas que usas en tu lista para las horas, añades dos columnas en las que se guarde el día. Si la diferencia de los días es más que cero, deberás descontar las horas de más fuera del horario de 13 a 17 por cada uno de los días de diferencia, es decir, de 17h a las 13h del dia siguiente (20h)
A parte de esto, tampoco deberán contar las horas de más de los items creados antes de las 13 y despues de las 17, pero eso lo puedes revolver desde powerAutomate indicando que antes de grabar la hora en el campo da la lista mire la hora actual y decidas qué hora grabar. No sé si me expliqué.
En todo caso es una idea que creo que podría funcionar, pero imagino que puede haber muchas más.
Un saludo