Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <ArrayMultiColSort.au3>
- ;~ ; This sorts columns in ascending order - probably the most common requirement
- ;~ ; Sort requirement:
- ;~ ; Col 0 = Decending
- ;~ ; Col 1 = Ascending
- ;~ ; Col 2 = Required order of elements (note not alphabetic PQRS nor reverse SRQP)
- ;~ ; Col 3 = Ascending
- ;~ Global $aSortData[][] = [ _
- ;~ [0, 1], _
- ;~ [1, 0], _
- ;~ [2, "SSSSS,QQQQQ,PPPPP,RRRRR"], _
- ;~ [3, 0]]
- ;~ ; Sort and display array
- ;~ _ArrayMultiColSort($aArray_1, $aSortData)
- ;~ ; Display any errors encountered
- ;~ If @error Then ConsoleWrite("Oops: " & @error & " - " & @extended & @CRLF)
- ;~ ; But the UDF can sort columns in any order
- ;~ ; Sort requirement:
- ;~ ; Col 2 = Decending
- ;~ ; Col 0 = Ascending
- ;~ Global $aSortData[][] = [ _
- ;~ [2, 1], _
- ;~ [0, 0]]
- ;~ ; Sort and display array
- ;~ _ArrayMultiColSort($aArray_2, $aSortData)
- ;~ ; Display any errors encountered
- ;~ If @error Then ConsoleWrite("Oops: " & @error & " - " & @extended & @CRLF)
- ;~ _ArrayDisplay($aArray_2, "Sorted in order 2-0")
- Func _FindHeader(ByRef $aTable, $sColTitle)
- For $i = 0 To UBound($aTable, 2) - 1
- If $aTable[0][$i] = $sColTitle Then Return $i
- Next
- Return SetError(1, 0, -1)
- EndFunc
- ; #INTERNAL FUNCTION# ====================================================================================================================
- ; Name ..........: ArtSplit
- ; Description ...: Splits an artikel into array (product, productkwaliteit, verpakmanier, merk, stapelpatr., aantal lagen, opm1, opm2, drager, bacteriologie)
- ; Syntax ........: ArtSplit(Byref $sArtikel, Byref $aReturn)
- ; Parameters ....: $sArtikel - artikelstring.
- ; Return values .: on succes an array with the artikel, on failure the inputstring
- ; Author ........: Tom Stragier
- ; Modified ......: 19/07/2019
- ; ===============================================================================================================================
- Func ArtSplit(ByRef $sArtikel)
- If StringLen($sArtikel) <> 17 Then Return $sArtikel
- $aArtikelstring = StringSplit($sArtikel, "")
- If $aArtikelstring[15] <> "e" And $aArtikelstring[15] <> "i" And $aArtikelstring[15] <> "k" Then Return $sArtikel
- Local $aGesplitstArtikelstring[10]
- $aGesplitstArtikelstring[0] = $aArtikelstring[1]
- $aGesplitstArtikelstring[0] &= $aArtikelstring[2]
- $aGesplitstArtikelstring[0] &= $aArtikelstring[3]
- $aGesplitstArtikelstring[1] = $aArtikelstring[4]
- $aGesplitstArtikelstring[2] = $aArtikelstring[5]
- $aGesplitstArtikelstring[2] &= $aArtikelstring[6]
- $aGesplitstArtikelstring[3] = $aArtikelstring[7]
- $aGesplitstArtikelstring[3] &= $aArtikelstring[8]
- $aGesplitstArtikelstring[4] = $aArtikelstring[9]
- $aGesplitstArtikelstring[5] = $aArtikelstring[10]
- $aGesplitstArtikelstring[5] &= $aArtikelstring[11]
- $aGesplitstArtikelstring[6] = $aArtikelstring[12]
- $aGesplitstArtikelstring[7] = $aArtikelstring[13]
- $aGesplitstArtikelstring[7] &= $aArtikelstring[14]
- $aGesplitstArtikelstring[8] = $aArtikelstring[15]
- $aGesplitstArtikelstring[9] = $aArtikelstring[16]
- Return $aGesplitstArtikelstring
- EndFunc ;==>ArtSplit
- ; #INTERNAL FUNCTION# ====================================================================================================================
- ; Name ..........: WLog
- ; Description ...: Writes info to a logfile
- ; Syntax ........: WLog($sFunction, $sTxt)
- ; Parameters ....: $sFunction - The name of the function
- ; $sTxt - The information that is logged about the function.
- ; Return values .: 0
- ; Author ........: Tom Stragier
- ; Modified ......: 19/07/2019
- ; ===============================================================================================================================
- Func WLog($sFunction, $sTxt)
- Local $sFullString = @MDAY & "/" & @MON & "/" & @YEAR & " " & @HOUR & ":" & @MIN & ":" & @SEC & " " & "function " & $sFunction & " reports: " & $sTxt ; create a string with a timestamp
- ConsoleWrite($sFullString & @CRLF) ; write it to console
- Local $errorFile = @WorkingDir & "\" & StringTrimRight(@ScriptName, 4) & ".log" ; make a logfilepath string
- Local $hFileOpen = FileOpen($errorFile, 9) ; create path/ append to end of file params
- FileWriteLine($hFileOpen, $sFullString & @CRLF) ; write the line
- FileClose($hFileOpen) ; lets close it
- EndFunc
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement