Anlage des Repos
This commit is contained in:
@@ -0,0 +1,86 @@
|
||||
' IsOrderLocked(OrderNumber : Int)
|
||||
' ----------------------------------------------------------------------------
|
||||
' Gibt die UserID des Benutzers zurück, der den Auftrag sperrt.
|
||||
' Wenn der Auftrag nicht gesperrt ist, wird 0 zurückgegeben.
|
||||
'
|
||||
' Returns: IsOrderLocked: Int
|
||||
' ----------------------------------------------------------------------------
|
||||
' Copyright (c) 2021 by Digital Data GmbH
|
||||
'
|
||||
' Digital Data GmbH • Ludwig-Rinn-Strasse 16 • D-35452 Heuchelheim
|
||||
' Tel.: 0641/202360 • E-Mail: info-flow(at)digitaldata.works
|
||||
' ----------------------------------------------------------------------------
|
||||
' Creation Date / Author: 26.04.2021 / MP
|
||||
' Version Date / Editor: 26.04.2021 / MP
|
||||
' Version Number: 4.0.0.0
|
||||
|
||||
' Hole die interne Belegnummer
|
||||
' t025.c021 = Kontonummer und t025.c022 = Laufende Nummer
|
||||
Function GetInternalOrderNumber(OrderNumber)
|
||||
GetInternalOrderNumber = ""
|
||||
|
||||
Err.Clear
|
||||
|
||||
If Len(OrderNumber) > 0 Then
|
||||
Set Conn = CWLStart.Connection
|
||||
|
||||
Dim SQL : SQL = ""
|
||||
SQL = SQL & " SELECT TOP 1 c021, c022"
|
||||
SQL = SQL & " FROM t025 (NOLOCK) "
|
||||
SQL = SQL & " WHERE c044 = '"& OrderNumber & "'"
|
||||
SQL = SQL & SQLQuery_OrderWhere
|
||||
SQL = SQL & " ORDER BY c022"
|
||||
Set Result = Conn.Select(SQL)
|
||||
|
||||
If Result < 0 Then
|
||||
If err <> 0 Then
|
||||
MsgBox "Fehler bei SQL-Abfrage:" & vbNewline & err.description, vbExclamation, DEFAULT_TITLE & " - GetInternalOrderNumber"
|
||||
Exit Function
|
||||
Else
|
||||
Message = "Den Auftrag [" & OrderNumber & "] gibt es nicht in der Datenbank"
|
||||
MsgBox Message, vbExclamation, DEFAULT_TITLE
|
||||
Exit Function
|
||||
End If
|
||||
End If
|
||||
|
||||
GetInternalOrderNumber = result.Value("c021") & result.Value("c022")
|
||||
End If
|
||||
End Function
|
||||
|
||||
Function IsOrderLocked(OrderNumber)
|
||||
Set mywin = CWLStart.CurrentModule.Windows.Item(WINDOW_ID)
|
||||
Set Grid = mywin.Controls.Item(GRID_ID).Grid
|
||||
|
||||
Err.Clear
|
||||
|
||||
IsOrderLocked = 0
|
||||
InternalOrderNumber = GetInternalOrderNumber(OrderNumber)
|
||||
|
||||
SQL = ""
|
||||
SQL = SQL & " c001 = 'E" & InternalOrderNumber & "' "
|
||||
SQL = SQL & SQLQuery_BasicWhere
|
||||
|
||||
Set Result = CWLStart.CurrentCompany.SearchRecord(TABLE_499, SQL)
|
||||
|
||||
If DEBUG_ON = True Then
|
||||
MsgBox "SQL: ... FROM " & TABLE_499 & " WHERE " & SQL, vbOkonly, DEBUG_TITLE
|
||||
|
||||
AddDebugLine "Checking For Order by internal OrderId [" & InternalOrderNumber & "]:"& vbNewline & vbNewline
|
||||
AddDebugLine "Result Columns: " & Result & vbNewline
|
||||
AddDebugLine "Result Rows: " & Result.RowCount & vbNewline
|
||||
AddDebugLine "SQL: " & SQL
|
||||
|
||||
ShowDebugBox "IsOrderLocked"
|
||||
End If
|
||||
|
||||
If Result < 0 Then
|
||||
If err <> 0 Then
|
||||
Msgbox "Fehler bei Abfrage:" & vbNewline & err.description, vbExclamation, DEFAULT_TITLE & " - IsOrderLocked"
|
||||
Exit Function
|
||||
End If
|
||||
End If
|
||||
|
||||
If Result.RowCount > 0 Then
|
||||
IsOrderLocked = Result.Value("C002")
|
||||
End If
|
||||
End Function
|
||||
Reference in New Issue
Block a user