En este artículo vamos a revisar la integración más estándar de SharePoint dentro de nuestro Portal o Sitio de Power Pages, en otro artículo ya revisamos cómo integrar SharePoint con CRM, y esa será la base de la que partamos para nuestras explicaciones hoy.
Esta vez vamos a dar continuación a esta rama, asumiendo que contamos con un Portal desplegado, en el que queremos incluir una funcionalidad para que los contactos de nuestro CRM puedan subir la documentación necesaria a SharePoint y que se refleje en nuestro CRM igualmente.
1.- Habilitar SharePoint para nuestro Portal
Para conseguir la información necesaria para aplicar los siguientes pasos, alternaremos entre el centro de administración de Power Platform (Power Platform admin center (microsoft.com), la aplicación de Administración del portal en nuestro entorno adecuado y el Editor de Power Pages.
En nuestro caso usaremos el siguiente portal:
Lo primero que deberemos hacer es revisar la integración de nuestro SharePoint con CRM, como hicimos en este artículo. Tener un sitio de SharePoint validado y habilitado en nuestro CRM será requisito indispensable. Una vez tenemos este punto cubierto, vamos al centro de administración de Power Platform (Power Platform admin center (microsoft.com)), y dentro del apartado de Recursos – Sitios de Power Pages, seleccionaremos nuestro Portal y clicaremos en Administrar.
Es en esta pestaña donde conseguiremos comenzar el viaje hacia la integración de SharePoint, activando el toogle dedicado en la parte inferior derecha, y en el menú contextual que nos ofrece documentación al respecto, clicaremos en Habilitar.
Con este punto habremos conseguido habilitar SharePoint a nivel de Portal.
2.- Requisitos a nivel de CRM
Además de los puntos necesarios que veremos a nivel de Portal, es importante entender que es el CRM el que vamos a usar como ventana de conexión entre el portal y nuestro SharePoint. En el Portal, como veremos después vamos a mostrar un Formulario básico, que reflejará la información de nuestro contacto, por lo tanto tendremos que configurar un apartado (una pestaña concretamente) de nuestro formulario de Contacto en CRM para poder mostrarlo en el portal.
Dicho esto, lo que vamos a hacer es configurar una pestaña en el formulario de Contacto que deseemos y que llamaremos a nuestro gusto. Aprovechando una formación que impartimos, en nuestro ejemplo la nombramos como Friday Power Pizza. Para ello iremos a Make Power Apps (https://make.powerapps.com/) y seleccionaremos nuestro entorno. Nosotros solemos trabajar en soluciones, para poder implementar los cambios entre entornos de manera estable y controlada.
Accediendo a nuestra solución navegaremos hasta la pestaña de formularios dentro de la tabla de Contacto. Debemos fijarnos que este sea el formulario que nos interesa, en nuestro caso será el que usamos en nuestra aplicación de sales como formulario principal. Deberemos anotar el nombre del mismo para los siguientes pasos
En el mismo formulario crearemos una pestaña de una sola columna, a la que agregaremos un Subgrid/Subcuadrícula, que apunte a la tabla de Ubicaciones de documentos, con la vista de Ubicaciones de documentos activos, mostrando únicamente los registros relacionados.
Cuando en un Contacto, como comentamos al final del anterior artículo, seleccionamos el apartado de Documentos, se genera un registro de esta tabla de Ubicaciones de documentos, referente a dicho Contacto.
En este subgrid como comentábamos no veremos directamente los documentos que suban los usuarios, sino que será la ventana a través de la cual en nuestro Portal veremos las ubicaciones asociadas al contacto que haya hecho login. Es importante que exista una Ubicación de documentos asociada, por eso en otro artículo vemos cómo automatizar este proceso de creación al registrar un contacto.
Una vez completemos estos pasos, será importante guardar y publicar el formulario.
3.- Elementos necesarios en nuestro Portal.
Por parte del Portal, para finalizar, tendremos que tener dos elementos diferentes configurados: un formulario básico, y dos permisos de tablas. Asumimos que los roles de seguridad que tendremos que asociar a los mismos serán los estándar de Usuarios autenticados, aunque esto se puede personalizar a gusto del usuario.
Lo primero que debemos crear será un formulario básico. Lo crearemos en la aplicación de Administración del Portal, accediendo a la sección de formularios básicos.
Este punto es clave para poder mostrar después la información apropiada en el portal. Cuando creemos el registro de formulario básico, además de darle un nombre deberemos informar del formulario de CRM en que añadimos el subgrid en el paso anterior. Concretamente deberemos seleccionar además de la tabla y el formulario, la pestaña en la que lo incluimos. Para que los usuarios del portal puedan añadir documentos seleccionaremos el Modo Edición, pues queremos que puedan interactuar con el cuadro de archivos en el portal.
El tipo de origen de registro es el apartado en el que elegiremos el origen de la información se muestra en este formulario, ya que apuntamos a la tabla de Contacto. Seleccionaremos Usuario actual del portal, para que se muestre la información del formulario de Contacto de aquel contacto que haya hecho login en el Portal.
Cabe puntualizar que el tamaño máximo de carga por archivos es de 10MB por defecto y se puede ampliar a 50MB, y que se puede limitar el tipo de documentos que se pueden adjuntar; desde el propio formulario básico en la sección de Configuración adicional en la parte inferior; así como el comportamiento para permitir la carga de varios archivos a la vez o no.
Por supuesto, seleccionaremos el sitio web del portal sobre el que queramos que se incluya este formulario básico y habilitaremos los permisos de tabla.
Los permisos de tabla son los registros desde donde controlamos qué acciones van a poder realizar los usuarios del portal. Para entenderlo mejor, digamos que nuestro formulario básico está sobre la tabla de Contacto; y ese subgrid anterior apunta a un registro de Ubicación de documentos. Por tanto, como queremos acceder desde el portal a los documentos, deberemos generar dos permisos de tabla hacia la tabla de Contactos (permiso padre) y hacia la tabla Ubicación de documentos (permiso hijo) y habilitar los privilegios apropiados.
Los roles de seguridad se indicarán en el permiso de tabla padre, el de la tabla de contacto, porque es a los propios contactos a quienes se les habilitan los roles.
En el permiso padre, el que apunta a la tabla de Contactos, informaremos un nombre y nuestro sitio web, y seleccionaremos la tabla de Contacto en el desplegable superior. El tipo de acceso debe ser organización, puesto que no vamos a acceder a la información del contacto directamente en nuestro portal sino a la Ubicación de documentos asociada al mismo. Este punto en la documentación oficial no está reflejado y es clave. Sin los privilegios de Lectura no serán válidos el resto de privilegios (el usuario debe poder acceder a ver la información).
Seleccionaremos los roles web deseados:
Y crearemos un permiso de tabla hijo:
Este nuevo permiso de tabla apuntará a la tabla de Ubicaciones de documentos, por supuesto informaremos de nuestro sitio web y deberemos seleccionar como tipo de acceso Primario, para que herede los privilegios del permiso de tabla padre que acabamos de crear.
En la segunda sección informaremos de dicho permiso de tabla previo, y nos aparecerá un desplegable para seleccionar la relación primaria (esta es la que une las tablas de Contacto y Ubicaciones de documentos en nuestro CRM. Al seleccionar el permiso anterior, esta es la única relación que nos permite escoger (pues busca las relaciones entre Ubicaciones de documentos a la que apunta este permiso; y la tabla de Contactos al que apunta el permiso padre).
Añadiremos los permisos que deseemos pues estos serán los que puedan realizar los usuarios sobre los documentos que suban o estén ya localizados en el SharePoint asociado a su contacto.
4.- Recogiendo los frutos
Lo único que necesitaremos ahora será incluir este formulario básico en nuestro portal, dentro de una página. En nuestro Editor de Power Pages (https://make.powerpages.microsoft.com/) iremos a nuestra página deseada y añadiremos una sección de una columna y seleccionaremos Formulario
Y nuestro formulario básico
En el Editor de Power Pages nos aparecerá nuestro formulario de CRM de Contacto completo, una vez que esté publicado será cuando se filtre únicamente la pestaña apropiada del subgrid, que informamos en el Formulario básico del portal.
Debemos tener en cuenta que hay que controlar el comportamiento del formulario cuando el usuario sube documentos. Para evitar que se generen confusiones vamos a desactivar la opción de “Ocultar formulario cuando se envíe”, clicando en el formulario y Editar formulario.
Si vamos al CRM a ver el formulario del contacto que haya hecho login, veremos que en la pestaña de Friday Power Pizza en la que incluimos el subgrid no muestra los documentos (recordemos que es únicamente una ventana a través de la cual el portal mira la ubicación de documentos asociada al contacto concreto).
Sin embargo en la pestaña de Archivos o en la de Documentos, ya aparecen los documentos que haya agregado al portal el usuario
Y, finalmente, esta será la vista que tenga el usuario de los documentos que quiera subir, pudiendo eliminar o agregar nuevos.
Por supuesto, esto será mucho más configurable conforme más elementos de personalización incluyamos. Es importante reseñar por un lado, que el título que se muestra en el Portal es el título de la pestaña, no del subgrid incluido, y que esta pestaña no se puede ocultar en CRM, puesto que incurriría en fallos de funcionamiento y anomalías al no poder mostrarse en el Portal tampoco y se acabaría mostrando el resto del formulario de Contacto.
Gracias por compartir tu tiempo con nosotros. ¡Estamos pendientes ante cualquier duda y comentario para mejorar! No dudes en contactarnos.



















