Ed, One snag with your Rows Filter idea is that if any To Do Note has both say "GRO" and "Census" notes then both Notes will be included when the Parameter is either "GRO" or "Census". (BTW the Filter actually needs to use %FACT.NOTE2% not %INDI._ATTR-TO_DO[1].NOTE2[1]% because it is Fact Query not an Individual Query.) You can be even more selective by using the =GetLabelledText() function - see FH Help for details. Use a Column such as Note =GetLabelledText(%FACT.NOTE2%,["Heading"]) instead of the multiple Note columns Use a Rows Filter such as Exclude if =GetLabelledText(%FACT.NOTE2%,["Heading"]) is null. Then only paragraphs starting with the "Heading" parameter are included in the Result Set. Regards, Mike Tate -----Original Message----- From: family-historian-users-bounces@rootsweb.com [mailto:family-historian-users-bounces@rootsweb.com] On Behalf Of Ed Thomas Sent: 13 October 2011 18:47 To: family-historian-users@rootsweb.com Subject: Re: [FHU] Property Box Custom Tab Thanks Mike. The addition of the date box is a nice touch! Beginning each new To Do item in the notes box with a simple 'heading' (eg GRO, Census, TNA, Baptism, Obituary, etc or whatever is meaningful/pertinent for you) also allows you to refine a custom query by adding a parameter for the note box (eg exclude unless %INDI._ATTR-TO_DO[1].NOTE2[1]% contains parameter (say, GRO). Regards Ed -----Original Message----- From: family-historian-users-bounces@rootsweb.com [mailto:family-historian-users-bounces@rootsweb.com] On Behalf Of Beryl & Mike Tate Sent: 13 October 2011 16:11 To: family-historian-users@rootsweb.com Subject: Re: [FHU] Property Box Custom Tab You could add the field INDI._ATTR-TO_DO[1].DATE to your To Do tab and then won't need to go to the new Attribute to enter the date. This technique also allows you to produce a complete To Do list Query Report. Use a Query Type of Fact Set Columns such as: Owner =GetRecord(%FACT%) Note 1 =GetParagraph(%FACT.NOTE2%,1) Note 2 =GetParagraph(%FACT.NOTE2%,2) Note 3 =GetParagraph(%FACT.NOTE2%,3) Set Rows Filter: Add if =FactName(%FACT%) matches 'To Do' The multiple Note columns are needed to display all the Note otherwise you only get the first line followed by ellipsis (...) You could probably also produce a To Do Report by using the Report Options to only include To Do attributes in a Custom Report. Regards, Mike Tate
Thanks Mike. I've approached the query from the point of view of the individual rather than the fact because I want to see which individuals have outstanding research to do, rather than see what outstanding work I've got to do(if that makes sense). I've got the query set up as an individual query using the following settings: 3 Columns: %INDI%, %INDI._ATTR-TO_DO[1]% and %INDI._ATTR-TO_DO[1].NOTE2[1]% (the attribute and the note are hidden, the individual is sorted in ascending order). 2 Rows: Exclude if %INDI._ATTR-TO_DO[1].NOTE2[1]% is null, and exclude unless %INDI._ATTR-TO_DO[1].NOTE2[1]% contains "" The results provide me with what I want, namely a list of individuals with items of research to do. I'm not too bothered about seeing the full note in the results as I can double click on the individual's name to bring up the property dialogue box. I'm more than willing to admit that the query may go against convention (I don't know, does it? - and if so, does it matter so long as it gives me what I want?). What are the advantages of running the query as a fact rather than individual query? Thanks for your helpful suggestions and insights, they're much appreciated. Regards Ed ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ What would George Smiley do...? -----Original Message----- From: family-historian-users-bounces@rootsweb.com [mailto:family-historian-users-bounces@rootsweb.com] On Behalf Of Beryl & Mike Tate Sent: 14 October 2011 12:33 To: family-historian-users@rootsweb.com Subject: Re: [FHU] Property Box Custom Tab Ed, One snag with your Rows Filter idea is that if any To Do Note has both say "GRO" and "Census" notes then both Notes will be included when the Parameter is either "GRO" or "Census". (BTW the Filter actually needs to use %FACT.NOTE2% not %INDI._ATTR-TO_DO[1].NOTE2[1]% because it is Fact Query not an Individual Query.) You can be even more selective by using the =GetLabelledText() function - see FH Help for details. Use a Column such as Note =GetLabelledText(%FACT.NOTE2%,["Heading"]) instead of the multiple Note columns Use a Rows Filter such as Exclude if =GetLabelledText(%FACT.NOTE2%,["Heading"]) is null. Then only paragraphs starting with the "Heading" parameter are included in the Result Set. Regards, Mike Tate
In your particular case it makes little difference whether you use an Individual Query or a Fact Query, and I don't think you are going against any conventions. I should point out that the =GetRecord(%FACT%) Column gives exactly the same Record as your %INDI% Column i.e. it lists the Record that contains the Fact. Try it and you will see what I mean. I also think that your 2nd & 3rd hidden Columns, and the 1st Exclude if Rows filter, can all be omitted, and still produce the same Result Set. The reason that the two approaches are equivalent is because you only have at most one To Do attribute per Individual and are not listing the To Do Note text itself. The Fact Query comes into its own when you want to list multiple Facts per Individual (such as Census), and also be able to list Facts per Family record. I would advise the use of Row Filter: Exclude if =GetLabelledText(%INDI._ATTR-TO_DO.NOTE2%,["Heading"]) is null because it only checks the beginning of each Note paragraph. Whereas, Row Filter: Exclude unless %INDI._ATTR-TO_DO.NOTE2% contains ["String"] will search the entire Note and may include Records you don't want. For example if "String" is "GRO" then it will match a Note containing "GRO" or "gro" anywhere. Whereas if "Heading" is "GRO" it will only match if a Note paragraph starts with "GRO" or "gro". However, the risk of such mismatches can be minimised by ticking the 'Match case' option, but then you have to enter the Parameter in the appropriate case to match your heading. Regards, Mike Tate -----Original Message----- From: family-historian-users-bounces@rootsweb.com [mailto:family-historian-users-bounces@rootsweb.com] On Behalf Of Ed Thomas Sent: 14 October 2011 18:52 To: family-historian-users@rootsweb.com Subject: Re: [FHU] Property Box Custom Tab Thanks Mike. I've approached the query from the point of view of the individual rather than the fact because I want to see which individuals have outstanding research to do, rather than see what outstanding work I've got to do(if that makes sense). I've got the query set up as an individual query using the following settings: 3 Columns: %INDI%, %INDI._ATTR-TO_DO[1]% and %INDI._ATTR-TO_DO[1].NOTE2[1]% (the attribute and the note are hidden, the individual is sorted in ascending order). 2 Rows: Exclude if %INDI._ATTR-TO_DO[1].NOTE2[1]% is null, and exclude unless %INDI._ATTR-TO_DO[1].NOTE2[1]% contains "" The results provide me with what I want, namely a list of individuals with items of research to do. I'm not too bothered about seeing the full note in the results as I can double click on the individual's name to bring up the property dialogue box. I'm more than willing to admit that the query may go against convention (I don't know, does it? - and if so, does it matter so long as it gives me what I want?). What are the advantages of running the query as a fact rather than individual query? Thanks for your helpful suggestions and insights, they're much appreciated. Regards Ed ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ What would George Smiley do...? -----Original Message----- From: family-historian-users-bounces@rootsweb.com [mailto:family-historian-users-bounces@rootsweb.com] On Behalf Of Beryl & Mike Tate Sent: 14 October 2011 12:33 To: family-historian-users@rootsweb.com Subject: Re: [FHU] Property Box Custom Tab Ed, One snag with your Rows Filter idea is that if any To Do Note has both say "GRO" and "Census" notes then both Notes will be included when the Parameter is either "GRO" or "Census". (BTW the Filter actually needs to use %FACT.NOTE2% not %INDI._ATTR-TO_DO[1].NOTE2[1]% because it is Fact Query not an Individual Query.) You can be even more selective by using the =GetLabelledText() function - see FH Help for details. Use a Column such as Note =GetLabelledText(%FACT.NOTE2%,["Heading"]) instead of the multiple Note columns Use a Rows Filter such as Exclude if =GetLabelledText(%FACT.NOTE2%,["Heading"]) is null. Then only paragraphs starting with the "Heading" parameter are included in the Result Set. Regards, Mike Tate