En este workshop titulado App para Registrar el Tiempo de Trabajo vamos a desarrollar paso a paso a Nivel 100 (básico), una aplicación para registrar, “fichar”, el tiempo de trabajo de los empleados, lo haremos con Power Apps y SharePoint.
Ante la entrada en vigor de la ley que establece la obligación de registrar el tiempo de trabajo de forma digital, imagina tener una herramienta intuitiva que se adapte a las necesidades de la mayoría de las PYMES y que pueda usarse fácilmente.
Esta app nos va a servir tanto para registrar la asistencia de los empleados como para registrar el tiempo que se dedica a cada tarea o actividad día a día.
Crearemos una app intuitiva que va a permitir modificaciones según las necesidades de la empresa.
Para desarrollar la aplicación, se necesitan licencias de Power Apps y SharePoint Online, dispositivos compatibles y una conexión estable a Internet.
Almacenar los datos en SharePoint elimina la necesidad de licencias adicionales; por ello, los usuarios que ya tengan licencia de Microsoft 365, la podrán usar gratuitamente. SharePoint es más económico y familiar, además de estar bien integrado con el ecosistema de Microsoft 365.
AGENDA
- Introducción
- Microsoft 365, SharePoint y Licencias
- Instalar solución base
- Crear la biblioteca de SharePoint
- Crear la app de fichajes
- Uso de la app en móviles
- Funciones adicionales
App
Esta es la app que vamos a crear y a lo largo de este post te hacemos llegar las utilidades y funciones para ello, así te será más fácil seguir el taller.

Tabla SharePoint

Estándares
Recomendamos nombrar los controles a medida que se van añadiendo como se indica en este post.
Algunas fórmulas de la app
Total y redondeo
$"Total:{Round(
Sum(
gal_HomeScreen_Fichar.AllItems;
'Minutos Registrados' / 60
);
2
)}" & "h."
Set(
RegistroEntrada;
Patch(
'Registro horario';
Defaults('Registro horario');
{
Título: User().FullName & "-" & Now();
Persona: {
'@odata.type': "#Microsoft.Azure.Connectors.SharePoint.SPListExpandedUser";
Claims: "i:0#.f|membership|" & Lower(User().Email);
DisplayName: User().FullName;
Department: "";
Email: User().Email;
JobTitle: "";
Picture: ""
};
Entrada: Now()
}
)
)
Patch(
'Registro horario';
RegistroEntrada;
{
Salida: Now();
'Minutos Registrados': DateDiff(
RegistroEntrada.Entrada;
Now();
TimeUnit.Minutes
)
}
);;
Set(
RegistroEntrada;
Blank()
)
Contacta para mayor información sobre las fórmulas y si necesitas ayuda para crearlas.