hi

krishnanhemanth

Registered User.
Local time
Tomorrow, 03:00
Joined
Jun 12, 2009
Messages
115
i have a problem thats giving me sleepless nights

i have a form which does my invoiving
i print the invoice from the form on a A4 sheet
the print comes out pretty good ------ so far good
the issue is...
the print area (length) increases / decreases depending on the number of entries available to print.
i dont want this to happen
i want all prints to be uniform.

i have attatched some images for to be more clear
image1-- "single entry"-----shows the size of the print (length)
image2-- "3 entry"---------shows the size of the print (length)
image3--"design" ----- shows the design of the report

please help
 

Attachments

  • single entry.jpg
    single entry.jpg
    89.2 KB · Views: 147
  • 3 entry.jpg
    3 entry.jpg
    86.9 KB · Views: 139
  • design.jpg
    design.jpg
    100.4 KB · Views: 135
If I understand correctly, you want the report footer to always appear at the bottom of the page?? In other words, you want it to look as if you were using pre-printed paper?

I've attached an example. Take a look at Report1 in Print Preview.

The example I given is a variation on a technique shown here (method 2).

Basically, I've created a dummy group level in the report. In order to do this, I needed to add a new column to my source query (called Dummy). This dummy group is the last group level before your page and report footers. This group level is deliberately very small (the smaller the more accurate the positioning of the report footer). It also contains vertical lines.

The purpose of this Dummy group level is that we want to force it to be repeated at the end of our report until we get to a point where we want to print the report footer. This is achieved with the following code in the On Format event of the Dummy footer (puts the report footer at approx 10.1 inches from top of report):

Code:
Private Sub GroupFooter1_Format(Cancel As Integer, FormatCount As Integer)
    Dim sInches As Single
    Dim GrpFtrLoc As Integer
    
    sInches = 10.1     'set the position of where we want the footer (inches from top)
    
    GrpFtrLoc = CInt(sInches * 1440)            'Convert from inches to twips.
    If Me.Top < GrpFtrLoc Then                  'Not at location yet, so
        Me.MoveLayout = True                    'move to next print location.
        Me.NextRecord = False                   'Do not go to next record.
    End If                                      'Until the required offset is reached

End Sub

Hope that makes sense and helps.

Chris
 

Attachments

Users who are viewing this thread

Back
Top Bottom