Hi Michael,

Sorry, I should have given an example:
Suppose there is a daily or weekly report, which includes a database query of 
birthday(s) for that report period. If so, the birthday-relevant text or table 
is included, with the specific birthdays; otherwise, no such text or table.

So the generalization is that you have a class -- say, birthdays -- and the 
test is whether you have any instances of that class for the period (or other 
domain) of interest. Writer makes it easy to conditionally hide or reveal a 
section of text, but not (AFAIK) to include as a condition whether a field is 
instantiated or empty.

The example you give is extremely interesting. I would not have thought of it, 
if only because it requires coordination of Calc and Writer [which I have not 
thought about how to do].  But the biggest essential difference is one that you 
identify -- keeping the 'conditions' outside the document itself -- where my 
initial premise was (and I think remains) to use Writer's conditional-text 
features within the Writer document.

Your example is a great one to study (and to think about how you coordinate 
Calc and Writer), but I think that Writer alone can do this job [as WordPerfect 
does] if there is a way to implement the condition that a field is either empty 
or filled/instantiated.  Moreover, that approach (rather than keeping the 
conditional text outside the document) allows the use of Writer's rich 
conditional-text features.  The one feature that I'm trying to reproduce is 
WordPerfect's ability to test whether any field of merged data is empty or 
instantiated, and use that test to conditionally hide or reveal a section of 
text.

Thanks for your reply,
John


On 2021-01-01 10:39, Michael H wrote:
I'm not sure what your use case is... (there's not much in your question
about what you are trying to do) ...so I may be in the wrong postal code
with this suggestion. I'm using mail merge, and I keep all 'conditions'
outside the document itself.

I studied the Opendocument elements and I've decided that conditional text
in LibreOffice Writer is basically a doppleganger from Opendocument 1.0
that made it into the spec, but had no functionality.

So, all text that could be "hidden" now is kept in the database that I use
for the merge (which is a registered Calc spreadsheet).  And I can build my
own if statements there in new titled columns easily.

In Calc:
Column A contains book title
Column J contains number of pages in the work.
Column Z (contains paper thickness imported from a query in the calc
spreadsheet)
Column ZA contains the SpineText with the calculation: (IF(J*Z>.25,A2,"")

While the spine text here is short, I keep the entire back cover copy (up
to 5 paragraphs) in the same database, each paragraph in a separate cell
(for convenience of editing, and to make the resulting LO Writer file more
easily deal with.) I have no conditions on that back cover text but the
same method could also apply to entire paragraphs. Each point where a style
change is required, you'll need a separate cell.

This method is limited to primary text stream, and header and footer text
on each page.  That is, I haven't been able to "merge" into adhoc text
boxes In LibreWriter, only into the primary stream and header footer text.
I have been able to shift the footer text outside the defined box to
anywhere on the page, but that limits to 1 (or 2) out of stream boxes per
page, and the text can't be rotated or shaped.

On Fri, Jan 1, 2021 at 8:56 AM John Kaufmann wrote:

WordPerfect has a very useful condition for conditional text that must be
possible in Writer, but I have not figured out how to implement: How to
hide a block or section of text (or frame/figure/table/etc) unless one or
more instances of a class (to which that text pertains) exist. Is there a
way of expressing the condition
   "If: a field {IS|IS NOT} BLANK"
that can be used in the condition to hide or expose relevant text?


--
To unsubscribe e-mail to: users+unsubscr...@global.libreoffice.org
Problems? https://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/
Posting guidelines + more: https://wiki.documentfoundation.org/Netiquette
List archive: https://listarchives.libreoffice.org/global/users/
Privacy Policy: https://www.documentfoundation.org/privacy

Reply via email to