Utilizar los documentos de 4D Write Pro como formularios de entrada

Traducido automáticamente de Deepl

¿Desea evitar que los usuarios modifiquen accidentalmente un determinado documento de 4D Write Pro (total o parcialmente)? ¿Está interesado en mantener intactas algunas partes de un documento(por ejemplo, dar a los usuarios la posibilidad de rellenar los campos de un acuerdo de no divulgación, garantizando al mismo tiempo que ninguna información del documento sea alterada o cambiada de ninguna manera)? Si asiente con la cabeza, ¡siga leyendo! 4D v18 R3 le permite mantener partes de sus documentos protegidas, o en otras palabras«no editables«.

HDI: Protección de documentos 4DWP

En el ejemplo de abajo, hemos creado un formulario utilizando un documento 4D Pro donde las áreas protegidas y no protegidas son claramente identificables (las áreas introducibles se muestran en blanco, las áreas no modificables se muestran en gris):

Para definir la protección en un documento se siguen dos pasos:

  • Primer paso- Definir qué parte del documento estará protegida o no (por defecto todas las partes estarán protegidas).
  • Segundo paso – Activar el indicador de protección del documento para que se tengan en cuenta los primeros ajustes.

Nuevos atributos

¿Cómo proceder? No es necesario un nuevo comando, ya que se han creado dos nuevos atributos que se utilizarán con el comando ya conocido, WP SET ATTRIBUTES: wk protected y wk protection enabled. El primer atributo (wk protected) puede fijarse a casi cualquier tipo de objetivo perteneciente a un documento(por ejemplo, párrafo, tabla, sección, filas de una tabla, imágenes ancladas, etc.). Se gestionará la herencia, por lo que si se protege una sección, no es necesario proteger los párrafos de esta sección porque estarán protegidos por defecto. Sin embargo, cabe destacar que también puede desproteger un solo párrafo dentro de una sección protegida.

Tenga en cuenta

Lo único a lo que debe prestar atención es al orden de los objetivos… lo cual tiene mucho sentido. Por ejemplo, si protege una sección, siempre puede desproteger un párrafo dentro de esa sección. Pero lo contrario no es cierto. Si protege un párrafo y luego desprotege la sección a la que pertenece, la protección del párrafo se perderá.

Ejemplo de código

Tiene un documento que debe estar completamente protegido, excepto por un par de áreas que deben ser rellenadas por el usuario final. A continuación se explica cómo configurar este documento:

// set full parts of document protected
WP SET ATTRIBUTESWP SET ATTRIBUTESWPareawk protection enabledwk true(WParea;wk protected;wk true)
// then remove protection on three ranges based on bookmarks
$range :=WP Bookmark range(WParea; "Nombre")
WP SET ATTRIBUTES ($range;wk protected;wk false)
$range :=WP Bookmark range(WParea; "Nombre")
WP SET ATTRIBUTES ($range;wk protected;wk false)
$range :=WP Bookmark range(WParea; "Ciudad")
WP SET ATTRIBUTES ($range;wk protected;wk false)
// Finally activate the document protection

Para ver una demostración de esta función, consulte el IDH anterior y la documentación.

Roland Lannuzel
- Propietario de Producto y Experto en 4D - Después de estudiar electrónica, Roland se dedicó a la informática industrial como desarrollador y consultor, construyendo soluciones para clientes con una variedad de bases de datos y tecnologías. A finales de los años 80 se enamoró de 4D y lo ha utilizado para escribir aplicaciones de negocio que incluyen sistemas de contabilidad, facturación y correo electrónico.Eventualmente se unió a la compañía en 1997, las valiosas contribuciones de Roland incluyen el diseño de especificaciones, herramientas de prueba, demos, así como la formación y hablar con la comunidad 4D en muchas conferencias. Continúa dando forma activamente al futuro de 4D definiendo nuevas características y herramientas de desarrollo de bases de datos.