sábado, 7 de octubre de 2023

DATOS. Textos

Docap complejo (I)

DocAp combinado Calc+Writer

Por oposición a los docap simples, denomino docap complejo a aquel que se formula sobre un documento de un servicio pero también involucra al menos a otro documento del mismo servicio o de otro. En esta entrada voy a explicar cómo crear un docap (complejo) que combina una hoja de cálculo Calc y un documento Writer, posiblemente la forma más frecuente de DocAp.

La característica que define a un docap complejo es, pues, el uso de al menos dos documentos, de lo que deriva tanto la complejidad del código (por comparación con que se necesita para crear un docap simple) como su carácter compuesto, ya que al hacer uso de al menos dos documentos es necesario atender al correcto manejo de ambos.

En esta entrada he optado por una formulación relativamente simple, en la que la relación entre los dos documentos es la que representa a imagen anterior. En ella un documento Calc soporta el código que gestional el docap y los elementos gráficos de input (controles de formulario), mientras que Writer se hace cargo del documento resultante (output).

La creación de un docap Calc+Writer requiere, en lo fundamental, seguir los mismo pasos que seguimos para crear un DocAp simple sobre Calc en lo que se refiere al input, así nos aprovechamos de la facilidad con la que Calc trabaja con los controles de formulario, lo que facilita mucho la cosa al resolver (en parte) la creación de la interface gráfica.

El acceso a los datos se realiza gracias al acceso a las celdas mediante OOo Basic, mientras que el procesamiento de los datos se realiza de modo independiente respecto a lo anterior y tiene que ver con la sintaxis de este lenguaje, de la cual ya sabemos lo suficiente.

En realidad la novedad de un DocAp complejo radica en la fase output, la cual requiere crear el segundo documento mediante código, y el paso de trabajar sobre el primero (el documento Calc) a trabajar sobre el segundo (en este caso, un documento Writer).

Toca analizar este procedimiento, empezando por la interface gráfica basada en el uso de formulario sobre Calc. Si bien el uso de formularios en Writer presenta cierta complicación, en Calc se simplifica mucho al disponer los controles de un procedimiento específico de asociación a las celda de la hoja de cálculo, lo que ahorra trabajo de programación, ya que esta parte (la creación de la interface gráfica) cae de parte de la preparación previa del documento Calc, documento gestor por función.

El paso siguiente es acceder al contenido de las celdas del gestor para asignar los datos a las variables y manipular su contenido según la naturaleza del documento a crear.

La fase output se inicia con la creación en un documento (Writer) mediante OOo Basic, un procedimiento muy similar al que empleamos para crear un nuevo documento en otro servicio, como tenderemos ocasión de comprobar. Creado este documento-soporte, lo que viene a continuación es la escritura del resultado en forma de párrafos de texto, siendo crucial mantener el foco de la acción en el documento Writer. El resultado final es este documento Calc que debes descargar para acceder al IDE para acceder al código.

No hay comentarios:

Publicar un comentario

Comenta esta entrada