Brevfletning med betingelser for felter

Brugerhjælp og support til tekstbehandling i LibreOffice Writer

Moderators: Lodahl, Ejnar

Post Reply
tr_lhf
Posts: 7
Joined: 4. Mar 2009 15:33

Brevfletning med betingelser for felter

Post by tr_lhf »

Hej alle

Har et problem med brevfletning, som jeg ikke kan gennemskue hvordan kan løses....

Problemet er når indholdet af to felter er ens i databasen, f.eks. navn og navn2 og den brevfletningsskabelon jeg bruger indeholder disse felter.:

Navn
Navn2
Adresse
Adresse2
Postnr By

Det jeg kan gerne skulle ende ud med er, at få tilføjet en betingelse i brevfletningsskabelonen, der sammenligner de to felter navn og navn2 og såfremt de er ens skal den ene fjernes ellers skal de begge skrives.

Jeg har løst problemet i Word med lidt vb kode, men jeg kan ikke gennemskue hvor og hvordan det gøres i Writer...

Mvh.
Lars
Jens S
Posts: 1091
Joined: 25. Mar 2007 22:42

Post by Jens S »

Hej

Prøv at sætte cursor lige foran feltet <Navn2>, tryk Ctrl+F2 (Indsæt Felt-Andre). Her vælger du Funktioner - Skjult afsnit og skriver i Betingelse:
Navn=Navn2 og sluttelig Indsæt og Luk
Jeg var lige inde i hjælp og det er muligt at lighedstegnet i betingelsen skal erstattes med == eller EQ

mvh
Jens
tr_lhf
Posts: 7
Joined: 4. Mar 2009 15:33

Post by tr_lhf »

Det virkede jo lige efter hensigten :-) Noget nemmere end i MS Word.

Nu skal jeg bare lige have styr på hvordan blanke linier ikke skrives.

Mvh.
Lars
Jens S
Posts: 1091
Joined: 25. Mar 2007 22:42

Post by Jens S »

Hej
Nu skal jeg bare lige have styr på hvordan blanke linier ikke skrives.
På samme måde, men i betingelse skriver du: NOT feltnavn , så vil den ikke udskrive dette afsnit med feltet uden indhold

mvh
Jens
tr_lhf
Posts: 7
Joined: 4. Mar 2009 15:33

Post by tr_lhf »

Er kommet rigtigt langt, så først en stor tak for hurtig hjælp.

Men hvordan dælen sikrer jeg mig, at den ikke udskriver en blank linie såfremt Navn2 er blank i databasen?

Det virker fint såfremt Navn er lig med Navn2, så fjerner den Navn2 helt og ingen blank linie. Og Adresse2 bliver kun udskrevet såfremt den indeholder noget og ingen blank linie.
Men men, såfremt Navn2 er tom, så udskriver den en blank linie. Kan man fjerne linefeed/carriage return på en eller anden snedig måde?

Jeg har følgende:

Navn
[skjult afsnit: Navn=Navn2]Navn2
Adresse
[skjult afsnit: NOT Adresse2] Adresse2
Postnr By

Mvh.
Lars
Yenzen
Posts: 46
Joined: 2. Mar 2006 12:33
Location: Århus

Post by Yenzen »

Ved ikke om du har prøvet dette:
I brevfletningsguiden trin 3 punkt 2: Indsæt en adresseblok, er der mulighed for at sætte flueben i Udelukker linjer med kun tomme felter.

Jeg har ikke nogen særlig god erfaring med adresseblok-systemet, så jeg ved ikke om det er brugbart i din situation.

/JC
tr_lhf
Posts: 7
Joined: 4. Mar 2009 15:33

Post by tr_lhf »

Det tog mig laaaang og en simpel tastefejl før end jeg fik det til at virke...

Oprettede et skjult afsnit før feltet Navn2 med flg. betingelse: [databasenavn.databasetabel.navn==databasenavn.databasetabel.navn2]
Det resulterede i, at den ikke skrev Navn2 såfremt Navn og Navn2 var enslydende, hvilket var fint nok, men den efterlod stadig en blank linie.

Prøvede, prøvede og en simpel tastefejl løste problemet - der skal kun være et enkelt = tegn i betingelsen!
Har ellers gennemstøvet dokumentationen for OpenOffice og der angives gyldige operatorer kun som "==" eller "EQ" når der skal sammenlignes i betingelser.

Jeg er en glad mand, der bare skal hitte ud af hvordan man får strikket en skabelon sammen til brevfletning når datakilden er txt filer med skiftende filnavne (dog med samme feltnavne).

Endnu en gang takker jeg for super god og hurtig support. Det er ikke sidste gang jeg søger hjælp her, i og med min arbejdsplads skifter til OpenOffice inden sommerferien.

Mvh.
Lars
Post Reply