sábado, 10 de marzo de 2018

08. Aplicación usando Office 365. Incidencias Informáticas. Listas con PnP Powershell.

No se vayan todavía aún hay mas.

Esta es la parte nº 8. 
Últimamente enredo un poco con el Powershell. Me permite automatizar muchas de mis tareas. 

  • Creación de usuarios en máquinas.
  • Manejo de mis zonas DNS.
  • Cuando tenía Azure creaba las MV con Powershell.
  • Manejo del DHCP, ámbitos, reservas, opciones.
  • Backup de BBDD SqlServer.
  • Y ahora enredar un poco con el Sharepoint.
Suelo trabajar con el PowerShell ISE que tiene un poco de entorno gráfico y una ayuda a la derecha que quita algo de tiempo.

Para esta entrada lo que he hecho es crear la estructura de listas con la que he estado trabajando desde el principio de la serie. Pero esta vez con Powershell. Le doy a ejecutar y en 1 minuto tengo la estructura de abajo. 4 listas con sus campos de búsqueda, fecha, elección, número, texto, campo calculado...


Para todo esto hay que instalar un módulo de powershell desde el propio powershell:

Install-Module SharePointPnPPowerShellOnline 

Una vez hecho eso ya puedo ponerme en marcha

Creación y modificación lista IncTecnico

A- Ejemplo de creación de una lista con el cmdlet:

new-pnplist

Al que se le pasan normalmente la URL que va a tener la lista y el título que el usuario ve.
Pongo start-sleep 5   para dar a sharepoint tiempo para crear la lista y poder ejecutar los siguientes comandos.
  



B- Añadir datos a una lista.

Esto lo hago como ejemplo y porque es una lista con pocos valores. No hay problema en meterlos directamente a mano en la lista una vez creada



C- Modificación del campos Title que se crea por defecto en TODA lista nueva.



D-Recuperación del Id  de la lista(Identificador único de la lista en el sistema)

Ese identificador lo necesitaremos después para crear campos de búsqueda en la lista principal de IncInformáticas.


Hasta aquí hemos tratado la creación de una de las lista pequeñas y sus modificaciones. Ahora veremos la creación de la lista principal y todos sus campos.


Creación de campos en la lista IncInformaticas

La creación de la lista es como el ejemplo que he mostrado anteriormente.
Me voy a centrar mas en cada uno de los campos. 
Como ya sabemos, en una lista de sharepoint puede haber muchos tipos de campos.
Veremos algún ejemplo de ellos. 
Según lo que quieras configurar en cada campo se utilizan dos cmdlets:

Add-PnPFieldFromXML
Add-PnpField


A- Creación de un campo fecha. (Datetime)

He utilizado la versión con XML para poner "hoy" como valor por defecto y hacer que la fecha tenga formato de "sólo fecha" y no incluya la hora



B- Creación de un campo de elección. (Choice)

En este campo utilizo el cmdlet mas sencillo. Hago que el campo se añada a la vista por defecto, pongo los nombres externo e interno del campo y digo cuales son los posibles campos a elegir.



C- Campo de búsqueda. (Lookup)

Este no he podido hacerlo con el cmdlet normal y he necesitado hacerlo con el XML.

  • el parámetro "List" es el Identificador único de la Lista de Ubicaciones de donde voy a obtener los valores de las ubicaciones.
  • el parámetro "ShowField" es el campo que quiero mostrar de la Lista de Ubicaciones. (Podría querer ver ubicación completa en vez de ubicación).
  • el parámetro "SourceID" es el Identificador único de la lista donde incluyo este campo.
$ID_IncUbicaciones e $ID_IncInformaticas se obtienen como está descrito en el apartado D que está mas arriba.



D- Campo calculado. (Calculated)

Utilizo un campo calculado para saber el curso a partir de la fecha de la incidencia.

Si la incidencia ocurre antes de septiembre es del curso anterior, si la incidencia ocurre después de septiembre es del curso actual. (Mis cursos son 2017/2018...).
Esto está enlazado con el PowerBI.

El mes 1 del curso es septiembre y agosto es el mes 12 del curso.

Si queréis muchos ejemplos de uso de los campos calculados en sharepoint tenéis el siguiente enlace:
https://msdn.microsoft.com/es-es/library/office/bb862071(v=office.14).aspx


E- Modificación de campos creados con Add-pnpField (Get-PnPField + update())

En alguno de los campos que he creado con el cmdlet add-pnpfield no he podido fijar alguna de sus propiedades.
Pero no hay problema, edito el campo y modifico la propiedad o atributo que quiera. 
En estos tres ejemplos que pongo lo que modifico es el valor por defecto de cada uno de esos campos.

(Conviene decir que el Powershell ISE tiene intellisense y esto me ayudará con los atributos que quiero modificar).


F-Resultado con los campos de la lista de Incidencias Informáticas.

Estos son todos los campos creados.


Lo único que no hace este powershell es que salgan en la vista por defecto todos los campos que he creado.


Así que habría que ir a la lista y modificar esa configuración.


Seguro que he vuelto loco a mas de uno. Je, no era mi intención. Si has llegado hasta aquí tienes mucho mérito. Enhorabuena!!✌😂😂😂

Un saludo.


=============================================

Los temas que se tratan en la serie son los siguientes:

02. Permisos de usuario en Sharepoint.
03. Creación de vistas personalizadas y filtros en Sharepoint.
04. ¿Creación de un formulario personalizado utilizando Sharepoint Designer 2013?. Enlazar esos formularios para acceder fácilmente a ellos.
05. Crear un Flow para enviar Correos cada vez que se añade y/o modifica un elemento a la lista de Sharepoint.
06. Creación de un panel/informe de resultados con el Power BI.
07. Publicación de resultados del panel Power BI en Teams, Onenote y/o página de Sharepoint.
08. Ejemplo de creación de listas Sharepoint con pnp y Powershell.
09. Vinculación de listas de Sharepoint a Access. Creación de informes.

No hay comentarios: