SDL Jetzt erst recht!
This commit is contained in:
127
VERAG_PROG_ALLGEMEIN/cAllgemein.vb
Normal file
127
VERAG_PROG_ALLGEMEIN/cAllgemein.vb
Normal file
@@ -0,0 +1,127 @@
|
||||
Imports System.Data.SqlClient
|
||||
|
||||
Public Class cAllgemein
|
||||
Public Shared FIRMA As String
|
||||
Public Shared NIEDERLASSUNG As String 'SUB, WAI, ...
|
||||
Public Shared ABTEILUNG As String 'QS ZOLL ...
|
||||
|
||||
Public Shared ERR_OP_GLOBAL As String = ERROR_OP.SHOW
|
||||
|
||||
|
||||
Public Shared BÜRO As String
|
||||
|
||||
Public Shared dpi As Integer
|
||||
Public Shared TESTSYSTEM As Boolean = True
|
||||
|
||||
Public Shared PROGNAME = ""
|
||||
Public Shared PROGID As Integer
|
||||
Public Shared PROGVERSION As String = ""
|
||||
|
||||
Public Shared USRNAME As String
|
||||
'Public Shared USRBER As Integer
|
||||
Public Shared USRID As Integer
|
||||
Public Shared USR_VNAME As String
|
||||
Public Shared USR_NNAME As String
|
||||
Public Shared USRKURZNAME As String
|
||||
Public Shared USR_HrFrNAME As String
|
||||
|
||||
Public Shared FIRMA_ID As Integer
|
||||
Public Shared FIRMA_NAME As String
|
||||
|
||||
Public Shared AUTO_ABF_NR As Boolean = True
|
||||
|
||||
Public Shared BENUTZER_BERECHTIGUNGS_GRUPPEN As cBerechtigungenBenutzerGruppenZuordnung_List = Nothing
|
||||
Public Shared PARAMS As cParameterList = Nothing
|
||||
|
||||
Public Shared SESSION As New cSession
|
||||
|
||||
|
||||
Shared SQL As New SQL
|
||||
Public Shared MITARBEITER As cMitarbeiter
|
||||
|
||||
|
||||
Public Shared Sub LOAD_DATA()
|
||||
MITARBEITER = New cMitarbeiter
|
||||
If MITARBEITER.LOAD(USRID) Then
|
||||
USR_NNAME = MITARBEITER.mit_nname
|
||||
USR_VNAME = MITARBEITER.mit_vname
|
||||
|
||||
USR_HrFrNAME = ""
|
||||
Select Case MITARBEITER.mit_geschlecht
|
||||
Case "m" : USR_HrFrNAME = "Herr "
|
||||
Case "w" : USR_HrFrNAME = "Frau "
|
||||
End Select
|
||||
USR_HrFrNAME &= MITARBEITER.mit_nname
|
||||
|
||||
If FIRMA = "" Then FIRMA = If(MITARBEITER.mit_firma = "BEIDE", "VERAG", MITARBEITER.mit_firma)
|
||||
USRNAME = (MITARBEITER.mit_vname & " " & MITARBEITER.mit_nname)
|
||||
If NIEDERLASSUNG = "" Then NIEDERLASSUNG = MITARBEITER.mit_niederlassung
|
||||
If ABTEILUNG = "" Then ABTEILUNG = MITARBEITER.mit_abteilung
|
||||
Else
|
||||
MITARBEITER = Nothing
|
||||
End If
|
||||
LOAD_PARAM()
|
||||
End Sub
|
||||
|
||||
Public Shared Sub LOAD_BER()
|
||||
BENUTZER_BERECHTIGUNGS_GRUPPEN = New cBerechtigungenBenutzerGruppenZuordnung_List(USRID)
|
||||
End Sub
|
||||
|
||||
Public Shared Sub LOAD_PARAM()
|
||||
PARAMS = New cParameterList(PROGID, FIRMA)
|
||||
End Sub
|
||||
|
||||
|
||||
Public Shared Function getMaxPosNrIncrement(FilialeNr As Integer, year As Integer) As Integer
|
||||
Dim cnt = 0
|
||||
Dim returnValue = -1
|
||||
Dim newMaxwert = CInt(year.ToString.Substring(2, 2) & "000000") '16000000
|
||||
Do
|
||||
Dim conn As SqlConnection = VERAG_PROG_ALLGEMEIN.SQL.GetNewOpenConnectionFMZOLL
|
||||
Dim sql As String = " begin tran" &
|
||||
" if exists (select * from tblPosNr with (updlock,serializable) WHERE FilialeNr = @FilialeNr AND Jahr = @Jahr) " &
|
||||
" begin " &
|
||||
" UPDATE tblPosNr " &
|
||||
" SET wert=(select MAX(wert) FROM tblPosNr WHERE FilialeNr = @FilialeNr AND Jahr = @Jahr)+1 " &
|
||||
" WHERE FilialeNr = @FilialeNr AND Jahr = @Jahr " &
|
||||
" End " &
|
||||
" Else " &
|
||||
" begin " &
|
||||
" INSERT INTO tblPosNr " &
|
||||
" (wert,FilialeNr,Jahr) " &
|
||||
" VALUES(@newMaxwert, @FilialeNr,@Jahr) " &
|
||||
" End " &
|
||||
" commit tran " &
|
||||
" SELECT isnull(wert,-1) FROM tblPosNr WHERE FilialeNr = @FilialeNr AND Jahr = @Jahr"
|
||||
Dim dr As SqlDataReader
|
||||
Using cmd As New SqlCommand(sql, conn)
|
||||
cmd.Parameters.AddWithValue("@FilialeNr", FilialeNr)
|
||||
cmd.Parameters.AddWithValue("@Jahr", year)
|
||||
cmd.Parameters.AddWithValue("@newMaxwert", newMaxwert)
|
||||
Try
|
||||
dr = cmd.ExecuteReader()
|
||||
If dr.Read Then returnValue = CInt(dr.Item(0))
|
||||
Catch ex As Exception
|
||||
MsgBox(System.Reflection.MethodInfo.GetCurrentMethod.Name & ": Fehler mit der Datenbankverbindung:" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Datenbankfehler")
|
||||
Finally
|
||||
dr.Close()
|
||||
End Try
|
||||
|
||||
End Using
|
||||
cnt += 1
|
||||
Loop While (SpedBuchExists(FilialeNr, returnValue) And cnt < 100000)
|
||||
' conn.Close()
|
||||
|
||||
Return returnValue
|
||||
End Function
|
||||
|
||||
Public Shared Function SpedBuchExists(FilialenNr As Integer, AbfertigungsNr As Integer) As Boolean
|
||||
Return (CInt(SQL.getValueTxtBySql("SELECT count(*) FROM Speditionsbuch WHERE FilialenNr=" & FilialenNr & " AND AbfertigungsNr=" & AbfertigungsNr & " ", "FMZOLL")) > 0)
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
End Class
|
||||
Reference in New Issue
Block a user