Hi Victor,

A perfectly acceptable solution, I had thought there might have been an
indeterminate number of roles, but with only two and hence only two RV's,
your solution is far simpler.

My solution varied in that because of the indexing the roles with a Level
were grouped, so what it looks for is a change from the previous record
signalling the end of that group. While the group was unchanged it would
just keep appending the name to the same line, but when a change of role
occurred it would start a new line.

The best solution to all these things is the one that works for you.

Bye
Brian


-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of Victor Warner
Sent: Saturday, 3 October 2009 6:24 PM
To: [email protected]
Subject: Re: [Dataperf] Help with constructing a report

Brian,

Thank you very much for your reply. I had a number of queries in your 
response, as I could not work out for each PxFx you put whether I need 
to put the field for Qualification or Last Name, however, your 
explanation has inspired me to find a solution as follows:

1. Create index as you indicated: date + qualification + first + last
2. Two-level report sorted on date
3. Two-level header:

RV10 containing = " "
RV20 containing = " "

4. Report body
RV1 containing = If P11F8 = "Lawyer" Then P11F2 Endif    [P11F2 = Last 
Name field, P11F8 = Qualification]
RV2 containing = If P11F8="Non-qualified volunteer" Then P11F2 Endif
RV10 containing = cat.t[rv10;" "rv1]
RV20 containing = cat.t[rv20;" "rv2]

5, Two-level footer

Date [printed RV1] some text [printed RV2]

This creates exactly what I was looking for (so far!). My understanding 
of DP is still so limited, I am sure that there is something I have got 
wrong in this approach (rather than yours).

Victor Warner.


Brian Hancock wrote:
> Sometimes I worry that I should not weigh in about two-level reports
because
> I have had the need to use one, but that said I would think that you need
to
> have an index that reflects this the order, ie date + qualification +
first
> + last
>
> Create two RV's one to hold the cumulative concatenated result for a
> qualification type within the two level , and the other one to preserve
the
> value of the previous records qualification value, 
>
> If the value of the current and previous records RV's are the same the
> append the name, but if they are different append firstly a CR and then
the
> name eg something like this 
> In the Two level header
> ---Store value in RV1---
> RV1 = "" /* zap it */
> ---Store Value in RV2---
> RV2 = "" /* and zap you too */
>
>
> In the body
> ---Store value in RV1---
> IF PxFx = RV2 THEN /* another same qualification */
>    IF length[RV1] = 0 THEN 
>        RV1 = PxFx  /*ie first matching record in this group */
>    ELSE
>        RV1 = RV1 " - " PzFX /* appending with a hyphen */
>    ENDIF 
> ELSE
>    IF length[RV1] = 0 THEN 
>        RV1 = PxFx  /*ie first matching record,in this group */
>        /* this may be redundant, but its early in the 
>           And I have not had coffee yet
>        */
>    ELSE
>        RV1 = cat.c[RV1;1;PzFX] /* appending with a a prior CR */
>    ENDIF    
> ENDIF
> ---Store Value in RV2---
> RV2 = PxFx  /* remember the last qualification for next rec */
>
> In the footer print
> XXX>Two_Level_Date<XXX  XXX>RV1:A60A0<XXX
>
>
> On looking back on this, this is probably much the same as what I do when
I
> don't use  Two-Level report when others do, so perhaps it would be easier
to
> somehow use a Two Level report inside a Two Level report, but thinking
about
> that would do my head in.  I am very simple; I like a start, a middle and
an
> end. 
>
> Regards
> Brian
>
>
> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of Victor Warner
> Sent: Saturday, 3 October 2009 5:16 AM
> To: [email protected]
> Subject: [Dataperf] Help with constructing a report
>
> I would be very grateful for some help in constructing a report for 
> which I have trying in vain for some time in finding a solution. 
> Apologies for the lengthy explanation which follows:
>
> 1. Panel which includes the following fields:
>
> First Name, Last Name, date, type of qualification held
>
> Typical entries include
>
> Victor,Warner,13/10/2009,Lawyer
> Victor,Warner,09/12/2009,Lawyer
> Adam, Smith,13/10/2009,Lawyer
> Adam, Smith,09/12/2009,Lawyer
> Alison,Jones,13/10/2009, Non-qualified volunteer
> Alison,Jones,09/12/2009,Non-qualified volunteer
> David,Burden,13/10/2009,Lawyer
> David,Burden,09/12/2009,Lawyer
> Richard,Anderson,13/10/2009,Non-qualified volunteer
> Richard,Anderson,09/12/2009,Non-qualified volunteer
>
> 2. I wish to create a 2 level report sorted on date as follows:
>
> [appearing in two-level footer]
>
> 13/10/2009 Warner - Smith - Burden [One line]
> Jones - Anderson [Separate line]
>
> 09/12/2009 Warner - Smith - Burden [One line]
> Jones - Anderson [Separate line]
>
> Ie instead of
>
> 13/10/2009
> Warner
> Smith
> Burden
> Jones
> Anderson
>
>
> I can put all the names together without putting a hard return between 
> one using a report variable (eg putting a report variable in the 
> two-level header containing " ", and putting the report variable with 
> the same number in the report body, containing etc cat.t[rv1;" "P11F5].
>
> However the difficulty I have am having is putting together just the 
> names for those persons who are lawyers and then separately putting 
> together those names which are non-qualified volunteers.
>
> Help with this would be very gratefully received.
>
> Victor Warner.
>
> _______________________________________________
> Dataperf mailing list
> [email protected]
> http://lists.dataperfect.nl/mailman/listinfo/dataperf
>
> _______________________________________________
> Dataperf mailing list
> [email protected]
> http://lists.dataperfect.nl/mailman/listinfo/dataperf
>
>   
_______________________________________________
Dataperf mailing list
[email protected]
http://lists.dataperfect.nl/mailman/listinfo/dataperf

_______________________________________________
Dataperf mailing list
[email protected]
http://lists.dataperfect.nl/mailman/listinfo/dataperf

Reply via email to