AMBAR, Ueberstundenauszahlung, etc.
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
Imports System.IO
|
||||
Imports VERAG_PROG_ALLGEMEIN
|
||||
|
||||
Public Class usrCntlFaktAbrechnung
|
||||
|
||||
@@ -20,6 +21,7 @@ Public Class usrCntlFaktAbrechnung
|
||||
|
||||
Dim vorherige_RK_ID = 0
|
||||
Dim nachstehende_RK_ID = 0
|
||||
Dim veragKunde As Integer = -1
|
||||
|
||||
' Public VALUE_CHANGED = True ' Eigenschaft, ob das Formular gespeichert ist oder verändert wurde
|
||||
|
||||
@@ -58,6 +60,7 @@ Public Class usrCntlFaktAbrechnung
|
||||
Case "AMBAR"
|
||||
Firma = 24
|
||||
cboFiliale.changeItem(5701)
|
||||
|
||||
Case "FRONT-OFFICE"
|
||||
Firma = 17
|
||||
cboFiliale.changeItem(5801)
|
||||
@@ -239,6 +242,8 @@ Public Class usrCntlFaktAbrechnung
|
||||
'txtEmpfaengerPLZ.Text = If(RECHNUNG., "")
|
||||
' sbEmpfaengerLand.Text = If(RECHNUNG.EmpfängerLandKz, "")
|
||||
|
||||
|
||||
|
||||
If RECHNUNG.VermittlerKundenNr IsNot Nothing AndAlso RECHNUNG.VermittlerKundenNr > 0 Then
|
||||
kdFirmaAuftraggeber.KdNr = RECHNUNG.VermittlerKundenNr
|
||||
kdFirmaAuftraggeber.Text = If(RECHNUNG.VermittlerName_1, "")
|
||||
@@ -248,6 +253,8 @@ Public Class usrCntlFaktAbrechnung
|
||||
kdFirmaAuftraggeber.Text = If(RECHNUNG.VermittlerName_1, "")
|
||||
txtAuftraggeberName2.Text = If(RECHNUNG.VermittlerName_2, "")
|
||||
End If
|
||||
|
||||
|
||||
txtAuftragggeberStrasse.Text = If(RECHNUNG.VermittlerStraße, "")
|
||||
txtAuftragggeberOrt.Text = If(RECHNUNG.VermittlerOrt, "")
|
||||
'txtAuftragggeberPLZ.Text = If(RECHNUNG., "")
|
||||
@@ -298,7 +305,7 @@ Public Class usrCntlFaktAbrechnung
|
||||
End If
|
||||
|
||||
txtText.Text = If(RECHNUNG.Text, "")
|
||||
txtTextZZ.Text = If(RECHNUNG.Textzz, "")
|
||||
txtTextZZ.Text = If(RECHNUNG.TextZZ, "")
|
||||
|
||||
If RECHNUNG IsNot Nothing AndAlso RECHNUNG.ForceSteuerschlüssel IsNot Nothing Then
|
||||
cboSteuerschlüssel.changeItem(RECHNUNG.ForceSteuerschlüssel)
|
||||
@@ -349,6 +356,12 @@ Public Class usrCntlFaktAbrechnung
|
||||
setControlsEnabled(pnlAuftraggeber, pnlEnabled)
|
||||
setControlsEnabled(pnlAvisierer, pnlEnabled)
|
||||
|
||||
If RECHNUNG.Sachbearbeiter = "AUTO" AndAlso RECHNUNG.VermittlerKundenNr = "3013401" Then 'sperren, damit autom. generierte Email neu mit Offerte initialisiwert werden kann!
|
||||
dgvOffertenSperrliste.Enabled = False
|
||||
Else
|
||||
dgvOffertenSperrliste.Enabled = True
|
||||
End If
|
||||
|
||||
|
||||
SAVED = True
|
||||
loaded = True
|
||||
@@ -493,6 +506,9 @@ Public Class usrCntlFaktAbrechnung
|
||||
tGespeichert.Interval = 2000
|
||||
|
||||
cboRgGS.SelectedIndex = 0
|
||||
|
||||
EUStGutschriftAnVeragToolStripMenuItem.Visible = False
|
||||
|
||||
cboFiliale.fillWithSQL("SELECT FilialenNr, Grenzstelle FROM Filialen WHERE Fil_Status='A' ORDER BY FilialenNr ", True, "FMZOLL", True)
|
||||
|
||||
|
||||
@@ -522,7 +538,6 @@ Public Class usrCntlFaktAbrechnung
|
||||
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("OFFERTE_FREMD_VERAGIMEX", "SDL") Or VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("FAKTURIERUNG_VERAGIMEX", "SDL") Then
|
||||
FirmaTmp = "VERAGIMEX"
|
||||
End If
|
||||
|
||||
Select Case FirmaTmp
|
||||
Case "VERAG"
|
||||
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("FAKTURIERUNG_VERAGAG_DE", "SDL") Then
|
||||
@@ -538,7 +553,7 @@ Public Class usrCntlFaktAbrechnung
|
||||
Case "ATILLA" : whereFirma = " AND Firma_ID=7 " : pnlDocs.Visible = True
|
||||
Case "UNISPED" : whereFirma = " AND FIRMENGRUPPE IN ('UNISPED') " : firstEmpty = True : pnlDocs.Visible = True
|
||||
|
||||
Case "AMBAR" : whereFirma = " AND Firma_ID=24 " : pnlDocs.Visible = True
|
||||
Case "AMBAR" : whereFirma = " AND Firma_ID=24 " : pnlDocs.Visible = True : EUStGutschriftAnVeragToolStripMenuItem.Visible = True
|
||||
Case "FRONT-OFFICE" : whereFirma = " AND Firma_ID=17 " : pnlDocs.Visible = True
|
||||
Case "VERAGIMEX"
|
||||
whereFirma = " AND FIRMENGRUPPE IN ('VERAG','IMEX','ATILLA','VERAGUNISPED','FRONTOFFICE') "
|
||||
@@ -590,7 +605,7 @@ Public Class usrCntlFaktAbrechnung
|
||||
FlatButton3.Image = IIf(kdFirmaRechnungAn.KdNr_value > 0, My.Resources.person1, My.Resources.personInaktiv)
|
||||
|
||||
' setOffertFromAbfArt() 'setzt dir OffertenNr in RECHNUNG, für die Auswahl wichtig!
|
||||
initDGVOffertenSperrliste(kdFirmaRechnungAn.KdNr_value)
|
||||
initDGVOffertenSperrliste(kdFirmaRechnungAn.KdNr_value, IIf(veragKunde = -1, False, True))
|
||||
initWarnKd(kdFirmaRechnungAn, picWarnRgAn)
|
||||
|
||||
cboRechnungSprache.changeItem("DE")
|
||||
@@ -1016,15 +1031,16 @@ Public Class usrCntlFaktAbrechnung
|
||||
|
||||
|
||||
|
||||
Sub initDGVOffertenSperrliste(kdNr As Integer)
|
||||
Sub initDGVOffertenSperrliste(kdNr As Integer, Optional VeragGU As Boolean = False)
|
||||
With dgvOffertenSperrliste
|
||||
If Not IsNumeric(kdNr) OrElse kdNr < 0 Then
|
||||
.Columns.Clear()
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
Dim top = IIf(VeragGU, "top(1)", "")
|
||||
|
||||
.DataSource = SQL.loadDgvBySql("SELECT Offerten.OffertenNr, cast(Offerten.OffertenNr as varchar(3)) + ' - ' + Offertenstamm.OffertenBez as OffertenBez ,Offerten.Besonderheiten, Gesperrt, Gesperrt_Datum, Gesperrt_Grund FROM Offerten inner join Offertenstamm on [Offerten].OffertenNr=Offertenstamm.OffertenNr WHERE Offerten.KundenNr='" & kdNr & "' ORDER BY Offerten.OffertenNr ", "FMZOLL")
|
||||
.DataSource = SQL.loadDgvBySql("SELECT " & top & "Offerten.OffertenNr, cast(Offerten.OffertenNr as varchar(3)) + ' - ' + Offertenstamm.OffertenBez as OffertenBez ,Offerten.Besonderheiten, Gesperrt, Gesperrt_Datum, Gesperrt_Grund FROM Offerten inner join Offertenstamm on [Offerten].OffertenNr=Offertenstamm.OffertenNr WHERE Offerten.KundenNr='" & kdNr & "' ORDER BY Offerten.OffertenNr ", "FMZOLL")
|
||||
If .ColumnCount = 0 Then Exit Sub
|
||||
.Columns("OffertenNr").Visible = False
|
||||
.Columns("Besonderheiten").Visible = False
|
||||
@@ -1904,6 +1920,7 @@ Public Class usrCntlFaktAbrechnung
|
||||
If kdFirmaAuftraggeber.KdData_ADRESSEN IsNot Nothing Then
|
||||
RECHNUNG.VermittlerLandKz = kdFirmaAuftraggeber.KdData_ADRESSEN.LandKz
|
||||
'RECHNUNG.VermittlerOffertenNr = cProgramFunctions.isLeerNothing(absen.text)
|
||||
|
||||
End If
|
||||
|
||||
RECHNUNG.Rechnung_an = cProgramFunctions.isLeerNothing(cboRechnungAn._value) '!!!!
|
||||
@@ -1987,7 +2004,7 @@ Public Class usrCntlFaktAbrechnung
|
||||
RECHNUNG.Erlös = RECHNUNG.Abfertigungskosten - RECHNUNG.Vorkosten
|
||||
' RECHNUNG.Währungscode = cProgramFunctions.isLeerNothing(cboWaehrung._value) '????????
|
||||
If Not cbxAdmin.Checked Then
|
||||
RECHNUNG.Sachbearbeiter = cProgramFunctions.isLeerNothing(VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME)
|
||||
RECHNUNG.Sachbearbeiter = IIf(veragKunde = "3013401", "AUTO", cProgramFunctions.isLeerNothing(VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME))
|
||||
RECHNUNG.FakturierungsGruppe = VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_fakturierungsgruppe
|
||||
End If
|
||||
|
||||
@@ -2019,17 +2036,25 @@ Public Class usrCntlFaktAbrechnung
|
||||
getValues_ANHAENGE()
|
||||
End Sub
|
||||
Sub getValues_ANHAENGE()
|
||||
RECHNUNG.ANHAENGE.Clear()
|
||||
For Each r As DataGridViewRow In dgvAnhaenge.Rows
|
||||
If r.Cells("optAnhSel").Value Then
|
||||
Dim ANH As New VERAG_PROG_ALLGEMEIN.cRechnungsausgangAnhaenge
|
||||
ANH.dsId = r.Cells("clmnDsId").Value
|
||||
ANH.anhId = r.Cells("clmnAnhId").Value
|
||||
ANH.Bezeichnung = r.Cells("clmnBezeichnung").Value
|
||||
RECHNUNG.ANHAENGE.Add(ANH)
|
||||
End If
|
||||
Next
|
||||
Try
|
||||
|
||||
If RECHNUNG.ANHAENGE.Count = 0 Then Exit Sub
|
||||
RECHNUNG.ANHAENGE.Clear()
|
||||
|
||||
For Each r As DataGridViewRow In dgvAnhaenge.Rows
|
||||
|
||||
If r.Cells("optAnhSel") IsNot Nothing AndAlso r.Cells("optAnhSel").Value Then
|
||||
Dim ANH As New VERAG_PROG_ALLGEMEIN.cRechnungsausgangAnhaenge
|
||||
ANH.dsId = r.Cells("clmnDsId").Value
|
||||
ANH.anhId = r.Cells("clmnAnhId").Value
|
||||
ANH.Bezeichnung = r.Cells("clmnBezeichnung").Value
|
||||
RECHNUNG.ANHAENGE.Add(ANH)
|
||||
End If
|
||||
Next
|
||||
|
||||
Catch ex As Exception
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Function Abfertigungskosten_Berechnen() As Double
|
||||
@@ -3390,7 +3415,7 @@ Nächste_Textzeile_lesen:
|
||||
f.selectedTAB = "Offerte"
|
||||
f.ShowDialog(Me)
|
||||
If vbYes = MsgBox("Sollen die Offerte/Preise neu geladen werden (Rg.-Positionen werden zurückgesetzt)?", vbYesNoCancel) Then
|
||||
initDGVOffertenSperrliste(kdFirmaRechnungAn.KdNr_value)
|
||||
initDGVOffertenSperrliste(kdFirmaRechnungAn.KdNr_value, IIf(veragKunde = -1, False, True))
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
@@ -3913,5 +3938,122 @@ Nächste_Textzeile_lesen:
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub EUStGutschriftAnVeragToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles EUStGutschriftAnVeragToolStripMenuItem.Click
|
||||
|
||||
Dim abfrage = "Soll eine neue Gutschrift an die Verag AG für die Verzollung/EUST erstellt werden?"
|
||||
Dim PosWithWEustOrVerz As Boolean = False
|
||||
Dim selectedPOS As New List(Of VERAG_PROG_ALLGEMEIN.cRechnungsausgangPositionen)
|
||||
For Each POS In RECHNUNG.POSITIONEN.Where(Function(x) x.Anzahl > 0).ToList
|
||||
Select Case POS.LeistungsNr
|
||||
Case "20" : abfrage &= vbNewLine & POS.Anzahl & "x EUSt: " & CDbl(POS.Preis) : PosWithWEustOrVerz = True : selectedPOS.Add(POS)
|
||||
Case "340" : abfrage &= vbNewLine & POS.Anzahl & "x Verzollung: " : PosWithWEustOrVerz = True : selectedPOS.Add(POS)
|
||||
End Select
|
||||
Next
|
||||
|
||||
If Not PosWithWEustOrVerz Then Exit Sub
|
||||
|
||||
If vbYes = MsgBox(abfrage, vbYesNoCancel) Then
|
||||
veragKunde = 3013401
|
||||
saveMe()
|
||||
Dim RECHNUNGOldID = RECHNUNG.RK_ID
|
||||
|
||||
'ALTE RECHNUNG--------------------------------------------------------------------------------------------
|
||||
'If Not saveMe() Then Exit Sub 'alte Rechnung kopieren (in neuen DS speichern)
|
||||
'Dim REM_POS_TMP As New List(Of VERAG_PROG_ALLGEMEIN.cRechnungsausgangPositionen)
|
||||
Dim RECHNUNG_TMP = New VERAG_PROG_ALLGEMEIN.cRechnungsausgang(RECHNUNGOldID)
|
||||
'RECHNUNG_TMP.Sachbearbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME
|
||||
'For Each POS In RECHNUNG_TMP.POSITIONEN
|
||||
' REM_POS_TMP.Add(POS)
|
||||
'Next
|
||||
|
||||
'initDGVRechnungenPositionen()
|
||||
'RECHNUNG_TMP.SAVE_POSITIONEN(RECHNUNG_TMP.RK_ID)
|
||||
'saveMe()
|
||||
'--------------------------------------------------------------------------------------------
|
||||
'Gutschrift
|
||||
|
||||
RECHNUNG.RK_ID = -1
|
||||
RECHNUNG.RechnungsNr = -1
|
||||
RECHNUNG.UnterNr = RECHNUNG.getMaxRGUnterNr()
|
||||
RECHNUNG.RechnungsDatum = Nothing
|
||||
RECHNUNG.DruckDatumZeit = Nothing
|
||||
RECHNUNG.Status = 0
|
||||
RECHNUNG.Trdin = 0
|
||||
RECHNUNG.[BelegartenKz] = "AG" : RECHNUNG.[BelegartenNr] = 71 : RECHNUNG.Vorzeichen = "-"
|
||||
RECHNUNG.OffertenNr = 1
|
||||
|
||||
cboRgGS.SelectedIndex = 1
|
||||
|
||||
dgvOfferteDetailsUebersicht.Columns.Clear()
|
||||
|
||||
przBerechneRAPos("")
|
||||
loadFormRGPosInOfferte()
|
||||
initDGVRechnungenPositionen()
|
||||
cboFiliale.Focus()
|
||||
'setze VERG ALS Vermittler/Kunde
|
||||
Dim kundeVerag As New cKunde(veragKunde)
|
||||
Dim kundeVeragAdr As New cAdressen(veragKunde)
|
||||
Dim kundeVeragErw As New cKundenErweitert(veragKunde)
|
||||
RECHNUNG.VermittlerKundenNr = veragKunde
|
||||
kdFirmaAuftraggeber.KdNr_value = veragKunde
|
||||
kdFirmaAuftraggeber.KdNr = veragKunde
|
||||
kdFirmaAuftraggeber.KdData_KUNDE = kundeVerag
|
||||
kdFirmaAuftraggeber.KdData_ADRESSEN = kundeVeragAdr
|
||||
kdFirmaAuftraggeber.KdData_KUNDE_ERW = kundeVeragErw
|
||||
|
||||
cboRechnungAn.changeItem("3")
|
||||
RECHNUNG.Rechnung_an = cboRechnungAn._value
|
||||
|
||||
cboFiliale.Focus()
|
||||
saveMe()
|
||||
|
||||
RECHNUNG.OffertenNr = 1
|
||||
|
||||
Dim REM_POS_GU As New List(Of VERAG_PROG_ALLGEMEIN.cRechnungsausgangPositionen)
|
||||
|
||||
For Each POS In RECHNUNG_TMP.POSITIONEN
|
||||
POS.RK_ID = RECHNUNG.RK_ID
|
||||
Select Case POS.LeistungsNr
|
||||
Case "20" '->org. EUST direkt in POS
|
||||
''POS.Preis = POS.Preis * -1
|
||||
'REM_POS_GU.Add(POS)
|
||||
For Each r As DataGridViewRow In dgvOfferteDetailsUebersicht.Rows
|
||||
If r.Cells("LeistungsNr").Value = POS.LeistungsNr And r.Cells("LeistungsBez").Value = POS.LeistungsBez Then
|
||||
r.Cells("Anzahl").Value = If(POS.Anzahl, 0)
|
||||
r.Cells("Preis").Value = If(POS.Preis, 0)
|
||||
End If
|
||||
Next
|
||||
|
||||
|
||||
Case "340" 'Verzollung in dgvPOS
|
||||
For Each r As DataGridViewRow In dgvOfferteDetailsUebersicht.Rows
|
||||
If r.Cells("LeistungsNr").Value = POS.LeistungsNr And r.Cells("LeistungsBez").Value = POS.LeistungsBez Then
|
||||
r.Cells("Anzahl").Value = If(POS.Anzahl, 0)
|
||||
End If
|
||||
Next
|
||||
End Select
|
||||
Next
|
||||
|
||||
RECHNUNG.POSITIONEN.Clear()
|
||||
przRefreshDGV_Positionen()
|
||||
|
||||
|
||||
'For Each POS_NEW In REM_POS_GU
|
||||
' RECHNUNG.POSITIONEN.Add(POS_NEW)
|
||||
'Next
|
||||
|
||||
RECHNUNG.SAVE_POSITIONEN(RECHNUNG.RK_ID)
|
||||
saveMe()
|
||||
If Not loaded Then Exit Sub
|
||||
|
||||
initRECHNUNG()
|
||||
|
||||
RaiseEvent SOMETHING_CHANGED(RECHNUNG.RK_ID)
|
||||
|
||||
End If
|
||||
|
||||
veragKunde = -1
|
||||
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
Reference in New Issue
Block a user