103 lines
5.0 KiB
VB.net
103 lines
5.0 KiB
VB.net
Imports GrapeCity.ActiveReports
|
|
Imports GrapeCity.ActiveReports.Document
|
|
|
|
Public Class subRptLeistungen
|
|
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
|
Dim Kdnr As Integer
|
|
Dim [Firma_ID] = "1"
|
|
|
|
Sub New(Kdnr As Integer, Optional Firma_ID As String = "1")
|
|
|
|
' Dieser Aufruf ist für den Designer erforderlich.
|
|
InitializeComponent()
|
|
Me.Kdnr = Kdnr
|
|
Me.Firma_ID = Firma_ID
|
|
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
|
|
End Sub
|
|
|
|
Private Sub Detail_Format(sender As Object, e As EventArgs) Handles Detail.Format
|
|
If Me.DataSource IsNot Nothing AndAlso DirectCast(Me.DataSource, DataTable).Rows.Count > 0 AndAlso Me.Fields IsNot Nothing Then
|
|
If Me.Fields.Item("Leistungsnummer") IsNot Nothing AndAlso Me.Fields.Item("Leistungsnummer").Value IsNot Nothing Then txtLeistungsNr.Text = Me.Fields.Item("Leistungsnummer").Value.ToString
|
|
If Me.Fields.Item("LeistungsBez") IsNot Nothing AndAlso Me.Fields.Item("LeistungsBez").Value IsNot Nothing Then txtLeistungsBez.Text = Me.Fields.Item("LeistungsBez").Value.ToString
|
|
|
|
Dim c = DirectCast(Me.DataSource, DataTable).Columns
|
|
|
|
If c.Count > 2 Then txtJahrValue1.Text = getDbNeullDbl(Me.Fields.Item(2).Value)
|
|
If c.Count > 3 Then txtJahrValue2.Text = getDbNeullDbl(Me.Fields.Item(3).Value)
|
|
If c.Count > 4 Then txtJahrValue3.Text = getDbNeullDbl(Me.Fields.Item(4).Value)
|
|
If c.Count > 5 Then txtJahrValue4.Text = getDbNeullDbl(Me.Fields.Item(5).Value)
|
|
If c.Count > 6 Then txtJahrValue5.Text = getDbNeullDbl(Me.Fields.Item(6).Value)
|
|
If c.Count > 7 Then txtJahrValue6.Text = getDbNeullDbl(Me.Fields.Item(7).Value)
|
|
|
|
End If
|
|
|
|
|
|
End Sub
|
|
|
|
Function getDbNeullDbl(v) As String
|
|
If v Is Nothing Then Return ""
|
|
If v Is DBNull.Value Then Return ""
|
|
If Not IsNumeric(v) Then Return ""
|
|
|
|
Return CDbl(v).ToString("N0")
|
|
End Function
|
|
Private Sub rptAuswertung_ReportStart(sender As System.Object, e As System.EventArgs) Handles MyBase.ReportStart
|
|
If Kdnr <= 0 Then Exit Sub
|
|
|
|
|
|
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
|
|
Case "IMEX" : [Firma_ID] = "20"
|
|
Case "ATILLA" : [Firma_ID] = "7"
|
|
Case Else
|
|
End Select
|
|
Dim sqlStr = ""
|
|
|
|
sqlStr &= " SELECT *"
|
|
sqlStr &= " FROM ( SELECT Leistungsnummer, LeistungsBez,YEAR(Abfertigungsdatum ) [Year]"
|
|
sqlStr &= " , ([tblTrdinProduct].[SteuerpflichtigerBetragLokal]+[tblTrdinProduct].[SteuerfreierBetragLokal] ) AS [Der Wert]"
|
|
sqlStr &= " FROM tblTrdinInvoice INNER JOIN (tblTrdinProduct LEFT JOIN Leistungen ON Leistungsnummer = LeistungsNr) ON (tblTrdinInvoice.Rechnungsnummer = tblTrdinProduct.Rechnungsnummer) AND (tblTrdinInvoice.Rechnungsdatum = tblTrdinProduct.Rechnungsdatum)"
|
|
sqlStr &= " WHERE RechnungsKundenNr = " & Kdnr & ""
|
|
sqlStr &= " AND Firma_ID IN (" & Firma_ID & ") "
|
|
sqlStr &= " ) AS Rg"
|
|
sqlStr &= " PIVOT( SUM([Der Wert]) FOR [Year] IN (" & getJahrString() & ")) AS MNamePivot"
|
|
sqlStr &= " order by Leistungsnummer"
|
|
|
|
Me.DataSource = SQL.loadDgvBySql(sqlStr, "FMZOLL")
|
|
|
|
Me.txtHeaderJahr1.Visible = False
|
|
Me.txtHeaderJahr2.Visible = False
|
|
Me.txtHeaderJahr3.Visible = False
|
|
Me.txtHeaderJahr4.Visible = False
|
|
Me.txtHeaderJahr5.Visible = False
|
|
Me.txtHeaderJahr6.Visible = False
|
|
|
|
If Me.DataSource IsNot Nothing Then
|
|
Dim c = DirectCast(Me.DataSource, DataTable).Columns
|
|
|
|
If c.Count > 2 Then txtHeaderJahr1.Text = c(2).ColumnName : Me.txtHeaderJahr1.Visible = True : Me.txtJahrValue1.Visible = True
|
|
If c.Count > 3 Then txtHeaderJahr2.Text = c(3).ColumnName : Me.txtHeaderJahr2.Visible = True : Me.txtJahrValue2.Visible = True
|
|
If c.Count > 4 Then txtHeaderJahr3.Text = c(4).ColumnName : Me.txtHeaderJahr3.Visible = True : Me.txtJahrValue3.Visible = True
|
|
If c.Count > 5 Then txtHeaderJahr4.Text = c(5).ColumnName : Me.txtHeaderJahr4.Visible = True : Me.txtJahrValue4.Visible = True
|
|
If c.Count > 6 Then txtHeaderJahr5.Text = c(6).ColumnName : Me.txtHeaderJahr5.Visible = True : Me.txtJahrValue5.Visible = True
|
|
If c.Count > 7 Then txtHeaderJahr6.Text = c(7).ColumnName : Me.txtHeaderJahr6.Visible = True : Me.txtJahrValue6.Visible = True
|
|
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Private Sub GroupHeader1_Format(sender As Object, e As EventArgs)
|
|
' Dim OffertenNr = Me.Fields.Item("OffertenNr").Value
|
|
' If OffertenNr IsNot Nothing Then
|
|
'lbl1Zollabfertigung.Text = OffertenNr & " - " & SQL.getValueTxtBySql("SELECT [OffertenBez] FROM [Offertenstamm] WHERE OffertenNr=" & OffertenNr, "FMZOLL")
|
|
' End If
|
|
End Sub
|
|
|
|
Function getJahrString() As String
|
|
getJahrString = ""
|
|
For j = Now.Year To 2010 Step -1
|
|
getJahrString &= "[" & j & "],"
|
|
Next
|
|
getJahrString = getJahrString.Substring(0, getJahrString.Length - 1)
|
|
End Function
|
|
End Class
|