Cómo desarrollar aplicaciones utilizando los servicios de automatización de Word
Algunas tareas son más difíciles cuando usamos Open XML SDK 2.0 para Microsoft Office. Por ejemplo: reformatear los números de página, convertir el documento a otros formatos como PDF o actualizar la tabla de contenido, los campos y otro contenido dinámico del documento. La nueva característica de Servicios de automatización de Word disponible en SharePoint 2010 está diseñada para abordar estos problemas.
El Servicio de Automatización de Word es un servicio habilitado para **** que realiza formato de documentos y otras funciones importantes en el lado del servidor sin intervención humana. Fue diseñado originalmente para procesar múltiples documentos en el lado del servidor de manera confiable y predecible.
Podemos utilizar el Servicio de Automatización de Word para convertir el formato Open XML WordprocessingML a otros formatos. Por ejemplo, se pueden convertir varios documentos a PDF y enviarlos al grupo de impresión de la impresora, o se pueden enviar documentos PDF a los clientes por correo electrónico, o se pueden convertir documentos en otros formatos (como HTML, formato binario Word 97-2003) a Abrir documentos de procesamiento de trabajo XML.
Además del formato de documentos, los servicios de automatización de Word también proporcionan otras funciones importantes. Por ejemplo, actualizar campos en el documento y convertir el contenido de altChunk en párrafos usando el formato normal. Sería muy difícil realizar estas tareas si utilizamos Open XML SDK, pero Word Automation Services las realiza con mucha facilidad. Anteriormente, usábamos el Servicio de automatización de Word para realizar estas tareas para el cliente, pero esto era problemático; el cliente de Word es más adecuado para la escritura de documentos interactivos que el procesamiento de múltiples documentos del lado del servidor. Si realiza estas tareas en Word, Word a menudo mostrará un cuadro de error si el servidor ejecuta automáticamente el cliente de Word y ningún usuario responde al cuadro de diálogo, lo que hace imposible detener el hilo. Esta es una pregunta relacionada con la automatización de Word y hay una base de conocimientos dedicada a ella, Consideraciones para la automatización del lado del servidor de Office.
Escenarios de aplicación que utilizan el Servicio de automatización de Word
Los siguientes escenarios de aplicación muestran cómo utilizar el Servicio de automatización de Word para automatizar el procesamiento de documentos en el lado del servidor.
Un experto crea algunas plantillas de Word que siguen especificaciones específicas. Puede usar controles de contenido para brindar orientación sobre cómo usar estas plantillas para brindar una buena experiencia de usuario y métodos de programación confiables para determinar dónde deben aparecer los datos. la plantilla del documento durante la generación del documento. Normalmente, estas plantillas de documentos se almacenan en bibliotecas de documentos de SharePoint.
Un programa que se ejecuta en el servidor combina plantillas de documentos y datos para formar un documento Open XML WordprocessingML (DOCX). La mejor manera de escribir este programa es utilizar Open XML SDK 2.0 para Microsoft Office, ya que este SDK está diseñado para generar documentos en el lado del servidor. Estos documentos se almacenarán en una biblioteca de documentos de SharePoint.
Una vez que el documento se ha generado automáticamente, es posible que sea necesario imprimirlo, convertirlo al formato WordprocessingML, PDF, XPS o MHTML y luego enviarlo por correo electrónico a una variedad de usuarios.
Como parte de la conversión, podemos utilizar los servicios de automatización de Word para actualizar campos del documento, como la tabla de contenido del documento.
Utilice Open XML SDK 2.0 para Microsoft Office y Word Automation Services para crear una solución integral completa sin automatizar la aplicación cliente de Word.
Una de las principales ventajas del Servicio de automatización de Word, que no está disponible con la aplicación cliente de Word, es su escalabilidad. El Servicio de automatización de Word se puede configurar para utilizar múltiples procesadores y se puede configurar en función de la carga. se requiere equilibrio.
Otra ventaja destacada es que el servicio de automatización de Word mantiene una experiencia casi idéntica a la del cliente de Word en términos de diseño de documentos (incluida la paginación). Ya sea que el documento se procese en el lado del servidor o en el del cliente, su diseño es el mismo. rtf)
Página web de un solo archivo (.mht, .mhtml)
Documento XML de Word 2003 (.xml)
Documento XML de Word (.xml)
p>Formatos de documentos de destino admitidos
Formato de documento portátil (.pdf)
Especificación de papel XML abierto (.xps)
Para Word Funciones adicionales de los servicios de automatización
Además de cargar y guardar documentos en otros formatos, los servicios de automatización de Word también se pueden utilizar para cargar y guardar documentos en otros formatos.
Podemos utilizar el Servicio de Automatización de Word para actualizar la tabla de contenidos del documento, tablas de otorgamientos y campos de índice, lo cual es muy importante a la hora de generar documentos. Determinar los números de página de un documento puede ser una tarea muy difícil si la tabla de contenido no se actualiza correctamente después de generar el documento, y Word Automation Services realiza esta tarea con mucha facilidad.
Los documentos de procesamiento de textos XML abiertos contienen una variedad de tipos de campos que se pueden utilizar para agregar contenido dinámicamente al documento. Podemos utilizar el Servicio de automatización de Word para volver a calcular todos los campos. Por ejemplo, agregue un tipo de campo que inserte la fecha actual en el documento. De esta manera, cuando se actualizan todos los campos, su contenido relacionado también se actualiza, lo que hace que el documento muestre la fecha actual en la ubicación de los campos.
Una de las formas más efectivas de utilizar controles de contenido es vincular contenido a elementos XML personalizados. Para obtener más información sobre cómo hacer esto, consulte Creación de un sistema de generación de documentos a partir de plantillas con Word 2010 y Word 2007, así como varios otros recursos. El contenido de un control de contenido vinculado se puede actualizar reemplazando elementos XML personalizados sin cambiar el cuerpo del documento. El cuerpo del documento contiene valores almacenados en caché para todos los controles de contenido vinculados y, si simplemente reemplaza elementos XML personalizados, los valores almacenados en caché en el cuerpo del documento no se actualizarán. Si el usuario simplemente está viendo usando un programa cliente de Word, entonces no hay problema, pero si queremos profundizar en el uso del marcado WordprocessingML, tenemos que actualizar el valor almacenado en caché en el cuerpo del documento. Y el servicio de automatización de Word hace precisamente eso.
Reemplazar el formato representado por el elemento AltChunk es una buena manera de importar contenido HTML a un documento WordprocessingML. 2007 analiza cómo reemplazar formatos, cómo utilizarlos y proporciona otros recursos para comenzar. Sin embargo, esto debe hacerse antes de abrir y guardar el documento que contiene el elemento altChunk. El documento contiene HTML pero no tiene el marcado habitual de WordprocessingML, como párrafo, ejecución y texto. Ahora podemos usar el Servicio de automatización de Word para importar HTML (o contenido alternativo en otros formatos) y convertirlo en formato WordprocessingML, aplicando así estilo a los párrafos de WordprocessingML.
También puedes convertir formatos de versiones anteriores de Word para realizar la conversión. Por ejemplo, si está creando una aplicación empresarial con miles de usuarios y algunos de esos usuarios utilizan Word 2007 o Word 2003 para editar documentos Open XML, puede convertir los documentos Open XML para que sean compatibles con el formato Word 2007 o Word 2003. .
Desventajas del Servicio de Automatización de Word
El Servicio de Automatización de Word carece de capacidades de impresión, pero podemos convertir documentos de WordprocessingML directamente a formato PDF o XPS y luego imprimirlos.
Algunas personas pueden preguntar: ¿es posible utilizar el servicio de automatización de Word sin comprar e instalar SharePoint Server 2010? La respuesta es que el Servicio de automatización de Word se basa en otras características de SharePoint 2010. Es solo una característica de SharePoint 2010. Solo necesitamos comprar e instalar SharePoint Server 2010 para usar esta característica. SharePoint Server 2010 está incluido en Standard y Enterprise. ediciones de SharePoint 2010. versión.
Cómo funciona el Servicio de automatización de Word
De forma predeterminada, el Servicio de automatización de Word se instala y ejecuta con SharePoint Server 2010.
Para utilizar el Servicio de automatización de Word, utilice su interfaz de programación para iniciar tareas de conversión y, para cada tarea de conversión, especifique los archivos, carpetas o bibliotecas de documentos que se convertirán. Cuando inicia una tarea de conversión, Servicios de automatización de Word inicia una cantidad específica de subprocesos de conversión en cada servidor según la información de configuración del usuario. Puede especificar la frecuencia con la que se realizan las tareas de conversión y puede especificar el número de conversiones que realizará cada hilo de conversión. Además, puede especificar el porcentaje máximo de memoria que puede utilizar el servicio de automatización de Word.
El servicio de automatización de Word se puede configurar para que no haga un uso excesivo de los recursos de SharePoint Server y usted puede determinar cómo configurar el servicio de automatización de Word según sus expectativas para el uso de SharePoint Server. Si solo está utilizando el Servicio de automatización de Word para realizar conversiones de documentos, puede considerar dejar que el Servicio de automatización de Word ocupe la mayor parte del tiempo del procesador, aunque si está realizando conversiones en segundo plano de baja prioridad, deberá configurarlo en consecuencia.
Nota importante
Se recomienda que el número de procesadores ocupados por un proceso de trabajo nunca supere el del servidor menos uno. Por ejemplo: para el servidor i de 4 núcleos, el número máximo de subprocesos de traducción no debe exceder 3.
Si está en una granja de servidores, para el servidor con la menor cantidad de procesadores, la cantidad de procesadores ocupados por el proceso de trabajo no debe exceder la cantidad de procesadores en la granja de servidores menos uno.
Se recomienda que cada proceso de trabajo procese un máximo de 90 conversiones de documentos por minuto.
Escriba código que no solo inicie una instancia de conversión, sino que también supervise el proceso de conversión para notificar o alertar al usuario cuando se completen conversiones más grandes.
Word Automation Services también permite la configuración de la conversión desde 4 aspectos.
Limita el número de formatos de documentos admitidos.
Establece el número de documentos que se pueden convertir cuando se reinicia el hilo de conversión. Esto es valioso porque los documentos no válidos pueden hacer que el servicio de automatización de Word consuma recursos de memoria excesivos.
Establece el número de veces que Word Automation Services intenta convertir un documento. De forma predeterminada, el valor es 2, lo que significa que si Word Automation Services no puede convertir un documento, solo lo intentará nuevamente (en la tarea de conversión actual).
Establezca cuánto tiempo después de que el hilo de conversión comience a monitorearse. Esto es valioso porque el servicio de automatización de Word puede monitorear las conversiones para garantizar que cada proceso de conversión no se detenga.