Campo condicionado en Writer respecto a una Base de datos en Base

Hola, me llamo Salvador.

Entre otras cosas que estoy preguntando estos días, me ha surgido otro problema.

Necesito hacer una fusión de documento (Writer) con campos cuya fuente es una base de datos (Base). En la fusión no siempre se utilizan los mismos valores. En mi caso son infracciones que están relacionadas con leyes. Pero hay veces que la infracción no viene en la ley relacionada con el asunto que sea, si no que está referenciada en otra ley. Yo había puesto en la base de datos unos campos (NormaSecundaria) y no tengo problemas, pero a la hora de fusionar sí porque trato de poner un campo condicionado y no puedo. Lo más parecido es el texto condicionado en el que sé poner la condición pero el resultado debe ser texto y no otro campo.

Ejemplo (ficticio): Ley Tributaria en la que en el articulado dice: las infracciones a esta ley están especificadas en la Ley de Hacienda.

Yo quiero que si el campo de la ley, digamos principal, está vacío (BaseDatos.Tabla.CampoLeyPrincipal EQ “”) coja el valor del campo de la ley secundaria.

No sé si me explico y no sé si se podría hacer de alguna forma.

Saludos.
Salvador.

Echa un vistazo en Aoo forum - Base. Tal vez listando sobre una consulta en la que resuelvas la condición te pueda ayudar.

Lo más práctico es lo que m.a.riosv te sugiere, es decir, en la base haces una consulta donde trabajas la condición, de tal manera que en el campo elegido muestre lo que necesitas. Después usas la consulta como fuente de datos, en vez de usar la tabla directamente.
Un saludo!

Hola. Muchas gracias, , m. a. riosv

Esto es lo más parecido que he encontrado.

https://forum.openoffice.org/es/forum

Voy a probar y ya cuento cómo me ha ido.

Saludos. Salvador.

Esto es lo que yo he conseguido. (Mirad los archivos). He hecho un ejemplo pequeño.

Funciona bien con las tablas (Aunque queda un poco feo)
Parece que no funciona en absoluto con la consulta.

¿Cómo lo haríais vosotros? ¿Lo podéis retocar?

fusioncita.odb

fusioncitamia.odt

NUEVA EDICIÓN:

fusioncitamia.odt

No puedo subir un pdf que le he llamado resultado.pdf. Voy a poner en formato texto la plantilla, a ver si ayuda.

Nota: No me ha dejado subir el PDF de resultado. Lo había impreso virtualmente en un archivo PDF. Así que lo he impreso como un documento normal de LibreOffice:

fusioncitamia-resultado.odt

Como se puede ver, el renglón quinto (el que utiliza el campo se queda vacío …

Saludos.
Salvador.

He preferido no esperar a mañana para hacerlo, y efectivamente, era un problema de fallo de refresco a la hora de tomar las fuentes de datos. Incluso he tenido que hacerlo varias veces. Ya funciona.

Os paso lo definitivo.

fusioncitamia.odt

fusioncitamia-resultado2.odt

fusioncita.odb

Yo lo doy por resuelto, aunque tengo que revisar la cláusula Casewhen, que no tenía ni idea de que existía.

Saludos y muchas gracias.
Salvador.

He modificado la consulta, ya que en un principio la consulta que tenías era lo mismo que la tabla, mientras que tenía que hacer los cálculos que necesitabas.
Al campo que varía le he llamado ‘CampoAUsar’.
Combina el documento con los campos con origen en la consulta.
Debiera funcionar sin más problemas.

Un saludo!
16242943445852041.odb

Edición:
En el menú Ver del Writer ve a ‘Orígenes de datos’ y te saldrá en la parte superior un acceso a las bases de datos registradas, entre las cuales tendrás la que usas para el origen de datos, y en ella tendrías la consulta llamada ‘ConsultaPersona’, y a la derecha te sale una tabla (como que fuese de calc) con los resultados de la consulta.
Elimina los campos que tienes añadidos en el Writer (vamos a hacer limpieza), y ahora vas a la cabecera del campo que necesites para el texto (ID Persona) en la primera fila de texto, pinchas y arrastras hasta la posición del texto donde lo quieres poner, y repite el proceso con el resto de campos.
Así habrás colocado los campos que necesitas de la fuente que necesitas.
Al recorrer los registros irán cambiando los campos en el texto.
Además, si vas al menú Ver, puedes desmarcar la opción ‘Marcar campos’ con lo que te desaparece ese gris que supongo que es lo que dices que te resulta algo desagradable.
Otro saludo!

Pues desgraciadamente, no sale bien. Tengo que reconocer que no conocía la cláusula Casewhen. Pero no sale.

Todo eso ya estaba hecho. De todas formas, lo revisaré mañana ya. ¡¡¡ Muchas gracias !!!