diff --git a/SDL/Fakturierung/cAutomailversand.vb b/SDL/Fakturierung/cAutomailversand.vb index 1b74c7a2..2139efe8 100644 --- a/SDL/Fakturierung/cAutomailversand.vb +++ b/SDL/Fakturierung/cAutomailversand.vb @@ -695,6 +695,7 @@ Public Class cAutomailversand 'ATTACHMENTS.Clear() Dim zielPfad_PDFZusammenfassung = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath(Belegnr & "_" & Anhangsbez, ".pdf",, False, "Zusammenfassung") + Dim zielPfadForThereFor As String = "" '==================================================== ' EINZELRECHNUNG @@ -723,18 +724,18 @@ Public Class cAutomailversand LoadZollAttachments(SPEDBUCH, RECHNUNG.FilialenNr, RECHNUNG.Firma_ID, False, mergeList, ATTACHMENTS) ' Zusammenfassung erzeugen - AddMergedPdf(mergeList, zielPfad_PDFZusammenfassung, ATTACHMENTS) + AddMergedPdf(mergeList, zielPfad_PDFZusammenfassung, ATTACHMENTS, zielPfadForThereFor) If checkFremdeGrenze(SPEDBUCH) AndAlso System.IO.File.Exists(zielPfad_PDFZusammenfassung) Then 'Upload ins Therefore Try - If RECHNUNG.Automailversand_sent Is Nothing And (Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM OrElse vbYes = MsgBox("TEST - Rechnungsanhang (FREMDE GRENZEN) in Therefore speichern?", vbYesNoCancel)) Then + If zielPfad_PDFZusammenfassung <> "" AndAlso System.IO.File.Exists(zielPfad_PDFZusammenfassung) AndAlso RECHNUNG.Automailversand_sent Is Nothing And (Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM OrElse vbYes = MsgBox("TEST - Rechnungsanhang (FREMDE GRENZEN) in Therefore speichern?", vbYesNoCancel)) Then VERAG_PROG_ALLGEMEIN.cTherefore.saveFileTo_ImportFolder(zielPfad_PDFZusammenfassung, RECHNUNG.FilialenNr & RECHNUNG.AbfertigungsNr, If(RECHNUNG.AvisoID, ""), RECHNUNG.Firma_ID, False) End If Catch ex As Exception - MsgBox("Therefore-Import fehlgeschlagen!" & ex.Message & ex.StackTrace) + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR("Therefore-Import fehlgeschlagen! " & ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try @@ -800,7 +801,7 @@ Public Class cAutomailversand Next ' Zusammenfassung erzeugen - AddMergedPdf(mergeListSR, zielPfad_PDFZusammenfassung, ATTACHMENTS) + AddMergedPdf(mergeListSR, zielPfad_PDFZusammenfassung, ATTACHMENTS, "") End Sub @@ -1259,7 +1260,7 @@ Public Class cAutomailversand End Sub - Private Sub AddMergedPdf(mergeList As List(Of String), zielPfad As String, attachments As List(Of cFakt_MailATTach)) + Private Sub AddMergedPdf(mergeList As List(Of String), zielPfad As String, attachments As List(Of cFakt_MailATTach), ByRef zielPfadForThereFor As String) If Not mergeList.Any Then Return @@ -1267,7 +1268,7 @@ Public Class cAutomailversand Dim fi As New FileInfo(mergeList(0)) attachments.Add(New cFakt_MailATTach(mergeList(0), fi.Name)) - + zielPfadForThereFor = fi.FullName Return End If @@ -1275,7 +1276,7 @@ Public Class cAutomailversand Dim fi As New FileInfo(zielPfad) attachments.Add(New cFakt_MailATTach(zielPfad, fi.Name)) - + zielPfadForThereFor = zielPfad End If End Sub diff --git a/SDL/Fakturierung/frmFaktEmail.vb b/SDL/Fakturierung/frmFaktEmail.vb index a7267d51..ab2df6d0 100644 --- a/SDL/Fakturierung/frmFaktEmail.vb +++ b/SDL/Fakturierung/frmFaktEmail.vb @@ -797,13 +797,13 @@ Public Class frmFaktEmail If cbxAnhaengeInTherefore.Checked Then Try - If Not cbxRgKopieDrucken.Checked And (Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM OrElse vbYes = MsgBox("TEST - Anhang in Therefore speichern?", vbYesNoCancel)) Then + If pathAnhaenge <> "" AndAlso System.IO.File.Exists(pathAnhaenge) AndAlso Not cbxRgKopieDrucken.Checked And (Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM OrElse vbYes = MsgBox("TEST - Anhang in Therefore speichern?", vbYesNoCancel)) Then VERAG_PROG_ALLGEMEIN.cTherefore.saveFileTo_ImportFolder(pathAnhaenge, RECHNUNG.FilialenNr & RECHNUNG.AbfertigungsNr, If(RECHNUNG.AvisoID, ""), RECHNUNG.Firma_ID, False) End If Catch ex As Exception - MsgBox("Therefore-Import fehlgeschlagen!" & ex.Message & ex.StackTrace) + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR("Therefore-Import fehlgeschlagen! " & ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End If @@ -1136,7 +1136,7 @@ Public Class frmFaktEmail - Sub addAttachments(ByRef Mail As Microsoft.Office.Interop.Outlook.MailItem, RgNr As Integer, MergePDF As Boolean, zielPfadZusammenfassung As String) + Sub addAttachments(ByRef Mail As Microsoft.Office.Interop.Outlook.MailItem, RgNr As Integer, MergePDF As Boolean, ByRef zielPfadZusammenfassung_forTherefore As String) If ATTACHMENTS.Count = 0 Then Exit Sub Try @@ -1178,7 +1178,7 @@ Public Class frmFaktEmail Belegsbezeichnung = RECHNUNG.BelegartenBez End If - zielPfadZusammenfassung = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath(IIf(SammelrechungArt <> 6, Belegsbezeichnung & "sanhänge_", Belegsbezeichnung & "_") & RgNr & extension, extension,, False, "Zusammenfassung") + Dim zielPfadZusammenfassung = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath(IIf(SammelrechungArt <> 6, Belegsbezeichnung & "sanhänge_", Belegsbezeichnung & "_") & RgNr & extension, extension,, False, "Zusammenfassung") If RECHNUNG IsNot Nothing AndAlso RECHNUNG.Firma_ID = 19 Then @@ -1240,6 +1240,7 @@ Public Class frmFaktEmail End If + Else Dim myList As New List(Of String) @@ -1251,6 +1252,7 @@ Public Class frmFaktEmail End If + zielPfadZusammenfassung_forTherefore = zielPfadZusammenfassung End If 'Anhang an Mail anfügen @@ -1264,6 +1266,7 @@ Public Class frmFaktEmail 'NICHT ANFÜGEN! Else Mail.Attachments.Add(a.Pfad, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue, , a.MailName) + zielPfadZusammenfassung_forTherefore = a.Pfad End If End If diff --git a/SDL/buchhaltung/usrCntlBH.vb b/SDL/buchhaltung/usrCntlBH.vb index 82d92092..420fbde6 100644 --- a/SDL/buchhaltung/usrCntlBH.vb +++ b/SDL/buchhaltung/usrCntlBH.vb @@ -2453,7 +2453,10 @@ Public Class usrCntlBH 'Betrag laut folgendem Schema berechnen: - Betrag = Betrag * -1 + If Betrag < 0 Then + Betrag = Betrag * -1 + End If + Betrag = Betrag + 1 Dim aufgerundet As Double = Math.Ceiling(Betrag / 5) * 5 @@ -2526,7 +2529,10 @@ Public Class usrCntlBH 'Betrag laut folgendem Schema berechnen: - If Betrag < 0 Then Betrag = Betrag * -1 + If Betrag < 0 Then + Betrag = Betrag * -1 + End If + Betrag = Betrag + 1 Dim aufgerundet As Double = Math.Ceiling(Betrag / 5) * 5 @@ -2628,26 +2634,28 @@ Public Class usrCntlBH Next + Dim Name As String = "BANK_" & TYP - Dim MDMEinarb As New cMDMEinarbeitung("BANK", Now()) + + Dim MDMEinarb As New cMDMEinarbeitung(Name, Now()) MDMEinarb.invoicedate = CDate(dateTemp) - MDMEinarb.import_date = Now() - MDMEinarb.importfilename = fd.FileName - MDMEinarb.ds_count += counter - MDMEinarb.ds_total += frm.dgvHandling.SelectedRows.Count - MDMEinarb.completed = 1 - MDMEinarb.completed_date = Now() - MDMEinarb.SAVE() + MDMEinarb.import_date = Now() + MDMEinarb.importfilename = fd.FileName + MDMEinarb.ds_count += counter + MDMEinarb.ds_total += frm.dgvHandling.SelectedRows.Count + MDMEinarb.completed = 1 + MDMEinarb.completed_date = Now() + MDMEinarb.SAVE() - importiert = True - MsgBox(counter & " von " & dt.Rows.Count & " erfolgreich importiert!") + importiert = True + MsgBox(counter & " von " & dt.Rows.Count & " erfolgreich importiert!") - pb_bankspesen.Value = 100 - txtBankspesen.Text = frm.dgvHandling.SelectedRows.Count & " / " & frm.dgvHandling.SelectedRows.Count - lblBankspesen.Text = "100.00 %" + pb_bankspesen.Value = 100 + txtBankspesen.Text = frm.dgvHandling.SelectedRows.Count & " / " & frm.dgvHandling.SelectedRows.Count + lblBankspesen.Text = "100.00 %" - End If + End If End Using diff --git a/SDL/mdm/frmMDMDatenverarbetiung.Designer.vb b/SDL/mdm/frmMDMDatenverarbetiung.Designer.vb index 889c6ab9..fe323d8a 100644 --- a/SDL/mdm/frmMDMDatenverarbetiung.Designer.vb +++ b/SDL/mdm/frmMDMDatenverarbetiung.Designer.vb @@ -46,6 +46,7 @@ Partial Class frmMDMDatenverarbetiung Me.Button8 = New System.Windows.Forms.Button() Me.Button4 = New System.Windows.Forms.Button() Me.Button9 = New System.Windows.Forms.Button() + Me.Button11 = New System.Windows.Forms.Button() Me.btnDatenLaden = New System.Windows.Forms.Button() Me.Label1 = New System.Windows.Forms.Label() Me.lbl = New System.Windows.Forms.Label() @@ -86,7 +87,7 @@ Partial Class frmMDMDatenverarbetiung Me.Button2 = New System.Windows.Forms.Button() Me.ContextMenuStrip1 = New System.Windows.Forms.ContextMenuStrip(Me.components) Me.MyDatagridview1 = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components) - Me.Button11 = New System.Windows.Forms.Button() + Me.cbxBankspesen = New VERAG_PROG_ALLGEMEIN.MyComboBox() Me.pnl.SuspendLayout() CType(Me.pb_importOK, System.ComponentModel.ISupportInitialize).BeginInit() Me.Panel5.SuspendLayout() @@ -105,6 +106,7 @@ Partial Class frmMDMDatenverarbetiung ' 'pnl ' + Me.pnl.Controls.Add(Me.cbxBankspesen) Me.pnl.Controls.Add(Me.btnImportdet) Me.pnl.Controls.Add(Me.pb_importOK) Me.pnl.Controls.Add(Me.cbxIDSmitVerag) @@ -226,7 +228,7 @@ Partial Class frmMDMDatenverarbetiung 'cbxTestdaten ' Me.cbxTestdaten.AutoSize = True - Me.cbxTestdaten.Location = New System.Drawing.Point(905, 75) + Me.cbxTestdaten.Location = New System.Drawing.Point(896, 11) Me.cbxTestdaten.Name = "cbxTestdaten" Me.cbxTestdaten.Size = New System.Drawing.Size(74, 17) Me.cbxTestdaten.TabIndex = 51 @@ -242,7 +244,7 @@ Partial Class frmMDMDatenverarbetiung Me.Panel4.Controls.Add(Me.dat_Sum_Von) Me.Panel4.Location = New System.Drawing.Point(0, 67) Me.Panel4.Name = "Panel4" - Me.Panel4.Size = New System.Drawing.Size(417, 33) + Me.Panel4.Size = New System.Drawing.Size(395, 33) Me.Panel4.TabIndex = 28 ' 'Label46 @@ -351,6 +353,17 @@ Partial Class frmMDMDatenverarbetiung Me.Button9.Text = "MSE" Me.Button9.UseVisualStyleBackColor = False ' + 'Button11 + ' + Me.Button11.BackColor = System.Drawing.Color.FloralWhite + Me.Button11.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.Button11.Location = New System.Drawing.Point(633, 3) + Me.Button11.Name = "Button11" + Me.Button11.Size = New System.Drawing.Size(120, 23) + Me.Button11.TabIndex = 5 + Me.Button11.Text = "Bankspesen" + Me.Button11.UseVisualStyleBackColor = False + ' 'btnDatenLaden ' Me.btnDatenLaden.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) @@ -839,16 +852,17 @@ Partial Class frmMDMDatenverarbetiung Me.MyDatagridview1.Size = New System.Drawing.Size(1163, 547) Me.MyDatagridview1.TabIndex = 0 ' - 'Button11 + 'cbxBankspesen ' - Me.Button11.BackColor = System.Drawing.Color.FloralWhite - Me.Button11.FlatStyle = System.Windows.Forms.FlatStyle.Flat - Me.Button11.Location = New System.Drawing.Point(633, 3) - Me.Button11.Name = "Button11" - Me.Button11.Size = New System.Drawing.Size(120, 23) - Me.Button11.TabIndex = 5 - Me.Button11.Text = "Bankspesen" - Me.Button11.UseVisualStyleBackColor = False + Me.cbxBankspesen._allowedValuesFreiText = Nothing + Me.cbxBankspesen._allowFreiText = False + Me.cbxBankspesen._value = "" + Me.cbxBankspesen.FormattingEnabled = True + Me.cbxBankspesen.Location = New System.Drawing.Point(882, 73) + Me.cbxBankspesen.Name = "cbxBankspesen" + Me.cbxBankspesen.Size = New System.Drawing.Size(97, 21) + Me.cbxBankspesen.TabIndex = 133 + Me.cbxBankspesen.Visible = False ' 'frmMDMDatenverarbetiung ' @@ -949,4 +963,5 @@ Partial Class frmMDMDatenverarbetiung Friend WithEvents pb_importOK As PictureBox Friend WithEvents btnImportdet As Button Friend WithEvents Button11 As Button + Friend WithEvents cbxBankspesen As VERAG_PROG_ALLGEMEIN.MyComboBox End Class diff --git a/SDL/mdm/frmMDMDatenverarbetiung.vb b/SDL/mdm/frmMDMDatenverarbetiung.vb index 363dc930..a554bbd3 100644 --- a/SDL/mdm/frmMDMDatenverarbetiung.vb +++ b/SDL/mdm/frmMDMDatenverarbetiung.vb @@ -30,6 +30,10 @@ Public Class frmMDMDatenverarbetiung test = cbxTestdaten.Checked + cbxBankspesen.Items.Add(New MyListItem("", "")) + cbxBankspesen.Items.Add(New MyListItem("MONAT", "M")) + cbxBankspesen.Items.Add(New MyListItem("QUARTAL", "Q")) + End Sub Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click @@ -61,7 +65,13 @@ Public Class frmMDMDatenverarbetiung Case "UTA" : pruef = pruefData_UTA() Case "IDS" : pruef = pruefData_IDS() Case "MSE" : pruef = pruefData_MSE() - Case "BANK" : pruef = pruefData_Bank() + Case "BANK" + + If cbxBankspesen._value = "" Then + MsgBox("TYP auswählen") : Exit Sub + End If + + pruef = pruefData_Bank(cbxBankspesen._value) Case Else : MsgBox("Nicht verfügbar!") : Exit Sub End Select @@ -103,7 +113,7 @@ Public Class frmMDMDatenverarbetiung Case "MSE" : checkImport(LIEFERANT) : initDgv_MSE() btnDatenLaden.Text = "Daten laden" - Case "BANK" : checkImport(LIEFERANT) : initDgv_Bank() + Case "BANK" : checkImport(LIEFERANT) : initDgv_Bank(cbxBankspesen._value) btnDatenLaden.Text = "Daten laden" Button1.Enabled = False End Select @@ -119,11 +129,17 @@ Public Class frmMDMDatenverarbetiung Dim sqlstr As String = "" + + Select Case LIEFERANT - Case "PLOSE", "BANK" + Case "PLOSE" sqlstr = "SELECT * FROM [VERAG].[dbo].[tblMDMEinarbeitung] where supplier = '" & LIEFERANT & "' and invoicedate between '" & dat_Sum_Von.Value & "' and '" & dat_Sum_Bis.Value & "'" Case "ASFINAG" sqlstr = "SELECT * FROM [VERAG].[dbo].[tblMDMEinarbeitung] where supplier = '" & LIEFERANT & "' and YEAR(invoicedate) = " & Today().Year + + Case "BANK" + sqlstr = "SELECT * FROM [VERAG].[dbo].[tblMDMEinarbeitung] where supplier = '" & LIEFERANT & "_" & cbxBankspesen._value & "' and invoicedate between '" & dat_Sum_Von.Value & "' and '" & dat_Sum_Bis.Value & "'" + Case Else sqlstr = "SELECT * FROM [VERAG].[dbo].[tblMDMEinarbeitung] where supplier = '" & LIEFERANT & "' and invoicedate ='" & DateTimePicker2.Text & "'" End Select @@ -211,7 +227,7 @@ Public Class frmMDMDatenverarbetiung Dim dTLANDEU = (New SQL).loadDgvBySql("select LandKz, MitgliedslandEU from Währungstabelle where LandKz is not null", "FMZOLL") - If genRG_Bank(dTLANDEU, cbxIDSmitVerag.Checked) Then + If genRG_Bank(dTLANDEU, cbxIDSmitVerag.Checked, cbxBankspesen._value) Then setFakturiert(LIEFERANT) End If @@ -1164,13 +1180,13 @@ Public Class frmMDMDatenverarbetiung End Sub - Sub initDgv_Bank() + Sub initDgv_Bank(typ As String) With MyDatagridview1 .Columns.Clear() - .SET_SQL(" SELECT spesen.kundenNr as KdNr, Adressen.[Name 1] as Name, datum as Datum , (spesen.betrag * -1) as Betrag, spesen.gebuehr as Gebühr , spesen.buchungstext as Buchnungstext,spesen.kontoauszug as Kontoauszug, spesen.iban as IBAN, spesen.bic as BIC FROM [tblMDM_Bankspesen] as spesen + .SET_SQL(" SELECT spesen.kundenNr as KdNr, Adressen.[Name 1] as Name, datum as Datum , spesen.betrag as Betrag, spesen.gebuehr as Gebühr , spesen.buchungstext as Buchnungstext,spesen.kontoauszug as Kontoauszug, spesen.iban as IBAN, spesen.bic as BIC FROM [tblMDM_Bankspesen] as spesen inner join adressen ON spesen.kundenNr = Adressen.AdressenNr - where datum between '" & dat_Sum_Von.Value.ToShortDateString & "' and '" & dat_Sum_Bis.Value.ToShortDateString & "' and spesen.typ = 'Q' and isnull(spesen.RK_ID,0) = 0 and spesen.SR_datum is null " & IIf(cbxIDSmitVerag.Checked, " ", " AND Left(spesen.KundenNr,2) <> 14 AND Left(spesen.KundenNr,2) <> 15 AND Left(spesen.KundenNr,2) <> 18 "), "FMZOLL") + where datum between '" & dat_Sum_Von.Value.ToShortDateString & "' and '" & dat_Sum_Bis.Value.ToShortDateString & "' and spesen.typ = '" & typ & "' and isnull(spesen.RK_ID,0) = 0 and spesen.SR_datum is null " & IIf(cbxIDSmitVerag.Checked, " ", " AND Left(spesen.KundenNr,2) <> 14 AND Left(spesen.KundenNr,2) <> 15 AND Left(spesen.KundenNr,2) <> 18 "), "FMZOLL") .LOAD() @@ -1391,6 +1407,7 @@ Public Class frmMDMDatenverarbetiung Panel5.Visible = False cbxKopie.Visible = False cbxIDSmitVerag.Visible = False + cbxBankspesen.Visible = False Select Case Me.LIEFERANT @@ -1430,6 +1447,7 @@ Public Class frmMDMDatenverarbetiung Panel4.Visible = True cbxIDSmitVerag.Text = "Daten mit RMC/Durmaz" cbxIDSmitVerag.Visible = True + cbxBankspesen.Visible = True End Select init() @@ -1809,14 +1827,14 @@ Public Class frmMDMDatenverarbetiung End Function - Function genRG_Bank(dtLand As DataTable, mitRM_CDurmaz_Daten As Boolean) As Boolean + Function genRG_Bank(dtLand As DataTable, mitRM_CDurmaz_Daten As Boolean, typ As String) As Boolean Dim top = "" 'top = " TOP 20 " Dim sqlWhere = "" Dim SQLStr = "SELECT spesen.kundenNr, Adressen.[Name 1], sum(spesen.gebuehr) as gebuehr FROM [tblMDM_Bankspesen] as spesen inner join adressen ON spesen.kundenNr = Adressen.AdressenNr - where datum between '" & dat_Sum_Von.Value.ToShortDateString & "' and '" & dat_Sum_Bis.Value.ToShortDateString & "' and spesen.typ = 'Q' and isnull(spesen.RK_ID,0) = 0 and spesen.SR_datum is null " & IIf(mitRM_CDurmaz_Daten, "", " AND Left(spesen.KundenNr,2) <> 14 AND Left(spesen.KundenNr,2) <> 15") & "group by spesen.kundenNr, Adressen.[Name 1]" + where datum between '" & dat_Sum_Von.Value.ToShortDateString & "' and '" & dat_Sum_Bis.Value.ToShortDateString & "' and spesen.typ = '" & typ & "' and isnull(spesen.RK_ID,0) = 0 and spesen.SR_datum is null " & IIf(mitRM_CDurmaz_Daten, "", " AND Left(spesen.KundenNr,2) <> 14 AND Left(spesen.KundenNr,2) <> 15") & "group by spesen.kundenNr, Adressen.[Name 1]" Dim dt_Main As DataTable = SQL.loadDgvBySql_Param(SQLStr, "FMZOLL", 1200) @@ -1848,11 +1866,12 @@ Public Class frmMDMDatenverarbetiung End If End If + Dim LeistungsNrBank As Integer = IIf(cbxBankspesen._value = "Q", 424, 425) Dim sqlStringFehlendeOffertenNr = "select KundenNr from Offertenpositionen where KundenNr in (" & kundenNr & ") GROUP by KundenNr EXCEPT - select KundenNr from Offertenpositionen where LeistungsNr = 424 and KundenNr in (" & kundenNr & ") + select KundenNr from Offertenpositionen where LeistungsNr = " & LeistungsNrBank & " and KundenNr in (" & kundenNr & ") GROUP by KundenNr" Dim dtfehlendeOfferten As DataTable = SQL.loadDgvBySql(sqlStringFehlendeOffertenNr, "FMZOLL") @@ -1860,7 +1879,7 @@ Public Class frmMDMDatenverarbetiung If dtfehlendeOfferten.Rows.Count > 0 Then - Dim result As MsgBoxResult = MsgBox("Bei " & dt_Main.Rows.Count & " Kunden fehlt das Offert im Kundenstamm " & vbNewLine & "Möchten Sie das Offert automatisch anlegen, andernfalls werden die Bankspesen bei diesen Kunden nicht verrechnet?", vbYesNoCancel) + Dim result As MsgBoxResult = MsgBox("Bei " & dt_Main.Rows.Count & " Kunden fehlt das Offert mit der LeistungsNr " & LeistungsNrBank & " im Kundenstamm " & vbNewLine & "Möchten Sie das Offert automatisch anlegen, andernfalls werden die Bankspesen bei diesen Kunden nicht verrechnet?", vbYesNoCancel) Select Case result Case MsgBoxResult.Cancel : Return False @@ -1930,9 +1949,9 @@ Public Class frmMDMDatenverarbetiung If verarbOK Then 'Update Fakturiert - SQL.doSQL("UPDATE tblMDM_Bankspesen set RK_ID = " & RECHNUNG.RK_ID & ", SR_datum = '" & datPloseAnhang.Value.ToShortDateString & "' where datum between '" & dat_Sum_Von.Value.ToShortDateString & "' and '" & dat_Sum_Bis.Value.ToShortDateString & "' and typ = 'Q' and isnull(RK_ID,0) = 0 and SR_datum is null and kundenNr = " & BANK("kundenNr"), "FMZOLL") + SQL.doSQL("UPDATE tblMDM_Bankspesen set RK_ID = " & RECHNUNG.RK_ID & ", SR_datum = '" & datPloseAnhang.Value.ToShortDateString & "' where datum between '" & dat_Sum_Von.Value.ToShortDateString & "' and '" & dat_Sum_Bis.Value.ToShortDateString & "' and typ = '" & typ & "' and isnull(RK_ID,0) = 0 and SR_datum is null and kundenNr = " & BANK("kundenNr"), "FMZOLL") - End If + End If If True Then 'cnt Mod 10 = 0 Then txtPloseAnh_Einarbeitung.Text = cnt & " / " & dt_Main.Rows.Count @@ -4157,8 +4176,10 @@ LEFT JOIN VERAG.dbo.tbl_IDS_Länder land Case "BANK" - sqlstr = "SELECT spesen.kundenNr, sum(spesen.gebuehr) as gebuehr, 424 as LeistungsNr, min(cast(datum as Date)) as MinDatum, max(cast(datum as Date)) as MaxDatum FROM [tblMDM_Bankspesen] as spesen - where spesen.datum between '" & von.ToShortDateString & "' and '" & bis.ToShortDateString & "' and spesen.typ = 'Q' and isnull(spesen.RK_ID,0) = 0 and spesen.SR_datum is null and spesen.KundenNr = " & KdNr & " + Dim LeistungsNrBank As Integer = IIf(cbxBankspesen._value = "Q", 424, 425) + + sqlstr = "SELECT spesen.kundenNr, sum(spesen.gebuehr) as gebuehr, " & LeistungsNrBank & " as LeistungsNr, min(cast(datum as Date)) as MinDatum, max(cast(datum as Date)) as MaxDatum FROM [tblMDM_Bankspesen] as spesen + where spesen.datum between '" & von.ToShortDateString & "' and '" & bis.ToShortDateString & "' and spesen.typ = '" & cbxBankspesen._value & "' and isnull(spesen.RK_ID,0) = 0 and spesen.SR_datum is null and spesen.KundenNr = " & KdNr & " group by spesen.kundenNr" Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr, "FMZOLL") @@ -4175,23 +4196,32 @@ LEFT JOIN VERAG.dbo.tbl_IDS_Länder land Dim minQuartal As Integer = -1 Dim maxQuartal As Integer = -1 + If DateTime.TryParse(Convert.ToString(r("MinDatum")), minDatum) Then - minQuartal = ((minDatum.Month - 1) \ 3) + 1 - End If + minQuartal = ((minDatum.Month - 1) \ 3) + 1 + End If If DateTime.TryParse(Convert.ToString(r("MaxDatum")), maxDatum) Then maxQuartal = ((maxDatum.Month - 1) \ 3) + 1 End If - If minQuartal > 0 AndAlso maxQuartal > 0 Then - If minDatum.Year = maxDatum.Year AndAlso minQuartal = maxQuartal Then - LeistungsBezAdd = " Q " & minQuartal & "/" & minDatum.Year - Else - LeistungsBezAdd = " Q " & minQuartal & "-" & maxQuartal & "/" & minDatum.Year + If cbxBankspesen._value = "Q" Then + + If minQuartal > 0 AndAlso maxQuartal > 0 Then + If minDatum.Year = maxDatum.Year AndAlso minQuartal = maxQuartal Then + LeistungsBezAdd = " Q " & minQuartal & "/" & minDatum.Year + Else + LeistungsBezAdd = " Q " & minQuartal & "-" & maxQuartal & "/" & minDatum.Year + End If End If + + Else + LeistungsBezAdd = " M " & minQuartal & "/" & minDatum.Year + End If + allPos(RG, OFFERTE, LeistungsNr, NettoBetrag, BruttoBetrag,,, LeistungsBezAdd) Next @@ -5021,12 +5051,12 @@ LEFT JOIN VERAG.dbo.tbl_IDS_Länder land End Try End Function - Function pruefData_Bank() As Boolean + Function pruefData_Bank(typ As String) As Boolean pruefData_Bank = True Try Dim fehlendeKundenr As Integer = CInt((New SQL).getValueTxtBySql("select count(*) from tblMDM_Bankspesen as spesen - WHERE datum between '" & dat_Sum_Von.Value.ToShortDateString & "' and '" & dat_Sum_Bis.Value.ToShortDateString & "' and spesen.typ = 'Q' and isnull(spesen.RK_ID,0) = 0 and spesen.SR_datum is null and spesen.kundenNr <= 0 ", "FMZOLL")) + WHERE datum between '" & dat_Sum_Von.Value.ToShortDateString & "' and '" & dat_Sum_Bis.Value.ToShortDateString & "' and spesen.typ = '" & typ & "' and isnull(spesen.RK_ID,0) = 0 and spesen.SR_datum is null and spesen.kundenNr <= 0 ", "FMZOLL")) If fehlendeKundenr > 0 Then pruefData_Bank = False @@ -5327,7 +5357,7 @@ LEFT JOIN VERAG.dbo.tbl_IDS_Länder land Case "BANK" If SQL.doSQL("UPDATE [VERAG].[dbo].[tblMDM_Bankspesen] Set verrechnet = getDate() - where datum between '" & dat_Sum_Von.Value.ToShortDateString & "' and '" & dat_Sum_Bis.Value.ToShortDateString & "' and typ = 'Q' and isnull(RK_ID,0) <> 0 and SR_datum is not null ", "FMZOLL") Then + where datum between '" & dat_Sum_Von.Value.ToShortDateString & "' and '" & dat_Sum_Bis.Value.ToShortDateString & "' and typ = '" & cbxBankspesen._value & "' and isnull(RK_ID,0) <> 0 and SR_datum is not null ", "FMZOLL") Then setBillingDateCompleted(Lieferant, datPloseAnhang.Value) @@ -5895,6 +5925,11 @@ RabattBerechnen: lblTTRSum.Visible = False txtTTRSum._WaehrungZeichen = False + Label3.Text = "Prüfsumme netto:" + Label4.Text = "Prüfsumme brutto:" + + + Select Case Lieferant Case "IDS" @@ -5918,10 +5953,10 @@ RabattBerechnen: Case "BANK" - txtTTRSum.Visible = True - txtTTRSum._WaehrungZeichen = True - lblTTRSum.Visible = True - lblTTRSum.Text = "Gebühr" + + Label3.Text = "Prüfsumme Gebühr:" + Label4.Text = "Prüfsumme Betrag:" + End Select @@ -6004,7 +6039,7 @@ RabattBerechnen: Select Case LIEFERANT Case "IDS" : initDgv_IDS() - Case "BANK" : initDgv_Bank() + Case "BANK" : initDgv_Bank(cbxBankspesen._value) End Select @@ -6061,4 +6096,12 @@ RabattBerechnen: Private Sub Button11_Click(sender As Object, e As EventArgs) Handles Button11.Click initLieferant("BANK", sender) End Sub + + Private Sub cbxBankspesen_SelectedValueChanged(sender As Object, e As EventArgs) Handles cbxBankspesen.SelectedValueChanged + + If LIEFERANT = "BANK" Then + initDgv_Bank(cbxBankspesen._value) + End If + + End Sub End Class