Hallo.
Habe gerade ein Problem.
In einem Bericht hatte ich bisher im Gruppenkopf folgenden Code:
Private Sub Gruppenkopf2_Print(Cancel As Integer, PrintCount As Integer)
10 On Error GoTo Gruppenkopf2_Print_Error
20 Me.ScaleMode = 7 'Zentimeter
30 If IsNull(Me!zusammfass_Nr) Then
40 Me.Line (5.6, 2.672)-(18, 2.672)
50 Else
60 Me.Line (2.4, 2.672)-(18, 2.672)
70 End If
80 On Error GoTo 0
90 Exit Sub
Gruppenkopf2_Print_Error:
100 MsgBox "Error " & Err.Number & " in Zeile " & Erl & " (" & Err.Description & ") in procedure Gruppenkopf2_Print of VBA Dokument Report_rptRechnung_Standart"
End Sub
Das hatte wunderbar geklappt.
Nun muss ich diesen Bericht als Unterbericht einbauen.
Und jetzt habe ich das Problem, das mir die Linie nicht mehr gezeichnet wird.
Wie kann ich im vom Hauptbericht aus Linien im Gruppenfuß des Unterberichts zeichnen?
Gruß trebuh
Hallo,
benutze mal das Format-Ereignis von Gruppenkopf2..
Hallo,
du kannst Linien auch im Page-Ereignis ziehen, denn sie sind ja unabhängig von Berichtsbereichen, da ihre Position fest vorgegeben wird.
Nachtrag:
Wenn die Linie abhängig von Datenfeldern gezeichnet werden soll, so kannst du das folgendermaßen erreichen:
Lege ein Linien-Steuerelement (bspw. "grpLine") an der gewünschten Position (=Höhe) an und ändere lediglich ihren Anfang und ihre Länge.
Beispiel:Private Sub Gruppenkopf2_Print(Cancel As Integer, PrintCount As Integer)
On Error GoTo Gruppenkopf2_Print_Error
If IsNull(Me!zusammfass_Nr) Then
Me.grpLine.Left = 5.6 * 567 ' centimeters to twips
Me.grpLine.Length 12.4 * 567
Else
Me.grpLine.Left = 2.4 * 567 ' centimeters to twips
Me.grpLine.Length 15.6 * 567
End If
On Error GoTo 0
Exit Sub
Gruppenkopf2_Print_Error:
MsgBox "Error " & Err.Number & " in Zeile " & Erl & " (" & Err.Description & ") in procedure Gruppenkopf2_Print of VBA Dokument Report_rptRechnung_Standart"
End Sub
Hallo MaggieMay und Franz,
@ Franz
Danke für den Hinweis. Es funkioniert. :)
@ MaggieMay
Ebenfalls Danke. Deinen Tipp werde ich noch ausprobieren.
Gruß und schönes Wochenende
trebuh
@Franz:
Zitat von: DF6GL am Februar 26, 2016, 19:18:47
benutze mal das Format-Ereignis von Gruppenkopf2
was macht den Unterschied? Kannst du das erklären?
Hallo,
Im Print-Ereignis sind Größenänderungen von Objekten nicht mehr möglich. Das war meine ad-hoc- Vermutung... ;-)
Aber das ist hier nicht das Problem.
Vermutlich liegen die Linien außerhalb oder genau auf der Begrenzung des Gruppenkopfes, so dass sie einfach nicht mehr (wegen z. B. Rundungsproblemen) im UBr zu sehen sind. Eine leichte Vergrößerung der Gruppenkopfhöhe oder eine Verkleinerung der Line-Parameter brächte die Linien vermutlich auch im Print-Ereignis zu Vorschein.
Statt die Linien (mit konstanten Parametern) zu zeichen, könnte alternativ auch ein Linien-Steuerelement verwendet werden.
@df6gl:
Zitatkönnte alternativ auch ein Linien-Steuerelement verwendet werden.
OK, das verstehe ich wieder, denn das entspräche ja auch meinem Vorschlag.