gesamtsicherheiten, etc.

This commit is contained in:
2026-03-19 10:44:39 +01:00
parent e93748277b
commit 886d692b3f
2 changed files with 43 additions and 76 deletions

View File

@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben: ' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")> ' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("4.2.4.9")> <Assembly: AssemblyVersion("4.2.5.0")>
<Assembly: AssemblyFileVersion("4.2.4.9")> <Assembly: AssemblyFileVersion("4.2.5.0")>

View File

@@ -870,10 +870,10 @@ Public Class frmGesamtsicherheitenNEU
Case Else Case Else
With OPEN With OPEN
.gs_posNr = getLatestPosNr(gessicherheitID, txtSicherheitATBNr.Text) + 1 .gs_posNr = OPEN.getLatestPosNr(gessicherheitID, txtSicherheitATBNr.Text) + 1
If .gs_MRNNr <> "" Then If .gs_MRNNr <> "" Then
.gs_posSubNr = getLatestSubPosNr(gessicherheitID, txtSicherheitATBNr.Text, txtMRNNr.Text) + 1 .gs_posSubNr = OPEN.getLatestSubPosNr(gessicherheitID, txtSicherheitATBNr.Text, txtMRNNr.Text) + 1
Else Else
.gs_posSubNr = Nothing .gs_posSubNr = Nothing
End If End If
@@ -945,11 +945,11 @@ Public Class frmGesamtsicherheitenNEU
.gs_ATBNr = "" .gs_ATBNr = ""
.gs_MRNNr = "" .gs_MRNNr = ""
If .gs_MRNNr <> "" Then If .gs_MRNNr <> "" Then
.gs_posSubNr = Me.getLatestSubPosNr(currentSicherheit.gs_gsNr, currentSicherheit.gs_ATBNr, currentSicherheit.gs_MRNNr) + 1 .gs_posSubNr = OPEN.getLatestSubPosNr(currentSicherheit.gs_gsNr, currentSicherheit.gs_ATBNr, currentSicherheit.gs_MRNNr) + 1
Else Else
.gs_posSubNr = Nothing .gs_posSubNr = Nothing
End If End If
.gs_posNr = Me.getLatestPosNr(currentSicherheit.gs_gsNr, currentSicherheit.gs_ATBNr) + 1 .gs_posNr = OPEN.getLatestPosNr(currentSicherheit.gs_gsNr, currentSicherheit.gs_ATBNr) + 1
.gs_datum = DateTimeString2DateTimeKonvertinator(txtPosDat.Text, txtPosTime.Text) .gs_datum = DateTimeString2DateTimeKonvertinator(txtPosDat.Text, txtPosTime.Text)
.gs_warenwert = 0 .gs_warenwert = 0
.gs_sicherheitsbetrag = 0 .gs_sicherheitsbetrag = 0
@@ -1175,7 +1175,7 @@ Public Class frmGesamtsicherheitenNEU
.gs_MRNNr = txtMRNNr.Text .gs_MRNNr = txtMRNNr.Text
.gs_posNr = Integer.Parse(setNullToZero(txtAnzahlPos.Text)) .gs_posNr = Integer.Parse(setNullToZero(txtAnzahlPos.Text))
If .gs_MRNNr <> "" Then If .gs_MRNNr <> "" Then
.gs_posSubNr = IIf(Integer.Parse(setNullToZero(txtSPosNr.Text)) <> 0, Integer.Parse(setNullToZero(txtSPosNr.Text)), Me.getLatestSubPosNr(currentSicherheit.gs_gsNr, currentSicherheit.gs_ATBNr, currentSicherheit.gs_MRNNr) + 1) .gs_posSubNr = IIf(Integer.Parse(setNullToZero(txtSPosNr.Text)) <> 0, Integer.Parse(setNullToZero(txtSPosNr.Text)), currentSicherheit.getLatestSubPosNr(currentSicherheit.gs_gsNr, currentSicherheit.gs_ATBNr, currentSicherheit.gs_MRNNr) + 1)
Else Else
.gs_posSubNr = Nothing .gs_posSubNr = Nothing
End If End If
@@ -1278,7 +1278,7 @@ Public Class frmGesamtsicherheitenNEU
Dim gsNr = currentSicherheit.gs_gsNr Dim gsNr = currentSicherheit.gs_gsNr
Dim subPosNr = currentSicherheit.gs_posSubNr Dim subPosNr = currentSicherheit.gs_posSubNr
currentSicherheit.Delete() currentSicherheit.Delete()
rearangePosNr(gsNr, ATBNr, posNr) currentSicherheit.rearangePosNr(gsNr, ATBNr, posNr)
'rearangeSubPosNr(gsNr, ATBNr, posNr, subPosNr) 'rearangeSubPosNr(gsNr, ATBNr, posNr, subPosNr)
btnUpdateSicherheit.Visible = False btnUpdateSicherheit.Visible = False
btnAddSicherheit.Visible = True btnAddSicherheit.Visible = True
@@ -1351,40 +1351,6 @@ Public Class frmGesamtsicherheitenNEU
End Sub End Sub
Private Function getLatestPosNr(gs_gsnr As Integer, gs_ATBNr As String) As Integer
Dim posNr As Integer = 0
'Dim sqlq As String = "Select MAX([gsp_gspPosId]) As MaxPosNr from tblGesamtsicherheitsPositionen where gsp_gsnr = " & gs_gsnr
Dim sqlq As String = "Select MAX([gs_posNr]) As MaxPosNr from [tblGesamtsicherheit] where gs_gsnr = " & gs_gsnr & " And gs_ATBNR = '" & gs_ATBNr & "'"
Dim dt As New DataTable
dt = SQL.loadDgvBySql(sqlq, "AVISO", 100, True)
If (dt.Rows(0).Item(0) IsNot DBNull.Value) Then
posNr = dt.Rows(0).Item(0)
End If
Return posNr
End Function
Private Function getLatestSubPosNr(gs_gsnr As Integer, gs_ATBNr As String, gs_MRNNr As String) As Integer
Dim posNr As Integer = 0
Dim sqlq As String = "Select MAX([gs_posSubNr]) As MaxPosNr from [tblGesamtsicherheit] where gs_gsnr = " & gs_gsnr & " And gs_MRNNr is not null and gs_MRNNr = '" & gs_MRNNr & "' And gs_ATBNR = '" & gs_ATBNr & "'"
Dim dt As New DataTable
dt = SQL.loadDgvBySql(sqlq, "AVISO", 100, True)
If (dt.Rows(0).Item(0) IsNot DBNull.Value) Then
posNr = dt.Rows(0).Item(0)
End If
Return posNr
End Function
Private Sub btnSuche_Click(sender As Object, e As EventArgs) Private Sub btnSuche_Click(sender As Object, e As EventArgs)
Try Try
If Me.Visible Then LoadDGVSicherheiten(True) If Me.Visible Then LoadDGVSicherheiten(True)
@@ -1802,57 +1768,58 @@ Public Class frmGesamtsicherheitenNEU
End Sub End Sub
Private Sub rearangePosNr(gsNr As Integer, ATBNr As String, posNr As Integer) '-------------- AUSGELAGERT IN KLASSE
If posNr = -1 Or posNr = 1 Then Exit Sub 'Private Sub rearangePosNr(gsNr As Integer, ATBNr As String, posNr As Integer)
Dim sqlq As String = "select [gs_gsId], [gs_posNr] from [tblGesamtsicherheit] where gs_gsnr = " & gsNr & " AND gs_ATBNR = '" & ATBNr & "' AND gs_posNr >= " & posNr ' If posNr = -1 Or posNr = 1 Then Exit Sub
Dim dt As New DataTable
dt = SQL.loadDgvBySql(sqlq, "AVISO", 100, True)
If (dt.Rows.Count = 0) Then Exit Sub ' Dim sqlq As String = "select [gs_gsId], [gs_posNr] from [tblGesamtsicherheit] where gs_gsnr = " & gsNr & " AND gs_ATBNR = '" & ATBNr & "' AND gs_posNr >= " & posNr
' Dim dt As New DataTable
' dt = SQL.loadDgvBySql(sqlq, "AVISO", 100, True)
' If (dt.Rows.Count = 0) Then Exit Sub
For i As Integer = 0 To dt.Rows.Count - 1 ' For i As Integer = 0 To dt.Rows.Count - 1
Dim sicherheit = New cSicherheiten(dt.Rows(i).Item("gs_gsId"), dt.Rows(i).Item("gs_posNr")) ' Dim sicherheit = New cSicherheiten(dt.Rows(i).Item("gs_gsId"), dt.Rows(i).Item("gs_posNr"))
Dim currentPos = sicherheit.gs_posNr ' Dim currentPos = sicherheit.gs_posNr
If sicherheit.gs_posSubNr IsNot Nothing Then ' If sicherheit.gs_posSubNr IsNot Nothing Then
rearangeSubPosNr(gsNr, ATBNr, currentPos, sicherheit.gs_posSubNr) ' rearangeSubPosNr(gsNr, ATBNr, currentPos, sicherheit.gs_posSubNr)
End If ' End If
sicherheit.gs_posNr = currentPos - 1 ' sicherheit.gs_posNr = currentPos - 1
sicherheit.UPDATEWithNewPosNr(True) ' sicherheit.UPDATEWithNewPosNr(True)
Next ' Next
End Sub 'End Sub
Private Sub rearangeSubPosNr(gsNr As Integer, ATBNr As String, posNr As Integer, subposNr As Integer) 'Private Sub rearangeSubPosNr(gsNr As Integer, ATBNr As String, posNr As Integer, subposNr As Integer)
If subposNr = -1 Or subposNr = 1 Then Exit Sub ' If subposNr = -1 Or subposNr = 1 Then Exit Sub
'Dim sqlq As String = "select [gs_gsId], [gs_posNr] ,[gs_posSubNr] from [tblGesamtsicherheit] where gs_gsnr = " & gsNr & " AND gs_ATBNR = '" & ATBNr & "' AND gs_posNr >= " & posNr & " AND gs_posSubNr >= " & subposNr ' Dim sqlq As String = "select [gs_gsId], [gs_posNr] ,[gs_posSubNr] from [tblGesamtsicherheit] where gs_gsnr = " & gsNr & " AND gs_ATBNR = '" & ATBNr & "' AND gs_posSubNr >= " & subposNr
Dim sqlq As String = "select [gs_gsId], [gs_posNr] ,[gs_posSubNr] from [tblGesamtsicherheit] where gs_gsnr = " & gsNr & " AND gs_ATBNR = '" & ATBNr & "' AND gs_posSubNr >= " & subposNr ' Dim dt As New DataTable
Dim dt As New DataTable ' dt = SQL.loadDgvBySql(sqlq, "AVISO", 100, True)
dt = SQL.loadDgvBySql(sqlq, "AVISO", 100, True)
If (dt.Rows.Count = 0) Then Exit Sub ' If (dt.Rows.Count = 0) Then Exit Sub
For i As Integer = 0 To dt.Rows.Count - 1 ' For i As Integer = 0 To dt.Rows.Count - 1
Dim sicherheit = New cSicherheiten(dt.Rows(i).Item("gs_gsId"), dt.Rows(i).Item("gs_posNr"), dt.Rows(i).Item("gs_posSubNr")) ' Dim sicherheit = New cSicherheiten(dt.Rows(i).Item("gs_gsId"), dt.Rows(i).Item("gs_posNr"), dt.Rows(i).Item("gs_posSubNr"))
Dim currentPos = sicherheit.gs_posSubNr ' Dim currentPos = sicherheit.gs_posSubNr
sicherheit.gs_posSubNr = currentPos - 1 ' sicherheit.gs_posSubNr = currentPos - 1
sicherheit.UPDATEWithNewPosNr() ' sicherheit.UPDATEWithNewPosNr()
Next ' Next
End Sub 'End Sub
Private Sub txtlkwIdSearch_VALUE_CHANGED() Handles txtlkwIdSearch.VALUE_CHANGED Private Sub txtlkwIdSearch_VALUE_CHANGED() Handles txtlkwIdSearch.VALUE_CHANGED
If (txtlkwIdSearch._value <> "") Then If (txtlkwIdSearch._value <> "") Then
@@ -1956,7 +1923,7 @@ Public Class frmGesamtsicherheitenNEU
Dim sicherh As New cSicherheiten(row.Cells("gs_gsId").Value, row.Cells("gs_posNr").Value) Dim sicherh As New cSicherheiten(row.Cells("gs_gsId").Value, row.Cells("gs_posNr").Value)
sicherh.gs_MRNNr = txtATBNraendern.Text sicherh.gs_MRNNr = txtATBNraendern.Text
If sicherh.gs_MRNNr <> "" Then If sicherh.gs_MRNNr <> "" Then
sicherh.gs_posSubNr = IIf(Integer.Parse(setNullToZero(txtSPosNr.Text)) <> 0, Integer.Parse(setNullToZero(txtSPosNr.Text)), Me.getLatestSubPosNr(sicherh.gs_gsNr, sicherh.gs_ATBNr, sicherh.gs_MRNNr) + 1) sicherh.gs_posSubNr = IIf(Integer.Parse(setNullToZero(txtSPosNr.Text)) <> 0, Integer.Parse(setNullToZero(txtSPosNr.Text)), sicherh.getLatestSubPosNr(sicherh.gs_gsNr, sicherh.gs_ATBNr, sicherh.gs_MRNNr) + 1)
Else Else
sicherh.gs_posSubNr = Nothing sicherh.gs_posSubNr = Nothing
End If End If
@@ -2168,10 +2135,10 @@ Public Class frmGesamtsicherheitenNEU
.gs_gsNr = gessicherheitID .gs_gsNr = gessicherheitID
.gs_ATBNr = "Korrekt. Rundungsdiff. " & gessicherheitID .gs_ATBNr = "Korrekt. Rundungsdiff. " & gessicherheitID
.gs_MRNNr = "" .gs_MRNNr = ""
.gs_posNr = Me.getLatestPosNr(currentSicherheit.gs_gsNr, currentSicherheit.gs_ATBNr) + 1 .gs_posNr = OPEN.getLatestPosNr(currentSicherheit.gs_gsNr, currentSicherheit.gs_ATBNr) + 1
If .gs_MRNNr <> "" Then If .gs_MRNNr <> "" Then
.gs_posSubNr = Me.getLatestSubPosNr(currentSicherheit.gs_gsNr, currentSicherheit.gs_ATBNr, currentSicherheit.gs_MRNNr) + 1 .gs_posSubNr = OPEN.getLatestSubPosNr(currentSicherheit.gs_gsNr, currentSicherheit.gs_ATBNr, currentSicherheit.gs_MRNNr) + 1
Else Else
.gs_posSubNr = Nothing .gs_posSubNr = Nothing
End If End If
@@ -2338,7 +2305,7 @@ Public Class frmGesamtsicherheitenNEU
If currentSicherheit.hasEntry Then If currentSicherheit.hasEntry Then
currentSicherheit.Delete() currentSicherheit.Delete()
rearangePosNr(gsNr, ATBNr, posNr) currentSicherheit.rearangePosNr(gsNr, ATBNr, posNr)
' If subPosNr IsNot Nothing Then rearangeSubPosNr(gsNr, ATBNr, posNr, subPosNr) ' If subPosNr IsNot Nothing Then rearangeSubPosNr(gsNr, ATBNr, posNr, subPosNr)
End If End If