martes, 22 de agosto de 2017

Cómo evitar que SharePoint 2016 abra los ficheros pdf en Word (OOS)

Recientemente he empezado a trabajar con una granja de SharePoint 2016. 
Tras la migración de contenidos, una de las primeras quejas que recibí fue que "los pdf se abren con word". Esto generaba problemas a los usuarios de IOS, que no podían abrirlos debido a cierta incompatibilidad entre sistemas. 



Tras estudiar un poco el caso, comprové que, efectivamente, nuestro reción instalado servicio de Office Online Server (OOS), está por defecto configurado para abrir todos los ficheros pdf con la aplicación "WordPDF", que forma parte del propio OOS.

Para ver qué tipos de fichero y acciones controla OOS, tenemos un comando muy representativo en PowerShell:

     Get-SPWOPIBinding

Esto nos proporciona un listado de qué aplicación abre cada tipo de extensión, para realizar cada acción predeterminada (lectura, escritura, vista previa, etc.). Por defecto, en el listado se incluyen muchas acciones relativas a los ficheros PDF, todas ellas a ejecutar con WordPdf.


Así que una vez entendido esto, la solución es bien sencilla: Indicarle a OOS que no haga nada en las acciones de lectura de un PDF. Cómo hacerlo? La forma más directa y sencilla (para los administradores, claro está) está siempre con PowerShell:

      Remove-SPWOPIBinding -Application WordPDF -Action view

Este comando eliminará el mapeo del OOS, únicamente para la aplicación WordPDF, y únicamente para las acciones de visualización (aunque podríamos quitarlo de tantas acciones como quisiéramos, siempre intento realizar las acciones necesarias con el mínimo impacto posible).

Tras la ejecución del comando, PowerShell nos pedirá una confirmación. El comando ejecutado, puede afectar a diversos bindings simultáneamente (para diferentes zonas, por ejemplo). Pulsamos "a" para aceptar todo y dejamos que el comando termine su ejecución.


Listo! A partir de ahora, en nuestra granja SharePoint 2016, OOS ya no volverá a mostrar los ficheros pdf dentro de WordPdf, dejando que se abra en su aplicación por defecto (el propio navegador).


Como veis, es importante tener controlado nuestro OOS, sabiendo qué ficheros y acciones abrirán qué aplicación. Una vez más, PowerShell acude a nuestro rescate.

¡¡Un saludo!!