Jump to content
Kartada

My GUI is getting slow

Recommended Posts

Kartada

Hi, can you help me with my script? everytime I used Add New  my GUI started to slow.

Func Addnewsub()
    Global $sub1 = _Metro_CreateGUI("AddSub", 450, 300, -1, -1, True)
    WinSetOnTop($sub1, "", 1)
    _GUICtrlCreateGIF("SimplerBin\dmci.dll", "", 36, 3, 378, 120)
    $GUI_Button_X = _Metro_CreateButtonEX("Close", 168, 240, 120, 40)
    GUICtrlSetFont(-1, 20, 800, 1, "Times New Roman")
    $normal = _Metro_CreateButtonEX("Normal" & @CRLF & "Transaction", 20, 150, 200, 75)
    GUICtrlSetFont(-1, 20, 800, 1, "Times New Roman")
    $offline = _Metro_CreateButtonEX("Offline" & @CRLF & "Transaction", 230, 150, 200, 75)
    GUICtrlSetFont(-1, 20, 800, 1, "Times New Roman")
    GUISetState(@SW_SHOW)
    While 1
        _Metro_HoverCheck_Loop($sub1)
        Switch GUIGetMsg()
            Case $GUI_EVENT_CLOSE
                _Metro_GuiDelete($sub1)
                ExitLoop
            Case $GUI_Button_X
                _Metro_GuiDelete($sub1)
                ExitLoop
            Case $normal
                _Metro_GuiDelete($sub1)
                Addnew()
                ExitLoop
            Case $offline
                _Metro_GuiDelete($sub1)
                Addnew()
                ExitLoop
        EndSwitch


    WEnd

EndFunc   ;==>Addnewsub


Func Addnew()
    Local $LatestArray = _GUICtrlListView_CreateArray($hListView_Right, '|')
    _ArrayDelete($LatestArray, 0)
    Local $iWidthCell = 150
    Local $iRows = UBound($LatestArray, $UBOUND_ROWS)
    $legitRows = $iRows - 1
    $RowtoPut = $iRows


    ;MsgBox(0,$RowtoPut,$legitRows)
    ;Local $hNewGUIStation = GUICreate("Add New User", 400, 630, -1, -1)
    $hNewGUIStation = _Metro_CreateGUI("Add New User", 500, 600, -1, -1)
    _GUICtrlCreateGIF("SimplerBin\dmci.dll", "", 58, 3, 378, 120)
    GUICtrlCreateLabel("Doc Type: ", 75, 130, 90) ; first cell 70 width
    GUICtrlCreateGroup("", 180, 110, 185, 40)
    Local $idRadioMRIS = GUICtrlCreateRadio("MRIS", 210, 125, 70, 20)
    Local $idRadioSTO = GUICtrlCreateRadio("STO", 280, 125, 70, 20)
    GUIStartGroup()

    GUICtrlCreateLabel("Doc #: ", 75, 165, 90) ; first cell 70 width
    $inputnumber = GUICtrlCreateInput("", 180, 160, 185, 25)
    Local $Search1 = _Metro_CreateButtonEX("Search", 365, 160, 70, 25)

    GUICtrlCreateLabel("Driver's ID: ", 75, 195, 90) ; first cell 70 width
    $inputdriverid = GUICtrlCreateInput("", 180, 190, 185, 25)
    Local $Search2 = _Metro_CreateButtonEX("Search", 365, 190, 70, 25)

    GUICtrlCreateLabel("Property #: ", 75, 225, 90) ; first cell 70 width
    $inputproperty = GUICtrlCreateInput("", 180, 220, 185, 25)
    Local $Search3 = _Metro_CreateButtonEX("Search", 365, 220, 70, 25)

    GUICtrlCreateLabel("Project Code: ", 75, 255, 90) ; first cell 70 width
    $inputproject = GUICtrlCreateInput("", 180, 250, 185, 25)
    Local $Search4 = _Metro_CreateButtonEX("Search", 365, 250, 70, 25)

    GUICtrlCreateLabel("Odometer: ", 75, 285, 90) ; first cell 70 width
    $inputpreodometer = GUICtrlCreateInput("", 180, 280, 185, 25)

    GUICtrlCreateLabel("Hour Meter: ", 75, 314, 90) ; first cell 70 width
    $inputhourmeter = GUICtrlCreateInput("", 180, 310, 185, 25)

    GUICtrlCreateLabel("Liters: ", 75, 345, 90) ; first cell 70 width
    $inputliter = GUICtrlCreateInput("", 180, 340, 185, 25)

    GUICtrlCreateLabel("Target Destination: ", 75, 375, 90) ; first cell 70 width
    $inputtarget = GUICtrlCreateInput("", 180, 370, 185, 25)
    Local $Search5 = _Metro_CreateButtonEX("Search", 365, 370, 70, 25)

    GUICtrlCreateLabel("Origin: ", 75, 405, 90) ; first cell 70 width
    $inputorigin = GUICtrlCreateInput("", 180, 400, 185, 25)
    Local $Search6 = _Metro_CreateButtonEX("Search", 365, 400, 70, 25)

    GUICtrlCreateLabel("Approved by: ", 75, 435, 90) ; first cell 70 width
    $inputpapprove = GUICtrlCreateInput("", 180, 430, 185, 25)

    GUICtrlCreateLabel("Remarks: ", 75, 465, 90) ; first cell 70 width
    $inputremark = GUICtrlCreateInput("", 180, 460, 185, 25)

    GUICtrlCreateLabel("Measurements: ", 75, 495, 90) ; first cell 70 width
    $inputpmeasure = GUICtrlCreateInput("", 180, 490, 185, 25)
    Local $idComboBox = GUICtrlCreateCombo("", 365, 490, 70, 25)
    ;Local $aFileList = _FileListToArray(@ScriptDir & "\account\")
    GUICtrlSetData($idComboBox, "Gauge|Dipstick|Sensor", "Gauge")


    ;Local $idLogin = GUICtrlCreateButton("Login", 40, 75, 60, 20)
    Local $idAddNew = _Metro_CreateButtonEX("Add", 75, 550, 200, 35)

    Local $close = _Metro_CreateButtonEX("Close", 350, 550, 80, 35)
    Local $iRadioVal = 0
    Local $iComboVal = "Gauge"

    GUISetState(@SW_SHOW, $hNewGUIStation)

    ; Loop until the user exits.
    While 1

        _Metro_HoverCheck_Loop($hNewGUIStation)
        Switch GUIGetMsg()
            Case $GUI_EVENT_CLOSE
                UpdateTimeLeft()
                GUIDelete($hNewGUIStation)
                ExitLoop

            Case $idRadioMRIS
                $iRadioVal = "MRIS"

            Case $idRadioSTO
                $iRadioVal = "STO"

            Case $idComboBox
                $iComboVal = GUICtrlRead($idComboBox)

            Case $close
                UpdateTimeLeft()
                ;_GUIDisable($hGUI)
                GUIDelete($hNewGUIStation)
                ExitLoop

            Case $Search1
                $curSearchOpen = 1

                Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\mris_num.txt'
                $sInput1q = FileRead($sFilePath1q)
                $aInput1q = StringSplitW2($sInput1q, ";")
                $aOutput1q = Compact2DArray2($aInput1q)
                Local $reav1q = $aOutput1q


                ;_ArrayDisplay($reav1q)
                $searchgui1 = _Metro_CreateGUI("Search", 400, 300, -1, -1)
                Local $inputsearch1 = GUICtrlCreateInput("", 50, 20, 185, 25)
                GUICtrlCreateLabel("Search Result(s): ", 50, 60, $iWidthCell) ; first cell 70 width

                Local $hListView_Search1 = _GUICtrlListView_Create($searchgui1, "", 50, 80, 300, 150, BitOR($LVS_DEFAULT, $WS_BORDER))

                _GUICtrlListView_SetExtendedListViewStyle($hListView_Search1, BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_GRIDLINES))
                _GUICtrlListView_AddColumn($hListView_Search1, 'MRIS Number', 150)
                _GUICtrlListView_AddArray($hListView_Search1, $reav1q)
                $aLV_List_Search1 = _GUIListViewEx_ReadToArray($hListView_Search1, 1)
                $iLV_Search1_Index = _GUIListViewEx_Init($hListView_Search1, $aLV_List_Search1, 1, 0xFF0000, True, 2 + 4 + 8 + 16 + 32)

                Local $Searching1 = _Metro_CreateButtonEX("Search", 245, 20, 50, 25)
                Local $Reset1 = _Metro_CreateButtonEX("Reset", 300, 20, 50, 25)
                Local $Select1 = _Metro_CreateButtonEX("Select", 100, 255, 70, 25)
                Local $close1 = _Metro_CreateButtonEX("Close", 250, 255, 70, 25)

                GUISetState()

                While 1
                    If $curSearchOpen = 0 Then ExitLoop

                    GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY")
                    Switch GUIGetMsg()
                        Case $Select1
                            $iIndex = _GUICtrlListView_GetSelectedIndices($hListView_Search1)
                            If $curSearchOpen == 1 Then
                                $rowerk = $iIndex
                                Local $LatestArray = _GUICtrlListView_CreateArray($hListView_Search1, '|')
                                _ArrayDelete($LatestArray, 0)


                                GUIDelete($searchgui1)
                                GUICtrlSetData($inputnumber, $LatestArray[$rowerk][0])
                                $curSearchOpen = 0
                            EndIf

                        Case $Searching1
                            Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\mris_num.txt'
                            $sInput1q = FileRead($sFilePath1q)
                            $aInput1q = StringSplitW2($sInput1q, ";")
                            $aOutput1q = Compact2DArray2($aInput1q)
                            Local $reav1q = $aOutput1q


                            Local $rowz = UBound($reav1q, $UBOUND_ROWS)
                            $realRows = $rowz - 1
                            Local $colz = UBound($reav1q, $UBOUND_COLUMNS)
                            $realCols = $colz - 1
                            $currentcol = 0
                            $currentrow = 0
                            $setrow = 0

                            _GUICtrlListView_DeleteAllItems($hListView_Search1)

                            Dim $arruy = _ArrayExtract_Mod($reav1q, 0, $realRows, 0, 0)

                            For $g = 0 To UBound($arruy) - 1
                                If StringInStr($arruy[$g], GUICtrlRead($inputsearch1)) Then


                                    _GUICtrlListView_AddItem($hListView_Search1, $arruy[$g], $setrow)

                                    $setrow = $setrow + 1


                                EndIf
                            Next

                        Case $Reset1
                            Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\mris_num.txt'
                            $sInput1q = FileRead($sFilePath1q)
                            $aInput1q = StringSplitW2($sInput1q, ";")
                            $aOutput1q = Compact2DArray2($aInput1q)
                            Local $reav1q = $aOutput1q
                            _GUICtrlListView_DeleteAllItems($hListView_Search1)
                            _GUICtrlListView_AddArray($hListView_Search1, $reav1q)

                        Case $close1
                            GUIDelete($searchgui1)
                            ExitLoop

                    EndSwitch
                WEnd


            Case $Search2
                $curSearchOpen = 2
                Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\requestor.txt'
                $sInput1q = FileRead($sFilePath1q)
                $aInput1q = StringSplitW2($sInput1q, ";")
                $aOutput1q = Compact2DArray2($aInput1q)
                Local $reav1q = $aInput1q


                $searchgui2 = _Metro_CreateGUI("Search", 400, 300, -1, -1)
                Local $inputsearch2 = GUICtrlCreateInput("", 50, 20, 185, 25)
                GUICtrlCreateLabel("Search Result(s): ", 50, 60, $iWidthCell) ; first cell 70 width

                Local $hListView_Search2 = _GUICtrlListView_Create($searchgui2, "", 50, 80, 300, 150, BitOR($LVS_DEFAULT, $WS_BORDER))
                _GUICtrlListView_SetExtendedListViewStyle($hListView_Search2, BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_GRIDLINES))
                _GUICtrlListView_AddColumn($hListView_Search2, 'ID', 80)
                _GUICtrlListView_AddColumn($hListView_Search2, 'First Name', 80)
                _GUICtrlListView_AddColumn($hListView_Search2, 'Middle Name', 80)
                _GUICtrlListView_AddColumn($hListView_Search2, 'Last Name', 80)
                _GUICtrlListView_AddArray($hListView_Search2, $reav1q)
                $aLV_List_Search2 = _GUIListViewEx_ReadToArray($hListView_Search2, 1)
                $iLV_Search2_Index = _GUIListViewEx_Init($hListView_Search2, $aLV_List_Search2, 1, 0xFF0000, True, 2 + 4 + 8 + 16 + 32)

                Local $Searching2 = _Metro_CreateButtonEX("Search", 245, 20, 50, 25)
                Local $Reset2 = _Metro_CreateButtonEX("Reset", 300, 20, 50, 25)
                Local $Select2 = _Metro_CreateButtonEX("Select", 100, 255, 70, 25)
                Local $close2 = _Metro_CreateButtonEX("Close", 250, 255, 70, 25)
                GUISetState()

                While 1
                    If $curSearchOpen = 0 Then ExitLoop
                    GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY")
                    Switch GUIGetMsg()
                        Case $Select2
                            $iIndex = _GUICtrlListView_GetSelectedIndices($hListView_Search2)
                            If $curSearchOpen == 2 Then
                                $rowerk = $iIndex
                                Local $LatestArray = _GUICtrlListView_CreateArray($hListView_Search2, '|')
                                _ArrayDelete($LatestArray, 0)


                                GUIDelete($searchgui2)
                                GUICtrlSetData($inputdriverid, $LatestArray[$rowerk][0])
                                $curSearchOpen = 0
                            EndIf

                        Case $Searching2
                            Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\requestor.txt'
                            $sInput1q = FileRead($sFilePath1q)
                            $aInput1q = StringSplitW2($sInput1q, ";")
                            $aOutput1q = Compact2DArray2($aInput1q)
                            Local $reav1q = $aInput1q


                            Local $rowz = UBound($reav1q, $UBOUND_ROWS)
                            $realRows = $rowz - 1
                            Local $colz = UBound($reav1q, $UBOUND_COLUMNS)
                            $realCols = $colz - 1
                            $currentcol = 0
                            $currentrow = 0
                            $setrow = 0

                            _GUICtrlListView_DeleteAllItems($hListView_Search2)


                            While $currentcol <= $realCols

                                Dim $arruy = _ArrayExtract_Mod($reav1q, 0, $realRows, $currentcol, $currentcol)
                                For $k = 0 To UBound($arruy) - 1

                                    If StringInStr($arruy[$k], GUICtrlRead($inputsearch2)) Then

                                        Local $aiResult = _ArrayFindAll($reav1q, $arruy[$k], 0, 0, 0, 0, -1, False)

                                        For $i = 0 To UBound($aiResult) - 1
                                            Local $aExtract = _ArrayExtract_Mod($reav1q, $aiResult[$i], $aiResult[$i], 0)

                                            For $j = 0 To UBound($aExtract) - 1

                                                _GUICtrlListView_AddItem($hListView_Search2, $aExtract[$j][0], $setrow)
                                                _GUICtrlListView_AddSubItem($hListView_Search2, $setrow, $aExtract[$j][1], 1, 1)
                                                _GUICtrlListView_AddSubItem($hListView_Search2, $setrow, $aExtract[$j][2], 2, 2)
                                                _GUICtrlListView_AddSubItem($hListView_Search2, $setrow, $aExtract[$j][3], 3, 3)
                                                $setrow = $setrow + 1


                                            Next

                                        Next

                                    EndIf


                                Next

                                $currentcol = $currentcol + 1
                            WEnd

                            Local $LatestArrayness = _GUICtrlListView_CreateArray($hListView_Search2, '|')

                            Local $UniqueArrayed = _ArrayUnique($LatestArrayness)

                            _ArrayDelete($UniqueArrayed, 0)
                            _ArrayDelete($UniqueArrayed, 0)
                            $setrow = 0

                            _GUICtrlListView_DeleteAllItems($hListView_Search2)
                            For $k = 0 To UBound($UniqueArrayed) - 1
                                Local $aiResult = _ArrayFindAll($reav1q, $UniqueArrayed[$k], 0, 0, 0, 0, -1, False)

                                For $i = 0 To UBound($aiResult) - 1
                                    Local $aExtract = _ArrayExtract_Mod($reav1q, $aiResult[$i], $aiResult[$i], 0)

                                    For $j = 0 To UBound($aExtract) - 1

                                        _GUICtrlListView_AddItem($hListView_Search2, $aExtract[$j][0], $setrow)
                                        _GUICtrlListView_AddSubItem($hListView_Search2, $setrow, $aExtract[$j][1], 1, 1)
                                        _GUICtrlListView_AddSubItem($hListView_Search2, $setrow, $aExtract[$j][2], 2, 2)
                                        _GUICtrlListView_AddSubItem($hListView_Search2, $setrow, $aExtract[$j][3], 3, 3)
                                        $setrow = $setrow + 1


                                    Next

                                Next

                            Next
                            ;_GUICtrlListView_DeleteAllItems($hListView_Search2)
                            ;_GUICtrlListView_AddArray($hListView_Search2, $UniqueArrayed)
                            ;$LatestArraynessEdited = _ArrayRemoveDuplicate($LatestArrayness)
                            ;_ArrayDisplay($LatestArraynessEdited)

                        Case $Reset2
                            Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\requestor.txt'
                            $sInput1q = FileRead($sFilePath1q)
                            $aInput1q = StringSplitW2($sInput1q, ";")
                            $aOutput1q = Compact2DArray2($aInput1q)
                            Local $reav1q = $aInput1q
                            _GUICtrlListView_DeleteAllItems($hListView_Search2)
                            _GUICtrlListView_AddArray($hListView_Search2, $reav1q)

                        Case $close2
                            GUIDelete($searchgui2)
                            ExitLoop

                    EndSwitch
                WEnd

            Case $Search3
                $curSearchOpen = 3
                Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\property_num.txt'
                $sInput1q = FileRead($sFilePath1q)
                $aInput1q = StringSplitW2($sInput1q, ";")
                $aOutput1q = Compact2DArray2($aInput1q)
                Local $reav1q = $aInput1q

                $searchgui3 = _Metro_CreateGUI("Search", 400, 300, -1, -1)
                Local $inputsearch3 = GUICtrlCreateInput("", 50, 20, 185, 25)
                GUICtrlCreateLabel("Search Result(s): ", 50, 60, $iWidthCell) ; first cell 70 width

                Local $hListView_Search3 = _GUICtrlListView_Create($searchgui3, "", 50, 80, 300, 150, BitOR($LVS_DEFAULT, $WS_BORDER))
                _GUICtrlListView_SetExtendedListViewStyle($hListView_Search3, BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_GRIDLINES))
                _GUICtrlListView_AddColumn($hListView_Search3, 'Property Number', 110)
                _GUICtrlListView_AddColumn($hListView_Search3, 'Description', 100)
                _GUICtrlListView_AddColumn($hListView_Search3, 'Plate Number', 80)
                _GUICtrlListView_AddArray($hListView_Search3, $reav1q)
                $aLV_List_Search3 = _GUIListViewEx_ReadToArray($hListView_Search3, 1)
                $iLV_Search3_Index = _GUIListViewEx_Init($hListView_Search3, $aLV_List_Search3, 1, 0xFF0000, True, 2 + 4 + 8 + 16 + 32)

                Local $Searching3 = _Metro_CreateButtonEX("Search", 245, 20, 50, 25)
                Local $Reset3 = _Metro_CreateButtonEX("Reset", 300, 20, 50, 25)
                Local $Select3 = _Metro_CreateButtonEX("Select", 100, 255, 70, 25)
                Local $close3 = _Metro_CreateButtonEX("Close", 250, 255, 70, 25)
                GUISetState()

                While 1
                    If $curSearchOpen = 0 Then ExitLoop
                    GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY")
                    Switch GUIGetMsg()
                        Case $Select3
                            $iIndex = _GUICtrlListView_GetSelectedIndices($hListView_Search3)
                            If $curSearchOpen == 3 Then
                                $rowerk = $iIndex
                                Local $LatestArray = _GUICtrlListView_CreateArray($hListView_Search3, '|')
                                _ArrayDelete($LatestArray, 0)


                                GUIDelete($searchgui3)
                                GUICtrlSetData($inputproperty, $LatestArray[$rowerk][0])
                                $curSearchOpen = 0
                            EndIf

                        Case $Searching3
                            Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\property_num.txt'
                            $sInput1q = FileRead($sFilePath1q)
                            $aInput1q = StringSplitW2($sInput1q, ";")
                            $aOutput1q = Compact2DArray2($aInput1q)
                            Local $reav1q = $aInput1q


                            Local $rowz = UBound($reav1q, $UBOUND_ROWS)
                            $realRows = $rowz - 1
                            Local $colz = UBound($reav1q, $UBOUND_COLUMNS)
                            $realCols = $colz - 1
                            $currentcol = 0
                            $currentrow = 0
                            $setrow = 0

                            _GUICtrlListView_DeleteAllItems($hListView_Search3)


                            While $currentcol <= $realCols

                                Dim $arruy = _ArrayExtract_Mod($reav1q, 0, $realRows, $currentcol, $currentcol)
                                For $k = 0 To UBound($arruy) - 1

                                    If StringInStr($arruy[$k], GUICtrlRead($inputsearch3)) Then

                                        Local $aiResult = _ArrayFindAll($reav1q, $arruy[$k], 0, 0, 0, 0, -1, False)

                                        For $i = 0 To UBound($aiResult) - 1
                                            Local $aExtract = _ArrayExtract_Mod($reav1q, $aiResult[$i], $aiResult[$i], 0)

                                            For $j = 0 To UBound($aExtract) - 1

                                                _GUICtrlListView_AddItem($hListView_Search3, $aExtract[$j][0], $setrow)
                                                _GUICtrlListView_AddSubItem($hListView_Search3, $setrow, $aExtract[$j][1], 1, 1)
                                                _GUICtrlListView_AddSubItem($hListView_Search3, $setrow, $aExtract[$j][2], 2, 2)

                                                $setrow = $setrow + 1


                                            Next

                                        Next

                                    EndIf


                                Next

                                $currentcol = $currentcol + 1
                            WEnd

                            Local $LatestArrayness = _GUICtrlListView_CreateArray($hListView_Search3, '|')

                            Local $UniqueArrayed = _ArrayUnique($LatestArrayness)

                            _ArrayDelete($UniqueArrayed, 0)
                            _ArrayDelete($UniqueArrayed, 0)
                            $setrow = 0

                            _GUICtrlListView_DeleteAllItems($hListView_Search3)
                            For $k = 0 To UBound($UniqueArrayed) - 1
                                Local $aiResult = _ArrayFindAll($reav1q, $UniqueArrayed[$k], 0, 0, 0, 0, -1, False)

                                For $i = 0 To UBound($aiResult) - 1
                                    Local $aExtract = _ArrayExtract_Mod($reav1q, $aiResult[$i], $aiResult[$i], 0)

                                    For $j = 0 To UBound($aExtract) - 1

                                        _GUICtrlListView_AddItem($hListView_Search3, $aExtract[$j][0], $setrow)
                                        _GUICtrlListView_AddSubItem($hListView_Search3, $setrow, $aExtract[$j][1], 1, 1)
                                        _GUICtrlListView_AddSubItem($hListView_Search3, $setrow, $aExtract[$j][2], 2, 2)

                                        $setrow = $setrow + 1


                                    Next

                                Next

                            Next
                            ;_GUICtrlListView_DeleteAllItems($hListView_Search2)
                            ;_GUICtrlListView_AddArray($hListView_Search2, $UniqueArrayed)
                            ;$LatestArraynessEdited = _ArrayRemoveDuplicate($LatestArrayness)
                            ;_ArrayDisplay($LatestArraynessEdited)

                        Case $Reset3
                            Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\property_num.txt'
                            $sInput1q = FileRead($sFilePath1q)
                            $aInput1q = StringSplitW2($sInput1q, ";")
                            $aOutput1q = Compact2DArray2($aInput1q)

                            Local $reav1q = $aInput1q
                            _GUICtrlListView_DeleteAllItems($hListView_Search3)
                            _GUICtrlListView_AddArray($hListView_Search3, $reav1q)

                        Case $close3
                            GUIDelete($searchgui3)
                            ExitLoop

                    EndSwitch
                WEnd

            Case $Search4
                $curSearchOpen = 4
                Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\project_code.txt'
                $sInput1q = FileRead($sFilePath1q)
                $aInput1q = StringSplitW2($sInput1q, ";")
                $aOutput1q = Compact2DArray2($aInput1q)
                Local $reav1q = $aInput1q

                $searchgui4 = _Metro_CreateGUI("Search", 400, 300, -1, -1)
                Local $inputsearch4 = GUICtrlCreateInput("", 50, 20, 185, 25)
                GUICtrlCreateLabel("Search Result(s): ", 50, 60, $iWidthCell) ; first cell 70 width

                $hListView_Search4 = _GUICtrlListView_Create($searchgui4, "", 50, 80, 300, 150, BitOR($LVS_DEFAULT, $WS_BORDER))
                _GUICtrlListView_SetExtendedListViewStyle($hListView_Search4, BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_GRIDLINES))
                _GUICtrlListView_AddColumn($hListView_Search4, 'Project Code', 110)
                _GUICtrlListView_AddColumn($hListView_Search4, 'Description', 100)
                _GUICtrlListView_AddArray($hListView_Search4, $reav1q)
                $aLV_List_Search4 = _GUIListViewEx_ReadToArray($hListView_Search4, 1)
                $iLV_Search4_Index = _GUIListViewEx_Init($hListView_Search4, $aLV_List_Search4, 1, 0xFF0000, True, 2 + 4 + 8 + 16 + 32)

                Local $Searching4 = _Metro_CreateButtonEX("Search", 245, 20, 50, 25)
                Local $Reset4 = _Metro_CreateButtonEX("Reset", 300, 20, 50, 25)
                Local $Select4 = _Metro_CreateButtonEX("Select", 100, 255, 70, 25)
                Local $close4 = _Metro_CreateButtonEX("Close", 250, 255, 70, 25)
                GUISetState()

                While 1
                    If $curSearchOpen = 0 Then ExitLoop
                    GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY")
                    Switch GUIGetMsg()
                        Case $Select4
                            $iIndex = _GUICtrlListView_GetSelectedIndices($hListView_Search4)
                            If $curSearchOpen == 4 Then
                                $rowerk = $iIndex
                                Local $LatestArray = _GUICtrlListView_CreateArray($hListView_Search4, '|')
                                _ArrayDelete($LatestArray, 0)


                                GUIDelete($searchgui4)
                                GUICtrlSetData($inputproject, $LatestArray[$rowerk][0])
                                $curSearchOpen = 0
                            EndIf

                        Case $Searching4
                            Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\project_code.txt'
                            $sInput1q = FileRead($sFilePath1q)
                            $aInput1q = StringSplitW2($sInput1q, ";")
                            $aOutput1q = Compact2DArray2($aInput1q)
                            Local $reav1q = $aInput1q


                            Local $rowz = UBound($reav1q, $UBOUND_ROWS)
                            $realRows = $rowz - 1
                            Local $colz = UBound($reav1q, $UBOUND_COLUMNS)
                            $realCols = $colz - 1
                            $currentcol = 0
                            $currentrow = 0
                            $setrow = 0

                            _GUICtrlListView_DeleteAllItems($hListView_Search4)


                            While $currentcol <= $realCols

                                Dim $arruy = _ArrayExtract_Mod($reav1q, 0, $realRows, $currentcol, $currentcol)
                                For $k = 0 To UBound($arruy) - 1

                                    If StringInStr($arruy[$k], GUICtrlRead($inputsearch4)) Then

                                        Local $aiResult = _ArrayFindAll($reav1q, $arruy[$k], 0, 0, 0, 0, -1, False)

                                        For $i = 0 To UBound($aiResult) - 1
                                            Local $aExtract = _ArrayExtract_Mod($reav1q, $aiResult[$i], $aiResult[$i], 0)

                                            For $j = 0 To UBound($aExtract) - 1

                                                _GUICtrlListView_AddItem($hListView_Search4, $aExtract[$j][0], $setrow)
                                                _GUICtrlListView_AddSubItem($hListView_Search4, $setrow, $aExtract[$j][1], 1, 1)


                                                $setrow = $setrow + 1


                                            Next

                                        Next

                                    EndIf


                                Next

                                $currentcol = $currentcol + 1
                            WEnd

                            Local $LatestArrayness = _GUICtrlListView_CreateArray($hListView_Search4, '|')

                            Local $UniqueArrayed = _ArrayUnique($LatestArrayness)

                            _ArrayDelete($UniqueArrayed, 0)
                            _ArrayDelete($UniqueArrayed, 0)
                            $setrow = 0

                            _GUICtrlListView_DeleteAllItems($hListView_Search4)
                            For $k = 0 To UBound($UniqueArrayed) - 1
                                Local $aiResult = _ArrayFindAll($reav1q, $UniqueArrayed[$k], 0, 0, 0, 0, -1, False)

                                For $i = 0 To UBound($aiResult) - 1
                                    Local $aExtract = _ArrayExtract_Mod($reav1q, $aiResult[$i], $aiResult[$i], 0)

                                    For $j = 0 To UBound($aExtract) - 1

                                        _GUICtrlListView_AddItem($hListView_Search4, $aExtract[$j][0], $setrow)
                                        _GUICtrlListView_AddSubItem($hListView_Search4, $setrow, $aExtract[$j][1], 1, 1)


                                        $setrow = $setrow + 1


                                    Next

                                Next

                            Next
                            ;_GUICtrlListView_DeleteAllItems($hListView_Search2)
                            ;_GUICtrlListView_AddArray($hListView_Search2, $UniqueArrayed)
                            ;$LatestArraynessEdited = _ArrayRemoveDuplicate($LatestArrayness)
                            ;_ArrayDisplay($LatestArraynessEdited)

                        Case $Reset4
                            Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\project_code.txt'
                            $sInput1q = FileRead($sFilePath1q)
                            $aInput1q = StringSplitW2($sInput1q, ";")
                            $aOutput1q = Compact2DArray2($aInput1q)
                            Local $reav1q = $aInput1q


                            _GUICtrlListView_DeleteAllItems($hListView_Search4)
                            _GUICtrlListView_AddArray($hListView_Search4, $reav1q)

                        Case $close4
                            GUIDelete($searchgui4)
                            ExitLoop

                    EndSwitch
                WEnd

            Case $Search5
                $curSearchOpen = 5
                Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\target_dest.txt'
                $sInput1q = FileRead($sFilePath1q)
                $aInput1q = StringSplitW2($sInput1q, ";")
                $aOutput1q = Compact2DArray2($aInput1q)
                Local $reav1q = $aInput1q


                $searchgui5 = _Metro_CreateGUI("Search", 400, 300, -1, -1)
                Local $inputsearch5 = GUICtrlCreateInput("", 50, 20, 185, 25)
                GUICtrlCreateLabel("Search Result(s): ", 50, 60, $iWidthCell) ; first cell 70 width

                $hListView_Search5 = _GUICtrlListView_Create($searchgui5, "", 50, 80, 300, 150, BitOR($LVS_DEFAULT, $WS_BORDER))
                _GUICtrlListView_SetExtendedListViewStyle($hListView_Search5, BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_GRIDLINES))
                _GUICtrlListView_AddColumn($hListView_Search5, 'Project Code', 110)
                _GUICtrlListView_AddColumn($hListView_Search5, 'Location', 110)
                _GUICtrlListView_AddArray($hListView_Search5, $reav1q)
                $aLV_List_Search5 = _GUIListViewEx_ReadToArray($hListView_Search5, 1)
                $iLV_Search5_Index = _GUIListViewEx_Init($hListView_Search5, $aLV_List_Search5, 1, 0xFF0000, True, 2 + 4 + 8 + 16 + 32)

                Local $Searching5 = _Metro_CreateButtonEX("Search", 245, 20, 50, 25)
                Local $Reset5 = _Metro_CreateButtonEX("Reset", 300, 20, 50, 25)
                Local $Select5 = _Metro_CreateButtonEX("Select", 100, 255, 70, 25)
                Local $close5 = _Metro_CreateButtonEX("Close", 250, 255, 70, 25)
                GUISetState()

                While 1
                    If $curSearchOpen = 0 Then ExitLoop
                    GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY")
                    Switch GUIGetMsg()
                        Case $Select5
                            $iIndex = _GUICtrlListView_GetSelectedIndices($hListView_Search5)
                            If $curSearchOpen == 5 Then
                                $rowerk = $iIndex
                                Local $LatestArray = _GUICtrlListView_CreateArray($hListView_Search5, '|')
                                _ArrayDelete($LatestArray, 0)


                                GUIDelete($searchgui5)
                                GUICtrlSetData($inputtarget, $LatestArray[$rowerk][0])
                                $curSearchOpen = 0
                            EndIf

                        Case $Searching5
                            Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\target_dest.txt'
                            $sInput1q = FileRead($sFilePath1q)
                            $aInput1q = StringSplitW2($sInput1q, ";")
                            $aOutput1q = Compact2DArray2($aInput1q)
                            Local $reav1q = $aInput1q


                            Local $rowz = UBound($reav1q, $UBOUND_ROWS)
                            $realRows = $rowz - 1
                            Local $colz = UBound($reav1q, $UBOUND_COLUMNS)
                            $realCols = $colz - 1
                            $currentcol = 0
                            $currentrow = 0
                            $setrow = 0

                            _GUICtrlListView_DeleteAllItems($hListView_Search5)


                            While $currentcol <= $realCols

                                Dim $arruy = _ArrayExtract_Mod($reav1q, 0, $realRows, $currentcol, $currentcol)
                                For $k = 0 To UBound($arruy) - 1

                                    If StringInStr($arruy[$k], GUICtrlRead($inputsearch5)) Then

                                        Local $aiResult = _ArrayFindAll($reav1q, $arruy[$k], 0, 0, 0, 0, -1, False)

                                        For $i = 0 To UBound($aiResult) - 1
                                            Local $aExtract = _ArrayExtract_Mod($reav1q, $aiResult[$i], $aiResult[$i], 0)

                                            For $j = 0 To UBound($aExtract) - 1

                                                _GUICtrlListView_AddItem($hListView_Search5, $aExtract[$j][0], $setrow)
                                                _GUICtrlListView_AddSubItem($hListView_Search5, $setrow, $aExtract[$j][1], 1, 1)


                                                $setrow = $setrow + 1


                                            Next

                                        Next

                                    EndIf


                                Next

                                $currentcol = $currentcol + 1
                            WEnd

                            Local $LatestArrayness = _GUICtrlListView_CreateArray($hListView_Search5, '|')

                            Local $UniqueArrayed = _ArrayUnique($LatestArrayness)

                            _ArrayDelete($UniqueArrayed, 0)
                            _ArrayDelete($UniqueArrayed, 0)
                            $setrow = 0

                            _GUICtrlListView_DeleteAllItems($hListView_Search5)
                            For $k = 0 To UBound($UniqueArrayed) - 1
                                Local $aiResult = _ArrayFindAll($reav1q, $UniqueArrayed[$k], 0, 0, 0, 0, -1, False)

                                For $i = 0 To UBound($aiResult) - 1
                                    Local $aExtract = _ArrayExtract_Mod($reav1q, $aiResult[$i], $aiResult[$i], 0)

                                    For $j = 0 To UBound($aExtract) - 1

                                        _GUICtrlListView_AddItem($hListView_Search5, $aExtract[$j][0], $setrow)
                                        _GUICtrlListView_AddSubItem($hListView_Search5, $setrow, $aExtract[$j][1], 1, 1)


                                        $setrow = $setrow + 1


                                    Next

                                Next

                            Next
                            ;_GUICtrlListView_DeleteAllItems($hListView_Search2)
                            ;_GUICtrlListView_AddArray($hListView_Search2, $UniqueArrayed)
                            ;$LatestArraynessEdited = _ArrayRemoveDuplicate($LatestArrayness)
                            ;_ArrayDisplay($LatestArraynessEdited)

                        Case $Reset5
                            Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\target_dest.txt'
                            $sInput1q = FileRead($sFilePath1q)
                            $aInput1q = StringSplitW2($sInput1q, ";")
                            $aOutput1q = Compact2DArray2($aInput1q)
                            Local $reav1q = $aInput1q


                            _GUICtrlListView_DeleteAllItems($hListView_Search5)
                            _GUICtrlListView_AddArray($hListView_Search5, $reav1q)

                        Case $close5
                            GUIDelete($searchgui5)
                            ExitLoop

                    EndSwitch
                WEnd

            Case $Search6
                $curSearchOpen = 6
                Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\origin.txt'
                $sInput1q = FileRead($sFilePath1q)
                $aInput1q = StringSplitW2($sInput1q, ";")
                $aOutput1q = Compact2DArray2($aInput1q)
                Local $reav1q = $aOutput1q

                $searchgui6 = _Metro_CreateGUI("Search", 400, 300, -1, -1)
                Local $inputsearch6 = GUICtrlCreateInput("", 50, 20, 185, 25)
                GUICtrlCreateLabel("Search Result(s): ", 50, 60, $iWidthCell) ; first cell 70 width

                $hListView_Search6 = _GUICtrlListView_Create($searchgui6, "", 50, 80, 300, 150, BitOR($LVS_DEFAULT, $WS_BORDER))
                _GUICtrlListView_SetExtendedListViewStyle($hListView_Search6, BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_GRIDLINES))
                _GUICtrlListView_AddColumn($hListView_Search6, 'Location', 110)
                _GUICtrlListView_AddArray($hListView_Search6, $reav1q)
                $aLV_List_Search6 = _GUIListViewEx_ReadToArray($hListView_Search6, 1)
                $iLV_Search6_Index = _GUIListViewEx_Init($hListView_Search6, $aLV_List_Search6, 1, 0xFF0000, True, 2 + 4 + 8 + 16 + 32)

                Local $Searching6 = _Metro_CreateButtonEX("Search", 245, 20, 50, 25)
                Local $Reset6 = _Metro_CreateButtonEX("Reset", 300, 20, 50, 25)
                Local $Select6 = _Metro_CreateButtonEX("Select", 100, 255, 70, 25)
                Local $close6 = _Metro_CreateButtonEX("Close", 250, 255, 70, 25)
                GUISetState()

                While 1
                    If $curSearchOpen = 0 Then ExitLoop
                    GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY")
                    Switch GUIGetMsg()
                        Case $Select6
                            $iIndex = _GUICtrlListView_GetSelectedIndices($hListView_Search6)
                            If $curSearchOpen == 6 Then
                                $rowerk = $iIndex
                                Local $LatestArray = _GUICtrlListView_CreateArray($hListView_Search6, '|')
                                _ArrayDelete($LatestArray, 0)


                                GUIDelete($searchgui6)
                                GUICtrlSetData($inputorigin, $LatestArray[$rowerk][0])
                                $curSearchOpen = 0
                            EndIf

                        Case $Searching6
                            Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\origin.txt'
                            $sInput1q = FileRead($sFilePath1q)
                            $aInput1q = StringSplitW2($sInput1q, ";")
                            $aOutput1q = Compact2DArray2($aInput1q)
                            Local $reav1q = $aOutput1q


                            Local $rowz = UBound($reav1q, $UBOUND_ROWS)
                            $realRows = $rowz - 1
                            Local $colz = UBound($reav1q, $UBOUND_COLUMNS)
                            $realCols = $colz - 1
                            $currentcol = 0
                            $currentrow = 0
                            $setrow = 0

                            _GUICtrlListView_DeleteAllItems($hListView_Search6)

                            Dim $arruy = _ArrayExtract_Mod($reav1q, 0, $realRows, 0, 0)

                            For $g = 0 To UBound($arruy) - 1
                                If StringInStr($arruy[$g], GUICtrlRead($inputsearch6)) Then


                                    _GUICtrlListView_AddItem($hListView_Search6, $arruy[$g], $setrow)

                                    $setrow = $setrow + 1


                                EndIf
                            Next

                        Case $Reset6
                            Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\origin.txt'
                            $sInput1q = FileRead($sFilePath1q)
                            $aInput1q = StringSplitW2($sInput1q, ";")
                            $aOutput1q = Compact2DArray2($aInput1q)
                            Local $reav1q = $aOutput1q

                            _GUICtrlListView_DeleteAllItems($hListView_Search6)
                            _GUICtrlListView_AddArray($hListView_Search6, $reav1q)

                        Case $close6
                            GUIDelete($searchgui6)
                            ExitLoop

                    EndSwitch
                WEnd
            Case $idAddNew
                $GoodtoGo = 0
                $currentError = "Errors:"

                If $iRadioVal == 0 Then
                    $currentError = $currentError & @CRLF & "Doct Type:                empty"
                Else

                    Sleep(1)
                EndIf

                If GUICtrlRead($inputnumber) == "" Then
                    $currentError = $currentError & @CRLF & "Doc#:                         empty"
                Else
                    Local $b = 0
                    Local $sFilePath1q = @ScriptDir & '\SimplerBin\SAP\mris_num.txt'
                    $sInput1q = FileRead($sFilePath1q)
                    $aInput1q = StringSplitW2($sInput1q, ";")
                    $aOutput1q = Compact2DArray2($aInput1q)
                    Local $reav1q = $aOutput1q

                    Local $rowz = UBound($reav1q, $UBOUND_ROWS)
                    $realRows = $rowz - 1

                    Dim $arruy = _ArrayExtract_Mod($reav1q, 0, $realRows, 0, 0)

                    For $g = 0 To UBound($arruy) - 1
                        If $arruy[$g] == GUICtrlRead($inputnumber) Then
                            $b = 1
                        EndIf
                    Next
                    If $b = 0 Then
                        $currentError = $currentError & @CRLF & "Doc#:                 &n

 

Edited by Melba23
Added code tags

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.