it is a lot of work, but probably less then using a plugin or component
you *could* rewrite the report using print form.

You already have the base versions of the various forms you would need to print 
with from the subtables
you would also have complete control at that point.

> it has been a long time since I did subform subtotals...
> I'll look for the code/system on monday.
> 
> I'll probably have to find the one report I did...
> 2 or 3 subforms, and 3 or 4 text areas all variable frame, with break 
> points etc.
> 
> quite a beast!
> 
> But from memory...
> don't forget to sort the data ...ONE LEVEL EXTRA! place...
> sort on one more data bit then the break levels
> i.e.:
> break level 2
> Order 
> selection([subtable];[subtable]field1;>[subtable]field2;>;[subtable]field3;>)
> 
> 
> 
>> Chip:
>> 
>> Thanks for the reply. 
>> 
>> That tracks with the code that I put together after RTFM but no joy. 
>> 
>> I'm hitting On printing break in the parent form but never hitting it 
>> in the subforms. I can get a variable to print in the Break 0 area of 
>> the subform but the Subtotal function returns 0. 
>> 
>> Live and learn, eh?
>> 
>> --
>> Douglas von Roeder
>> 949-336-2902
>> 
>> On Sun, Mar 18, 2018 at 7:00 AM, Chip Scheide 
>> <4d_o...@pghrepository.org> wrote:
>>> Doug,
>>> 
>>> if you have subforms set to print variable frame you need need to 
>>> make sure the 'Z' order is correct also, otherwise variable frame 
>>> printing will not work correctly. I do not remember which way it is, 
>>> but it is either:
>>> lowest (on the 4D from) is lowest and top most variable frame object 
>>> is top,
>>> or
>>> vise versa.
>>> 
>>> some code to help(?)
>>> only one level of break processing...
>>> you may need to have one more level of break processing set then you 
>>> actually want.
>>> ie. : break level(3) for a 2 level break processing report, but that 
>>> might be ancient history
>>> 
>>> -- setup for printing --
>>> 
>>> // clear sub and grand totals
>>> l_Animal_Grand_Total:=0
>>> l_Cage_Grand_Total:=0
>>> r_Cost_Grand_Total:=0
>>> l_Animal_Sub_Total:=0
>>> l_Cage_Sub_Total:=0
>>> r_Cost_Sub_Total:=0
>>> 
>>> //locate records
>>> QUERY SELECTION([Cage_Counts];[Cage_Counts]Laboratory_ID=$Lab_IDs->{$i})
>>> // setup values to (sub)total
>>> ACCUMULATE([Cage_Counts]Number_of_Animals;\
>>> [Cage_Counts]Number_of_Cages;\
>>> [Cage_Counts]Daily_Cost)
>>> //set break level
>>> BREAK LEVEL(1)
>>> 
>>> -- in the form method --
>>> : ($Form_Event=On Printing Break)
>>> l_Animal_Sub_Total:=Subtotal([Cage_Counts]Number_of_Animals)
>>> l_Cage_Sub_Total:=Subtotal([Cage_Counts]Number_of_Cages)
>>> r_Cost_Sub_Total:=Subtotal([Cage_Counts]Daily_Cost)
>>> 
>>> l_Cage_Grand_Total:=l_Cage_Sub_Total+l_Cage_Grand_Total
>>> l_Animal_Grand_Total:=l_Animal_Sub_Total+l_Animal_Grand_Total
>>> r_Cost_Grand_Total:=r_Cost_Sub_Total+r_Cost_Grand_Total
>>> 
>>> 
>>>> Philippe:
>>>> 
>>>> Agreed ― PrintList Pro has tons of features, including subtotaling and
>>>> PrintList
>>>> Pro is one of the reasons why I've haven't needed to use commands like
>>>> Print selection since the early 90's. The app uses AreaList Pro,
>>>> fortunately, but we weren't planning on adding PrintList Pro to the
>>>> application until "the next version". I may have to modify that 
>>> part of the
>>>> plan if we can't use Print selection.
>>>> 
>>>> "BTW AreaList Pro v10 also now provides break processing. I’ll 
>>> show you at
>>>> the Summit." - I'm looking forward to that!
>>>> 
>>>> 
>>>> --
>>>> Douglas von Roeder
>>>> 949-336-2902
>>>> 
>>>> On Sat, Mar 17, 2018 at 5:52 PM, Philippe Ganter via 4D_Tech <
>>>> 4d_tech@lists.4d.com> wrote:
>>>> 
>>>>> Douglas, as you know PrintList Pro has offered this feature for ages.
>>>>> SuperReport Pro can do it, too.
>>>>> 
>>>>> BTW AreaList Pro v10 also now provides break processing. I’ll 
>>> show you at
>>>>> the Summit.
>>>>> 
>>>>> Best regards,
>>>>> --
>>>>> Phil
>>>>> forums.e-node.net
>>>>> 
>>>>> 
>>>>>> On 18 Mar 2018, at 00:51, Douglas von Roeder via 4D_Tech <
>>>>> 4d_tech@lists.4d.com> wrote:
>>>>>> 
>>>>>> I'm working on a legacy application that uses Print selection. 
>>> The report
>>>>>> consists of the main page, which is populated by the values in 
>>> the parent
>>>>>> table and uses a subform from the revenue table and a second 
>>> subform from
>>>>>> the expense table to print related records. The goal is to print
>>>>> subtotals
>>>>>> for the expense and revenue records.
>>>>>> 
>>>>>> Having not used print selection for a couple of decades, I 
>>> approached the
>>>>>> task with some trepidation and was, unfortunately, not able to Break,
>>>>>> Accumulate, and Subtotal my way to victory.
>>>>>> 
>>>>>> Based on the description I've provided, is it possible to do break
>>>>>> processing + subtotals on subforms using Print selection? If so, 
>>> what is
>>>>>> the sequence of commands that are needed?
>>>>>> 
>>>>>> I would sincerely appreciate any sample code that might shed some light
>>>>> on
>>>>>> this.
>>>>>> --
>>>>>> Douglas von Roeder
>>>>>> 949-336-2902
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> **********************************************************************
>>>>> 4D Internet Users Group (4D iNUG)
>>>>> FAQ:  http://lists.4d.com/faqnug.html
>>>>> Archive:  http://lists.4d.com/archives.html
>>>>> Options: https://lists.4d.com/mailman/options/4d_tech
>>>>> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
>>>>> **********************************************************************
>>>> **********************************************************************
>>>> 4D Internet Users Group (4D iNUG)
>>>> FAQ:  http://lists.4d.com/faqnug.html
>>>> Archive:  http://lists.4d.com/archives.html
>>>> Options: https://lists.4d.com/mailman/options/4d_tech
>>>> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
>>>> **********************************************************************
>>> ------------
>>> Hell is other people
>>>      Jean-Paul Sartre
>> 
> ------------
> Hell is other people 
>      Jean-Paul Sartre
> **********************************************************************
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **********************************************************************
------------
Hell is other people 
     Jean-Paul Sartre
**********************************************************************
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: https://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**********************************************************************

Reply via email to