Dictamen - 2. Docap (1)
La creación del docap Dictamen de escolarización sigue un proceso en el que se pueden diferenciar varias fases que describiré en esta entrada como parte de la explicación de su desarrollo.
La creación del docap Dictamen de escolarización sigue un proceso en el que se pueden diferenciar varias fases que describiré en esta entrada como parte de la explicación de su desarrollo.
Crear un docap para cumplimentar el modelo de dictamen de escolarización implica partir del modelo de informe, pensando, al igual que en éste, en la especificidad del dictamen por nueva escolarización y lo que esto implica. Además las características de este documento (su presentación exclusivamente en formato de tablas) obligan a plantearse procedimientos específicos dentro del proceso de creación del código OOo Basic.
Estos retos son debidos, como dije antes, por la formulación del Dictamen en formato tablas, las cuales, además, no están pensadas desde la perspectiva del trabajo con recursos informáticos mínimamente adaptados al objetivo que supone elaborar un dictamen de escolarización. Es más, se puede decir que en algunas cuestiones (la identificación de las NEE, por ejemplo), parece que el modelo de dictamen está pensado para ser cubierto manualmente.
Por ello, es perfectamente posible que la mejor alternativa para trabajar con este documento pudiera ser crear un formulario al estilo de los desarrollados por otras comunidades autónomas, ya que esta fórmula responde fácilmente al planteamiento objetivo del documento. Al respecto aporto los modelos (supongo vigentes, pero no me es posible asegurarlo) de las consejerías de educación de Castilla y León y Castilla-La Mancha (no son las únicas que ofrecen formularios como ayuda y delimitación de modelo documental), así como el modelo de dictamen de Asturias y una formulación del mismo como formulario pdf, a la manera de las propuestas antes indicadas.
No obstante, he considerado que también es conveniente crear un docap siguiendo los ejemplos desarrollados en entradas anteriores, tanto por que es conveniente completar el proceso iniciado manteniendo el mismo formato, como por el reto que supone crear soluciones mediante código OOo Basic. Es cierto que es un esfuerzo posiblemente poco rentable en términos de ahorro de tiempo por lo dicho en el párrafo anterior, pero no por ello menos interesante desde el punto de vista informático.
Dado que la elaboración del docap proceso va a llevar cierto tiempo, que es posible diferenciar dos fases en la elaboración de esta propuesta y que explicar el código del docap va a exigir que la entrada sea de cierta extensión, me ha parecido conveniente dividir la presentación de estos contenidos en al menos dos entradas:
Estos son los materiales que te proporciono en esta entrada...
La segunda fase de este proyecto contiene el docap InfoNE y la actualización de la fuente de datos.
Este docap es la versión Informe de lo que anteriormente fue Acreditación, aunque con dos limitaciones:
Como primer paso de este proyecto, desarrollaré un docap para cumplimentar el documento Informe Psicopedagógico (2023), específicamente de la carátula.
También está justificado no abordar ahora las implicaciones del análisis iniciado en la [entrada anterior], siendo, eso sí, necesario analizar las implicaciones que conlleva plantear este nuevo docap teniendo en cuenta las diferencias entre el documento Acreditación y el documento Informe, por un lado, y la delimitación del informe como Informe de nueva escolarización por otro.
De momento, por eso de que también en esto hay que ir por partes, en esta entrada me limito a desarrollar y aportar el documento-base del informe, adaptado al proceso de nuevas escolarizaciones. Lo puedes descargar desde el enlace que sigue.
En esta entrada explico la segunda fase de la creación del documento Acreditación. Es en ella en la que, precisamente, se genera dicho documento.
Iniciando con lo prometido nos adentraremos ahora en el análisis del conjunto de script que conforman esta docap.
Como paso previo para explicar el código del docap que constituye mi tercera propuesta de automatización del documento Acreditación, voy a dedicar esta entrada a explicar la estructura de elementos que componen la hoja de cálculo.
Respecto a esta tercera opción, ya conocemos por la [entrada anterior] su forma básica de funcionamiento y cómo está diseñado el documento Acreditación. Ahora analizaremos el papel de la fuente de datos (BD) y cómo se relaciona con el archivo Calc.
Dedicaremos esta entrada a explicar esta relación que, como podrás comprobar, es de carácter bidireccional, mientras que la que se establece entre el hoja Calc y el documento Writer es unidireccional. Esa bidireccionalidad es consecuencia de que la relación se establece mediante formulario vinculado a la BD y no mediante Combinar correspondencia, que era como se establecía en el modelo B.
Ahora, al utilizar una hoja de cálculo como servicio que intermedia entre la fuente de datos y destinatario final (el documento Writer), podemos aprovechar plenamente lo que implica esa bidireccionalidad sin comprometer las funcionalidades básicas del documento Acreditación.
Partiendo de la facilidad con la que podemos conectar un formulario (y sus campos) con una fuente de datos, la idea de introducir una hoja de cálculo como elemento intermedio de conexión (entre la fuente de datos y el documento) es aprovechar la versatilidad de Calc para trabajar con formularios, facilitando la conexión entre los controles de formulario y las celdas, así como la relativa sencillez con la que admite la creación de script de acceso a las celdas.
No obstante, este planteamiento conlleva alguna que otra "complicación" respecto a los modelos precedentes: necesitamos desarrollar mucho más código sobre la hoja de cálculo y sobre el documento Acreditación. Pero también aparecen posibilidades que hasta ahora se han mantenido ocultas: usar referencias y accesos a los marcadores de texto como modo de facilitar la ubicación de los datos en el documento nos evita trabajar con tablas así como las complicaciones de los desplazamientos por las mismas.
Y no es ésta la única ventaja, aunque sí la única de la que me aprovecho en este momento. Para desarrollos posteriores queda el trabajo unificado sobre los otros dos documentos (DE e Informe) y lo que esto supone en el desarrollo de un procedimiento de trabajo que integre los tres en un único proceso de automatización, con el ahorro de tiempo que esto puede suponer...
Aunque suponga empezar la casa por el tejado me centraré en esta entrada en el cambio que para la formulación de Acreditación supone el uso de los marcadores de texto, como trabajar con ellos y cómo acceder a sus posiciones desde OOo Basic.
En el vídeo que sigue voy a explicar cómo afecta el uso de marcadores al diseño del documento Acreditación, que hace innecesarias muchas de las precauciones que debíamos adoptar en las dos propuestas anteriores: una tabla única, por ejemplo. No obstante, también tiene sus limitaciones y bueno es conocerlas.
Disponemos de otras opciones, además de Crear macros para automatizar la el documento Acreditación, por ejemplo establecer una vinculación a fuentes de datos y, a partir de ella, utilizar la función Combinar correspondencia.
En esta ocasión vamos a desarrollar dos formulaciones del mismo principio (vinculación a fuente de datos), partiendo de una tabla de una base de datos (en anteriores ocasiones hemos trabajado con hojas de cálculo como fuentes de datos) que combinaremos con un documento Writer, el que contiene el documento Acreditación.La funcionalidad Grabar macro ha permitido crear un código mediante el cual podemos escribir contenido en cada uno de los campos del documento Acreditación. Las modificaciones posteriores nos han permitido obtener un código funcional y limpio en cuanto a su estructura. Esto permite otras posibilidades de mejora. Pero hasta este momento, no hemos resuelto una cuestión básica: facilitar al usuario la entrada de datos y resolver esto obligando al usuario acceder al IDE y modificar el código (args.value) argumento por argumento no parece una opción aceptable.
Lo malo es que esa es precisamente la solución que, en sentido estricto, podemos esperar del uso de Grabar macro: si queremos ir más allá, deberemos recurrir a nuestros conocimientos de OOo Basic para crear el código de input interactivo.
Podemos resolver este problema mediante la creación de variables String y el uso sistemático de InputBox() para crear un sistema de entrada de datos (input) que convierte nuestra macro en un script, permitiendo al usuario introducir los datos necesarios para cumplimentar el documento Acreditación.
Si optamos por este procedimiento (macro) posiblemente sea conveniente mejorar su funcionamiento y trabajar con más detalle su estructura, sustituyendo (por ejemplo) la linealidad por la modularidad, esto es: haciendo uso de subrutinas y funciones como alternativa a la secuencia repetitiva que presenta el código actual.
Ahora no me voy a detener en realizar estos cambios, ya que prefiero avanzar presentando otras opciones y me reservo las propuestas de mejora del código para más adelante.
Lo que sí voy a hacer es dejarte el [docap resultante] de este proceso por si te interesa. Corre de tu cuenta realizar las mejoras que consideres, aunque es de esperar que funcione perfectamente tal y como está.
Una que hemos [creado la macro] necesitamos adaptarla para que nos permita introducir los datos necesarios, dotando al docap de capacidad interactiva. Para ello deberemos modificar el código generado desde Grabar macro.
No puedo asegurar que esta sea la primera alternativa disponible, pero grabar una macro está dentro de las opciones que ya hemos trabajado en este blog como posible forma de automatizar procesos y constituye una evolución lógica de la propuesta de crear un documento-modelo personalizado, puesto que se basa en el mismo principio y supone aplicar una funcionalidad disponible dentro del servicio Writer.
Además, antes de crear la macro es necesario realizar algunas modificaciones al documento original por eso de lo dicho en el [vídeo que acompaña a la entrada]. Es conveniente que el documento cuente con una única tabla para simplificar los desplazamientos... también eliminar los vestigios del uso manual del mismo.