page break a multipal page report by individual

J

Jacqueline

I am creating a report that creates a student packet for individual students.
Some students will have two pages others, depending on how many classes they
are taking can have three or more pages.

I want to print these front to back. However if a students report runs to
three or more pages the whole run will be off, and student will not get
correct information once the first three page report occurs in the run. Is
there a way to insert a page break that will reonize the individual records
and not print a student third page on another student's report?

I am so close to getthing this all pulled together, I would hate to let a
page break mess me up!!! Help.
Thanks in advance for any help you can give.
 
F

fredg

I am creating a report that creates a student packet for individual students.
Some students will have two pages others, depending on how many classes they
are taking can have three or more pages.

I want to print these front to back. However if a students report runs to
three or more pages the whole run will be off, and student will not get
correct information once the first three page report occurs in the run. Is
there a way to insert a page break that will reonize the individual records
and not print a student third page on another student's report?

I am so close to getthing this all pulled together, I would hate to let a
page break mess me up!!! Help.
Thanks in advance for any help you can give.

What does the first 3 pages have anything to do with this?
Remove anything from the report that limits how many pages will print.

You are using a StudentID field to identify each student, right?
In Design View, set the Report's Sorting and Grouping (View + Sorting
and Grouping) to group on the StudentID.
In the upper panel's Field/Expression column, enter [StudentID].
Then set the Group Header property in the lower panel to Yes.
Save the settings.
Then set the StudentID group header's ForceNewPage property to
BeforeSection (it's on the Group Header property sheet's Format tab).

Each Students records will begin on a new page. If the number of pages
needed for that student are 8, all 8 will print. If only 1 page is
needed, only 1 will print.
 
L

Larry Daugherty

Hi Fred,

I believe this is my first question this century....

A couple of bonus questions to which you may already know the answers.
I have no immediate need to know but others might.

1. I have an Office Jet that can print both sides of the paper.
Great paper mileage but could cause a problem here because it would
print the next student's first page on the back of the current
student's page 3 unless provision were made to force an additional
(blank) page if page # MOD 2 <> 0 and this is the last page for this
group/student.

2. I also have an All-in-one that offers double sided printing with
manual intervention. I suspect that the solution to #1 would also
serve there.

If too much hassle then let it be. I my curiosity gets the better of
me I may dig and test.

Thanks
--
-Larry-
--

fredg said:
I am creating a report that creates a student packet for individual students.
Some students will have two pages others, depending on how many classes they
are taking can have three or more pages.

I want to print these front to back. However if a students report runs to
three or more pages the whole run will be off, and student will not get
correct information once the first three page report occurs in the run. Is
there a way to insert a page break that will reonize the individual records
and not print a student third page on another student's report?

I am so close to getthing this all pulled together, I would hate to let a
page break mess me up!!! Help.
Thanks in advance for any help you can give.

What does the first 3 pages have anything to do with this?
Remove anything from the report that limits how many pages will print.

You are using a StudentID field to identify each student, right?
In Design View, set the Report's Sorting and Grouping (View + Sorting
and Grouping) to group on the StudentID.
In the upper panel's Field/Expression column, enter [StudentID].
Then set the Group Header property in the lower panel to Yes.
Save the settings.
Then set the StudentID group header's ForceNewPage property to
BeforeSection (it's on the Group Header property sheet's Format tab).

Each Students records will begin on a new page. If the number of pages
needed for that student are 8, all 8 will print. If only 1 page is
needed, only 1 will print.
 
J

Jacqueline

Fred,
I set the force new page as you directed on the student header, however it
did not work. One student's records ran onto three pages. The first page of
the next student's letter printed on the back of the third page of the
previous student's letter.

I was a little unclear in your referance to "upper panel's field/Expression
column, what are you referanceing by upper panel and lower panel? Do you mean
header footer? I am using 2007.
Thanks for any help you can give.
--
Jacqueline


fredg said:
I am creating a report that creates a student packet for individual students.
Some students will have two pages others, depending on how many classes they
are taking can have three or more pages.

I want to print these front to back. However if a students report runs to
three or more pages the whole run will be off, and student will not get
correct information once the first three page report occurs in the run. Is
there a way to insert a page break that will reonize the individual records
and not print a student third page on another student's report?

I am so close to getthing this all pulled together, I would hate to let a
page break mess me up!!! Help.
Thanks in advance for any help you can give.

What does the first 3 pages have anything to do with this?
Remove anything from the report that limits how many pages will print.

You are using a StudentID field to identify each student, right?
In Design View, set the Report's Sorting and Grouping (View + Sorting
and Grouping) to group on the StudentID.
In the upper panel's Field/Expression column, enter [StudentID].
Then set the Group Header property in the lower panel to Yes.
Save the settings.
Then set the StudentID group header's ForceNewPage property to
BeforeSection (it's on the Group Header property sheet's Format tab).

Each Students records will begin on a new page. If the number of pages
needed for that student are 8, all 8 will print. If only 1 page is
needed, only 1 will print.
 
J

Jacqueline

Larry,
You are describing my issue exactly, how do you force a blank page between
students and will that actually put a blank page in the run, huge waste of
paper??
--
Jacqueline


Larry Daugherty said:
Hi Fred,

I believe this is my first question this century....

A couple of bonus questions to which you may already know the answers.
I have no immediate need to know but others might.

1. I have an Office Jet that can print both sides of the paper.
Great paper mileage but could cause a problem here because it would
print the next student's first page on the back of the current
student's page 3 unless provision were made to force an additional
(blank) page if page # MOD 2 <> 0 and this is the last page for this
group/student.

2. I also have an All-in-one that offers double sided printing with
manual intervention. I suspect that the solution to #1 would also
serve there.

If too much hassle then let it be. I my curiosity gets the better of
me I may dig and test.

Thanks
--
-Larry-
--

fredg said:
I am creating a report that creates a student packet for individual students.
Some students will have two pages others, depending on how many classes they
are taking can have three or more pages.

I want to print these front to back. However if a students report runs to
three or more pages the whole run will be off, and student will not get
correct information once the first three page report occurs in the run. Is
there a way to insert a page break that will reonize the individual records
and not print a student third page on another student's report?

I am so close to getthing this all pulled together, I would hate to let a
page break mess me up!!! Help.
Thanks in advance for any help you can give.

What does the first 3 pages have anything to do with this?
Remove anything from the report that limits how many pages will print.

You are using a StudentID field to identify each student, right?
In Design View, set the Report's Sorting and Grouping (View + Sorting
and Grouping) to group on the StudentID.
In the upper panel's Field/Expression column, enter [StudentID].
Then set the Group Header property in the lower panel to Yes.
Save the settings.
Then set the StudentID group header's ForceNewPage property to
BeforeSection (it's on the Group Header property sheet's Format tab).

Each Students records will begin on a new page. If the number of pages
needed for that student are 8, all 8 will print. If only 1 page is
needed, only 1 will print.
 
L

Larry Daugherty

Hi Jacqueline,

Absolutely not a waste of paper. The paper, like your Access
application is there to do what you need it to do. I think that the
most elegant solution would be to put some code into the Report's
OnFormat event but I've never played there much before. If Fred or
some other developer who has doesn't come to the rescue I may have to
dig in.

If I find a solution I'll post it here. If it's some time before that
happens, I'll email it to you as well.

There are less elegant work arounds that you might want to try if the
solution is needed right away. One simple way would be using the
Sorting and Grouping functions to force a new page before each group
and force another new page after each group. You may end up with some
unnecessary blank pages but student printouts would not be mingled.

Let us know how that goes.

I was about to see if I could decode your email or ask for it for
future contact but see that I already have it. For your own
protection from Spam, encode your address. The bots that capture
addresses aren't too smart so you can use obviously illegal constructs
to defeat them. See the signature lines of others.

HTH
--
-Larry-
--

Jacqueline said:
Larry,
You are describing my issue exactly, how do you force a blank page between
students and will that actually put a blank page in the run, huge waste of
paper??
--
Jacqueline


Larry Daugherty said:
Hi Fred,

I believe this is my first question this century....

A couple of bonus questions to which you may already know the answers.
I have no immediate need to know but others might.

1. I have an Office Jet that can print both sides of the paper.
Great paper mileage but could cause a problem here because it would
print the next student's first page on the back of the current
student's page 3 unless provision were made to force an additional
(blank) page if page # MOD 2 <> 0 and this is the last page for this
group/student.

2. I also have an All-in-one that offers double sided printing with
manual intervention. I suspect that the solution to #1 would also
serve there.

If too much hassle then let it be. I my curiosity gets the better of
me I may dig and test.

Thanks
--
-Larry-
--

fredg said:
On Mon, 9 Jun 2008 15:33:02 -0700, Jacqueline wrote:

I am creating a report that creates a student packet for individual students.
Some students will have two pages others, depending on how
many
classes they
are taking can have three or more pages.

I want to print these front to back. However if a students
report
runs to
three or more pages the whole run will be off, and student
will
not get
correct information once the first three page report occurs in
the
run. Is
there a way to insert a page break that will reonize the individual records
and not print a student third page on another student's report?

I am so close to getthing this all pulled together, I would
hate
to let a
page break mess me up!!! Help.
Thanks in advance for any help you can give.

What does the first 3 pages have anything to do with this?
Remove anything from the report that limits how many pages will print.

You are using a StudentID field to identify each student, right?
In Design View, set the Report's Sorting and Grouping (View + Sorting
and Grouping) to group on the StudentID.
In the upper panel's Field/Expression column, enter [StudentID].
Then set the Group Header property in the lower panel to Yes.
Save the settings.
Then set the StudentID group header's ForceNewPage property to
BeforeSection (it's on the Group Header property sheet's Format tab).

Each Students records will begin on a new page. If the number of pages
needed for that student are 8, all 8 will print. If only 1 page is
needed, only 1 will print.
 
F

fredg

Fred,
I set the force new page as you directed on the student header, however it
did not work. One student's records ran onto three pages. The first page of
the next student's letter printed on the back of the third page of the
previous student's letter.

I was a little unclear in your referance to "upper panel's field/Expression
column, what are you referanceing by upper panel and lower panel? Do you mean
header footer? I am using 2007.
Thanks for any help you can give.

1) I have no specific experience with Access 2007, but I rather
suspect this is handled the same as in previous versions.

2) Access does not support double-sided printing. That would be a
function of your printer. If it printed on the back of the previous
student's 3rd page (not at the bottom of the previous student's data)
then the ForceNewPage did work. It printed the next student's records
on the next page. It just didn't work the way you expected (print on a
new sheet of paper).

3) My reference to the "upper panel's field/Expression .. etc." was to
guide you to how to set up a Group Header.
In Report Design View, click on View + Sorting and Grouping. The
Dialog has 2 columns and an upper and lower panel.
In the upper panel there is a Field/Expression column.
Enter the name of the field (i.e. the StudentID field) in the upper
panel's Field/Expression column.
In the lower panel set the GroupHeader to Yes.
This will create a group header on the StudentID field.
Save the change.
Then in Design View, set the ForceNewPage of this group header to
Before Section. I believe you have done this, as it seems you are
getting the next student on the next page, just not on a different
paper sheet as it would if you were printing just on one side of the
paper.

4) Without having a printer that prints duplex copies, I have no way
of testing any solution I might come up with.
As of now, anyway, I can't think of anything.
 
L

Larry Daugherty

Keep all the info that Fred has given you and then go to the Report
Footer and set Force New Page to After... Forcing each report to
begin on a new page and also forcing the trailing new page will
guarantee that no reports are mingled. Odds are that half the reports
will generate a blank page and the other half will be exactly right.
This will work for duplex printing as well as the normal, single-sided
prints.

Someone can sort out the blank paper if they wish or simply included
it with the student's package. As I said in the other part of the
thread (where I incorrectly sent you to Sorting and Grouping to find
Force New Page functionality. Of course, it isn't there, it's in
Properties...).

I just poked around in the OnFormat and OnPrint events and it seems
that although Force New Page is available elsewhere in reports, it
isn't in Group and Page footers. There are other klugey work arounds
possible, for example, generate a Section that will always be blank
and put some code in events there. But, if it's going to be a kluge
anyway, why bother?

HTH
 
J

John Spencer

One method that MAY work for you depending on your report setup. I have
briefly tested this and it SEEMS to work.

Add a group footer where you are grouping by the student id (or other unique
value)
-- Menu: VIEW: Sorting and Grouping
--Add a group footer based on the student id
--Set the group footer to show
--Close the dialog

--Set the group footer Force New Page property to After Section
--Add a page break control to the group footer (its approx the 15th control on
the toolbar)
--Add VBA code to the Format event
---- OnFormat: [Event Procedure]
---- Click three dots at end

Private Sub GroupFooter2_Format(Cancel As Integer, FormatCount As Integer)
Me.PageBreak17.Visible = Me.Page Mod 2 = 1 '<<<< enter this line
'You will need to change PageBreak17 to the name of the pagebreak control
'you added
End Sub

The "blank" page may not be completely blank. It will have the page header
and page footer printed and it will print any group headers you have set to
repeat. You could probably use code to suppress them if you felt the need to.

Yes, this will output a blank sheet of paper if you are printing only one side
of the paper. If you are doing two-sided printing, it will print a "blank" on
the second side of the paper, but the first side should have data.


John Spencer
Access MVP 2002-2005, 2007-2008
Center for Health Program Development and Management
University of Maryland Baltimore County
 
L

Larry Daugherty

Thanks John. I'll save your solution untested for later referral if
the need ever arises for me. It's not quite as elegant as if MS had
allowed setting ForceNewPage (After) in Footers :-(

Like the other suggested solution, it may be suitable to get OP
through her current issue.

--
-Larry-
--

John Spencer said:
One method that MAY work for you depending on your report setup. I have
briefly tested this and it SEEMS to work.

Add a group footer where you are grouping by the student id (or other unique
value)
-- Menu: VIEW: Sorting and Grouping
--Add a group footer based on the student id
--Set the group footer to show
--Close the dialog

--Set the group footer Force New Page property to After Section
--Add a page break control to the group footer (its approx the 15th control on
the toolbar)
--Add VBA code to the Format event
---- OnFormat: [Event Procedure]
---- Click three dots at end

Private Sub GroupFooter2_Format(Cancel As Integer, FormatCount As Integer)
Me.PageBreak17.Visible = Me.Page Mod 2 = 1 '<<<< enter this line
'You will need to change PageBreak17 to the name of the pagebreak control
'you added
End Sub

The "blank" page may not be completely blank. It will have the page header
and page footer printed and it will print any group headers you have set to
repeat. You could probably use code to suppress them if you felt the need to.

Yes, this will output a blank sheet of paper if you are printing only one side
of the paper. If you are doing two-sided printing, it will print a "blank" on
the second side of the paper, but the first side should have data.


John Spencer
Access MVP 2002-2005, 2007-2008
Center for Health Program Development and Management
University of Maryland Baltimore County

Larry said:
Keep all the info that Fred has given you and then go to the Report
Footer and set Force New Page to After... Forcing each report to
begin on a new page and also forcing the trailing new page will
guarantee that no reports are mingled. Odds are that half the reports
will generate a blank page and the other half will be exactly right.
This will work for duplex printing as well as the normal, single-sided
prints.

Someone can sort out the blank paper if they wish or simply included
it with the student's package. As I said in the other part of the
thread (where I incorrectly sent you to Sorting and Grouping to find
Force New Page functionality. Of course, it isn't there, it's in
Properties...).

I just poked around in the OnFormat and OnPrint events and it seems
that although Force New Page is available elsewhere in reports, it
isn't in Group and Page footers. There are other klugey work arounds
possible, for example, generate a Section that will always be blank
and put some code in events there. But, if it's going to be a kluge
anyway, why bother?

HTH
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top