8
0
Skriptentwickung/archive/Packtisch Modul/Packtisch 4.1.0.2/Modules/GetArticleNumberFromSecondaryIndentifier.vbm
2024-01-24 16:42:38 +01:00

61 lines
2.3 KiB
Plaintext

' GetArticleNumberFromSecondaryIndentifier(Identifier : String)
' ----------------------------------------------------------------------------
' Gibt die Artikelnummer für Spät-Auspräge-Artikel zurück
'
' Returns: GetArticleNumberFromSecondaryIndentifier : String
' ----------------------------------------------------------------------------
' 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: 23.10.2020 / JJ
' Version Date / Editor: 15.12.2021 / MP
' Version Number: 4.0.0.0
Function GetArticleNumberFromSecondaryIndentifier(Identifier)
SQL = ""
' EAN-Code / Alternative Artikelnummer 1 / Alternative Artikelnummer 2 / Artikelnummer / S/N
SQL = SQL & "("
SQL = SQL & "(C002 = '" & Identifier & "') Or " ' Artikelnummer
SQL = SQL & "(C068 = '" & Identifier & "') Or " ' Charge-/Identnummer
SQL = SQL & "(C075 = '" & Identifier & "') Or " ' EAN-Code
SQL = SQL & "(C114 = '" & Identifier & "') Or " ' Alternative Artikelnummer 1
SQL = SQL & "(C115 = '" & Identifier & "')" ' Alternative Artikelnummer 2
SQL = SQL & ") "
' Nur Nach Hauptartikel/Ausprägungs(kind)artikel suchen
' SQL = SQL & "And C014 IN (0, 2)"
' Nach Mandant und Wirtschaftsjahr filtern
SQL = SQL & SQLQuery_BasicWhere
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 "GetArticleNumberFromSecondaryIndentifier"
End If
If Result.RowCount > 0 Then
GetArticleNumberFromSecondaryIndentifier = Result.Value("c010")
Else
GetArticleNumberFromSecondaryIndentifier = ""
End If
End Function
' Optimierung
'SELECT TOP 1 t.c010
'FROM t023 t
' INNER JOIN t024 t2 ON t.mesoprim = t2.c143
'WHERE
' (t2.C002 = '819177021486' Or
' t2.C068 = '819177021486' Or
' t2.C075 = '819177021486' Or
' t2.C114 = '819177021486' Or
' t2.C115 = '819177021486') AND
' t2.mesoyear = 1452 AND
' t2.mesocomp = 'MEDP'