Frachtkostenberechnung

This commit is contained in:
2023-08-23 14:32:57 +02:00
parent 363ea3aa5e
commit 8ef39f02a7
5 changed files with 712 additions and 477 deletions

View File

@@ -25,21 +25,21 @@ Partial Class frmFrachtkostenBerechnen
Me.components = New System.ComponentModel.Container()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmFrachtkostenBerechnen))
Me.ToolTipAutomatischErmitteln = New System.Windows.Forms.ToolTip(Me.components)
Me.UsrcntlFrachtkostenberechnung1 = New usrcntlFrachtkostenberechnung()
Me.UsrcntlFrachtkostenberechnung1 = New AVISO.usrcntlFrachtkostenberechnung()
Me.SuspendLayout()
'
'UsrcntlFrachtkostenberechnung1
'
Me.UsrcntlFrachtkostenberechnung1.Location = New System.Drawing.Point(12, 12)
Me.UsrcntlFrachtkostenberechnung1.Name = "UsrcntlFrachtkostenberechnung1"
Me.UsrcntlFrachtkostenberechnung1.Size = New System.Drawing.Size(386, 393)
Me.UsrcntlFrachtkostenberechnung1.Size = New System.Drawing.Size(386, 451)
Me.UsrcntlFrachtkostenberechnung1.TabIndex = 37
'
'frmFrachtkostenBerechnen
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(405, 395)
Me.ClientSize = New System.Drawing.Size(405, 472)
Me.Controls.Add(Me.UsrcntlFrachtkostenberechnung1)
Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
Me.Name = "frmFrachtkostenBerechnen"

View File

@@ -5714,7 +5714,7 @@ Public Class frmSendungsdetailsNEU
Dim f = New frmFrachtkostenBerechnen()
f.UsrcntlFrachtkostenberechnung1.init(txtAbsenderKdNr._value, txtEmpfaengerKdNr._value, txtGewicht.Text, txtFrachtkostenGesamt.Text, rtbWarenbezeichnung.Text, txtWarenwert._value)
f.UsrcntlFrachtkostenberechnung1.init(AvisoId, txtAbsenderKdNr._value, txtEmpfaengerKdNr._value, txtGewicht.Text, txtFrachtkostenGesamt.Text, rtbWarenbezeichnung.Text, txtWarenwert._value)
If f.ShowDialog = DialogResult.OK Then

File diff suppressed because it is too large Load Diff

View File

@@ -117,4 +117,42 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="Button8.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
AElFTkSuQmCC
</value>
</data>
<metadata name="ContextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>

View File

@@ -1,4 +1,7 @@
Imports DocumentFormat.OpenXml.Drawing.Diagrams
Imports DocumentFormat.OpenXml.Drawing.Charts
Imports DocumentFormat.OpenXml.Drawing.Diagrams
Imports Microsoft.Office.Interop.Excel
Imports SDL
Public Class usrcntlFrachtkostenberechnung
@@ -14,12 +17,14 @@ Public Class usrcntlFrachtkostenberechnung
Dim gesamtFrachtkosten As Double
Dim sql As New VERAG_PROG_ALLGEMEIN.SQL
Dim warenbez As String
Dim avisoid As Integer = -1
Sub New()
InitializeComponent()
End Sub
Public Sub init(absID As String, empfID As String, gewichtInput As String, gesamtfrachtkostenInput As String, ware As String, warenwert As String)
Public Sub init(avisoid As Integer, absID As String, empfID As String, gewichtInput As String, gesamtfrachtkostenInput As String, ware As String, warenwert As String)
Me.avisoid = avisoid
If gesamtfrachtkostenInput IsNot Nothing AndAlso gesamtfrachtkostenInput.ToString <> "" AndAlso IsNumeric(gesamtfrachtkostenInput) Then
gesamtFrachtkosten = CDbl(gesamtfrachtkostenInput)
@@ -129,7 +134,7 @@ Public Class usrcntlFrachtkostenberechnung
ElseIf cbxLandVon._value = "SRB" AndAlso cbxLandNach._value = "D" AndAlso (absenderID = "551038" Or absenderID = "722998") AndAlso ckbManAnteilsermittlung.Checked Then
twoRouteRequest = True
'Sonderfall für Lukow-Berechnung
'Sonderfall für Lukowa-Berechnung
VERAG_PROG_ALLGEMEIN.cGoogleAPI.GoogleDistance(origin, "Bajakovo", duration, distance,, getValues)
VERAG_PROG_ALLGEMEIN.cGoogleAPI.GoogleDistance("Bajakovo", destination, durationEU, distanceEU,, getValues)
@@ -305,8 +310,8 @@ Public Class usrcntlFrachtkostenberechnung
End Sub
Private Sub txbCalcDistanceEU_TextChanged(sender As Object, e As EventArgs) Handles txbCalcDistanceEU.TextChanged, txbCalcDistanceNichtEU.TextChanged, txbCalcDistanceNichtEU.TextChanged, tbNichtEUAnteilberechnet.TextChanged, tbEUAnteil.TextChanged, tbNichtEUAnteil.TextChanged
txbCalcDistanceEU2.Text = txbCalcDistanceEU.Text
txbCalcDistanceNichtEU2.Text = txbCalcDistanceNichtEU.Text
txtDistanzEU.Text = txbCalcDistanceEU.Text
txtDistanzNichtEU.Text = txbCalcDistanceNichtEU.Text
'tbEUAnteilberechnet2.Text = txbCalcDistanceNichtEU.Text
'tbNichtEUAnteilberechnet22.Text = tbNichtEUAnteilberechnet.Text
@@ -316,33 +321,33 @@ Public Class usrcntlFrachtkostenberechnung
End Sub
Private Sub MyTextBox1_ValueChanged() Handles MyTextBox1.ValueChanged
If IsNumeric(MyTextBox1._value) AndAlso IsNumeric(txtVerzollungskosten._value) Then
If CDbl(MyTextBox1._value) < 100 And CDbl(MyTextBox1._value) > 0 And CDbl(txtVerzollungskosten._value) > 0 Then
txtWeitereTarifPos._value = CDbl((MyTextBox1._value * 100) * txtVerzollungskosten._value / (100 + CDbl(MyTextBox1._value * 100)))
Private Sub MyTextBox1_ValueChanged() Handles txtAnteilZollInProzent.ValueChanged
If IsNumeric(txtAnteilZollInProzent._value) AndAlso IsNumeric(txtVerzollungskosten._value) Then
If CDbl(txtAnteilZollInProzent._value) < 100 And CDbl(txtAnteilZollInProzent._value) > 0 And CDbl(txtVerzollungskosten._value) > 0 Then
txtAnteilZoll._value = CDbl((txtAnteilZollInProzent._value * 100) * txtVerzollungskosten._value / (100 + CDbl(txtAnteilZollInProzent._value * 100)))
End If
End If
End Sub
Private Sub MyTextBox2_ValueChanged() Handles MyTextBox2.ValueChanged, MyTextBox3.ValueChanged
If IsNumeric(MyTextBox2._value) And IsNumeric(MyTextBox3._value) Then
txtPreis._value = MyTextBox2._value * MyTextBox3._value
Private Sub MyTextBox2_ValueChanged() Handles txtPreis.ValueChanged, txtWarengewichtNetto.ValueChanged
If IsNumeric(txtPreis._value) And IsNumeric(txtWarengewichtNetto._value) Then
txtGesamtpreis._value = txtPreis._value * txtWarengewichtNetto._value
End If
End Sub
Private Sub txtFrachtanteil_ValueChanged() Handles txtFrachtanteil.ValueChanged, txtPreis.ValueChanged
If IsNumeric(txtFrachtanteil._value) And IsNumeric(txtPreis._value) Then
txtVerzollungskosten._value = CDbl(txtPreis._value - txtFrachtanteil._value)
Private Sub txtFrachtanteil_ValueChanged() Handles txtFrachtkostenanteil.ValueChanged, txtGesamtpreis.ValueChanged
If IsNumeric(txtFrachtkostenanteil._value) And IsNumeric(txtGesamtpreis._value) Then
txtVerzollungskosten._value = CDbl(txtGesamtpreis._value - txtFrachtkostenanteil._value)
End If
End Sub
Private Sub txtWarengewicht_ValueChanged() Handles txtWarengewicht.ValueChanged, MyTextBox6.ValueChanged
If IsNumeric(txtWarengewicht._value) And IsNumeric(txtGesamtgewicht._value) Then
Dim anteil As Double = Math.Round(CDbl(txtWarengewicht._value / txtGesamtgewicht._value * 100), 2)
Private Sub txtWarengewicht_ValueChanged() Handles txtWarengewichtBrutto.ValueChanged, txtGesamtfracht.ValueChanged
If IsNumeric(txtWarengewichtBrutto._value) And IsNumeric(txtGesamtgewicht._value) Then
Dim anteil As Double = Math.Round(CDbl(txtWarengewichtBrutto._value / txtGesamtgewicht._value * 100), 2)
lblAnteil.Text = anteil & " %"
If IsNumeric(MyTextBox6._value) Then
txtWarenanteil._value = CDbl(MyTextBox6._value * anteil / 100)
If IsNumeric(txtGesamtfracht._value) Then
txtWarenanteilsumme._value = CDbl(txtGesamtfracht._value * anteil / 100)
End If
Else
@@ -351,31 +356,103 @@ Public Class usrcntlFrachtkostenberechnung
End If
End Sub
Private Sub txbCalcDistanceNichtEU2_TextChanged(sender As Object, e As EventArgs) Handles txbCalcDistanceNichtEU2.TextChanged, txbCalcDistanceEU2.TextAlignChanged
If IsNumeric(txbCalcDistanceNichtEU2._value) AndAlso IsNumeric(txbCalcDistanceEU2._value) Then
txtDistanzGes._value = CDbl(txbCalcDistanceNichtEU2._value) + CDbl(txbCalcDistanceEU2._value)
Private Sub txbCalcDistanceNichtEU2_TextChanged(sender As Object, e As EventArgs) Handles txtDistanzNichtEU.TextChanged, txtDistanzEU.TextAlignChanged
If IsNumeric(txtDistanzNichtEU._value) AndAlso IsNumeric(txtDistanzEU._value) Then
txtGesamtdistanz._value = CDbl(txtDistanzNichtEU._value) + CDbl(txtDistanzEU._value)
End If
End Sub
Private Sub txtDistanzGes_ValueChanged() Handles txtDistanzGes.ValueChanged, txtWarenanteil.ValueChanged
If IsNumeric(txtDistanzGes._value) And IsNumeric(txtWarenanteil._value) And IsNumeric(txbCalcDistanceEU2._value) Then
txtGesamtsumme._value = CDbl(txtWarenanteil._value / txtDistanzGes._value * txbCalcDistanceEU2._value)
txtFrachtanteil._value = txtGesamtsumme._value
Private Sub txtDistanzGes_ValueChanged() Handles txtGesamtdistanz.ValueChanged, txtWarenanteilsumme.ValueChanged
If IsNumeric(txtGesamtdistanz._value) And IsNumeric(txtWarenanteilsumme._value) And IsNumeric(txtDistanzEU._value) Then
txtGesamtfrachtAnteil._value = CDbl(txtWarenanteilsumme._value / txtGesamtdistanz._value * txtDistanzEU._value)
txtFrachtkostenanteil._value = txtGesamtfrachtAnteil._value
End If
End Sub
Private Sub txtVerzollungskosten_ValueChanged() Handles txtVerzollungskosten.ValueChanged, txtWeitereTarifPos.ValueChanged
If IsNumeric(txtVerzollungskosten._value) AndAlso IsNumeric(txtWeitereTarifPos._value) Then
txtBGLZoll._value = CDbl(txtVerzollungskosten._value) + CDbl(txtWeitereTarifPos._value)
Private Sub txtVerzollungskosten_ValueChanged() Handles txtVerzollungskosten.ValueChanged, txtAnteilZoll.ValueChanged
If IsNumeric(txtVerzollungskosten._value) AndAlso IsNumeric(txtAnteilZoll._value) Then
txtBGLZoll._value = CDbl(txtVerzollungskosten._value) + CDbl(txtAnteilZoll._value)
End If
End Sub
Private Sub txtPreis_ValueChanged() Handles txtPreis.ValueChanged
If IsNumeric(txtPreis._value) Then
txtEUST._value = txtPreis._value
Private Sub txtPreis_ValueChanged() Handles txtGesamtpreis.ValueChanged
If IsNumeric(txtGesamtpreis._value) Then
txtBGLEUST._value = txtGesamtpreis._value
End If
End Sub
Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click
If Not ContextMenuStrip1.Items.ContainsKey("open") Then
Dim uploadPictures = New ToolStripMenuItem() With {.Text = "öffnen", .Name = "open"}
ContextMenuStrip1.Items.Add(uploadPictures)
AddHandler uploadPictures.Click, AddressOf mnuItem_Clicked
End If
If Not ContextMenuStrip1.Items.ContainsKey("createAttachment") Then
Dim copyToClipboard = New ToolStripMenuItem() With {.Text = "als Anhang anfügen", .Name = "createAttachment"}
AddHandler copyToClipboard.Click, AddressOf mnuItem_Clicked
ContextMenuStrip1.Items.Add(copyToClipboard)
End If
ContextMenuStrip1.Show(Cursor.Position)
End Sub
Private Sub mnuItem_Clicked(sender As Object, e As EventArgs)
ContextMenuStrip1.Hide()
Dim item As ToolStripMenuItem = TryCast(sender, ToolStripMenuItem)
If item IsNot Nothing Then
Dim tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("Frachtkostenberechnung", ".pdf", , False)
If item.Name = "open" Then
createFrachtkostenberechnung(tmpPath)
Process.Start(tmpPath)
ElseIf item.Name = "createAttachment" Then
createFrachtkostenberechnung(tmpPath)
If avisoid < 0 Then
MsgBox("AvisoId wurde nicht korrekt ermittelt!")
Exit Sub
End If
Dim f As New frmSendungAnhangImport(avisoid)
If f.addData_SendungAnhang(tmpPath) > 0 Then
MsgBox("Formular wurde in der Sendung angefügt")
Else
MsgBox("Fehler beim Einfügen")
End If
Else
MsgBox("Funktion nicht implementiert!")
End If
End If
End Sub
Private Sub createFrachtkostenberechnung(tmpPath As String)
Try
Me.Cursor = Cursors.WaitCursor
Dim rptFrachtkosten As New SDL.rptFrachtkostenberechnung(txtWare.Text, txtPreis.Text, txtWarengewichtNetto.Text, txtGesamtpreis.Text, txtFrachtkostenanteil.Text, txtVerzollungskosten.Text, txtAnteilZoll.Text, txtAnteilZollInProzent._value, txtBGLZoll.Text, txtBGLEUST.Text, txtDistanzEU.Text, txtDistanzNichtEU.Text, txtGesamtdistanz.Text, txtGesamtgewicht.Text, txtWarengewichtBrutto.Text, lblAnteil.Text, txtWarenanteilsumme.Text, txtGesamtfracht.Text, txtGesamtfrachtAnteil.Text)
Dim p As New GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport
rptFrachtkosten.Run(False)
p.NeverEmbedFonts = ""
p.Export(rptFrachtkosten.Document, tmpPath)
Me.Cursor = Cursors.Default
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
Me.Cursor = Cursors.Default
End Try
End Sub
End Class