56 lines
1.7 KiB
Plaintext
56 lines
1.7 KiB
Plaintext
' TestArticleHasSerialNumberRegex(Identifier: String)
|
|
' ---------------------------------------------------------
|
|
' Findet Artikelnummer anhand von versch. Kriterien
|
|
' - Artikel-Nummer, Alternative Artikel-Nummer, EAN-Code, Seriennummer
|
|
' - Gibt die Zeile im Grid zurück in der Artikel das erste Mal gefunden wurde
|
|
'
|
|
' Rückgabewert: ArticleRow: Int
|
|
' ---------------------------------------------------------
|
|
' Version Date: 25.09.2020
|
|
|
|
Function TestArticleHasSerialNumberRegex(Identifier)
|
|
Set mywin = CWLStart.CurrentModule.Windows.Item(WINDOW_ID)
|
|
Set Grid = mywin.Controls.Item(GRID_ID).Grid
|
|
|
|
If DEBUG_ON = True Then
|
|
AddDebugLine "Testing for Regex in Identifier: " & Identifier
|
|
|
|
ShowDebugBox "TestArticleHasSerialNumberRegex"
|
|
End If
|
|
|
|
SQL = ""
|
|
' Artikelnummer / EAN-Code / Alternative Artikelnummer
|
|
SQL = SQL & "((C002 = '" & Identifier & "') Or (C075 = '" & Identifier & "') Or (C114 = '" & Identifier & "')) AND "
|
|
' Serienummer-Regex muss vorhanden sein
|
|
SQL = SQL & "(C222 IS NOT NULL) AND "
|
|
' Artikel darf nicht inaktiv sein
|
|
SQL = SQL & "(c038 IS NULL) "
|
|
' Nach Mandant und Wirtschaftsjahr filtern
|
|
SQL = SQL & SQLQuery_BasicWhere
|
|
|
|
If DEBUG_ON = True Then
|
|
AddDebugLine "SQL: " & SQL
|
|
|
|
ShowDebugBox "TestArticleHasSerialNumberRegex"
|
|
End If
|
|
|
|
Set Result = CWLStart.CurrentCompany.SearchRecord(TABLE_21, SQL)
|
|
|
|
If DEBUG_ON = True Then
|
|
AddDebugLine "Searching for SerialNumber-Regex by ArticleNumber " & vbNewline
|
|
AddDebugLine "Result Columns: " & Result
|
|
AddDebugLine "Result Rows: " & Result.RowCount
|
|
AddDebugLine "SQL: " & SQL
|
|
|
|
ShowDebugBox "TestArticleHasSerialNumberRegex"
|
|
End If
|
|
|
|
If Result.RowCount > 0 Then
|
|
TestArticleHasSerialNumberRegex = True
|
|
Else
|
|
TestArticleHasSerialNumberRegex = False
|
|
End If
|
|
End Function
|
|
|
|
|