VK Cbam Save, Vollm.ind.
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
Imports VERAG_PROG_ALLGEMEIN
|
||||
Imports System.IO
|
||||
Imports VERAG_PROG_ALLGEMEIN
|
||||
|
||||
Public Class frmVorauskasse_CBAM
|
||||
Public GesamtBetrag As Double = 0
|
||||
@@ -31,7 +32,7 @@ Public Class frmVorauskasse_CBAM
|
||||
cATEZ_Greenpulse_CBAM_CostCalculation.calcCBAM_ByCertificatePrice(r.Cells("clmnTarif").Value, r.Cells("clmnWeight").Value, r.Cells("clmnCountry").Value, txtCalc_Defaut_CertPrice._value, r.Cells("clmnYear").Value, cost, emission, benchmark)
|
||||
|
||||
If cost > 0 Then
|
||||
r.Cells("clmnKosten").Value = cost
|
||||
r.Cells("clmnKosten").Value = CDbl(cost.ToString("N2"))
|
||||
r.Cells("cmlnEmission").Value = emission
|
||||
r.Cells("clmnBenchmark").Value = benchmark
|
||||
GesamtBetrag += cost
|
||||
@@ -69,4 +70,158 @@ Public Class frmVorauskasse_CBAM
|
||||
Next
|
||||
cProgramFunctions.genExcelFromDT_NEW(dt, {"E:E"},, "CBAM Kosten",,,,,,, True)
|
||||
End Sub
|
||||
|
||||
Public Function getValues() As DataTable
|
||||
Dim dt As New DataTable()
|
||||
|
||||
' Spalten anlegen
|
||||
For Each col As DataGridViewColumn In MyDatagridview1.Columns
|
||||
dt.Columns.Add(col.Name, GetType(String)) ' oder passenden Typ setzen
|
||||
Next
|
||||
|
||||
' Zeilen kopieren
|
||||
For Each row As DataGridViewRow In MyDatagridview1.Rows
|
||||
If Not row.IsNewRow Then
|
||||
Dim dr As DataRow = dt.NewRow()
|
||||
|
||||
For Each col As DataGridViewColumn In MyDatagridview1.Columns
|
||||
dr(col.Name) = If(row.Cells(col.Name).Value, DBNull.Value)
|
||||
Next
|
||||
|
||||
dt.Rows.Add(dr)
|
||||
End If
|
||||
Next
|
||||
dt.TableName = "cbamdata"
|
||||
Return dt
|
||||
End Function
|
||||
|
||||
Public Function getValues_DATA() As String
|
||||
Try
|
||||
Dim sw As New StringWriter()
|
||||
Dim dt = getValues()
|
||||
dt.WriteXml(sw, XmlWriteMode.WriteSchema)
|
||||
Return sw.ToString()
|
||||
Catch ex As Exception
|
||||
MsgBox("Fehler beim Exportieren der Daten: " & ex.Message & ex.StackTrace, MsgBoxStyle.Critical)
|
||||
End Try
|
||||
Return ""
|
||||
End Function
|
||||
|
||||
Public Sub setValues_DATA(data As String)
|
||||
Try
|
||||
If data Is Nothing Then Exit Sub
|
||||
If data = "" Then Exit Sub
|
||||
|
||||
Dim dt As New DataTable()
|
||||
Dim sr As New StringReader(data)
|
||||
dt.ReadXml(sr)
|
||||
setValues(dt)
|
||||
Catch ex As Exception
|
||||
MsgBox("Fehler beim Laden der Daten: " & ex.Message, MsgBoxStyle.Critical)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Public Shared Function DATA_to_String(data As String) As String
|
||||
Return DataTableToString_First4Cols(DATA_to_dt(data))
|
||||
End Function
|
||||
Public Shared Function DATA_to_dt(data As String) As DataTable
|
||||
Try
|
||||
If data Is Nothing Then Return Nothing
|
||||
If data = "" Then Return Nothing
|
||||
|
||||
Dim dt As New DataTable()
|
||||
Dim sr As New StringReader(data)
|
||||
dt.ReadXml(sr)
|
||||
Return dt
|
||||
Catch ex As Exception
|
||||
MsgBox("Fehler beim Laden der Daten: " & ex.Message, MsgBoxStyle.Critical)
|
||||
End Try
|
||||
Return Nothing
|
||||
End Function
|
||||
|
||||
Public Shared Function DataTableToString_First4Cols(dt As DataTable) As String
|
||||
|
||||
If dt Is Nothing OrElse dt.Columns.Count = 0 Then
|
||||
Return String.Empty
|
||||
End If
|
||||
|
||||
Dim sb As New System.Text.StringBuilder()
|
||||
|
||||
' Anzahl der zu verwendenden Spalten (max 5)
|
||||
Dim colCount As Integer = Math.Min(5, dt.Columns.Count)
|
||||
|
||||
' ---- Überschrift ----
|
||||
For i As Integer = 0 To colCount - 1
|
||||
sb.Append(dt.Columns(i).ColumnName.Replace("clmn", ""))
|
||||
|
||||
If i < colCount - 1 Then
|
||||
sb.Append(" | ")
|
||||
End If
|
||||
Next
|
||||
|
||||
sb.AppendLine()
|
||||
sb.AppendLine(New String("-"c, 50))
|
||||
|
||||
' ---- Zeilen ----
|
||||
For Each dr As DataRow In dt.Rows
|
||||
|
||||
For i As Integer = 0 To colCount - 1
|
||||
|
||||
Dim value As Object = dr(i)
|
||||
|
||||
If value Is DBNull.Value OrElse value Is Nothing Then
|
||||
sb.Append("")
|
||||
Else
|
||||
sb.Append(value.ToString())
|
||||
End If
|
||||
|
||||
If i < colCount - 1 Then
|
||||
sb.Append(" | ")
|
||||
End If
|
||||
|
||||
Next
|
||||
|
||||
sb.AppendLine()
|
||||
Next
|
||||
|
||||
Return sb.ToString()
|
||||
|
||||
End Function
|
||||
|
||||
Public Sub setValues(dt As DataTable)
|
||||
Try
|
||||
' WICHTIG: Auto-Generierung verhindern
|
||||
MyDatagridview1.AutoGenerateColumns = False
|
||||
|
||||
' Falls vorher gebunden war: Binding lösen, damit nichts auto-generiert
|
||||
If MyDatagridview1.DataSource IsNot Nothing Then
|
||||
MyDatagridview1.DataSource = Nothing
|
||||
End If
|
||||
|
||||
' Nur Zeilen löschen – Spalten bleiben
|
||||
MyDatagridview1.Rows.Clear()
|
||||
|
||||
If dt Is Nothing OrElse dt.Rows.Count = 0 Then Return
|
||||
|
||||
MyDatagridview1.SuspendLayout()
|
||||
|
||||
For Each dr As DataRow In dt.Rows
|
||||
Dim rowIndex = MyDatagridview1.Rows.Add()
|
||||
|
||||
For Each col As DataGridViewColumn In MyDatagridview1.Columns
|
||||
' getValues() nutzt col.Name -> daher hier auch col.Name
|
||||
If dt.Columns.Contains(col.Name) Then
|
||||
Dim v As Object = dr(col.Name)
|
||||
MyDatagridview1.Rows(rowIndex).Cells(col.Index).Value =
|
||||
If(v Is DBNull.Value, Nothing, v)
|
||||
End If
|
||||
Next
|
||||
Next
|
||||
|
||||
Catch ex As Exception
|
||||
MsgBox("Fehler beim Laden der Daten: " & ex.Message, MsgBoxStyle.Critical)
|
||||
Finally
|
||||
MyDatagridview1.ResumeLayout()
|
||||
End Try
|
||||
End Sub
|
||||
End Class
|
||||
@@ -18,6 +18,7 @@ Public Class usrcntlVorauskasse
|
||||
Public ROLLE As String = ""
|
||||
Dim VK_ID = -1
|
||||
Dim SQL As New SQL
|
||||
Dim serializedData_CBAM As String = ""
|
||||
|
||||
|
||||
Sub New()
|
||||
@@ -421,7 +422,7 @@ Public Class usrcntlVorauskasse
|
||||
cboSprache.Visible = False
|
||||
Label17.Visible = False
|
||||
Select Case cboFirma._value
|
||||
Case "1"
|
||||
Case "1", "11"
|
||||
Button6.Visible = True
|
||||
Case Else
|
||||
Button6.Visible = False
|
||||
@@ -562,6 +563,7 @@ Public Class usrcntlVorauskasse
|
||||
lklEintragAufheben.Visible = False
|
||||
End If
|
||||
initKdNrLbl()
|
||||
serializedData_CBAM = ""
|
||||
End Sub
|
||||
Private Sub lklEintragAufheben_LinkClicked(sender As Object, e As LinkLabelLinkClickedEventArgs) Handles lklEintragAufheben.LinkClicked
|
||||
initControlsSave(Nothing)
|
||||
@@ -684,6 +686,7 @@ Public Class usrcntlVorauskasse
|
||||
VK.vk_Berechnung_SonstigeKostenText = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtSonstigeKostenText.Text)
|
||||
VK.vk_Berechnung_PP = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(txtPapierePorti._value)
|
||||
|
||||
VK.vk_serializedData_CBAM = serializedData_CBAM
|
||||
|
||||
End Sub
|
||||
|
||||
@@ -731,8 +734,12 @@ Public Class usrcntlVorauskasse
|
||||
txtSonstigeKosten._value = If(VK.vk_Berechnung_SonstigeKosten, "")
|
||||
txtSonstigeKostenText.Text = If(VK.vk_Berechnung_SonstigeKostenText, "Sonstige Kosten")
|
||||
|
||||
cboFiliale.changeItem(If(VK.vk_FilialeNr, ""))
|
||||
txtAbfertigungsNr.Text = If(VK.vk_AbfertigungsNr, "")
|
||||
|
||||
txtPapierePorti._value = If(VK.vk_Berechnung_PP, "")
|
||||
|
||||
serializedData_CBAM = If(VK.vk_serializedData_CBAM, "")
|
||||
End Sub
|
||||
Sub setDefault()
|
||||
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
|
||||
@@ -877,8 +884,15 @@ Public Class usrcntlVorauskasse
|
||||
|
||||
Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click
|
||||
Dim f As New frmVorauskasse_CBAM
|
||||
|
||||
' MsgBox(frmVorauskasse_CBAM.DATA_to_String(serializedData_CBAM))
|
||||
|
||||
f.setValues_DATA(serializedData_CBAM)
|
||||
|
||||
|
||||
If f.ShowDialog(Me) = DialogResult.OK Then
|
||||
If f.GesamtBetrag > 0 Then
|
||||
serializedData_CBAM = f.getValues_DATA
|
||||
|
||||
' txtEustSonstText.Text = "ZOLL"
|
||||
txtAndereAbgabenText.Text = "Est. CBAM Cost"
|
||||
@@ -887,6 +901,7 @@ Public Class usrcntlVorauskasse
|
||||
txtAndereAbgabenBetrag._value = f.GesamtBetrag
|
||||
txtSonstigeKosten._value = f.Aufschlag
|
||||
initBerechnung()
|
||||
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
@@ -354,8 +354,9 @@ Public Class frmFormulare
|
||||
Else
|
||||
|
||||
MyListBox1.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("DE Vollmacht", FormularManagerArten.DE_Vollmacht))
|
||||
MyListBox1.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("DE Vollmacht (indirekt)", FormularManagerArten.DE_Vollmacht_indirekt))
|
||||
' MyListBox1.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("DE Vollmacht (indirekt)", FormularManagerArten.DE_Vollmacht_indirekt))
|
||||
MyListBox1.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("DE Fiskal-Vollmacht", FormularManagerArten.DE_Fiskal))
|
||||
MyListBox1.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("DE/AT Vollmacht (indirekt)", FormularManagerArten.DE_Vollmacht_indirekt))
|
||||
MyListBox1.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("AT Vollmacht", FormularManagerArten.AT_Vollmacht))
|
||||
MyListBox1.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("AT Vollmacht 4200 EV", FormularManagerArten.AT_Vollmacht_EV))
|
||||
MyListBox1.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("AT Fiskal-Vollmacht", FormularManagerArten.AT_Fiskal))
|
||||
|
||||
@@ -2433,12 +2433,12 @@ Public Class usrCntlSpeditionsBuchSuche
|
||||
|
||||
|
||||
|
||||
'Problem mit beträge
|
||||
If cboFiliale._value = "" Then
|
||||
rpt.Dispose() : print.Dispose()
|
||||
MsgBox("Bitte Filiale angeben!")
|
||||
Exit Sub
|
||||
End If
|
||||
''Problem mit beträge
|
||||
'If cboFiliale._value = "" Then
|
||||
' rpt.Dispose() : print.Dispose()
|
||||
' MsgBox("Bitte Filiale angeben!")
|
||||
' Exit Sub
|
||||
'End If
|
||||
|
||||
Dim FirmaTmp = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
|
||||
If cboFiliale._value <> "" Then
|
||||
@@ -2500,7 +2500,8 @@ Public Class usrCntlSpeditionsBuchSuche
|
||||
inner JOIN leistungen ON RechnungsausgangPositionen.LeistungsNr=leistungen.LeistungsNr
|
||||
WHERE 1=1
|
||||
" & SpedBuchWhere & "
|
||||
and Speditionsbuch.Abfertigungsart=" & rpt.Fields.Item("Abfertigungsart").Value & "
|
||||
and Speditionsbuch.Abfertigungsart=" & rpt.Fields.Item("Abfertigungsart").Value &
|
||||
If(CheckBox1.Checked, " and Speditionsbuch.FilialenNr='" & If(rpt.Fields.Item("FilialenNr") IsNot Nothing, rpt.Fields.Item("FilialenNr").Value, "") & "'", "") & "
|
||||
and leistungen.Abfertigungskosten=1"
|
||||
Dim RgBetrag As Double = SQL.getValueTxtBySqlVarList(sqlstrRg, "FMZOLL", SpedBuchList, 0)
|
||||
|
||||
@@ -2509,7 +2510,8 @@ Public Class usrCntlSpeditionsBuchSuche
|
||||
inner JOIN Vorkosten ON Vorkosten.FilialenNr=Speditionsbuch.FilialenNr and Vorkosten.AbfertigungsNr=Speditionsbuch.AbfertigungsNr and Vorkosten.UnterNr=Speditionsbuch.UnterNr
|
||||
WHERE 1=1
|
||||
" & SpedBuchWhere & "
|
||||
and Speditionsbuch.Abfertigungsart=" & rpt.Fields.Item("Abfertigungsart").Value & ""
|
||||
and Speditionsbuch.Abfertigungsart=" & rpt.Fields.Item("Abfertigungsart").Value &
|
||||
If(CheckBox1.Checked, " and Speditionsbuch.FilialenNr='" & If(rpt.Fields.Item("FilialenNr") IsNot Nothing, rpt.Fields.Item("FilialenNr").Value, "") & "'", "") & ""
|
||||
|
||||
Dim VkBetrag As Double = SQL.getValueTxtBySqlVarList(sqlstrVK, "FMZOLL", SpedBuchList, 0)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user