fakt, etc.

This commit is contained in:
2025-10-30 12:00:22 +01:00
parent a1889578d8
commit 52e0041754
19 changed files with 1921 additions and 543 deletions

View File

@@ -456,7 +456,7 @@ Public Class frmBU_Mahnlauf
'If rpt.lblKundenAuftragsnummer.Text = String.Empty Then rpt.lblKundenAuftragsnummerUeberschrift.Visible = False
rpt.lblSachbearbeiter.Text = cFakturierung.getSBRgName(FIRMA.Firma_ID, VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME) 'If(RECHNUNG.Sachbearbeiter, "")
rpt.lblSachbearbeiter.Text = cFakturierung.getSBRgName(FIRMA.Firma_ID, VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME) '
Select Case FIRMA.Firma_ID
Case 19

View File

@@ -846,7 +846,8 @@ Public Class usrCntlBH
SELECT
op_debitor.i_personenkonto AS KDNR,
op_debitor.i_personenkonto AS KDNR,
[Adressen].Ordnungsbegriff as Name,
op_debitor.c_urbelegid AS BelegNr,
op_debitor.c_bemerkung AS Buchungstext,
op_debitor.d_rechnung AS Belegdatum,
@@ -871,6 +872,7 @@ Public Class usrCntlBH
FROM op_debitor INNER JOIN fibu_konto ON (op_debitor.i_personenkonto = fibu_konto.i_konto)
inner join [FMZOLL\SQLFMZOLL].[VERAG].[dbo].[Adressen] on [Adressen].AdressenNr = op_debitor.i_personenkonto
inner join [FMZOLL\SQLFMZOLL].[VERAG].[dbo].[tblKundenErweitert] on kde_KundenNr = op_debitor.i_personenkonto
left join fibu_zahlziel on dbo.fibu_zahlziel.i_firm_refid = dbo.op_debitor.i_firm_refid and dbo.fibu_zahlziel.c_zahlziel = ISNULL(fibu_konto.c_zahlziel, '0/0/20')
@@ -932,7 +934,7 @@ Public Class usrCntlBH
Next
If counter > 0 Then
MsgBox("In der Zinsberechnung befinden sich " & counter & " Positionen, die bereits abgerechnet wurden!" & vbNewLine & "Diese wurden ")
MsgBox("In der Zinsberechnung befinden sich " & counter & " Positionen, die bereits abgerechnet wurden!" & vbNewLine & "Diese werden übersprungen bzw. nicht nochmals verrechnet!")
End If
Dim dtTemp As New DataTable
@@ -945,9 +947,27 @@ Public Class usrCntlBH
If dtTemp.Columns.Contains("ZZinTage") Then dtTemp.Columns.Remove("ZZinTage")
If dtTemp.Columns.Contains("ReZielZahlungsdatum") Then dtTemp.Columns.Remove("ReZielZahlungsdatum")
Dim dtTemp2 As New DataTable
dtTemp2.Columns.Add("KDNR", GetType(Int32))
dtTemp2.Columns.Add("Name", GetType(String))
dtTemp2.Columns.Add("Zinsbetrag", GetType(Decimal))
If dtTemp.Rows.Count > 0 Then
cProgramFunctions.genExcelFromDT_NEW(dtTemp, {"H1:H" & (dt.Rows.Count + 1), "J1:J" & (dt.Rows.Count + 1)})
Dim query = From row In dtTemp.AsEnumerable()
Group row By key = row.Field(Of Int32)("KDNR") Into grp = Group
Select New With {
.GroupValue = key,
.KDName = grp.First().Field(Of String)("Name"),
.SumValue = grp.Sum(Function(r) Convert.ToDecimal(r("Zinsbetrag")))
}
' Fill the new DataTable
For Each item In query
dtTemp2.Rows.Add(item.GroupValue, item.KDName, item.SumValue)
Next
If dtTemp.Rows.Count > 0 AndAlso dtTemp2.Rows.Count > 0 Then
cProgramFunctions.genExcelFromMultibleDT_NEW(New List(Of DataTable) From {dtTemp, dtTemp2}, {"H1:H" & (dt.Rows.Count + 1), "J1:J" & (dt.Rows.Count + 1)})
txtnichtabrechneteKunden.Text = SQL.getValueTxtBySql("SELECT count(distinct(kundenNr)) FROM [VERAG].[dbo].[tblMDM_Zinsberechnung] where verrechnet is null", "FMZOLL",,, "0")
If IsNumeric(txtnichtabrechneteKunden.Text) AndAlso CInt(txtnichtabrechneteKunden.Text) > 0 Then
@@ -1224,6 +1244,13 @@ Public Class usrCntlBH
End Sub
Private Sub btnZNBverrechnen_Click(sender As Object, e As EventArgs) Handles btnZNBverrechnen.Click
If txtZRbis.Text = "" OrElse Not IsDate(txtZRbis.Text) Then
MsgBox("Abrechnungdatum setzen!")
txtZRbis.Focus()
Exit Sub
End If
Dim LimitBEtrag As Integer = -1
If txtAbBetragAbrechnen._value <> "" AndAlso IsNumeric(txtAbBetragAbrechnen._value) Then
LimitBEtrag = CInt(txtAbBetragAbrechnen._value)
@@ -1269,7 +1296,7 @@ Public Class usrCntlBH
End If
If vbYes = MsgBox("Möchten Sie für " & dt_Main.Rows.Count & " Kunden die Zinsbelastung verrechnen?" & vbNewLine & "Es werden nur Rechnungen erstellt, deren Gesamtbelastung über " & LimitBEtrag & " EUR liegt!", vbYesNoCancel) Then
If vbYes = MsgBox("Möchten Sie für " & dt_Main.Rows.Count & " Kunden die Zinsbelastung mit Abrechnungsdatum " & CDate(txtZRbis.Text).ToShortDateString & " verrechnen?" & vbNewLine & "Es werden nur Rechnungen erstellt, deren Gesamtbelastung über " & LimitBEtrag & " EUR liegt!", vbYesNoCancel) Then
@@ -1291,7 +1318,7 @@ Public Class usrCntlBH
Dim verarbOK As Boolean = True
Dim SPEDBUCH As VERAG_PROG_ALLGEMEIN.cSpeditionsbuch = Nothing
Dim RK_ID As Integer = -1
If Not gen_SPEDBUCH_ByKdNr(R("kundenNr"), SPEDBUCH, Now(), vermerk) Then verarbOK = False
If Not gen_SPEDBUCH_ByKdNr(R("kundenNr"), SPEDBUCH, CDate(txtZRbis.Text).ToShortDateString, vermerk) Then verarbOK = False
If Not gen_RECHNUNG_BySPEDBUCH(R("kundenNr"), SPEDBUCH, RK_ID, Fußtext) Then verarbOK = False
If verarbOK Then
@@ -1394,7 +1421,9 @@ Public Class usrCntlBH
Private Sub btnDel__Click(sender As Object, e As EventArgs) Handles btnDel_.Click
If vbYes = MsgBox("Möchten Sie die alle nicht verrechneten Zinsbelastungen löschen?", vbYesNoCancel) Then
SQL.doSQL("delete from [tblMDM_Zinsberechnung] WHERE [verrechnet] Is null", "FMZOLL")
If SQL.doSQL("delete from [tblMDM_Zinsberechnung] WHERE [verrechnet] Is null", "FMZOLL") Then
txtnichtabrechneteKunden.Text = SQL.getValueTxtBySql("SELECT count(distinct(kundenNr)) FROM [VERAG].[dbo].[tblMDM_Zinsberechnung] where verrechnet is null", "FMZOLL",,, "0")
End If
End If
End Sub