;inc_AVRB.au3 Func _Load_LV_Pfad_txt($hLV_LV, $sPFad_Import) Dim $aArray ;~ $aSearchAuftraege = _FileListToArrayRecursiv($sPfad_NC_R_Auftrage, "*.txt", 1) $aSearchAuftraege = _FileListToArray($sPFad_Import, "*.txt", 1) _ArrayDelete($aSearchAuftraege, 0) ;~ _DebugArrayDisplay($aSearchAuftraege) Dim $aLV_NC_import_ARray[UBound($aSearchAuftraege)][3] ;~ _DebugArrayDisplay($aLV_NC_R_import_ARray) For $i = 0 To UBound($aSearchAuftraege) - 1 $aLV_NC_import_ARray[$i][0] = $aSearchAuftraege[$i] $aLV_NC_import_ARray[$i][1] = "Preis test" $aLV_NC_import_ARray[$i][2] = $sPFad_Import & $aSearchAuftraege[$i] _FileReadToArray($sPFad_Import & $aSearchAuftraege[$i], $aArray) ;~ _DebugArrayDisplay($aArray) $aReturn = _TxtFile2Array($aArray) $iSum = _Summe_from_Array($aReturn) ;~ MsgBox(64, "Summe", $iSum) $aLV_NC_import_ARray[$i][1] = _StringAddThousandsSepEx(_PriceRound($iSum)) & " €" Next _GUICtrlListView_AddArray($hLV_LV, $aLV_NC_import_ARray) _ListviewAutoWidthHeader($hLV_LV) ;~ _DebugArrayDisplay($aLV_NC_R_import_ARray) EndFunc ;==>_Load_LV_Pfad_txt Func _TxtFile2Array($aArray) If IsArray($aArray) Then Dim $aListeImport[$aArray[0] - 15][13] $iZ = 0 For $i = 16 To UBound($aArray) - 1 $aTemp = StringSplit($aArray[$i], "|") For $ii = 1 To UBound($aTemp) - 1 $aListeImport[$iZ][$ii - 1] = $aTemp[$ii] Next $iZ = $iZ + 1 Next Return $aListeImport EndIf EndFunc ;==>_TxtFile2Array Func _Summe_from_Array($aListeImport) For $ix = 0 To UBound($aListeImport) - 1 Select Case $aListeImport[$ix][7] = "M" ;ändere meter Zeile 3 mit Menge $aListeImport[$ix][6] = $aListeImport[$ix][3] Case $aListeImport[$ix][7] = "M2" ;Länge x Breite = Menge vorne $sMengeM2 = _replaceKom2Punkt($aListeImport[$ix][3]) * _replaceKom2Punkt($aListeImport[$ix][4]) $aListeImport[$ix][6] = _replacePunkt2Koma($sMengeM2) ;Menge neu Berechnen; Case $aListeImport[$ix][7] = "M3" ;länge x Breite x Tiefe = Menge $sMengeM3 = _replaceKom2Punkt($aListeImport[$ix][3]) * _replaceKom2Punkt($aListeImport[$ix][4]) * _replaceKom2Punkt($aListeImport[$ix][5]) $aListeImport[$ix][6] = _replacePunkt2Koma($sMengeM3) Case $aListeImport[$ix][7] = "LE" ;~ $aListeImport[$ix][6] = $aListeImport[$ix][3] Case $aListeImport[$ix][7] = "ST" ;~ $aListeImport[$ix][6] = $aListeImport[$ix][3] Case $aListeImport[$ix][7] = "STD" ;~ $aListeImport[$ix][6] = $aListeImport[$ix][3] EndSelect ;ändere Menge hinten mit Mengevorne * Faktor $ixMengeVorne = _replaceKom2Punkt($aListeImport[$ix][6]) $ixFakotr = _replaceKom2Punkt($aListeImport[$ix][2]) $ixMengeHinten = $ixMengeVorne * $ixFakotr $aListeImport[$ix][10] = _replacePunkt2Koma($ixMengeHinten) ;ändere Gesamtpreishinten (MengeHinten*Einzellpreis) $ixGesamtsumme = $ixMengeHinten * _replaceKom2Punkt($aListeImport[$ix][11]) $aListeImport[$ix][12] = _replacePunkt2Koma($ixGesamtsumme) Next $iSummeset = 0 For $iii = 0 To UBound($aListeImport) - 1 ; Menge * Faktor = G-Menge $sMenge = _replaceKom2Punkt($aListeImport[$iii][6]) * _replaceKom2Punkt($aListeImport[$iii][2]) $aListeImport[$iii][10] = _replacePunkt2Koma($sMenge) ; Menge (Menge * Faktor) ;G-Menge * Einzellspreis = Summe $iSumme = _replaceKom2Punkt($aListeImport[$iii][10]) * _replaceKom2Punkt($aListeImport[$iii][11]) ;Menge hinten * Faktor) $aListeImport[$iii][12] = _replacePunkt2Koma($iSumme) $iSummeset = _replacePunkt2Koma($iSummeset + $iSumme) Next ;~ $iSummeset = _StringAddThousandsSepEx(_PriceRound($iSummeset)) & " €" Return $iSummeset EndFunc ;==>_Summe_from_Array Func _Summe_LV_Liste($hLV_LV) $aReturn = _Listview2Array($hLV_LV) $iSummeset = 0 For $i = 0 To UBound($aReturn) - 1 $iSumme = $aReturn[$i][1] $iSumme = StringReplace($iSumme, ".", "") $iSumme = StringReplace($iSumme, " €", "") $iSumme = _replaceKom2Punkt($iSumme) ConsoleWrite($iSumme & @CRLF) $iSummeset = _replacePunkt2Koma($iSummeset + $iSumme) Next ;~ $iSummeset = Return $iSummeset EndFunc ;==>_Summe_LV_Liste Func _SearchLV_Liste($hLV_LV, $sSuche) $aReturn = _Listview2Array($hLV_LV) ;~ _DebugArrayDisplay($aReturn) If $sSuche = "" Then Else _GUICtrlListView_DeleteAllItems($hLV_LV) $iIndexs = _ArrayFindAll($aReturn, $sSuche, 0, 0, 0, 1, 0) ;~ _DebugArrayDisplay($iIndexs) For $i = 0 To UBound($iIndexs) - 1 _GUICtrlListView_AddItem($hLV_LV, $aReturn[$iIndexs[$i]][0]) _GUICtrlListView_AddSubItem($hLV_LV, $i, $aReturn[$iIndexs[$i]][1], 1) _GUICtrlListView_AddSubItem($hLV_LV, $i, $aReturn[$iIndexs[$i]][2], 2) Next _ListviewAutoWidthHeader($hLV_LV) EndIf EndFunc ;==>_SearchLV_Liste Func _load_PFade_from_ini() GUICtrlSetData($txt_pfad_Lokal, IniRead($sPfadIni, "AVRB", "1", "")) GUICtrlSetData($txt_pfad_NC_R, IniRead($sPfadIni, "AVRB", "2", "")) GUICtrlSetData($txt_pfad_NC_E, IniRead($sPfadIni, "AVRB", "3", "")) GUICtrlSetData($txt_pfad_NC_F, IniRead($sPfadIni, "AVRB", "4", "")) EndFunc ;==>_load_PFade_from_ini Func _Save_Pfade_to_ini() IniWrite($sPfadIni, "AVRB", "1", GUICtrlRead($txt_pfad_Lokal)) IniWrite($sPfadIni, "AVRB", "2", GUICtrlRead($txt_pfad_NC_R)) IniWrite($sPfadIni, "AVRB", "3", GUICtrlRead($txt_pfad_NC_E)) IniWrite($sPfadIni, "AVRB", "4", GUICtrlRead($txt_pfad_NC_F)) EndFunc ;==>_Save_Pfade_to_ini Func _MassImportEV() Local $aIndex = _GUICtrlListView_GetSelectedIndices($lv_AVRB_lokal, True) ;~ _ArrayDisplay($aIndex) If $aIndex[0] = 1 Then ;~ ;nur eins markiert! ;~ _ArrayDisplay($aIndex) $aItem = _GUICtrlListView_GetItemTextArray($lv_AVRB_lokal, $aIndex[1]) ;$aItem[3] = Pfad zur txt.Datei Local $sFilePath, $aArray $sFilePath = $aItem[3] _FileReadToArray($sFilePath, $aArray) ;~ _DebugArrayDisplay($aArray) If IsArray($aArray) Then $sSMnr = StringReplace($aArray[7], "SMNr=", "") ;~ MsgBox(64, "SMnr", $sSMnr) Dim $aListeImport[$aArray[0] - 15][13] $iZ = 0 For $i = 16 To UBound($aArray) - 1 $aTemp = StringSplit($aArray[$i], "|") For $ii = 1 To UBound($aTemp) - 1 $aListeImport[$iZ][$ii - 1] = $aTemp[$ii] Next $iZ = $iZ + 1 Next ;~ _DebugArrayDisplay($aListeImport) ;entferne Leere Zeilen vom Array $aAufmaListeString = _ArrayToString($aListeImport, "|") $aTest = StringSplit($aAufmaListeString, @LF) Dim $aListeEV[0][13] For $iii = 1 To UBound($aTest) - 1 If StringInStr($aTest[$iii], "|||||") Then Else _ArrayAdd($aListeEV, $aTest[$iii]) EndIf Next ;~ _DebugArrayDisplay($aListeEV) ;~ _MASS_EV_Insert_Pos($sSMnr, $aListeEV, $aArray, 1) EndIf Else ; mehrere Zeilen markiert! ;~ _ArrayDisplay($aIndex) Global $sAuswahl = "True" For $iiiii = 1 To UBound($aIndex) - 1 $aItem = _GUICtrlListView_GetItemTextArray($lv_AVRB_lokal, $aIndex[$iiiii]) ;$aItem[3] = Pfad zur txt.Datei Local $sFilePath, $aArray $sFilePath = $aItem[3] _FileReadToArray($sFilePath, $aArray) ;~ _DebugArrayDisplay($aArray) ;~ If IsArray($aArray) Then $sSMnr = StringReplace($aArray[7], "SMNr=", "") Dim $aListeImport[$aArray[0] - 15][13] $iZ = 0 For $i = 16 To UBound($aArray) - 1 $aTemp = StringSplit($aArray[$i], "|") For $ii = 1 To UBound($aTemp) - 1 $aListeImport[$iZ][$ii - 1] = $aTemp[$ii] Next $iZ = $iZ + 1 Next ;entferne Leere Zeilen vom Array $aAufmaListeString = _ArrayToString($aListeImport, "|") $aTest = StringSplit($aAufmaListeString, @LF) Dim $aListeEV[0][13] For $iii = 1 To UBound($aTest) - 1 If StringInStr($aTest[$iii], "|||||") Then Else _ArrayAdd($aListeEV, $aTest[$iii]) EndIf Next ;~ _DebugArrayDisplay($aListeEV) _MASS_EV_Insert_Pos($sSMnr, $aListeEV, $aArray, 2) EndIf Next EndIf _EV_Logout() MsgBox(64, "Fertig", "Fertig") EndFunc ;==>_MassImportEV Func _MASS_EV_Insert_Pos($sSMnr, $aListeEV, $aArray, $iMass) Global $aListeImport = $aListeEV Global $sDetailsID Global $hSession = _WinHttpOpen("Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0") Global $aHosts[2][2] $aHosts[1][0] = "www.evergabe.telekom.de" $aHosts[1][1] = _WinHttpConnect($hSession, $aHosts[1][0]) Global $sHeader = "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" & @CRLF & "Accept-Language: de,en-US;q=0.7,en;q=0.3" & @CRLF & "Accept-Encoding: gzip, deflate, br" & @CRLF $sUsername = IniRead(@ScriptDir & "\daten\conf.ini", "EVergabe", "Benutzer", "xxx") $sPasswort = IniRead(@ScriptDir & "\daten\conf.ini", "EVergabe", "Passwort", "xxx") $sRetrunLogin = _EV_Login($sUsername, $sPasswort) If $sRetrunLogin = "True" Then _Write_to_Console("Login Erfolgreich") $sHTML = _send_WinhttpS_GET($aHosts[1][1], "/framework-agreement-call", "https://www.evergabe.telekom.de/") ;eintragen ab hier!!!! ;suche Aufmaß nach SMnr: $sHTML = _send_WinhttpS_GET($aHosts[1][1], "/framework-agreement-call?OrderRecallSearch%5Bhead_line%5D=" & $sSMnr & "&OrderRecallSearch%5Bdocument_no%5D=&OrderRecallSearch%5Bincoming_date%5D=&OrderRecallSearch%5Border_date%5D=&OrderRecallSearch%5Bgeneral_agreement_id%5D=&OrderRecallSearch%5Bdocument_state%5D=-1", "https://www.evergabe.telekom.de/framework-agreement-call") _Write_to_Console("Suche SM-Nr: | " & $sSMnr) $aDetailsID = StringRegExp($sHTML, '/framework-agreement-call/details\?id=([^"]+)', 3) $aSMnr = StringRegExp($sHTML, 'Bedarfsnr.: (\d+)', 3) If IsArray($aDetailsID) And IsArray($aSMnr) Then ;abfrage mehrere Abrufe vorhanden auswahl mit Arraydisplay neu und kopieren ;evtl mit neuer GUI und Aufruf in der E-Vergabe??? If $sAuswahl = "True" Then If UBound($aDetailsID, 1) > 1 Then _DebugArrayDisplay($aDetailsID, "Auftragsauswahl, Mehrere Aufträge zur auswahl:") $sDetailsID = InputBox("mehrere Abrufe vorhanden", "Mit der SMnr:" & $aSMnr[0] & "wurde mehr als ein Abruf gefunden! Bitte geben sie die gewünschte Nr ein." & @CRLF & $aDetailsID[0] & @CRLF & $aDetailsID[1], $aDetailsID[0]) If $iMass = 1 Then If $sDetailsID = "" Then $sDetailsID = $aDetailsID[0] EndIf Else If $sDetailsID = "" Then $sDetailsID = $aDetailsID[0] EndIf $sAuswahl = "False" EndIf Else $sDetailsID = $aDetailsID[0] EndIf EndIf _Write_to_Console("Öffne DetailsID : | " & StringReplace($sDetailsID, "&c=1", "")) $sHTML = _send_WinhttpS_GET($aHosts[1][1], "/framework-agreement-call/details?id=" & $sDetailsID & "&c=1", "https://www.evergabe.telekom.de/") If Not StringInStr($sHTML, 'LERF nicht möglich') Then ;LEB anlegen $sHTML = _send_WinhttpS_GET($aHosts[1][1], "/sheet/index?c=1&importId=" & $sDetailsID, "https://www.evergabe.telekom.de/" & "/framework-agreement-call/details?id=" & $sDetailsID & "&c=1") $sHTML = _send_WinhttpS_GET($aHosts[1][1], "/sheet/create-sheet?c=1&id=" & $sDetailsID, "https://www.evergabe.telekom.de/" & "/sheet/index?c=1&importId=" & $sDetailsID) ;evtl nicht direkt eingabe $sCSRF = _EV_GET_CSRF($sHTML) If $sCSRF = "False" Then GUICtrlSetData($lbl_status, "CSRF Fehler Sitzung abgelaufen!") ;~ _Write_to_Console("CSRF Fehler Sitzung abgelaufen!") Else $sLeist_zeitv = StringReplace($aArray[9], "StartZ=", "") $sLeist_zeitb = StringReplace($aArray[10], "EndZ=", "") ; mit UrlEncode $sLeistungsort1 = StringReplace($aArray[5], "Baustelle=", "") If StringLen($sLeistungsort1) >= 25 Then $sLeistungsortso = $sLeistungsort1 $sLeistungsort1 = StringMid($sLeistungsort1, 1, 25) Else $sLeistungsortso = $sLeistungsort1 EndIf $sLeistungsort = _URIEncode($sLeistungsort1) ; max 25 Zeichen $sSachbearbeiter = IniRead(@ScriptDir & "\daten\conf.ini", "EVergabe", "Name", "xxx") ; mit UrlEncode $sBauabschnitt = StringReplace($aArray[13], "Bauabschnitt=", "") If StringLen($sBauabschnitt) >= 40 Then $sBauabschnitt = StringMid($sBauabschnitt, 1, 39) EndIf $sBauabschnitt = _URIEncode($sBauabschnitt) $sKurztext = "SM " ; max 40 Zeichen $sKurztext = StringReplace($sKurztext, "SM ", "SM " & $sSMnr) If StringLen($sKurztext) >= 40 Then $sKurztext = StringMid($sKurztext, 1, 39) EndIf $sKurztext = _URIEncode($sKurztext) ; mit UrlEncode $sLangtext = StringReplace($aArray[5], "Baustelle=", "") & " " & StringReplace($aArray[13], "Bauabschnitt=", "") & " " & "SM " & $sSMnr $sLangtext = _URIEncode($sLangtext) $sHeader = "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" & @CRLF & "Accept-Language: de,en-US;q=0.7,en;q=0.3" & @CRLF & "Accept-Encoding: gzip, deflate, br" & @CRLF & "Content-Type: application/x-www-form-urlencoded" & @CRLF $sPost = "_csrf=" & $sCSRF & "%3D%3D&BapiEssr%5Bfinal%5D=&BapiEssr%5Bfinal%5D=&BapiEssr%5Blzvon%5D=" & $sLeist_zeitv & "&BapiEssr%5Blzbis%5D=" & $sLeist_zeitb & "&BapiEssr%5Bdlort%5D=" & $sLeistungsort & "&BapiEssr%5Bsbnaman%5D=" & $sSachbearbeiter & "&BapiEssr%5Btxz01%5D=" & $sBauabschnitt & "&description=" & $sLangtext & "&save+sheets=" $aHTML = _WinHttpSimpleSSLRequest($aHosts[1][1], "POST", "/sheet/create-sheet?c=1&id=" & $sDetailsID, "https://www.evergabe.telekom.de/sheet/create-sheet?c=1&id=" & $sDetailsID, $sPost, $sHeader, True) ;~ _Write_to_Console($aHTML[0]) ;~ _Write_to_Console($aHTML[1]) ;~ _DebugArrayDisplay($aHTML) If IsArray($aHTML) Then ;~ _Write_to_Console("LEB angelegt.") GUICtrlSetData($lbl_status, "LEB angelegt.") _Write_to_Console("Leb Angelegt! ") ;MsgBox(64, "LEB angelegt schauen", "") ;~ _DebugArrayDisplay($aHTML) $aSheetID = StringRegExp($aHTML[2], 'sheetId=(.*)', 3) If IsArray($aSheetID) Then ;~ _DebugArrayDisplay($aSheetID) $sHTML = _send_WinhttpS_GET($aHosts[1][1], "/sheet/header?c=1&sheetId=" & $aSheetID[0], "") ;evtl nicht direkt eingabe Global $iSheetID = $aSheetID[0] For $i = 0 To UBound($aListeImport) - 1 $sHTML = _send_WinhttpS_GET($aHosts[1][1], "/sheet-position/index?c=1&sheetId=" & $aSheetID[0], "") ;evtl nicht direkt eingabe $sCSRF = _EV_GET_CSRF($sHTML) If $sCSRF = "False" Then GUICtrlSetData($lbl_status, "CSRF Fehler Sitzung abgelaufen!") ;~ _Write_to_Console("CSRF Fehler Sitzung abgelaufen!") Else $sPositionNr = $aListeImport[$i][1] $sPost = "_csrf=" & $sCSRF & "%3D%3D&ServicePosition%5Bnumber%5D=" & $sPositionNr & "&insertPosition=0" $aHTML = _WinHttpSimpleSSLRequest($aHosts[1][1], "POST", "/sheet-position/index?c=1&sheetId=" & $aSheetID[0], "https://www.evergabe.telekom.de/sheet-position/index?c=1&sheetId=" & $aSheetID[0], $sPost, "", True) If IsArray($aHTML) Then If StringInStr($aHTML[1], "Nullen können weggelassen") Then _Write_to_Console($aListeImport[$i][1] & "|" & $aListeImport[$i][8] & " keine gültige Positionen") ClipPut($aListeImport[$i][1]) MsgBox(64, "keine gültige Pos", $aListeImport[$i][1] & "|" & $aListeImport[$i][8]) Else $aLocationlink = StringRegExp($aHTML[2], 'telekom.de(.*)', 3) If IsArray($aLocationlink) Then $aPosID = StringRegExp($aLocationlink[0], 'positionId=([^&]+)', 3) If IsArray($aPosID) Then $sHTML = _send_WinhttpS_GET($aHosts[1][1], $aLocationlink[0], "") ;notwendig für neues Token $sCSRF = _EV_GET_CSRF($sHTML) If $sCSRF = "False" Then GUICtrlSetData($lbl_status, "CSRF Fehler Sitzung abgelaufen!") ;~ _Write_to_Console("CSRF Fehler Sitzung abgelaufen!") Else $iSheetID = $aSheetID[0] $sHTML = _send_WinhttpS_GET($aHosts[1][1], "/sheet-position/create?insertPosition=0&positionId=" & $aPosID[0] & "&c=1&sheetId=" & $iSheetID, "") If $bDebug = "True" Then FileDelete(@ScriptDir & "\test_temp_body.txt") FileWrite(@ScriptDir & "\test_temp_body.txt", $sHTML) MsgBox(64, "show Body", "") EndIf ;~ $sPost = "_csrf=" & $sCSRF & "%3D%3D&ServicePosition%5B0%5D%5BsectionText%5D=MFG+A536&ServicePosition%5B0%5D%5BformulaSymbol%5D=ME&ServicePosition%5B0%5D%5BformulaValueMultiplier%5D=2&ServicePosition%5B0%5D%5BformulaValueLength%5D=2&ServicePosition%5B0%5D%5BlongText%5D=Rohre+auslegen&ServicePosition%5B0%5D%5Bid%5D=" & $aPosID[0] & "&clientId=1&sheetId=" & $aSheetID[0] & "&insertPosition=0&save=" ;~ $aHTML = _WinHttpSimpleSSLRequest($aHosts[1][1], "POST", "/sheet-position/index?c=1&sheetId=" & $aSheetID[0], "https://www.evergabe.telekom.de/sheet-position/index?c=1&sheetId=" & $aSheetID[0], $sPost, "", True) ;~ FileWrite(@ScriptDir&"\test_temp_head.txt",$aHTML[0]) If StringInStr($sHTML, "Pflichtbe") And $aListeImport[$i][9] = "" Then ;~ FileWrite(@ScriptDir&"\begründung_notwendig.txt",$sHTML) ;~ _Write_to_Console($aListeImport[$i][1] & " | " & $aListeImport[$i][8] & "| Begründung notwendig") FileWrite(@ScriptDir & "\begründung_notwendig_neu.txt", $aListeImport[$i][1] & "|" & $aListeImport[$i][8] & @CRLF) ;~ MsgBox(64, $aListeImport[$i][1], $aListeImport[$i][8] & "| Begründung notwendig") EndIf If StringInStr($sHTML, "Pflichtbe") Then FileWrite(@ScriptDir & "\begründung_notwendig.txt", $aListeImport[$i][1] & "|" & $aListeImport[$i][8] & @CRLF) ;~ MsgBox(64,$aListeImport[$i][1],$aListeImport[$i][8]&"| Begründung notwendig") EndIf ;~ MsgBox(64,"","schau an") ;~ _ArrayDisplay($aHTML) Select Case $aListeImport[$i][7] = "ST" ;bei Stück _EV_ADD_ST_insert($aListeImport[$i][0], $aListeImport[$i][9], $aListeImport[$i][10], $aPosID[0], $iSheetID, $sCSRF, $aListeImport[$i][1] & "|" & $aListeImport[$i][8]) ;~ _EV_ADD_ST_insert($aListeImport[$i][0], $aListeImport[$i][9], $aListeImport[$i][10], $aPosID[0], $iSheetID, $sCSRF) ;~ GUICtrlSetData($lbl_status,"Position: "&$aListeImport[$i][1] & " "& $aListeImport[$i][0] " hinzugefügt!") Case $aListeImport[$i][7] = "M" ; bei Meter _EV_ADD_M_insert($aListeImport[$i][0], $aListeImport[$i][9], $aListeImport[$i][2], $aListeImport[$i][3], $aPosID[0], $iSheetID, $sCSRF, $aListeImport[$i][1] & "|" & $aListeImport[$i][8]) ;~ GUICtrlSetData($lbl_status,"Position: "&$aListeImport[$i][1] & " "& $aListeImport[$i][0] " hinzugefügt!") Case $aListeImport[$i][7] = "M2" ; bei m2 _EV_ADD_M2_insert($aListeImport[$i][0], $aListeImport[$i][9], $aListeImport[$i][2], $aListeImport[$i][3], $aListeImport[$i][4], $aPosID[0], $iSheetID, $sCSRF, $aListeImport[$i][1] & "|" & $aListeImport[$i][8]) ;~ GUICtrlSetData($lbl_status,"Position: "&$aListeImport[$i][1] & " "& $aListeImport[$i][0] " hinzugefügt!") Case $aListeImport[$i][7] = "M3" ;m3 _EV_ADD_M3_insert($aListeImport[$i][0], $aListeImport[$i][9], $aListeImport[$i][2], $aListeImport[$i][3], $aListeImport[$i][4], $aListeImport[$i][5], $aPosID[0], $iSheetID, $sCSRF, $aListeImport[$i][1] & "|" & $aListeImport[$i][8]) ;~ GUICtrlSetData($lbl_status,"Position: "&$aListeImport[$i][1] & " "& $aListeImport[$i][0] " hinzugefügt!") Case $aListeImport[$i][7] = "STD" ; STD _EV_ADD_STD_insert($aListeImport[$i][0], $aListeImport[$i][9], $aListeImport[$i][10], $aPosID[0], $iSheetID, $sCSRF, $aListeImport[$i][1] & "|" & $aListeImport[$i][8]) ;~ GUICtrlSetData($lbl_status,"Position: "&$aListeImport[$i][1] & " "& $aListeImport[$i][0] " hinzugefügt!") Case $aListeImport[$i][7] = "LE" ; LE _EV_ADD_LE_insert($aListeImport[$i][0], $aListeImport[$i][9], $aListeImport[$i][10], $aPosID[0], $iSheetID, $sCSRF, $aListeImport[$i][1] & "|" & $aListeImport[$i][8]) ;~ GUICtrlSetData($lbl_status,"Position: "&$aListeImport[$i][1] & " "& $aListeImport[$i][0] " hinzugefügt!") EndSelect ;~ GUICtrlSetData($lbl_status, $aListeImport[$i][1] & "|" & $aListeImport[$i][8] & "... Eintrag hinzugefügt!") ;~ _Write_to_Console($aListeImport[$i][1] & "|" & $aListeImport[$i][8] & "... Eintrag hinzugefügt!") EndIf EndIf Else MsgBox(64, "kein Location link vorhanden", "kein Location link vorhanden") EndIf EndIf EndIf ;~ MsgBox(64, "Pos insert check", "") EndIf Next _EV_GET_DetailsID_Info_mod($sDetailsID, $aArray) Else MsgBox(64, "keine SheetID", "keine SheetID vorhanden.") EndIf Else EndIf EndIf Else EndIf Else EndIf Else MsgBox(64, "Login Fehler", "Login war nicht erfolgreich") EndIf EndFunc ;==>_MASS_EV_Insert_Pos Func _EV_GET_DetailsID_Info_mod($sDetailsIDPreis, $aArray) ;~ https://www.evergabe.telekom.de $sBaustelle = StringReplace($aArray[5], "Baustelle=", "") $sBauabschnitt = StringReplace($aArray[13], "Bauabschnitt=", "") $sAbrufNr = StringReplace($aArray[6], "AbrufNr=", "") $sSMnr = StringReplace($aArray[7], "SMNr=", "") $sDateiname = "" $sText = "" $sDateiname = $sBaustelle & "_" & $sBauabschnitt & "_" & $sSMnr & "_" & $sAbrufNr $sDateiname = StringReplace($sDateiname, "?", " ") $sDateiname = StringReplace($sDateiname, "*", " ") $sDateiname = StringReplace($sDateiname, "<", " ") $sDateiname = StringReplace($sDateiname, ">", " ") $sDateiname = StringReplace($sDateiname, ",", " ") $sDateiname = StringReplace($sDateiname, "\", " ") $sDateiname = StringReplace($sDateiname, "+", " ") $sDateiname = StringReplace($sDateiname, ":", " ") $sDateiname = StringReplace($sDateiname, "=", " ") $sDateiname = StringReplace($sDateiname, "/", " ") $sDateiname = StringReplace($sDateiname, '"', " ") $sDateiname = StringReplace($sDateiname, ";", " ") $sDateiname = StringReplace($sDateiname, "[", " ") $sDateiname = StringReplace($sDateiname, "]", " ") $sDateiname = StringReplace($sDateiname, "[", " ") $sDateiname = StringReplace($sDateiname, "{", " ") $sDateiname = StringReplace($sDateiname, "}", " ") $sDateiname = StringReplace($sDateiname, "|", " ") $sDateiname = StringReplace($sDateiname, " ", "_") $sDateiname = StringReplace($sDateiname, "__", "_") $sHTML = _send_WinhttpS_GET($aHosts[1][1], "/sheet/index?c=1&importId=" & $sDetailsIDPreis, "https://www.evergabe.telekom.de/framework-agreement-call") $aPages = StringRegExp($sHTML, 'importId=\d+&page=([^"]+)', 3) If IsArray($aPages) Then $iMax = _ArrayMax($aPages) Dim $aLEBP[1] Dim $aShID[1] For $iPage = 1 To $iMax $sHTML = _send_WinhttpS_GET($aHosts[1][1], "/sheet/index?c=1&importId=" & $sDetailsIDPreis & "&page=" & $iPage, "https://www.evergabe.telekom.de/framework-agreement-call") $aLEBPreis = StringRegExp($sHTML, 'Wert LEB: ([^ ]+)€', 3) $aSheetIDs = StringRegExp($sHTML, '€([^<]+)', 3) For $iiii = 0 To UBound($aLEBPreis) - 1 _ArrayAdd($aLEBP, $aLEBPreis[$iiii]) _ArrayAdd($aShID, $aSheetIDs[$iiii]) Next Next For $i = 0 To UBound($aShID) - 1 If $aShID[$i] = $iSheetID Then ConsoleWrite("##########" & @CRLF) ConsoleWrite($sDateiname & " => " & $aLEBP[$i] & @CRLF) ConsoleWrite("https://www.evergabe.telekom.de/sheet/header?class=list-item&sheetId=" & $aShID[$i] & "&c=1" & @CRLF) ConsoleWrite("##########" & @CRLF) $sText_log = $sDateiname & " => " & $aLEBP[$i] & @CRLF & "https://www.evergabe.telekom.de/sheet/header?class=list-item&sheetId=" & $aShID[$i] & "&c=1" & @CRLF FileWrite(@ScriptDir & "\daten\_LOG_E-Vergabe.txt", $sText_log & @CRLF) $txt_bauabschnitt = $sBaustelle & "_" & $sBauabschnitt $iSum = $aLEBP[$i] FileWrite(@ScriptDir & "\daten\Aufträge2Excel.txt", $sSMnr & "|" & $sAbrufNr & "|" & $txt_bauabschnitt & "|" & $iSum & @CRLF) $sText = $sDateiname & " => " & $aLEBP[$i] GUICtrlSetData($logs_tab_ed_logs, GUICtrlRead($logs_tab_ed_logs) & @CRLF & $sText) $sText = "https://www.evergabe.telekom.de/sheet/header?class=list-item&sheetId=" & $aShID[$i] & "&c=1" GUICtrlSetData($logs_tab_ed_logs, GUICtrlRead($logs_tab_ed_logs) & @CRLF & $sText) _GUICtrlEdit_LineScroll($logs_tab_ed_logs, 0, _GUICtrlEdit_GetLineCount($logs_tab_ed_logs)) ;~ ;https://www.evergabe.telekom.de/sheet/header?class=list-item&sheetId=0006740712&c=1 EndIf Next Else $aLEBPreis = StringRegExp($sHTML, 'Wert LEB: ([^ ]+)€', 3) $aSheetIDs = StringRegExp($sHTML, '€([^<]+)', 3) For $i = 0 To UBound($aSheetIDs) - 1 If $aSheetIDs[$i] = $iSheetID Then ConsoleWrite("##########" & @CRLF) ConsoleWrite($sDateiname & " => " & $aLEBPreis[$i] & @CRLF) ConsoleWrite("https://www.evergabe.telekom.de/sheet/header?class=list-item&sheetId=" & $aSheetIDs[$i] & "&c=1" & @CRLF) ConsoleWrite("##########" & @CRLF) $sText_log = $sDateiname & " => " & $aLEBPreis[$i] & @CRLF & "https://www.evergabe.telekom.de/sheet/header?class=list-item&sheetId=" & $aSheetIDs[$i] & "&c=1" & @CRLF FileWrite(@ScriptDir & "\daten\_LOG_E-Vergabe.txt", $sText_log & @CRLF) $txt_bauabschnitt = $sBaustelle & "_" & $sBauabschnitt $iSum = $aLEBPreis[$i] FileWrite(@ScriptDir & "\daten\Aufträge2Excel.txt", $sSMnr & "|" & $sAbrufNr & "|" & $txt_bauabschnitt & "|" & $iSum & @CRLF) $sText = $sDateiname & " => " & $aLEBPreis[$i] GUICtrlSetData($logs_tab_ed_logs, GUICtrlRead($logs_tab_ed_logs) & @CRLF & $sText) $sText = "https://www.evergabe.telekom.de/sheet/header?class=list-item&sheetId=" & $aSheetIDs[$i] & "&c=1" GUICtrlSetData($logs_tab_ed_logs, GUICtrlRead($logs_tab_ed_logs) & @CRLF & $sText) _GUICtrlEdit_LineScroll($logs_tab_ed_logs, 0, _GUICtrlEdit_GetLineCount($logs_tab_ed_logs)) ;https://www.evergabe.telekom.de/sheet/header?class=list-item&sheetId=0006740712&c=1 EndIf Next EndIf EndFunc ;==>_EV_GET_DetailsID_Info_mod