Files
SDL/SDL/mdm/usrCntlMDMAuswertungen.vb

1194 lines
65 KiB
VB.net
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Imports Microsoft.Office.Interop.Outlook
Imports Microsoft.Office.Interop
Imports Microsoft.VisualBasic.FileIO
Imports System.Data.SqlClient
Imports System.Reflection
Public Class usrCntlMDMAuswertungen
Private Sub btnWord_Click(sender As Object, e As EventArgs) Handles btnWord.Click
If cbxDetails.Checked Then
Dim frmPrintLayout As New frmPrintLayout("AuswertungMWSTOffeneAntraegeMitVorauszahlungDetails")
frmPrintLayout.datvon = datAuswertungAb.Value
frmPrintLayout.Show()
Else
Dim frmPrintLayout As New frmPrintLayout("AuswertungMWSTOffeneAntraegeMitVorauszahlung")
frmPrintLayout.datvon = datAuswertungAb.Value
frmPrintLayout.Show()
End If
End Sub
Private Sub usrCntlMDMAuswertungen_Load(sender As Object, e As EventArgs) Handles Me.Load
datAuswertungAb.Value = CDate("01.01." & Now.Year - 1)
Dim dLastSaturday As Date = Now.AddDays(-(Now.DayOfWeek + 1))
'GET LAST SUNDAY
datWoelflVon.Value = Now.AddDays(-(Now.DayOfWeek + 6))
datWoelflBis.Value = Now.AddDays(-(Now.DayOfWeek))
cboUeberfaelligeBestLeistung.fillWithSQL("SELECT [SDLNr],cast([SDLNr] as varchar(3)) + ' ' + [SDLBez] FROM [Speditionsdienstleistungen] WHERE SDLTypNr<=2 ORDER BY SDLBez", False, "SDL", True)
datUeberfaelligeBestVon.Value = CDate("01." & Now.AddMonths(-2).Month & "." & Now.AddMonths(-2).Year)
datUeberfaelligeBestBis.Value = Now
kdUeberfaelligeBest.initKdBox(Me.FindForm)
KdSearchBox1.initKdBox(Me.FindForm)
MyComboBox1.fillWithSQL("SELECT [SDLNr],cast([SDLNr] as varchar(3)) + ' ' + [SDLBez] FROM [Speditionsdienstleistungen] WHERE SDLTypNr<=2 ORDER BY SDLBez", False, "SDL", True)
MyComboBox2.fillWithSQL("SELECT [SDLNr],cast([SDLNr] as varchar(3)) + ' ' + [SDLBez] FROM [Speditionsdienstleistungen] WHERE SDLTypNr<=2 ORDER BY SDLBez", False, "SDL", True)
KdSearchBox2.initKdBox(Me.FindForm)
datBenachrichtigungVon.Value = Now
datBenachrichtigungBis.Value = Now
datIDSVon.Value = CDate("01." & Now.AddMonths(-1).Month & "." & Now.AddMonths(-1).Year)
datIDSBis.Value = CDate("01." & Now.Month & "." & Now.Year).AddDays(-1)
datPLOSEVon.Value = CDate("01." & Now.AddMonths(-1).Month & "." & Now.AddMonths(-1).Year)
datPLOSEBis.Value = CDate("01." & Now.Month & "." & Now.Year).AddDays(-1)
cboIDSDateType.Items.Clear()
cboIDSDateType.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Rechnungsdatum", "RGDat"))
cboIDSDateType.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Leistungsdatum", "LDat"))
cboIDSDateType.changeItem("RGDat")
If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("MDM_Auswertungen_IDS", Me.FindForm) Then
tbcntr.TabPages.Remove(tbIDS)
End If
' MyComboBox4.fillWithSQL("SELECT [SDLNr],cast([SDLNr] as varchar(3)) + ' ' + [SDLBez] FROM [Speditionsdienstleistungen] WHERE SDLTypNr<=2 ORDER BY SDLBez", False, "SDL", True)
datLeereOBUVon.Value = CDate("01." & Now.AddMonths(-2).Month & "." & Now.AddMonths(-2).Year)
datLeereOBUbis.Value = Now
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
genCSV_startWithExcel(RadioButtonExcelAlsEMailSchicken.Checked)
End Sub
Dim WithEvents EItem As Microsoft.Office.Interop.Outlook.MailItem
Private Sub sendPerMail(path)
Dim NSpace As Microsoft.Office.Interop.Outlook.NameSpace
Dim Folder As Microsoft.Office.Interop.Outlook.MAPIFolder
Dim outApp As Microsoft.Office.Interop.Outlook.Application
outApp = New Microsoft.Office.Interop.Outlook.Application
NSpace = outApp.GetNamespace("MAPI")
Folder = NSpace.GetDefaultFolder(Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderSentMail)
EItem = Folder.Items.Add(Microsoft.Office.Interop.Outlook.OlItemType.olMailItem)
EItem.To = "a.rissbacher@woelfl-trans.at"
EItem.Subject = "Wölfl Rechnungen/Gutschriften"
EItem.Attachments.Add(path, OlAttachmentType.olByValue, 1, "WOELFL.csv ")
EItem.Display(False) 'öffnet das 'neue E-Mail-Form' von Outlook
End Sub
'schreibe jetzt den Text 'Body' in der geöffneten E-Mail 
' Private Sub EItem_Send(ByRef Cancel As Boolean) Handles EItem.Send
' EItem.SaveAs("C:\temp\test.msg") 'wenn ich in Outlook auf 'senden' klicke, wird die Mail inkl. meinem Body gespeichert.
' End Sub
Private WithEvents p As New Process
Public Sub genCSV_startWithExcel(email)
cleartmp()
Dim sPath As String = Environment.GetFolderPath(Environment.SpecialFolder.Personal) & "\VERAG\MDM\tmp\" ' My.Computer.FileSystem.GetTempFileName
If Not My.Computer.FileSystem.DirectoryExists(sPath) Then
My.Computer.FileSystem.CreateDirectory(sPath)
End If
Dim sqlstr = " SELECT CASE [BelegartenNr] WHEN 71 THEN 'GS' " &
" WHEN 70 THEN 'RG' " &
" END AS [BelegArt] " &
" ,[RechnungsNr] " &
" ,CONVERT(VARCHAR(10), [RechnungsDatum], 104) as [RechnungsDatum] " &
" ,[FilialenNr],[AbfertigungsNr],[UnterNr] " &
" ,CONVERT(VARCHAR(10), [Abfertigungsdatum], 104) as [Abfertigungsdatum] " &
" ,isnull(Adressen.WölflKundenNr,'') as WölflKundenNr " &
" ,CASE WHEN [EmpfängerStraße] IS NULL THEN [EmpfängerName 1] " &
" ELSE [EmpfängerName 1] + ' ' +[EmpfängerName 2] " &
" END AS [Empfänger] " &
" ,CASE WHEN [EmpfängerStraße] IS NULL THEN [EmpfängerName 2] " &
" ELSE [EmpfängerStraße] " &
" END AS [EmpfängerAdresse 1] " &
" ,[EmpfängerOrt] as [EmpfängerAdresse 2] " &
" ,[Packstücke und Warenbezeichnung] as Beschreibung,[LeistungsNr],[LeistungsBez],[Steuersatz %] ,[SteuerpflichtigerGesamtbetrag] as [SteuerpflichtigerGesamtbetrag Netto] " &
" ,[SteuerfreierGesamtbetrag],[SteuerpflichtigerBetrag] as [SteuerpflichtigerBetrag Netto] ,[SteuerfreierBetrag] " &
" FROM [Rechnungsausgang] inner join [RechnungsausgangPositionen] on Rechnungsausgang.[RK_ID]=RechnungsausgangPositionen.[RK_ID] " &
" inner join Adressen on Rechnungsausgang.EmpfängerKundenNr=Adressen.AdressenNr " &
" WHERE RechnungsKundenNr = 150000 " &
" and RechnungsDatum between '" & datWoelflVon.Value.ToShortDateString & "' and '" & datWoelflBis.Value.ToShortDateString & "'"
' MsgBox(sqlstr)
Dim SQL As New SQL
Dim dt As DataTable = SQL.loadDgvBySql(sqlstr, "FMZOLL")
Dim fn As String = sPath & "WOELFL.csv" '" & Now.ToString("ddMMyyyyHHmmss") & ".csv"
Dim outFile As System.IO.StreamWriter = Nothing
Try
outFile = My.Computer.FileSystem.OpenTextFileWriter(fn, False)
Catch ex As System.Exception
MsgBox(ex.Message)
Exit Sub
End Try
Dim clmns As String = ""
For i = 0 To dt.Columns.Count - 1
clmns &= dt.Columns(i).ColumnName.ToString().Replace(";", ",") & ";"
Next
outFile.WriteLine(clmns)
For i = 0 To dt.Rows.Count - 1
clmns = ""
For j = 0 To dt.Columns.Count - 1
Dim o As Object = dt.Rows(i).Item(j).ToString
clmns &= dt.Rows(i).Item(j).ToString() & ";"
' If Not o Is Nothing AndAlso Not o.value Is Nothing Then
'clmns &= o.Value.ToString().Replace(";", ",") & ";"
' Else
' clmns &= ";"
'End If
Next
outFile.WriteLine(clmns)
Next
outFile.Close()
If email Then
sendPerMail(fn)
Else
Try
p.StartInfo.FileName = "Excel.exe"
p.StartInfo.Arguments = fn
p.EnableRaisingEvents = True
p.Start()
AddHandler p.Exited, AddressOf cleartmp 'Löscht die Temp-Dateien
Catch ex As System.Exception
MsgBox("Excel konnte nicht gestartet werden!" & vbNewLine & vbNewLine & ex.Message)
End Try
End If
End Sub
Sub cleartmp()
Dim dir = Environment.GetFolderPath(Environment.SpecialFolder.Personal) & "\VERAG\MDM\tmp\"
If System.IO.Directory.Exists(dir) Then
For Each file As String In System.IO.Directory.GetFiles(dir) ' Ermittelt alle Dateien des Ordners
Try
My.Computer.FileSystem.DeleteFile(file)
Catch ex As System.Exception : MsgBox(ex.Message) : End Try
Next
End If
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Dim kdnr As Integer = -1
If rbtUeberfaelligeBestKd.Checked Then
If kdUeberfaelligeBest.KdNr > 0 Then
kdnr = kdUeberfaelligeBest.KdNr
Else
MsgBox("Kunde auswählen!")
Exit Sub
End If
End If
cMDMAuswertung.genUeberfaelligeBestellungen(Me.FindForm, datUeberfaelligeBestVon.Value, datUeberfaelligeBestBis.Value, VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME, kdnr, cboUeberfaelligeBestLeistung._value)
End Sub
Private Sub kdUeberfaelligeBest_TextChanged(sender As Object, e As EventArgs) Handles kdUeberfaelligeBest.TextChanged
rbtUeberfaelligeBestKd.Checked = True
End Sub
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
cMDMAuswertung.genSDLrief(Me.FindForm, KdSearchBox1.KdNr, MyComboBox1._value, VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME, cbxArchiv.Checked)
End Sub
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
If KdSearchBox2.KdNr <= 0 Then MsgBox("Kunde auswählen!") : Exit Sub
Dim f As New frmSDLAbholungEintrag(KdSearchBox2.KdNr, -1)
If f.ShowDialog(Me) = DialogResult.OK Then
End If
'Dim f As New frmBenachrichtignunNeueKartenBoxen(datBenachrichtigungVon.Value, datBenachrichtigungBis.Value, KdSearchBox2.KdNr)
'f.Show()
End Sub
Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
If cbxOBU.Checked Then
cMDMAuswertung.genLeereObu(Me.FindForm, datLeereOBUVon.Value, datLeereOBUbis.Value)
Else
cMDMAuswertung.genLeereObu(Me.FindForm)
End If
End Sub
Private Sub cbx_CheckedChanged(sender As Object, e As EventArgs) Handles cbxOBU.CheckedChanged
datLeereOBUVon.Enabled = sender.checked
datLeereOBUbis.Enabled = sender.checked
End Sub
Private Sub GroupBox6_Enter(sender As Object, e As EventArgs) Handles GroupBox6.Enter
End Sub
Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click
Me.Cursor = Cursors.WaitCursor
Try
Dim dialog As New OpenFileDialog()
dialog.Filter = "CSV Files (*.csv)|*.csv"
If (dialog.ShowDialog() = DialogResult.OK) Then
Dim table As DataTable = convertToDT(dialog.FileName)
Dim cnt = 1
For Each r As DataRow In table.Rows
Dim IDS_Transaktionen As New IDS_Transaktionen
IDS_Transaktionen.BC_ID = cProgramFunctions.isLeerNothing(r("BC_ID"))
IDS_Transaktionen.BC_DESCR = cProgramFunctions.isLeerNothing(r("BC_DESCR"))
IDS_Transaktionen.CLUB_ID = cProgramFunctions.isLeerNothing(r("CLUB_ID"))
IDS_Transaktionen.COU_ISO_COD = cProgramFunctions.isLeerNothing(r("COU_ISO_COD"))
IDS_Transaktionen.COU_DESCR = cProgramFunctions.isLeerNothing(r("COU_DESCR"))
IDS_Transaktionen.CUST_COD = cProgramFunctions.isLeerNothing(r("CUST_COD"))
IDS_Transaktionen.CUST_LEVEL = cProgramFunctions.isLeerNothing(r("CUST_LEVEL"))
IDS_Transaktionen.CUST_NAME1 = cProgramFunctions.isLeerNothing(r("CUST_NAME1"))
IDS_Transaktionen.CARD_SER_NUM = cProgramFunctions.isLeerNothing(r("CARD_SER_NUM"))
IDS_Transaktionen.SOU_ISO_COD = cProgramFunctions.isLeerNothing(r("SOU_ISO_COD"))
IDS_Transaktionen.SOU_DESCR = cProgramFunctions.isLeerNothing(r("SOU_DESCR"))
IDS_Transaktionen.TRS_NUM = cProgramFunctions.isLeerNothing(r("TRS_NUM"))
IDS_Transaktionen.TRS_VERS_NUM = cProgramFunctions.isLeerNothing(r("TRS_VERS_NUM"))
IDS_Transaktionen.OUT_COD = cProgramFunctions.isLeerNothing(r("OUT_COD"))
IDS_Transaktionen.OUT_DESCR = cProgramFunctions.isLeerNothing(r("OUT_DESCR"))
IDS_Transaktionen.OUT_GRP_COD = cProgramFunctions.isLeerNothing(r("OUT_GRP_COD"))
IDS_Transaktionen.TRS_DATE = cProgramFunctions.isLeerNothing(r("TRS_DATE"))
IDS_Transaktionen.TOT_QTY = cProgramFunctions.isLeerNothingDblPKT(r("TOT_QTY"))
IDS_Transaktionen.PROD_NUM = cProgramFunctions.isLeerNothing(r("PROD_NUM"))
IDS_Transaktionen.PROD_DESCR = cProgramFunctions.isLeerNothing(r("PROD_DESCR"))
IDS_Transaktionen.SERVICE_PROD_NUM = cProgramFunctions.isLeerNothing(r("SERVICE_PROD_NUM"))
IDS_Transaktionen.SERVICE_PROD_DESCR = cProgramFunctions.isLeerNothing(r("SERVICE_PROD_DESCR"))
IDS_Transaktionen.SOU_CURR = cProgramFunctions.isLeerNothing(r("SOU_CURR"))
IDS_Transaktionen.ORIG_LIST_PRICE = cProgramFunctions.isLeerNothingDblPKT(r("ORIG_LIST_PRICE"))
IDS_Transaktionen.ORIG_REBATE = cProgramFunctions.isLeerNothingDblPKT(r("ORIG_REBATE"))
IDS_Transaktionen.ORIG_PRICE = cProgramFunctions.isLeerNothingDblPKT(r("ORIG_PRICE"))
IDS_Transaktionen.PLATTS_PRICE = cProgramFunctions.isLeerNothingDblPKT(r("PLATTS_PRICE"))
IDS_Transaktionen.SC_BC_RATE = cProgramFunctions.isLeerNothingDblPKT(r("SC_BC_RATE"))
IDS_Transaktionen.SC_IV_BC_AMNT = cProgramFunctions.isLeerNothingDblPKT(r("SC_IV_BC_AMNT"))
IDS_Transaktionen.COU_BENEFICIARY_CURR = cProgramFunctions.isLeerNothing(r("COU_BENEFICIARY_CURR"))
IDS_Transaktionen.CO_IV_BC_AMNT = cProgramFunctions.isLeerNothingDblPKT(r("CO_IV_BC_AMNT"))
IDS_Transaktionen.EUR_IV_BC_AMNT = cProgramFunctions.isLeerNothingDblPKT(r("EUR_IV_BC_AMNT"))
IDS_Transaktionen.SC_CO_EXCHRATE = cProgramFunctions.isLeerNothingDblPKT(r("SC_CO_EXCHRATE"))
IDS_Transaktionen.SC_EUR_EXCHRATE = cProgramFunctions.isLeerNothingDblPKT(r("SC_EUR_EXCHRATE"))
IDS_Transaktionen.BC_INVO_DATE = cProgramFunctions.isLeerNothing(r("BC_INVO_DATE"))
IDS_Transaktionen.INVO_NUM = cProgramFunctions.isLeerNothing(r("INVO_NUM"))
IDS_Transaktionen.FIXED_OR_TOTAL = cProgramFunctions.isLeerNothing(r("FIXED_OR_TOTAL"))
IDS_Transaktionen.BC_TYPE = cProgramFunctions.isLeerNothing(r("BC_TYPE"))
IDS_Transaktionen.COU_BENEFICIARY = cProgramFunctions.isLeerNothing(r("COU_BENEFICIARY"))
IDS_Transaktionen.CUST_BENEFICIARY = cProgramFunctions.isLeerNothingDblPKT(r("CUST_BENEFICIARY"))
IDS_Transaktionen.LEVEL_BENEFICIARY = cProgramFunctions.isLeerNothingDblPKT(r("LEVEL_BENEFICIARY"))
IDS_Transaktionen.CUST_GRP_BENEFICIARY = cProgramFunctions.isLeerNothing(r("CUST_GRP_BENEFICIARY"))
'IDS_Transaktionen.Importiert = cProgramFunctions.isLeerNothing(r("Importiert"))
IDS_Transaktionen.SAVE()
'MsgBox(table.Rows.Count)
If cnt Mod 10 = 0 Then
txtIDSEinarbeitung.Text = cnt & " / " & table.Rows.Count
Dim proz As Double = (cnt / table.Rows.Count) * 100
ProgressBar.Value = proz
lblProz.Text = proz.ToString("N2") & " %"
GroupBox7.Refresh()
My.Application.DoEvents()
End If
cnt += 1
Next
ProgressBar.Value = 100
txtIDSEinarbeitung.Text = table.Rows.Count & " / " & table.Rows.Count
lblProz.Text = "100.00 %"
End If
Catch ex As System.Exception
MsgBox(ex.Message & ex.StackTrace)
End Try
Me.Cursor = Cursors.Default
End Sub
Private Shared Function convertToDT(filePath As String) As DataTable
Dim detailDataTable As New DataTable()
Dim enc As System.Text.Encoding = System.Text.Encoding.GetEncoding(1252) '1252 = ANSI
' Dim sw As New StreamWriter("textdatei.txt", True, enc)
Using csvReader As New TextFieldParser(filePath, enc)
csvReader.SetDelimiters(New String() {";"})
csvReader.HasFieldsEnclosedInQuotes = True
Dim colFields As String() = csvReader.ReadFields()
For Each column As String In colFields
Dim datecolumn As New DataColumn(column.ToLowerInvariant)
datecolumn.AllowDBNull = True
detailDataTable.Columns.Add(datecolumn)
Next
While Not csvReader.EndOfData
Dim rowData As String() = csvReader.ReadFields '//sometimes rowData convert invalid name
For i As Integer = 0 To rowData.Length - 1
'//perform operation
Next
If rowData IsNot Nothing AndAlso rowData(0) IsNot Nothing Then
If Not (rowData(0).StartsWith("#") Or String.IsNullOrEmpty(rowData(0))) Then
detailDataTable.Rows.Add(rowData)
End If
End If
End While
End Using
Return detailDataTable
End Function
Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click
Dim displayFilter = False
Dim sqlstr As String = ""
sqlstr &= " SELECT COUNT(*) as COUNT,prod_descr,sou_descr, out_descr ,SUM(TOT_QTY) as TOT_QTY, MAX(SOU_CURR) as SOU_CURR,"
sqlstr &= " SUM(ORIG_LIST_PRICE) as ORIG_LIST_PRICE_SUM, COUNT(ORIG_LIST_PRICE) as ORIG_LIST_PRICE_COUNT,AVG(ORIG_LIST_PRICE) as ORIG_LIST_PRICE_AVG, "
sqlstr &= " SUM(SC_BC_RATE) as SC_BC_RATE_SUM, COUNT(SC_BC_RATE) as SC_BC_RATE_COUNT,AVG(SC_BC_RATE) as SC_BC_RATE_AVG, "
sqlstr &= " SUM(PLATTS_PRICE) as PLATTS_PRICE_SUM, COUNT(PLATTS_PRICE) as PLATTS_PRICE_COUNT,AVG(PLATTS_PRICE) as PLATTS_PRICE_AVG, "
sqlstr &= " SUM(EUR_IV_BC_AMNT) as EUR_IV_BC_AMNT"
sqlstr &= " FROM [tblIDS_Transaktionen] "
sqlstr &= " WHERE 1=1 "
Select Case cboIDSDateType._value
Case "LDat" : sqlstr &= " AND [TRS_DATE] between '" & datIDSVon.Value & "' and '" & datIDSBis.Value & "' "
Case "RGDat" : sqlstr &= " AND BC_INVO_DATE between '" & datIDSVon.Value & "' and '" & datIDSBis.Value & "' "
End Select
If txtOrt.Text <> "" Then
sqlstr &= " AND [OUT_DESCR] like '" & txtOrt.Text.Replace("*", "%") & "' "
End If
''Wenn eines nciht gesetzt ist...
'If Not cbxPlatts.Checked Or Not cbxDiesel.Checked Or Not cbxAdblue.Checked Then
' 'aber ein anderes schon...
' If cbxPlatts.Checked Or cbxDiesel.Checked Or cbxAdblue.Checked Then
' Dim orStr = ""
' sqlstr &= " AND [BC_ID] IN ("
' If cbxPlatts.Checked Then sqlstr &= orStr & "'3455'" : orStr = ","
' If cbxDiesel.Checked Then sqlstr &= orStr & "'3450'" : orStr = ","
' If cbxAdblue.Checked Then sqlstr &= orStr & "'3453'" : orStr = ","
' sqlstr &= " ) "
' End If
'End If
sqlstr &= " group by prod_descr,sou_descr, out_descr "
If cbxProdukt.Checked Then
sqlstr &= " order by prod_descr,sou_descr, out_descr "
Else
sqlstr &= " order by sou_descr, out_descr "
End If
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr, "FMZOLL")
'DataGridView.DataSource = dt
Dim print As New frmPrintLayout
print.Text = "Speditionsbericht"
Dim rpt As New rptIDS_TransaktionenSumary
rpt.DataSource = dt
If cbxProdukt.Checked Then
rpt.GroupHeader2.DataField = "prod_descr"
Else
rpt.GroupHeader2.Visible = False
rpt.GroupFooter2.Visible = False
End If
If cbxLand.Checked Then
rpt.GroupHeader1.DataField = "sou_descr"
Else
rpt.GroupHeader1.Visible = False
rpt.GroupFooter1.Visible = False
End If
'Gruppierung
'Filter anzeigen
' rpt.lblFilterTxt.Visible = displayFilter
' rpt.txtFilter.Visible = displayFilter
' If CheckBox1.Checked Then
'rpt.GroupHeader1.DataField = "FilialenNr" 'Gruppierung
' End If
' If rpt.DataSource.rows.count = 0 Then
'rpt.Dispose() : print.Dispose()
' MsgBox("Keine Daten vorhanden!")
' Exit Sub
' End If
Dim sum = 0
rpt.lblUeberschrift.Text = "IDS Transaktionen Summenbericht " & datIDSVon.Text & " bis " & datIDSBis.Text
rpt.lblSachbearbeiter.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME
'rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
'Dim cnt As Integer = 0
rpt.lblDat.Text = Now.ToLongDateString
Dim anzahl As Integer = 0
Dim anzahlALL As Integer = 0
Dim anzahlListenpreis As Integer = 0
Dim anzahlRate As Integer = 0
Dim anzahlPlattspreis As Integer = 0
Dim sumVolumen As Double = 0
Dim sumListenpreis As Double = 0
Dim sumPlattspreis As Double = 0
Dim sumRate As Double = 0
Dim sumBetrag As Double = 0
Dim anzahlprod As Integer = 0
Dim anzahlALLprod As Integer = 0
Dim anzahlListenpreisprod As Integer = 0
Dim anzahlRateprod As Integer = 0
Dim anzahlPlattspreisprod As Integer = 0
Dim sumVolumenprod As Double = 0
Dim sumListenpreisprod As Double = 0
Dim sumPlattspreisprod As Double = 0
Dim sumRateprod As Double = 0
Dim sumBetragprod As Double = 0
Dim anzahlLand As Integer = 0
Dim anzahlALLLand As Integer = 0
Dim anzahlListenpreisLand As Integer = 0
Dim anzahlRateLand As Integer = 0
Dim anzahlPlattspreisLand As Integer = 0
Dim sumVolumenLand As Double = 0
Dim sumListenpreisLand As Double = 0
Dim sumPlattspreisLand As Double = 0
Dim sumRateLand As Double = 0
Dim sumBetragLand As Double = 0
' rpt.lblFiliale.Text = "Alle Filialen"
AddHandler rpt.Detail.Format, Sub()
' rpt.lblProduktBeschreibung.Text = isDbnullEmpty(rpt.Fields.Item("BC_DESCR").Value, "")
rpt.lblProdukt.Text = isDbnullEmpty(rpt.Fields.Item("PROD_DESCR").Value, "")
rpt.lblLand.Text = isDbnullEmpty(rpt.Fields.Item("SOU_DESCR").Value, "")
' rpt.lblStationCode.Text = isDbnullEmpty(rpt.Fields.Item("OUT_COD").Value, "")
rpt.lblStation.Text = isDbnullEmpty(rpt.Fields.Item("OUT_DESCR").Value, "")
' rpt.lblStationGrpCod.Text = isDbnullEmpty(rpt.Fields.Item("OUT_GRP_COD").Value, "")
rpt.lblVolumen.Text = isDbnullEmptyDbl(rpt.Fields.Item("TOT_QTY").Value, 3, "")
rpt.lblWaehrung.Text = isDbnullEmpty(rpt.Fields.Item("SOU_CURR").Value, "")
rpt.lblListenpreis.Text = isDbnullEmptyDbl(rpt.Fields.Item("ORIG_LIST_PRICE_AVG").Value, 4, "")
rpt.lblPlattspreis.Text = isDbnullEmptyDbl(rpt.Fields.Item("PLATTS_PRICE_AVG").Value, 4, "")
rpt.lblRate.Text = isDbnullEmptyDbl(rpt.Fields.Item("SC_BC_RATE_AVG").Value, 4, "")
rpt.lblBetrag.Text = isDbnullEmptyDbl(rpt.Fields.Item("EUR_IV_BC_AMNT").Value, 4, "")
anzahlLand += 1
anzahlALLLand += CInt(rpt.Fields.Item("COUNT").Value)
If rpt.Fields.Item("TOT_QTY").Value IsNot Nothing AndAlso IsNumeric(rpt.Fields.Item("TOT_QTY").Value) Then
sumVolumenLand += CDbl(rpt.Fields.Item("TOT_QTY").Value)
' anzahlVolumen += 1
End If
If rpt.Fields.Item("ORIG_LIST_PRICE_SUM").Value IsNot Nothing AndAlso IsNumeric(rpt.Fields.Item("ORIG_LIST_PRICE_SUM").Value) Then
sumListenpreisLand += CDbl(rpt.Fields.Item("ORIG_LIST_PRICE_SUM").Value)
anzahlListenpreisLand += CInt(rpt.Fields.Item("ORIG_LIST_PRICE_COUNT").Value)
End If
If rpt.Fields.Item("SC_BC_RATE_SUM").Value IsNot Nothing AndAlso IsNumeric(rpt.Fields.Item("SC_BC_RATE_SUM").Value) Then
sumRateLand += CDbl(rpt.Fields.Item("SC_BC_RATE_SUM").Value)
anzahlRateLand += CInt(rpt.Fields.Item("SC_BC_RATE_COUNT").Value)
End If
If rpt.Fields.Item("PLATTS_PRICE_SUM").Value IsNot Nothing AndAlso IsNumeric(rpt.Fields.Item("PLATTS_PRICE_SUM").Value) Then
sumPlattspreisLand += CDbl(rpt.Fields.Item("PLATTS_PRICE_SUM").Value)
anzahlPlattspreisLand += CInt(rpt.Fields.Item("PLATTS_PRICE_COUNT").Value)
End If
If rpt.Fields.Item("EUR_IV_BC_AMNT").Value IsNot Nothing AndAlso IsNumeric(rpt.Fields.Item("EUR_IV_BC_AMNT").Value) Then
sumBetragLand += CDbl(rpt.Fields.Item("EUR_IV_BC_AMNT").Value)
' anzahlVolumen += 1
End If
' sumBar += CDbl(rpt.Fields.Item("Barzahlungsbetrag").Value)
' sumAnz += CDbl(rpt.Fields.Item("Anzahl").Value)
End Sub
AddHandler rpt.GroupHeader2.Format, Sub()
rpt.lblProduktUeberschrift.Text = isDbnullEmpty(rpt.Fields.Item("prod_descr").Value, "")
rpt.lblSumProdukt.Text = "Summe " & isDbnullEmpty(rpt.Fields.Item("prod_descr").Value, "")
anzahlprod = 0
anzahlALLprod = 0
anzahlListenpreisprod = 0
anzahlRateprod = 0
anzahlPlattspreisprod = 0
sumVolumenprod = 0
sumListenpreisprod = 0
sumPlattspreisprod = 0
sumRateprod = 0
sumBetragprod = 0
End Sub
AddHandler rpt.GroupHeader1.Format, Sub()
' If CheckBox1.Checked Then rpt.lblFiliale.Text = SQL.getValueTxtBySql("SELECT CAST(FilialenNr as varchar (4)) + ' ' + Grenzstelle FROM filialen WHERE FilialenNr='" & rpt.Fields.Item("FilialenNr").Value & "'", "FMZOLL")
rpt.lblLandUeberschrift.Text = isDbnullEmpty(rpt.Fields.Item("SOU_DESCR").Value, "")
rpt.lblLandFooterLand.Text = "Summe " & isDbnullEmpty(rpt.Fields.Item("SOU_DESCR").Value, "")
anzahlLand = 0
anzahlALLLand = 0
anzahlListenpreisLand = 0
anzahlRateLand = 0
anzahlPlattspreisLand = 0
sumVolumenLand = 0
sumListenpreisLand = 0
sumPlattspreisLand = 0
sumRateLand = 0
sumBetragLand = 0
End Sub
AddHandler rpt.GroupFooter1.Format, Sub()
' rpt.lblSummeAnzahl.Text = sumAnz
' rpt.lblSummeBar.Text = sumBar.ToString("C")
anzahl += anzahlLand
anzahlALL += anzahlALLLand
sumVolumen += sumVolumenLand
sumListenpreis += sumListenpreisLand
anzahlListenpreis += anzahlListenpreisLand
sumRate += sumRateLand
anzahlRate += anzahlRateLand
sumPlattspreis += sumPlattspreisLand
anzahlPlattspreis += anzahlPlattspreisLand
sumBetrag += sumBetragLand
anzahlprod += anzahlLand
anzahlALLprod += anzahlALLLand
sumVolumenprod += sumVolumenLand
sumListenpreisprod += sumListenpreisLand
anzahlListenpreisprod += anzahlListenpreisLand
sumRateprod += sumRateLand
anzahlRateprod += anzahlRateLand
sumPlattspreisprod += sumPlattspreisLand
anzahlPlattspreisprod += anzahlPlattspreisLand
sumBetragprod += sumBetragLand
rpt.lblVolumenSumLand.Text = sumVolumenLand.ToString("N3")
rpt.lblListenpreisAvgLand.Text = If(anzahlListenpreisLand > 0, (sumListenpreisLand / anzahlListenpreisLand).ToString("N4"), "")
rpt.lblRateAVGLand.Text = If(anzahlRateLand > 0, (sumRateLand / anzahlRateLand).ToString("N4"), "")
rpt.lblPlattspreisAVGLand.Text = If(anzahlPlattspreisLand > 0, (sumPlattspreisLand / anzahlPlattspreisLand).ToString("N4"), "")
rpt.lblBetragSUMLand.Text = sumBetragLand.ToString("N4")
rpt.lblAnzahlGesLand.Text = anzahlLand & " Einträge"
rpt.lblAnzahlGesLand2.Text = anzahlALLLand & " Transaktionen"
End Sub
AddHandler rpt.GroupFooter2.Format, Sub()
' rpt.lblSummeAnzahl.Text = sumAnz
' rpt.lblSummeBar.Text = sumBar.ToString("C")
rpt.lblVolumenSumProd.Text = sumVolumenprod.ToString("N3")
rpt.lblListenpreisAvgProd.Text = If(anzahlListenpreisprod > 0, (sumListenpreisprod / anzahlListenpreisprod).ToString("N4"), "")
rpt.lblRateAVGProd.Text = If(anzahlRateprod > 0, (sumRateprod / anzahlRateprod).ToString("N4"), "")
rpt.lblPlattspreisAVGProd.Text = If(anzahlPlattspreisprod > 0, (sumPlattspreisprod / anzahlPlattspreisprod).ToString("N4"), "")
rpt.lblBetragSUMProd.Text = sumBetragprod.ToString("N4")
rpt.lblAnzahlGesProd.Text = anzahlprod & " Einträge"
rpt.lblAnzahlGesProd2.Text = anzahlALLprod & " Transaktionen"
End Sub
AddHandler rpt.ReportFooter1.Format, Sub()
' rpt.lblSummeAnzahl.Text = sumAnz
' rpt.lblSummeBar.Text = sumBar.ToString("C")
rpt.lblVolumenSum.Text = sumVolumen.ToString("N3")
rpt.lblListenpreisAvg.Text = If(anzahlListenpreis > 0, (sumListenpreis / anzahlListenpreis).ToString("N4"), "")
rpt.lblRateAVG.Text = If(anzahlRate > 0, (sumRate / anzahlRate).ToString("N4"), "")
rpt.lblPlattspreisAVG.Text = If(anzahlPlattspreis > 0, (sumPlattspreis / anzahlPlattspreis).ToString("N4"), "")
rpt.lblBetragSUM.Text = sumBetrag.ToString("N4")
rpt.lblAnzahlGes.Text = anzahl & " Einträge"
rpt.lblAnzahlGes2.Text = anzahlALL & " Transaktionen"
End Sub
print.Viewer.LoadDocument(rpt)
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
print.Show()
End Sub
Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click
Dim displayFilter = False
Dim sqlstr As String = ""
sqlstr &= " SELECT * FROM [tblIDS_Transaktionen] "
sqlstr &= " WHERE 1=1 "
Select Case cboIDSDateType._value
Case "LDat" : sqlstr &= " AND [TRS_DATE] between '" & datIDSVon.Value & "' and '" & datIDSBis.Value & "' "
Case "RGDat" : sqlstr &= " AND BC_INVO_DATE between '" & datIDSVon.Value & "' and '" & datIDSBis.Value & "' "
End Select
If txtOrt.Text <> "" Then
sqlstr &= " AND [OUT_DESCR] like '" & txtOrt.Text.Replace("*", "%") & "' "
End If
''Wenn eines nciht gesetzt ist...
'If Not cbxPlatts.Checked Or Not cbxDiesel.Checked Or Not cbxAdblue.Checked Then
' 'aber ein anderes schon...
' If cbxPlatts.Checked Or cbxDiesel.Checked Or cbxAdblue.Checked Then
' Dim orStr = ""
' sqlstr &= " AND [BC_ID] IN ("
' If cbxPlatts.Checked Then sqlstr &= orStr & "'3455'" : orStr = ","
' If cbxDiesel.Checked Then sqlstr &= orStr & "'3450'" : orStr = ","
' If cbxAdblue.Checked Then sqlstr &= orStr & "'3453'" : orStr = ","
' sqlstr &= " ) "
' End If
'End If
sqlstr &= " order by prod_descr,COU_descr, out_descr "
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr, "FMZOLL")
'DataGridView.DataSource = dt
Dim print As New frmPrintLayout
print.Text = "Speditionsbericht"
Dim rpt As New rptIDS_Transaktionen
rpt.DataSource = dt
'Filter anzeigen
' rpt.lblFilterTxt.Visible = displayFilter
' rpt.txtFilter.Visible = displayFilter
' If CheckBox1.Checked Then
'rpt.GroupHeader1.DataField = "FilialenNr" 'Gruppierung
' End If
' If rpt.DataSource.rows.count = 0 Then
'rpt.Dispose() : print.Dispose()
' MsgBox("Keine Daten vorhanden!")
' Exit Sub
' End If
Dim sum = 0
rpt.lblUeberschrift.Text = "IDS Transaktionen " & datIDSVon.Text & " bis " & datIDSBis.Text
rpt.lblSachbearbeiter.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME
'rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
'Dim cnt As Integer = 0
rpt.lblDat.Text = Now.ToLongDateString
Dim sumAnz As Double = 0
Dim sumBar As Double = 0
Dim anzahl As Integer = 0
'Dim anzahlVolumen As Integer = 0
Dim anzahlListenpreis As Integer = 0
Dim anzahlRate As Integer = 0
Dim anzahlPlattspreis As Integer = 0
' Dim anzahlBetrag As Integer = 0
Dim sumVolumen As Double = 0
Dim sumListenpreis As Double = 0
Dim sumPlattspreis As Double = 0
Dim sumRate As Double = 0
Dim sumBetrag As Double = 0
' rpt.lblFiliale.Text = "Alle Filialen"
AddHandler rpt.Detail.Format, Sub()
' rpt.lblProduktBeschreibung.Text = isDbnullEmpty(rpt.Fields.Item("BC_DESCR").Value, "")
rpt.lblLand.Text = isDbnullEmpty(rpt.Fields.Item("SOU_DESCR").Value, "")
rpt.lblStationCode.Text = isDbnullEmpty(rpt.Fields.Item("OUT_COD").Value, "")
rpt.lblStation.Text = isDbnullEmpty(rpt.Fields.Item("OUT_DESCR").Value, "")
rpt.lblStationGrpCod.Text = isDbnullEmpty(rpt.Fields.Item("OUT_GRP_COD").Value, "")
rpt.lblVolumen.Text = isDbnullEmptyDbl(rpt.Fields.Item("TOT_QTY").Value, 2, "")
rpt.lblProdukt.Text = isDbnullEmpty(rpt.Fields.Item("PROD_DESCR").Value, "")
rpt.lblWaehrung.Text = isDbnullEmpty(rpt.Fields.Item("SOU_CURR").Value, "")
rpt.lblListenpreis.Text = isDbnullEmptyDbl(rpt.Fields.Item("ORIG_LIST_PRICE").Value, 4, "")
rpt.lblPlattspreis.Text = isDbnullEmptyDbl(rpt.Fields.Item("PLATTS_PRICE").Value, 4, "")
rpt.lblRate.Text = isDbnullEmptyDbl(rpt.Fields.Item("SC_BC_RATE").Value, 4, "")
rpt.lblBetrag.Text = isDbnullEmptyDbl(rpt.Fields.Item("EUR_IV_BC_AMNT").Value, 4, "")
anzahl += 1
If rpt.Fields.Item("TOT_QTY").Value IsNot Nothing AndAlso IsNumeric(rpt.Fields.Item("TOT_QTY").Value) Then
sumVolumen += CDbl(rpt.Fields.Item("TOT_QTY").Value)
' anzahlVolumen += 1
End If
If rpt.Fields.Item("ORIG_LIST_PRICE").Value IsNot Nothing AndAlso IsNumeric(rpt.Fields.Item("ORIG_LIST_PRICE").Value) Then
sumListenpreis += CDbl(rpt.Fields.Item("ORIG_LIST_PRICE").Value)
anzahlListenpreis += 1
End If
If rpt.Fields.Item("SC_BC_RATE").Value IsNot Nothing AndAlso IsNumeric(rpt.Fields.Item("SC_BC_RATE").Value) Then
sumRate += CDbl(rpt.Fields.Item("SC_BC_RATE").Value)
anzahlRate += 1
End If
If rpt.Fields.Item("PLATTS_PRICE").Value IsNot Nothing AndAlso IsNumeric(rpt.Fields.Item("PLATTS_PRICE").Value) Then
sumPlattspreis += CDbl(rpt.Fields.Item("PLATTS_PRICE").Value)
anzahlPlattspreis += 1
End If
If rpt.Fields.Item("EUR_IV_BC_AMNT").Value IsNot Nothing AndAlso IsNumeric(rpt.Fields.Item("EUR_IV_BC_AMNT").Value) Then
sumBetrag += CDbl(rpt.Fields.Item("EUR_IV_BC_AMNT").Value)
' anzahlVolumen += 1
End If
End Sub
AddHandler rpt.GroupHeader1.Format, Sub()
' If CheckBox1.Checked Then rpt.lblFiliale.Text = SQL.getValueTxtBySql("SELECT CAST(FilialenNr as varchar (4)) + ' ' + Grenzstelle FROM filialen WHERE FilialenNr='" & rpt.Fields.Item("FilialenNr").Value & "'", "FMZOLL")
' sumAnz = 0
' sumBar = 0
End Sub
AddHandler rpt.GroupFooter1.Format, Sub()
rpt.lblVolumenSum.Text = sumVolumen.ToString("N3")
rpt.lblListenpreisAvg.Text = If(anzahlListenpreis > 0, (sumListenpreis / anzahlListenpreis).ToString("N4"), "")
rpt.lblRateAVG.Text = If(anzahlRate > 0, (sumRate / anzahlRate).ToString("N4"), "")
rpt.lblPlattspreisAVG.Text = If(anzahlPlattspreis > 0, (sumPlattspreis / anzahlPlattspreis).ToString("N4"), "")
rpt.lblBetragSUM.Text = sumBetrag.ToString("N4")
rpt.lblAnzahlGes.Text = anzahl & " Transaktionen"
End Sub
print.Viewer.LoadDocument(rpt)
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
print.Show()
End Sub
Function isDbnullEmpty(o As Object, return_value As Object) As String
If IsDBNull(o) Then : isDbnullEmpty = return_value
ElseIf IsNothing(o) Then : isDbnullEmpty = return_value
Else : isDbnullEmpty = o.ToString
End If
End Function
Function isDbnullEmptyCurr(o As Object, return_value As Object) As String
If IsDBNull(o) Then : isDbnullEmptyCurr = return_value
ElseIf IsNothing(o) Then : isDbnullEmptyCurr = return_value
Else : isDbnullEmptyCurr = CDbl(o).ToString("C")
End If
End Function
Function isDbnullEmptyDbl(o As Object, kommastellen As Integer, return_value As Object) As String
If IsDBNull(o) Then : isDbnullEmptyDbl = return_value
ElseIf IsNothing(o) Then : isDbnullEmptyDbl = return_value
Else : isDbnullEmptyDbl = CDbl(o).ToString("N" & If(kommastellen > 0, kommastellen, ""))
End If
End Function
Private Sub Button11_Click(sender As Object, e As EventArgs) Handles Button11.Click
Me.Cursor = Cursors.WaitCursor
If MyComboBox2._value = "" Then Me.Cursor = Cursors.Default : Exit Sub
Dim SQLstr = "SELECT sdl.[KundenNr], (SELECT isnull(ordnungsbegriff,'') FROM [VERAG].dbo.adressen where [VERAG].dbo.adressen.AdressenNr=sdl.KundenNr ) as Firma,count(*) [Anzahl Leistung]"
SQLstr &= " FROM [SDL].[dbo].[SDL] inner join [KundenSDL] on [KundenSDL].SDLnr=sdl.SDLNr and [KundenSDL].KundenNr=sdl.KundenNr"
SQLstr &= " where SDL.SDLNr = '" & MyComboBox2._value & "' And Sperre = 0 And Archiviert = 0 AND isnull([Gesperrt],'')=0 AND isnull([Defekt],'')=0 AND isnull([Verloren],'')=0 AND isnull([Gestohlen],'')=0 AND isnull([Retourniert],'')=0 "
SQLstr &= " group by sdl.KundenNr"
Dim VSQL = New VERAG_PROG_ALLGEMEIN.SQL
Dim dt = VSQL.loadDgvBySql(SQLstr, "SDL")
' dt.Columns.Add("VersicherungsBetrag", Type.GetType("System.Double"))
' For Each r In dt.Rows
'r("VersicherungsBetrag") = getVersBetrag(r("Risiko"), r("Versicherungssumme"))
' Next
' dt.Columns("VersicherungsBetrag").ColumnName = "V-Betrag"
'If cbxFormatNumbers.Checked Then
' cProgramFunctions.genExcelFromDT_NEW(dt, {"E1:E" & (dt.Rows.Count + 1), "H1:M" & (dt.Rows.Count + 1), "O1:P" & (dt.Rows.Count + 1)})
' Else
cProgramFunctions.genExcelFromDT_NEW(dt)
' End If
'cProgramFunctions.genExcelFromDT_NEW(dt)
'cProgramFunctions.genExcelFromDT_NEW(dt, , False)
Me.Cursor = Cursors.Default
End Sub
Private Sub Button9_Click(sender As Object, e As EventArgs) Handles Button9.Click
Me.Cursor = Cursors.WaitCursor
If MyComboBox2._value = "" Then Me.Cursor = Cursors.Default : Exit Sub
Dim SQLstr = "SELECT sdl.SDLNr, sdl.[KundenNr], (SELECT isnull(ordnungsbegriff,'') FROM [VERAG].dbo.adressen where [VERAG].dbo.adressen.AdressenNr=sdl.KundenNr ) as Firma,kfzkennzeichen, "
SQLstr &= " cast(CASE sdl.[SDLNr] "
SQLstr &= " WHEN '207' THEN cast([FREJUS-CARD-Nr] as VARCHAR(200)) "
SQLstr &= " WHEN '100' THEN cast(KartenNr as VARCHAR(200)) "
SQLstr &= " WHEN '101' THEN cast(KartenNr as VARCHAR(200)) "
SQLstr &= " WHEN '202' THEN cast([TELEPASS-Nr] as VARCHAR(200)) "
SQLstr &= " WHEN '208' THEN cast(KartenNr as VARCHAR(200)) "
SQLstr &= " WHEN '211' THEN cast([PAN-Nr] as VARCHAR(200)) "
SQLstr &= " WHEN '210' THEN cast([SERIE-Nr] as VARCHAR(200)) "
SQLstr &= " WHEN '212' THEN cast(KartenNr as VARCHAR(200)) "
SQLstr &= " WHEN '213' THEN cast(OBUID as VARCHAR(200)) "
SQLstr &= " WHEN '214' THEN cast(OBUID as VARCHAR(200)) "
SQLstr &= " WHEN '215' THEN cast([TELEPASS-Nr] as VARCHAR(200)) "
SQLstr &= " WHEN '216' THEN cast(OBUID as VARCHAR(200)) "
SQLstr &= " WHEN '203' THEN cast(KartenNr as VARCHAR(200)) "
SQLstr &= " WHEN '209' THEN cast([MSE-Kd-Nr] as VARCHAR(200)) "
SQLstr &= " Else '-' "
SQLstr &= " END as VARCHAR(200)) AS KarteBoxNr,"
SQLstr &= " isnull(sdl.vermerk,'') as Vermerk,isnull(Gesperrt,0) as Gesperrt, isnull(Defekt,0) as Defekt,isnull(Verloren,0) as Verloren,isnull(Gestohlen,0) as Gestohlen,isnull(Ersatzkarte,0) as Ersatzkarte "
SQLstr &= " FROM [SDL] inner join [KundenSDL] on [KundenSDL].SDLnr=sdl.SDLNr and [KundenSDL].KundenNr=sdl.KundenNr"
SQLstr &= " where SDL.SDLNr = '" & MyComboBox2._value & "' And Sperre = 0 And Archiviert = 0 AND isnull([Gesperrt],'')=0 AND isnull([Defekt],'')=0 AND isnull([Verloren],'')=0 AND isnull([Gestohlen],'')=0 AND isnull([Retourniert],'')=0 "
SQLstr &= " order by Firma"
Dim VSQL = New VERAG_PROG_ALLGEMEIN.SQL
Dim dt = VSQL.loadDgvBySql(SQLstr, "SDL")
' dt.Columns.Add("VersicherungsBetrag", Type.GetType("System.Double"))
' For Each r In dt.Rows
'r("VersicherungsBetrag") = getVersBetrag(r("Risiko"), r("Versicherungssumme"))
' Next
' dt.Columns("VersicherungsBetrag").ColumnName = "V-Betrag"
'If cbxFormatNumbers.Checked Then
' cProgramFunctions.genExcelFromDT_NEW(dt, {"E1:E" & (dt.Rows.Count + 1), "H1:M" & (dt.Rows.Count + 1), "O1:P" & (dt.Rows.Count + 1)})
' Else
cProgramFunctions.genExcelFromDT_NEW(dt)
' End If
'cProgramFunctions.genExcelFromDT_NEW(dt)
'cProgramFunctions.genExcelFromDT_NEW(dt, , False)
Me.Cursor = Cursors.Default
End Sub
Private Sub Button10_Click(sender As Object, e As EventArgs) Handles Button10.Click
VERAG_PROG_ALLGEMEIN.SDL_Functions.SDL_GueltigBis_UTA_IDS()
End Sub
Private Sub ProgressBar1_Click(sender As Object, e As EventArgs) Handles ProgressBar1.Click
End Sub
Private Sub Button12_Click(sender As Object, e As EventArgs) Handles Button12.Click
Me.Cursor = Cursors.WaitCursor
Try
Dim dialog As New OpenFileDialog()
dialog.Filter = "CSV Files (*.csv)|*.csv"
If (dialog.ShowDialog() = DialogResult.OK) Then
Dim table As DataTable = convertToDT(dialog.FileName)
Dim cnt = 1
For Each r As DataRow In table.Rows
Dim IDS_Transaktionen As New IDS_Transaktionen
IDS_Transaktionen.BC_ID = cProgramFunctions.isLeerNothing(r("BC_ID"))
IDS_Transaktionen.BC_DESCR = cProgramFunctions.isLeerNothing(r("BC_DESCR"))
IDS_Transaktionen.CLUB_ID = cProgramFunctions.isLeerNothing(r("CLUB_ID"))
IDS_Transaktionen.COU_ISO_COD = cProgramFunctions.isLeerNothing(r("COU_ISO_COD"))
IDS_Transaktionen.COU_DESCR = cProgramFunctions.isLeerNothing(r("COU_DESCR"))
IDS_Transaktionen.CUST_COD = cProgramFunctions.isLeerNothing(r("CUST_COD"))
IDS_Transaktionen.CUST_LEVEL = cProgramFunctions.isLeerNothing(r("CUST_LEVEL"))
IDS_Transaktionen.CUST_NAME1 = cProgramFunctions.isLeerNothing(r("CUST_NAME1"))
IDS_Transaktionen.CARD_SER_NUM = cProgramFunctions.isLeerNothing(r("CARD_SER_NUM"))
IDS_Transaktionen.SOU_ISO_COD = cProgramFunctions.isLeerNothing(r("SOU_ISO_COD"))
IDS_Transaktionen.SOU_DESCR = cProgramFunctions.isLeerNothing(r("SOU_DESCR"))
IDS_Transaktionen.TRS_NUM = cProgramFunctions.isLeerNothing(r("TRS_NUM"))
IDS_Transaktionen.TRS_VERS_NUM = cProgramFunctions.isLeerNothing(r("TRS_VERS_NUM"))
IDS_Transaktionen.OUT_COD = cProgramFunctions.isLeerNothing(r("OUT_COD"))
IDS_Transaktionen.OUT_DESCR = cProgramFunctions.isLeerNothing(r("OUT_DESCR"))
IDS_Transaktionen.OUT_GRP_COD = cProgramFunctions.isLeerNothing(r("OUT_GRP_COD"))
IDS_Transaktionen.TRS_DATE = cProgramFunctions.isLeerNothing(r("TRS_DATE"))
IDS_Transaktionen.TOT_QTY = cProgramFunctions.isLeerNothingDblPKT(r("TOT_QTY"))
IDS_Transaktionen.PROD_NUM = cProgramFunctions.isLeerNothing(r("PROD_NUM"))
IDS_Transaktionen.PROD_DESCR = cProgramFunctions.isLeerNothing(r("PROD_DESCR"))
IDS_Transaktionen.SERVICE_PROD_NUM = cProgramFunctions.isLeerNothing(r("SERVICE_PROD_NUM"))
IDS_Transaktionen.SERVICE_PROD_DESCR = cProgramFunctions.isLeerNothing(r("SERVICE_PROD_DESCR"))
IDS_Transaktionen.SOU_CURR = cProgramFunctions.isLeerNothing(r("SOU_CURR"))
IDS_Transaktionen.ORIG_LIST_PRICE = cProgramFunctions.isLeerNothingDblPKT(r("ORIG_LIST_PRICE"))
IDS_Transaktionen.ORIG_REBATE = cProgramFunctions.isLeerNothingDblPKT(r("ORIG_REBATE"))
IDS_Transaktionen.ORIG_PRICE = cProgramFunctions.isLeerNothingDblPKT(r("ORIG_PRICE"))
IDS_Transaktionen.PLATTS_PRICE = cProgramFunctions.isLeerNothingDblPKT(r("PLATTS_PRICE"))
IDS_Transaktionen.SC_BC_RATE = cProgramFunctions.isLeerNothingDblPKT(r("SC_BC_RATE"))
IDS_Transaktionen.SC_IV_BC_AMNT = cProgramFunctions.isLeerNothingDblPKT(r("SC_IV_BC_AMNT"))
IDS_Transaktionen.COU_BENEFICIARY_CURR = cProgramFunctions.isLeerNothing(r("COU_BENEFICIARY_CURR"))
IDS_Transaktionen.CO_IV_BC_AMNT = cProgramFunctions.isLeerNothingDblPKT(r("CO_IV_BC_AMNT"))
IDS_Transaktionen.EUR_IV_BC_AMNT = cProgramFunctions.isLeerNothingDblPKT(r("EUR_IV_BC_AMNT"))
IDS_Transaktionen.SC_CO_EXCHRATE = cProgramFunctions.isLeerNothingDblPKT(r("SC_CO_EXCHRATE"))
IDS_Transaktionen.SC_EUR_EXCHRATE = cProgramFunctions.isLeerNothingDblPKT(r("SC_EUR_EXCHRATE"))
IDS_Transaktionen.BC_INVO_DATE = cProgramFunctions.isLeerNothing(r("BC_INVO_DATE"))
IDS_Transaktionen.INVO_NUM = cProgramFunctions.isLeerNothing(r("INVO_NUM"))
IDS_Transaktionen.FIXED_OR_TOTAL = cProgramFunctions.isLeerNothing(r("FIXED_OR_TOTAL"))
IDS_Transaktionen.BC_TYPE = cProgramFunctions.isLeerNothing(r("BC_TYPE"))
IDS_Transaktionen.COU_BENEFICIARY = cProgramFunctions.isLeerNothing(r("COU_BENEFICIARY"))
IDS_Transaktionen.CUST_BENEFICIARY = cProgramFunctions.isLeerNothingDblPKT(r("CUST_BENEFICIARY"))
IDS_Transaktionen.LEVEL_BENEFICIARY = cProgramFunctions.isLeerNothingDblPKT(r("LEVEL_BENEFICIARY"))
IDS_Transaktionen.CUST_GRP_BENEFICIARY = cProgramFunctions.isLeerNothing(r("CUST_GRP_BENEFICIARY"))
'IDS_Transaktionen.Importiert = cProgramFunctions.isLeerNothing(r("Importiert"))
IDS_Transaktionen.SAVE()
'MsgBox(table.Rows.Count)
If cnt Mod 10 = 0 Then
txtIDSEinarbeitung.Text = cnt & " / " & table.Rows.Count
Dim proz As Double = (cnt / table.Rows.Count) * 100
ProgressBar.Value = proz
lblProz.Text = proz.ToString("N2") & " %"
GroupBox7.Refresh()
My.Application.DoEvents()
End If
cnt += 1
Next
ProgressBar.Value = 100
txtIDSEinarbeitung.Text = table.Rows.Count & " / " & table.Rows.Count
lblProz.Text = "100.00 %"
End If
Catch ex As System.Exception
MsgBox(ex.Message & ex.StackTrace)
End Try
Me.Cursor = Cursors.Default
End Sub
Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click
Dim f As New frmMDMDatenverarbetiung
f.Show()
End Sub
Private Sub Button14_Click(sender As Object, e As EventArgs) Handles Button14.Click
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
If SQL.doSQL("update [Rechnungsausgang] set Sachbearbeiter='KRIEGNER' where Sammelrechnung=6 and Firma_ID=19 and Sachbearbeiter<>'KRIEGNER' and Abfertigungsdatum> DATEADD(month,-3, GETDATE())", "FMZOLL") Then
MsgBox("Update erfolgreich.")
End If
End Sub
End Class
Class cMDMAuswertung
Shared Sub genUeberfaelligeBestellungen(frm, von, bis, erstelltVon, Optional kdnr = -1, Optional sdlNr = -1)
frm.Cursor = Cursors.WaitCursor
Try
Dim print As New frmPrintLayout
print.Text = "Überfällige Bestellungen"
Dim rpt As New rptAuswertungUeberfaelligeBestellungen
rpt.von = von
rpt.bis = bis
rpt.kdnr = kdnr
rpt.SDLNr = sdlNr
rpt.erstelltVon = erstelltVon
print.Viewer.LoadDocument(rpt)
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
print.Show()
Catch ex As System.Exception
MsgBox(ex.Message)
End Try
frm.Cursor = Cursors.Default
End Sub
Shared Sub genSDLrief(frm, kdnr, sdlNr, erstelltVon, archiviert)
If Not IsNumeric(sdlNr) Then
MsgBox("Bitte SDL Leistung auswählen!")
Exit Sub
End If
frm.Cursor = Cursors.WaitCursor
Dim print As New frmPrintLayout
print.Text = "SDL Brief"
Dim rpt As New rptSDLBrief
rpt.KdNr = kdnr
rpt.archiviert = archiviert
rpt.sdlNr = sdlNr
' rpt.erstelltVon = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME
print.Viewer.LoadDocument(rpt)
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
' print.RaisePrintEvent = True
print.Show()
frm.Cursor = Cursors.Default
End Sub
Shared Sub genLeereObu(frm As Control, Optional von As Date = Nothing, Optional bis As Date = Nothing)
frm.Cursor = Cursors.WaitCursor
Dim print As New frmPrintLayout
print.Text = "SDL Brief"
Dim rpt As New rptLeereOBU
If von = Nothing Then von = CDate("01.01.1900")
If bis = Nothing Then bis = Now
' If MyComboBox4._value <> "" Then rpt.sdlNr = MyComboBox4._value
rpt.sdlNr = 200 'nur AT
rpt.von = von
rpt.bis = bis
print.Viewer.LoadDocument(rpt)
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
print.Show()
frm.Cursor = Cursors.Default
End Sub
End Class
Class IDS_Transaktionen
Property BC_ID As Object = Nothing
Property BC_DESCR As Object = Nothing
Property CLUB_ID As Object = Nothing
Property COU_ISO_COD As Object = Nothing
Property COU_DESCR As Object = Nothing
Property CUST_COD As Object = Nothing
Property CUST_LEVEL As Object = Nothing
Property CUST_NAME1 As Object = Nothing
Property CARD_SER_NUM As Object = Nothing
Property SOU_ISO_COD As Object = Nothing
Property SOU_DESCR As Object = Nothing
Property TRS_NUM As Object = Nothing
Property TRS_VERS_NUM As Object = Nothing
Property OUT_COD As Object = Nothing
Property OUT_DESCR As Object = Nothing
Property OUT_GRP_COD As Object = Nothing
Property TRS_DATE As Object = Nothing
Property TOT_QTY As Object = Nothing
Property PROD_NUM As Object = Nothing
Property PROD_DESCR As Object = Nothing
Property SERVICE_PROD_NUM As Object = Nothing
Property SERVICE_PROD_DESCR As Object = Nothing
Property SOU_CURR As Object = Nothing
Property ORIG_LIST_PRICE As Object = Nothing
Property ORIG_REBATE As Object = Nothing
Property ORIG_PRICE As Object = Nothing
Property PLATTS_PRICE As Object = Nothing
Property SC_BC_RATE As Object = Nothing
Property SC_IV_BC_AMNT As Object = Nothing
Property COU_BENEFICIARY_CURR As Object = Nothing
Property CO_IV_BC_AMNT As Object = Nothing
Property EUR_IV_BC_AMNT As Object = Nothing
Property SC_CO_EXCHRATE As Object = Nothing
Property SC_EUR_EXCHRATE As Object = Nothing
Property BC_INVO_DATE As Object = Nothing
Property INVO_NUM As Object = Nothing
Property FIXED_OR_TOTAL As Object = Nothing
Property BC_TYPE As Object = Nothing
Property COU_BENEFICIARY As Object = Nothing
Property CUST_BENEFICIARY As Object = Nothing
Property LEVEL_BENEFICIARY As Object = Nothing
Property CUST_GRP_BENEFICIARY As Object = Nothing
Property Importiert As Object = Nothing
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("BC_ID", BC_ID))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("BC_DESCR", BC_DESCR))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("CLUB_ID", CLUB_ID))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("COU_ISO_COD", COU_ISO_COD))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("COU_DESCR", COU_DESCR))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("CUST_COD", CUST_COD))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("CUST_LEVEL", CUST_LEVEL))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("CUST_NAME1", CUST_NAME1))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("CARD_SER_NUM", CARD_SER_NUM))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SOU_ISO_COD", SOU_ISO_COD))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SOU_DESCR", SOU_DESCR))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("TRS_NUM", TRS_NUM))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("TRS_VERS_NUM", TRS_VERS_NUM))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("OUT_COD", OUT_COD))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("OUT_DESCR", OUT_DESCR))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("OUT_GRP_COD", OUT_GRP_COD))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("TRS_DATE", TRS_DATE))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("TOT_QTY", TOT_QTY))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("PROD_NUM", PROD_NUM))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("PROD_DESCR", PROD_DESCR))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SERVICE_PROD_NUM", SERVICE_PROD_NUM))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SERVICE_PROD_DESCR", SERVICE_PROD_DESCR))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SOU_CURR", SOU_CURR))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("ORIG_LIST_PRICE", ORIG_LIST_PRICE))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("ORIG_REBATE", ORIG_REBATE))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("ORIG_PRICE", ORIG_PRICE))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("PLATTS_PRICE", PLATTS_PRICE))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SC_BC_RATE", SC_BC_RATE))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SC_IV_BC_AMNT", SC_IV_BC_AMNT))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("COU_BENEFICIARY_CURR", COU_BENEFICIARY_CURR))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("CO_IV_BC_AMNT", CO_IV_BC_AMNT))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("EUR_IV_BC_AMNT", EUR_IV_BC_AMNT))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SC_CO_EXCHRATE", SC_CO_EXCHRATE))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("SC_EUR_EXCHRATE", SC_EUR_EXCHRATE))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("BC_INVO_DATE", BC_INVO_DATE))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("INVO_NUM", INVO_NUM))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("FIXED_OR_TOTAL", FIXED_OR_TOTAL))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("BC_TYPE", BC_TYPE))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("COU_BENEFICIARY", COU_BENEFICIARY))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("CUST_BENEFICIARY", CUST_BENEFICIARY))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("LEVEL_BENEFICIARY", LEVEL_BENEFICIARY))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("CUST_GRP_BENEFICIARY", CUST_GRP_BENEFICIARY))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Importiert", Importiert, , , True))
Return list
End Function
Public Function SAVE() As Boolean
Dim sqlstr = " BEGIN TRAN IF EXISTS(SELECT * FROM tblIDS_Transaktionen WITH(updlock,serializable) WHERE TRS_NUM=@TRS_NUM ) " &
" BEGIN " & getUpdateCmd() & " END " &
" Else " &
" BEGIN " & getInsertCmd() & " END " &
" commit tran "
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Return SQL.doSQLVarList(sqlstr, "FMZOLL", , list)
End Function
Public Function getInsertCmd() As String
Try
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Dim str As String = ""
Dim values As String = ""
For Each i In list
If Not i.isPrimaryParam And Not i.isonlyForLoad Then
str &= "[" & i.Text & "],"
values &= "@" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
End If
Next
str = str.Substring(0, str.Length - 1) 'wg. ','
values = values.Substring(0, values.Length - 1) 'wg. ','
Return (" INSERT INTO tblIDS_Transaktionen (" & str & ") VALUES(" & values & ") ")
Catch ex As SqlException
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
Return ""
End Function
Public Function getUpdateCmd() As String
Try
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
Dim str As String = ""
For Each i In list
If Not i.isPrimaryParam And Not i.isonlyForLoad Then
str &= "[" & i.Text & "] = @" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
End If
Next
str = str.Substring(0, str.Length - 1) 'wg. ','
Return (" UPDATE [tblIDS_Transaktionen] SET " & str & " WHERE TRS_NUM=@TRS_NUM")
Catch ex As SqlException
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
Return ""
End Function
End Class