Imports GrapeCity.ActiveReports Imports GrapeCity.ActiveReports.Document Public Class subrptAuswertung Property whatshallwedo As String = "" Public Rechnungssumme As Double = 0 Public Vorkostensumme As Double = 0 Public MargeSumme As Double = 0 Public AnzahlSumme As Double = 0 Public AnzahlProz As Double = 0 Public c As Integer = 0 ' Wiederholungscounter Private Sub Detail_Format(sender As Object, e As EventArgs) Handles Detail.Format 'If frmAuswertung.Jahresauswertung = False Then ' Try ' txtMonat.Text = Fields.Item("Monat").Value ' txtAbfertigungsdatum.Text = Fields.Item("Jahr").Value 'VERAG_PROG_ALLGEMEIN.SQL.checkNullStr(Fields.Item("Abfertigungsdatum").Value).Substring(6) ' Catch ' txtMonat.Text = "-" ' txtAbfertigungsdatum.Text = "-" ' End Try 'ElseIf frmAuswertung.Jahresauswertung = True Then ' txtMonat.Text = "-" ' txtAbfertigungsdatum.Text = VERAG_PROG_ALLGEMEIN.SQL.checkNullStr(Fields.Item("Jahr").Value) 'End If Select Case whatshallwedo Case "Jahresauswertung" txtMonat.Text = "-" txtAbfertigungsdatum.Text = VERAG_PROG_ALLGEMEIN.SQL.checkNullStr(Fields.Item("Jahr").Value) Case Else Try txtMonat.Text = Fields.Item("Monat").Value txtAbfertigungsdatum.Text = Fields.Item("Jahr").Value 'VERAG_PROG_ALLGEMEIN.SQL.checkNullStr(Fields.Item("Abfertigungsdatum").Value).Substring(6) Catch txtMonat.Text = "-" txtAbfertigungsdatum.Text = "-" End Try End Select txtAnzahl.Text = VERAG_PROG_ALLGEMEIN.SQL.checkNulDbl(Fields.Item("Anzahl").Value) txtRechnungen.Text = CDbl(VERAG_PROG_ALLGEMEIN.SQL.checkNulDbl(Fields.Item("Rechnungen").Value)).ToString("c2") txtVorkosten.Text = CDbl(VERAG_PROG_ALLGEMEIN.SQL.checkNulDbl(Fields.Item("Vorkosten").Value)).ToString("c2") txtMarge.Text = (txtRechnungen.Text - txtVorkosten.Text).ToString("c2") Dim i As Double = CDbl((100 * txtMarge.Text) / txtRechnungen.Text).ToString("N2") txtMargeProz.Text = i & "%" If c Mod 2 = 0 Then txtMonat.BackColor = Color.White txtAnzahl.BackColor = Color.White txtRechnungen.BackColor = Color.White txtVorkosten.BackColor = Color.White txtAbfertigungsdatum.BackColor = Color.White txtMarge.BackColor = Color.White txtMargeProz.BackColor = Color.White Else txtMonat.BackColor = System.Drawing.Color.FromArgb(CType(CType(240, Byte), Integer), CType(CType(245, Byte), Integer), CType(CType(255, Byte), Integer)) txtAnzahl.BackColor = System.Drawing.Color.FromArgb(CType(CType(240, Byte), Integer), CType(CType(245, Byte), Integer), CType(CType(255, Byte), Integer)) txtRechnungen.BackColor = System.Drawing.Color.FromArgb(CType(CType(240, Byte), Integer), CType(CType(245, Byte), Integer), CType(CType(255, Byte), Integer)) txtVorkosten.BackColor = System.Drawing.Color.FromArgb(CType(CType(240, Byte), Integer), CType(CType(245, Byte), Integer), CType(CType(255, Byte), Integer)) txtAbfertigungsdatum.BackColor = System.Drawing.Color.FromArgb(CType(CType(240, Byte), Integer), CType(CType(245, Byte), Integer), CType(CType(255, Byte), Integer)) txtMarge.BackColor = System.Drawing.Color.FromArgb(CType(CType(240, Byte), Integer), CType(CType(245, Byte), Integer), CType(CType(255, Byte), Integer)) txtMargeProz.BackColor = System.Drawing.Color.FromArgb(CType(CType(240, Byte), Integer), CType(CType(245, Byte), Integer), CType(CType(255, Byte), Integer)) End If Rechnungssumme = Rechnungssumme + txtRechnungen.Text Vorkostensumme = Vorkostensumme + txtVorkosten.Text MargeSumme = MargeSumme + txtMarge.Text AnzahlSumme = AnzahlSumme + txtAnzahl.Text AnzahlProz = AnzahlProz + i Try Dim dprechnungen, dpvorkosten, dpmarge As New GrapeCity.ActiveReports.Chart.DataPoint If frmAuswertung.Jahresauswertung = False Then dprechnungen.XValue = VERAG_PROG_ALLGEMEIN.SQL.checkNullStr(Fields.Item(4).Value).Substring(3) Else dprechnungen.XValue = VERAG_PROG_ALLGEMEIN.SQL.checkNullStr(Fields.Item("Jahr").Value) End If dprechnungen.YValues = New Chart.DoubleArray(New Double() {VERAG_PROG_ALLGEMEIN.SQL.checkNulDbl(Fields.Item("Rechnungen").Value)}) Chart.Series("Rechnungen").Points.Add(dprechnungen) dpvorkosten.XValue = dprechnungen.XValue 'dpvorkosten.XValue = VERAG_PROG_ALLGEMEIN.SQL.checkNullStr(Fields.Item(4).Value).Substring(3) dpvorkosten.YValues = New Chart.DoubleArray(New Double() {VERAG_PROG_ALLGEMEIN.SQL.checkNulDbl(Fields.Item("Vorkosten").Value)}) Chart.Series("Vorkosten").Points.Add(dpvorkosten) dpmarge.XValue = dprechnungen.XValue 'dpvorkosten.XValue = VERAG_PROG_ALLGEMEIN.SQL.checkNullStr(Fields.Item(4).Value).Substring(3) dpmarge.YValues = New Chart.DoubleArray(New Double() {txtMarge.Text}) Chart.Series("Marge").Points.Add(dpmarge) Catch ex As Exception End Try c = c + 1 End Sub Private Sub rptAuswertung_ReportStart(sender As Object, e As EventArgs) Handles Me.ReportStart DataSource = frmAuswertung.dt 'frmAuswertung.ds.Tables(0) End Sub Private Sub PageFooter_Format(sender As Object, e As EventArgs) Handles PageFooter.Format End Sub Private Sub Detail_AfterPrint(sender As Object, e As EventArgs) Handles Detail.AfterPrint End Sub Private Sub ReportFooter1_Format(sender As Object, e As EventArgs) Handles ReportFooter1.Format txtMargeSumme.BackColor = System.Drawing.Color.FromArgb(CType(CType(240, Byte), Integer), CType(CType(245, Byte), Integer), CType(CType(255, Byte), Integer)) txtRechnungenSumme.BackColor = System.Drawing.Color.FromArgb(CType(CType(240, Byte), Integer), CType(CType(245, Byte), Integer), CType(CType(255, Byte), Integer)) txtVorkostenSumme.BackColor = System.Drawing.Color.FromArgb(CType(CType(240, Byte), Integer), CType(CType(245, Byte), Integer), CType(CType(255, Byte), Integer)) txtAnzahlSumme.BackColor = System.Drawing.Color.FromArgb(CType(CType(240, Byte), Integer), CType(CType(245, Byte), Integer), CType(CType(255, Byte), Integer)) TxtSumme.BackColor = System.Drawing.Color.FromArgb(CType(CType(240, Byte), Integer), CType(CType(245, Byte), Integer), CType(CType(255, Byte), Integer)) txtMargeSumme.Text = MargeSumme.ToString("c2") txtRechnungenSumme.Text = Rechnungssumme.ToString("c2") txtVorkostenSumme.Text = Vorkostensumme.ToString("c2") txtAnzahlSumme.Text = AnzahlSumme.ToString txtMargeSchnitt.Text = (MargeSumme / c).ToString("c2") txtRechnungenSchnitt.Text = (Rechnungssumme / c).ToString("c2") txtVorkostenSchnitt.Text = (Vorkostensumme / c).ToString("c2") txtAnzahlSchnitt.Text = (AnzahlSumme / c).ToString("n2") txtMargeProzSchnitt.Text = (AnzahlProz / c).ToString("n2") & "%" End Sub End Class