Initial commit – AufmaßCreater v2.35

This commit is contained in:
2026-06-10 11:03:43 +02:00
commit 84c933ea9c
2823 changed files with 490495 additions and 0 deletions
+134
View File
@@ -0,0 +1,134 @@
;Aufmasshelfer.au3
;~ #include <Array.au3>
Global $sPfad_Conf_Ini = @ScriptDir & "\daten\conf.ini"
Global $sIniDateiPfad = @ScriptDir & "\daten\LV\"
Global $aLVListe[1][13] = [["RSA-Abschnitt", "PositionNr", "Faktor", "Länge", "Breite", "Tiefe", "Menge", "ME", "Leistungskurztext", "Bemerkung", "Menge", "E-Preis", "Summe"]]
;~ Global $aKoma[2][3] = [["Länge", "Breite", "Tiefe"]]
Global $sIniPfad = @ScriptDir & "\daten\conf.ini"
;_ArrayDisplay($aLVListe)
;_ArrayDisplay($aKoma)
Func _ArrayClear(ByRef $aArray)
Local $iCols = UBound($aArray, 2)
Local $iDim = UBound($aArray, 0)
Local $iRows = UBound($aArray, 1)
If $iDim = 1 Then
Local $aArray1D[$iRows]
$aArray = $aArray1D
Else
Local $aArray2D[$iRows][$iCols]
$aArray = $aArray2D
EndIf
EndFunc ;==>_ArrayClear
Func _string_replace_Prozent($sString, $aArray)
;~ _ArrayDisplay($aArray)
$sString = _replacePunkt2Koma(StringReplace($sString, "%Leange%", $aArray[3]))
$sString = _replacePunkt2Koma(StringReplace($sString, "%Breite%", $aArray[4]))
$sString = _replacePunkt2Koma(StringReplace($sString, "%Tiefe%", $aArray[5]))
$sString = StringReplace($sString, "%Abschnitt%", $aArray[1])
$sString = StringReplace($sString, "%Bemerkung%", $aArray[2])
Return $sString
EndFunc ;==>_string_replace_Prozent
Func _ini_umwandeln()
$sData = FileRead($sIniDateiPfad & $sIniDatei) ;Datei einlesen
$hFile = FileOpen($sIniDateiPfad & $sIniDatei, $FO_OVERWRITE + $FO_UNICODE) ;im richtigen Format ein Handle zum schreiben eröffnen
FileWrite($hFile, $sData) ;in Datei schreiben
FileClose($hFile) ;Handle schliessen
EndFunc ;==>_ini_umwandeln
Func _ini_umwandeln_pfad($sPfad)
$sData = FileRead($sPfad) ;Datei einlesen
$hFile = FileOpen($sPfad, $FO_OVERWRITE + $FO_UNICODE) ;im richtigen Format ein Handle zum schreiben eröffnen
FileWrite($hFile, $sData) ;in Datei schreiben
FileClose($hFile) ;Handle schliessen
EndFunc ;==>_ini_umwandeln_pfad
Func _array2Listview($aAusabge)
Dim $aListeImport[UBound($aAusabge) - 1][13]
$iZ = 0
For $i = 1 To UBound($aAusabge) - 1
ConsoleWrite($aAusabge[$i] & @CRLF)
;~ MsgBox(64, "", "")
$aTemp = StringSplit($aAusabge[$i], "|")
For $ii = 1 To UBound($aTemp) - 1
;~ If $ii = 7 Then
;~ $aListeImport[$iZ][$ii] = ""
;~ $ii = $ii + 1
;~ EndIf
If $ii = 11 Then
$aListeImport[$iZ][$ii] = ""
$ii = $ii + 1
EndIf
If $ii = 12 Then
;$aListeImport[$iZ][$ii] = ""
;$ii = $ii + 1
EndIf
$aListeImport[$iZ][$ii - 1] = $aTemp[$ii]
Next
$iZ = $iZ + 1
Next
;~ _ArrayDisplay($aListeImport)
$iCount = -1
_GUIListViewEx_InsertSpec($iLV_Aufma_Index, $iCount, $aListeImport)
;~ _ListviewAutoWidthHeader($lv_ausgabe)
EndFunc ;==>_array2Listview
Func _formload_Aufmh()
$sData = FileRead($sIniPfad) ;Datei einlesen
$hFile = FileOpen($sIniPfad, $FO_OVERWRITE + $FO_UNICODE) ;im richtigen Format ein Handle zum schreiben eröffnen
FileWrite($hFile, $sData) ;in Datei schreiben
FileClose($hFile) ;Handle schliessen
Local $aKV = IniReadSection($sIniPfad, "Verträge")
_ArrayDelete($aKV, 0)
_ArraySort($aKV)
;~ _ArrayDisplay($aKV)
$cData = ""
For $i = 0 To UBound($aKV) - 1
$cData &= "|" & "data_" & $aKV[$i][0] & ".ini"
Next
GUICtrlSetData($chb_vertrag, $cData, "")
EndFunc ;==>_formload_Aufmh
Func _felder_Kopfdaten_zurucksetzen()
GUICtrlSetState($kopf_TAB_rd_teilauf, $GUI_UNCHECKED)
GUICtrlSetState($kopf_tab_rd_schluss, $GUI_UNCHECKED)
GUICtrlSetData($kopf_TAB_txt_abrufnr, "")
GUICtrlSetData($kopf_TAB_txt_bauabschnitt, "")
GUICtrlSetData($kopf_TAB_txt_baustelle, "")
GUICtrlSetData($kopf_TAB_txt_datum, "")
GUICtrlSetData($kopf_tab_txt_datum_ende, "")
GUICtrlSetData($kopf_TAB_datum_start, "")
GUICtrlSetData($kopf_TAB_txt_detailsID, "")
GUICtrlSetData($kopf_TAB_txt_kolone, "")
GUICtrlSetData($kopf_tab_txt_smnr, "")
GUICtrlSetData($kopf_TAB_txt_telnr, "")
GUICtrlSetData($kopf_TAB_txt_aspa, "")
;~ GUICtrlSetData($kopf_tab_chb_vertrag, "")
EndFunc ;==>_felder_Kopfdaten_zurucksetzen
+289
View File
@@ -0,0 +1,289 @@
Func _EVH_start()
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
Global $sPfadIni = @ScriptDir & "\daten\conf.ini"
_start_EVH_Evergabe()
$sSMnr = GUICtrlRead($txt_sm_EVH)
$aArrayList = _EV_Search_SM($sSMnr)
;~ _DebugArrayDisplay($aArrayList)
;~ Grettenacker 488284 Wolpertswende SM 206254233|206254233|4209902345|17177645|4209902345/00010 Grettenacker 4,88284 Wolpertswende,Hartl|4650001474|27.01.2021|06.04.2021|Angenommen
If UBound($aArrayList) > 1 Then
;~ ConsoleWrite(UBound($aArrayList) & @CRLF)
$sDetailsID = _create_Gui_Ausw($aArrayList)
;~ MsgBox(64, "", $sDetailsID_Return)
Else
$sDetailsID = $aArrayList[0][3]
EndIf
$aDaten = _EV_PDF_Kopfdaten_DDL2Array($sDetailsID)
;~
;~ _DebugArrayDisplay($aDaten)
;~ MsgBox(64, "", $sDetailsID)
_EV_Kopfdaten_Array2Gui($aDaten)
EndFunc ;==>_EVH_start
Func _EV_EVH_Suche_SM($sSM)
;0203648377
$sHTML = _send_WinhttpS_GET($aHosts[1][1], "/framework-agreement-call/index?OrderRecallSearch%5Bhead_line%5D=" & $sSM & "&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")
$aTitle = _EV_Abrufliste_GET_Title($sHTML)
$aBedarfnr = _EV_Abrufliste_GET_Bedarfnr($sHTML) ;SMnr
$aBelegEinDatum = _EV_Abrufliste_GET_Belegeingang($sHTML) ;Eingang E-Vergabe
$aBelegnr = _EV_Abrufliste_GET_Belegnr($sHTML) ;42Nr
$aAusfuehrungsfrist = _EV_Abrufliste_GET_Ausfuehrungsfrist($sHTML) ;Ausführungsfrist
$aDetailID = _EV_Abrufliste_GET_DetailsID($sHTML) ;DetailsID intern für E-Vergabe
$aRV = _EV_Abrufliste_GET_RV($sHTML) ;Rahmenvertrag
$aStatus = _EV_Abrufliste_GET_Status($sHTML) ;Status Angenommen Abgelehnt usw.
Dim $aReturn[UBound($aTitle)][8]
;~ _DebugArrayDisplay($aReturn)
For $i = 0 To UBound($aTitle) - 1
$aReturn[$i][0] = $aTitle[$i]
$aReturn[$i][1] = $aBedarfnr[$i]
$aReturn[$i][2] = $aBelegnr[$i]
$aReturn[$i][3] = $aDetailID[$i]
$aReturn[$i][4] = $aRV[$i]
$aReturn[$i][5] = $aBelegEinDatum[$i]
$aReturn[$i][6] = $aAusfuehrungsfrist[$i]
$aReturn[$i][7] = $aStatus[$i]
Next
;~ _DebugArrayDisplay($aReturn)
Return $aReturn
EndFunc ;==>_EV_EVH_Suche_SM
Func _start_EVH_Evergabe()
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($sPfadIni, "EVergabe", "Benutzer", "xxx")
$sPasswort = IniRead($sPfadIni, "EVergabe", "Passwort", "xxx")
$sRetrunLogin = _EV_Login($sUsername, $sPasswort)
If $sRetrunLogin = "True" Then
;~ ConsoleWrite("Login Erfolgreich" & @CRLF)
_Write_to_Console_EVH("Login Erfolgreich")
$sHTML = _send_WinhttpS_GET($aHosts[1][1], "/framework-agreement-call", "https://www.evergabe.telekom.de/")
;~ ClipPut($sHTML)
;~ MsgBox(64,"erstmal","fertig")
Else
_Write_to_Console_EVH("Login Fehler!!!")
MsgBox(64, "Login Fehler", "Login war nicht erfolgreich")
EndIf
EndFunc ;==>_start_EVH_Evergabe
Func _EVH_ausgabe1()
$t_SM = GUICtrlRead($txt_sm_EVH)
$t_Beleg = GUICtrlRead($txt_beleg_EVH)
$t_BelegEin = GUICtrlRead($txt_beleg_eingang_EVH)
$t_aus = GUICtrlRead($txt_ausfuehrungsfrist_EVH)
$t_rv = GUICtrlRead($txt_rv_EVH)
$t_Preis = GUICtrlRead($txt_plan_preis_EVH)
$t_ort = GUICtrlRead($txt_ort_EVH)
$t_str = GUICtrlRead($txt_strasse_EVH)
$t_hsnr = GUICtrlRead($txt_hsnr_EVH)
$t_ncpfad = GUICtrlRead($txt_ncpfad_EVH)
$t_nco = GUICtrlRead($txt_nc_ordner_EVH)
;~ GUICtrlSetData($txt_ausgabe01_EVH, $t_SM & "|" & $t_Beleg & "|" & $t_BelegEin & "|" & $t_aus & "|" & $t_rv & "|" & $t_Preis)
GUICtrlSetData($txt_ausgabe01_EVH, $t_nco & "|" & $t_ncpfad & "||" & $t_ort & "|" & $t_str & "|" & $t_hsnr & "|" & $t_SM & "|" & $t_Beleg & "|" & $t_BelegEin & "|" & $t_aus & "|" & $t_rv & "|" & $t_Preis)
_Write_to_Console_EVH("SM: " & $t_SM)
_Write_to_Console_EVH("Beleg: " & $t_Beleg)
_Write_to_Console_EVH("Beleg Start: " & $t_BelegEin)
_Write_to_Console_EVH("Ende Datum: " & $t_aus)
_Write_to_Console_EVH("RV: " & $t_rv)
_Write_to_Console_EVH("Preis: " & $t_Preis)
EndFunc ;==>_EVH_ausgabe1
Func _EVH_ausgabe2()
$t_SM = GUICtrlRead($txt_sm_EVH)
$t_Beleg = GUICtrlRead($txt_beleg_EVH)
$t_BelegEin = GUICtrlRead($txt_beleg_eingang_EVH)
$t_aus = GUICtrlRead($txt_ausfuehrungsfrist_EVH)
$t_rv = GUICtrlRead($txt_rv_EVH)
$t_Preis = GUICtrlRead($txt_plan_preis_EVH)
GUICtrlSetData($txt_ausgabe02_EVH, $t_SM & "|" & $t_Beleg & "|" & $t_rv & "||" & $t_Preis)
EndFunc ;==>_EVH_ausgabe2
Func _EVH_open_NC()
$sPfadNextCloud = IniRead($sPfadIni, "NC", "pfad", "")
Local $sSuchtext = GUICtrlRead($txt_sm_EVH)
If $sSuchtext = "" Then
$sSuchtext = "*"
EndIf
;~ MsgBox(64, "Suche los...",$sSuchtext & @CRLF & $sPfadNextCloud )
;~ $aSearchInfo = _RecursiveFileListToArray($sPfadNextCloud, $sSuchtext, 1)
$aSearchInfo = _RecursiveFileListToArray($sPfadNextCloud, '', 2)
;~ _ArrayDisplay($aSearchInfo)
;~ _ArrayDisplay($aSearchInfo, "$aFileList")
Dim $aSuchErg[1]
For $i = 1 To UBound($aSearchInfo) - 1
If StringInStr($aSearchInfo[$i], $sSuchtext) Then
_ArrayAdd($aSuchErg, $aSearchInfo[$i])
EndIf
Next
;~ _ArrayDisplay($aSuchErg)
;~ MsgBox(64, "", UBound($aSuchErg))
If UBound($aSuchErg) > 1 Then
_ArrayDelete($aSuchErg, 0)
;~ _ArrayDisplay($aSuchErg)
GUICtrlSetData($txt_ncpfad_EVH, $aSuchErg[0])
$aNCO = StringSplit($aSuchErg[0], "\")
$sNCO = $aNCO[$aNCO[0] - 1]
GUICtrlSetData($txt_nc_ordner_EVH, $sNCO)
;~ _DebugArrayDisplay($aNCO)
$aOrt = StringRegExp($sNCO, '([^,]+),', 3)
If IsArray($aOrt) Then
GUICtrlSetData($txt_ort_EVH, $aOrt[0])
EndIf
$aStr = StringRegExp($sNCO, '[^,]+, ([^ ]+)', 3)
If IsArray($aStr) Then
GUICtrlSetData($txt_strasse_EVH, $aStr[0])
EndIf
$aHsnr = StringRegExp($sNCO, '[^,]+, [^ ]+ (.*) SM', 3)
If IsArray($aHsnr) Then
GUICtrlSetData($txt_hsnr_EVH, $aHsnr[0])
EndIf
_Write_to_Console("Pfad NC; " & $aSuchErg[0])
ShellExecute($aSuchErg[0])
Else
GUICtrlSetData($txt_ncpfad_EVH, "nicht gefunden")
EndIf
EndFunc ;==>_EVH_open_NC
Func _Write_to_Console_EVH($sString)
$sText = @YEAR & "." & @MON & "." & @MDAY & " | " & @HOUR & ":" & @MIN & ":" & @SEC & " " & $sString
GUICtrlSetData($ed_aus_EVH, GUICtrlRead($ed_aus_EVH) & @CRLF & $sText)
;~ ConsoleWrite($sText & " " & $sString & @CRLF)
;~ FileWrite(@ScriptDir & "\Daten\_LOG_File.txt", $sText & @CRLF)
_GUICtrlEdit_LineScroll($ed_aus_EVH, 0, _GUICtrlEdit_GetLineCount($ed_aus_EVH))
EndFunc ;==>_Write_to_Console_EVH
Func _EV_PDF_Kopfdaten_DDL2Array($sDetailsID)
Dim $aArray[10]
$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
$aFileDL = StringRegExp($sHTML, 'href="(/file[^"]+)" title="D', 3)
If IsArray($aFileDL) Then
;download File + Umwandel inhalt Speichern in $sFileRead
For $i = 0 To UBound($aFileDL) - 1
$sHeader = ""
$aHTML = _WinHttpSimpleSSLRequest($aHosts[1][1], "GET", $aFileDL[$i], "https://www.evergabe.telekom.de/framework-agreement-call", Default, $sHeader, False, 2)
_Write_to_Console("File Download => " & $aFileDL[$i])
$hBild = FileOpen(@ScriptDir & "\test_" & $i & ".pdf", 18)
FileWrite($hBild, $aHTML)
FileClose($hBild)
$sTel = ""
Sleep(1500)
_Write_to_Console("PDF-File convert to TXT-File ")
_XPDF_ToText(@ScriptDir & "\test_" & $i & ".pdf", @ScriptDir & "\test_" & $i & ".txt")
Local $sFileRead = FileRead(@ScriptDir & "\test_" & $i & ".txt")
FileDelete(@ScriptDir & "\test_" & $i & ".pdf")
FileDelete(@ScriptDir & "\test_" & $i & ".txt")
If StringInStr($sFileRead, "ext geändert") Then
ExitLoop
EndIf
Next
$aArray[0] = _EV_Kopfdaten_GET_AbrufNr($sFileRead)
$aArray[1] = _EV_Kopfdaten_GET_SMnr($sFileRead)
$aArray[2] = _EV_Kopfdaten_GET_RV($sFileRead)
$aArray[3] = $sDetailsID
$aArray[4] = _EV_Kopfdaten_GET_SDatum($sFileRead)
$aArray[5] = _EV_Kopfdaten_GET_EDatum($sFileRead)
$aArray[6] = _EV_Kopfdaten_GET_GesamtS($sFileRead)
$aArray[7] = _EV_Kopfdaten_GET_Bvt($sFileRead)
$aArray[8] = _EV_Kopfdaten_GET_Bvt_tel($sFileRead)
$aArray[9] = _EV_Kopfdaten_GET_Email($sFileRead)
Return $aArray
Else
_Write_to_Console("Pattern Filedownload prüfen=> | " & 'href="(/file[^"]+)" title="F')
EndIf
Else
_Write_to_Console("Lern ist nicht angenommen")
EndIf
EndFunc
Func _EV_Kopfdaten_Array2Gui($aArray)
;~ Row 0|4209902345
;~ Row 1|NA
;~ Row 2|4650001474
;~ Row 3|17177645
;~ Row 4|04.06.2020
;~ Row 5|06.04.2021
;~ Row 6|536,46
;~ Row 7|Sinan Frank Haase
;~ Row 8|
;~ Row 9|NA
If $aArray[1] = "" or $aArray[1] = "NA" Then
;~ GUICtrlSetData($txt_sm_EVH)
Else
GUICtrlSetData($txt_sm_EVH, $aArray[1])
EndIf
GUICtrlSetData($txt_beleg_EVH, $aArray[0])
GUICtrlSetData($txt_beleg_eingang_EVH, $aArray[4])
GUICtrlSetData($txt_ausfuehrungsfrist_EVH, $aArray[5])
GUICtrlSetData($txt_rv_EVH, $aArray[2])
GUICtrlSetData($txt_plan_preis_EVH, $aArray[6])
GUICtrlSetData($txt_abruf_details_ev_EVH, "https://www.evergabe.telekom.de/framework-agreement-call/details?id=" & $aArray[3] & "&c=1")
GUICtrlSetData($txt_Leistungserfassung_EVH, "https://www.evergabe.telekom.de/sheet/index?c=1&importId=" & $aArray[3])
GUICtrlSetData($txt_lv_geab_EVH, "https://www.evergabe.telekom.de/gaeb-viewer/index?c=1&id=" & $aArray[3])
EndFunc
Func _XPDF_ToText($sPDFFile, $sTXTFile, $iFirstPage = 1, $iLastPage = 0, $bLayout = True)
Local $sXPDFToText = @ScriptDir & "\daten\pdftotext.exe"
Local $sOptions
If Not FileExists($sPDFFile) Then Return SetError(1, 0, 0)
If Not FileExists($sXPDFToText) Then Return SetError(2, 0, 0)
If $iFirstPage <> 1 Then $sOptions &= " -f " & $iFirstPage
If $iLastPage <> 0 Then $sOptions &= " -l " & $iLastPage
If $bLayout = True Then $sOptions &= " -layout" ;das war standart
;~ If $bLayout = True Then $sOptions &= " simple" ;ganz gut viele leerzeichen
;~ If $bLayout = True Then $sOptions &= " raw" ;fast perfekt
If $bLayout = False Then $sOptions &= " table" ;fast perfekt
Local $iReturn = ShellExecuteWait($sXPDFToText, $sOptions & ' "' & $sPDFFile & '" "' & $sTXTFile & '"', @ScriptDir, "", @SW_HIDE)
If $iReturn = 0 Then Return 1
Return 0
EndFunc ;==>_XPDF_ToText
File diff suppressed because it is too large Load Diff
+833
View File
@@ -0,0 +1,833 @@
;~ #include <Array.au3>
;~ #include <Debug.au3>
; COM-Fehler anzeigen
Global $oMyError = ObjEvent("AutoIt.Error", "_ComErrFunc")
Global $g_iReqCounter = 0 ; Zähler für 01.header.txt, 01.response.txt, ...
Global $sUserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:146.0) Gecko/20100101 Firefox/146.0"
Global $sEVHOST = "https://evergabe.telekom.de"
Global $sPfadIni = @ScriptDir & "\daten\conf.ini"
;~ $sUsername = "fkramer_kpt" ;IniRead($sPfadIni, "EVergabe", "Benutzer", "xxx")
;~ $sPasswort = "Kpfk99LixCkpt!" ;IniRead($sPfadIni, "EVergabe", "Passwort", "xxx")
;~ $sRetrunLogin = _EV_Lobin_obj($sUsername, $sPasswort)
;~ If $sRetrunLogin = "True" Then
;~ ConsoleWrite("Login Erfolgreich" & @CRLF)
;~ _Write_to_Console("Login Erfolgreich")
;~ $sSMnr = "211293040"
;~
;~ $aSMDeatails = _EV_Search_SM_obj($oHttp, $sSMnr)
;~ _DebugArrayDisplay($aSMDeatails)
;~ _Write_to_Console($sHTML)
;~ Else
;~ _Write_to_Console("Login Fehler!!!")
;~
;~ EndIf
;test SM 208878700
Func _EV_Lobin_obj($sUsername, $sPasswort)
Global $oHttp = _HttpCreate()
Local $sHtml = _HttpGet($oHttp, $sEVHOST & "/public/login")
Local $sCsrfField = ""
Local $sCsrfValue = _ExtractCsrf($sHtml, $sCsrfField)
; 3. Cookies zu Debugzwecken
Local $sSetCookie = $oHttp.GetResponseHeader("Set-Cookie")
ConsoleWrite("+ Set-Cookie: " & $sSetCookie & @CRLF)
Local $sBody = _
"LoginForm[username]=" & _UrlEncode_obj($sUsername) & _
"&LoginForm[password]=" & _UrlEncode_obj($sPasswort) & _
"&" & $sCsrfField & "=" & _UrlEncode_obj($sCsrfValue)
_Write_to_Console($sBody)
;~ MsgBox(64, "", "")
$oHttp = _HttpPost($oHttp, $sEVHOST & "/public/login", $sBody)
Local $iStatus = $oHttp.Status
Local $sResp = $oHttp.ResponseText
If $iStatus <> 302 And StringInStr($sResp, "Logout") = 0 Then
ConsoleWrite("! Login fehlgeschlagen, HTTP " & $iStatus & @CRLF)
Return "False"
Else
Return "True"
EndIf
EndFunc ;==>_EV_Lobin_obj
Func _EV_Search_SM_obj($oHttp, $sSMnr)
If Not IsObj($oHttp) Then
MsgBox(16, "Fehler", "_EV_Search_SM: HTTP-Objekt ist ungültig.")
Return ""
EndIf
; hier wird DEINE _HttpGet()-Funktion genutzt
Local $sHtml = _HttpGet($oHttp, $sEVHOST & "/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)
; optional: kurze Ausgabe, ob Nummer in der Seite vorkommt
If StringInStr($sHtml, $sSMnr) > 0 Then
_Write_to_Console("+ _EV_Search_SM: Treffer für " & $sSMnr & " gefunden." & @CRLF)
$aTitle = _EV_Abrufliste_GET_Title_obj($sHtml)
$aBedarfnr = _EV_Abrufliste_GET_Bedarfnr_obj($sHtml) ;SMnr
$aBelegEinDatum = _EV_Abrufliste_GET_Belegeingang_obj($sHtml) ;Eingang E-Vergabe
$aBelegnr = _EV_Abrufliste_GET_Belegnr_obj($sHtml) ;42Nr
$aAusfuehrungsfrist = _EV_Abrufliste_GET_Ausfuehrungsfrist_obj($sHtml) ;Ausführungsfrist
$aDetailID = _EV_Abrufliste_GET_DetailsID_obj($sHtml) ;DetailsID intern für E-Vergabe
$aRV = _EV_Abrufliste_GET_RV_obj($sHtml) ;Rahmenvertrag
$aStatus = _EV_Abrufliste_GET_Status_obj($sHtml) ;Status Angenommen Abgelehnt usw.
Dim $aReturn[UBound($aTitle)][8]
;~ _DebugArrayDisplay($aReturn)
For $i = 0 To UBound($aTitle) - 1
$aReturn[$i][0] = $aTitle[$i]
$aReturn[$i][1] = $aBedarfnr[$i]
$aReturn[$i][2] = $aBelegnr[$i]
$aReturn[$i][3] = $aDetailID[$i]
$aReturn[$i][4] = $aRV[$i]
$aReturn[$i][5] = $aBelegEinDatum[$i]
$aReturn[$i][6] = $aAusfuehrungsfrist[$i]
$aReturn[$i][7] = $aStatus[$i]
Next
;~ _DebugArrayDisplay($aReturn)
Return $aReturn
Else
_Write_to_Console("! _EV_Search_SM: Kein Treffer für " & $sSMnr & " gefunden." & @CRLF)
EndIf
EndFunc ;==>_EV_Search_SM_obj
Func _EV_Hole_Kopfdaten_obj()
$sUsername = IniRead(@ScriptDir & "\daten\conf.ini", "EVergabe", "Benutzer", "xxx")
$sPasswort = IniRead(@ScriptDir & "\daten\conf.ini", "EVergabe", "Passwort", "xxx")
$sRetrunLogin = _EV_Lobin_obj($sUsername, $sPasswort)
If $sRetrunLogin = "True" Then
;~ ConsoleWrite("Login Erfolgreich" & @CRLF)
_Write_to_Console("Login Erfolgreich")
$sSMnr = GUICtrlRead($kopf_tab_txt_smnr)
If $sSMnr = "" Then
_Write_to_Console("keine SMnr im Feld Kopfdaten")
Else
$aSMDeatails = _EV_Search_SM_obj($oHttp, $sSMnr)
;~ _DebugArrayDisplay($aSMDeatails)
;~ Row|Col 0|Col 1|Col 2|Col 3|Col 4|Col 5|Col 6|Col 7
;~ Row 0|Bahnhofstr. 16-18 78224 Singen SM 209173009|209173009|4213308114|19487501|4650014601|30.01.2025|17.05.2025|Angenommen
If UBound($aSMDeatails) > 1 Then
;~ ConsoleWrite(UBound($aArrayList) & @CRLF)
$sDetailsID = _create_Gui_Ausw($aSMDeatails)
;~ MsgBox(64, "123124", $sDetailsID)
$aAspadetails = _EV_Aspa_obj($sDetailsID)
;~ _DebugArrayDisplay($aAspadetails)
GUICtrlSetData($kopf_TAB_txt_aspa, $aAspadetails[0])
GUICtrlSetData($kopf_TAB_txt_telnr, $aAspadetails[2])
GUICtrlSetData($kopf_TAB_txt_detailsID, $sDetailsID)
_Write_to_Console("hole Kopfdaten erledigt.")
Else
$aAspadetails = _EV_Aspa_obj($aSMDeatails[0][3])
;~ _DebugArrayDisplay($aAspadetails)
GUICtrlSetData($kopf_TAB_txt_aspa, $aAspadetails[0])
GUICtrlSetData($kopf_TAB_txt_abrufnr, $aSMDeatails[0][2])
GUICtrlSetData($kopf_TAB_datum_start, $aSMDeatails[0][5])
GUICtrlSetData($kopf_TAB_txt_datum_ende, $aSMDeatails[0][6])
GUICtrlSetData($kopf_TAB_txt_detailsID, $aSMDeatails[0][3])
GUICtrlSetData($kopf_TAB_txt_telnr, $aAspadetails[2])
_Write_to_Console("hole Kopfdaten erledigt.")
EndIf
EndIf
Else
_Write_to_Console("Login Fehler!!!")
EndIf
;~ _EV_Logout()
EndFunc ;==>_EV_Hole_Kopfdaten_obj
Func _EV_Pos_eintragen_obj($aInhalt)
$sDatum = GUICtrlRead($kopf_tab_txt_datum)
$sBaustelle = GUICtrlRead($kopf_tab_txt_baustelle)
$sBauabschnitt = GUICtrlRead($kopf_tab_txt_bauabschnitt)
$sAbrufNR = GUICtrlRead($kopf_tab_txt_abrufnr)
$sSMnr = GUICtrlRead($kopf_tab_txt_smnr)
$sVertrag = GUICtrlRead($kopf_tab_chb_vertrag)
$sStartDatum = GUICtrlRead($kopf_tab_datum_start)
$sEndDatum = GUICtrlRead($kopf_tab_txt_datum_ende)
IniWrite(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "Datum", $sDatum)
IniWrite(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "Baustelle", $sBaustelle)
IniWrite(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "Bauabschnitt", $sBauabschnitt)
IniWrite(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "AbrufNr", $sAbrufNR)
IniWrite(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "SMNr", $sSMnr)
IniWrite(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "Vertrag", $sVertrag)
IniWrite(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "StartZ", $sStartDatum)
IniWrite(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "EndZ", $sEndDatum)
$sUsername = IniRead(@ScriptDir & "\daten\conf.ini", "EVergabe", "Benutzer", "xxx")
$sPasswort = IniRead(@ScriptDir & "\daten\conf.ini", "EVergabe", "Passwort", "xxx")
$sRetrunLogin = _EV_Lobin_obj($sUsername, $sPasswort)
If $sRetrunLogin = "True" Then
;~ ConsoleWrite("Login Erfolgreich" & @CRLF)
_Write_to_Console("Login Erfolgreich")
Global $sDetailsID
$sSMnr = IniRead(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "SMNr", "")
If IsArray($aInhalt) Then
_Write_to_Console("Suche SM-Nr: | " & $sSMnr)
$aArrayList = _EV_Search_SM_obj($oHttp, $sSMnr)
;~ _DebugArrayDisplay($aArrayList)
If UBound($aArrayList) > 1 Then
$sDetailsID = _create_Gui_Ausw($aArrayList)
Else
$sDetailsID = $aArrayList[0][3]
EndIf
_Write_to_Console("DetailsID: " & $sDetailsID)
_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/")
Local $sHtml = _HttpGet($oHttp, $sEVHOST & "/framework-agreement-call/details?id=" & $sDetailsID & "&c=1", "https://www.evergabe.telekom.de/framework-agreement-call")
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 = _HttpGet($oHttp, $sEVHOST & "/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
$sHtml = _HttpGet($oHttp, $sEVHOST & "/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)
;~ Local $sCSRF = "False"
Local $sCsrfField = ""
Local $sCsrfValue = _ExtractCsrf($sHtml, $sCsrfField)
$sLeist_zeitv = IniRead(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "StartZ", "")
$sLeist_zeitb = IniRead(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "EndZ", "")
; mit UrlEncode
$sLeistungsort1 = IniRead(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "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")
If StringLen($sSachbearbeiter) >= 12 Then
$sSachbearbeiter_temp = $sSachbearbeiter
$sSachbearbeiter = StringMid($sSachbearbeiter_temp, 1, 12)
;~ $sSachbearbeiter = $sSachbearbeiter_temp
EndIf
$sBauabschnitt = IniRead(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "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
$s_SMnrINi = IniRead(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "SMNr", $sSMnr)
$sLangtext = IniRead(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "Baustelle", "") & " " & IniRead(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "Bauabschnitt", "") & " " & "SM " & $s_SMnrINi & @CRLF & GUICtrlRead($tab_plan_ed_SListe)
;~ $sLangtext = IniRead(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "Baustelle", "") & " " & IniRead(@ScriptDir & "\daten\conf.ini", "Kopfdaten", "Bauabschnitt", "") & " " & "SM " & $sSMnr; alt
$sLangtext = _URIEncode($sLangtext)
Sleep(1000)
;~ MsgBox(64, "Langtext", $sLangtext)
$sHeader = "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;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 & "Origin: https://www.evergabe.telekom.de" & @CRLF & "Upgrade-Insecure-Requests: 1" & @CRLF & "Sec-Fetch-Dest: document" & @CRLF & "Sec-Fetch-Mode: navigate" & @CRLF & "Sec-Fetch-Site: same-origin" & @CRLF & "Sec-Fetch-User: ?1" & @CRLF
If GUICtrlRead($kopf_TAB_rd_teilauf) = $GUI_CHECKED Then
$sPost = "_csrf=" & $sCsrfValue & "%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 & "&BapiEssr%5Bdescription%5D=" & $sLangtext & "&save+sheets="
EndIf
If GUICtrlRead($kopf_TAB_rd_schluss) = $GUI_CHECKED Then
$sPost = "_csrf=" & $sCsrfValue & "%3D%3D&BapiEssr%5Bfinal%5D=&BapiEssr%5Bfinal%5D=X&BapiEssr%5Blzvon%5D=" & $sLeist_zeitv & "&BapiEssr%5Blzbis%5D=" & $sLeist_zeitb & "&BapiEssr%5Bdlort%5D=" & $sLeistungsort & "&BapiEssr%5Bsbnaman%5D=" & $sSachbearbeiter & "&BapiEssr%5Btxz01%5D=" & $sBauabschnitt & "&BapiEssr%5Bdescription%5D=" & $sLangtext & "&save+sheets="
Else
$sPost = "_csrf=" & $sCsrfValue & "%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 & "&BapiEssr%5Bdescription%5D=" & $sLangtext & "&save+sheets="
EndIf
;weiter bei EVergabe.au3 in Zeile 386
;~ $aHTML = _WinHttpSimpleSSLRequest($aHosts[1][1], "POST", "/sheet/create-sheet?c=1&iid=" & $sDetailsID, "https://www.evergabe.telekom.de/sheet/create-sheet?c=1&iid=" & $sDetailsID, $sPost, $sHeader, True)
$sHtml = _HttpPost($oHttp, $sEVHOST & "/sheet/create-sheet?c=1&iid=" & $sDetailsID, $sPost, "https://www.evergabe.telekom.de/sheet/create-sheet?c=1&iid=" & $sDetailsID)
$sRespBody = $oHttp.ResponseText
;~ ClipPut($sHtml)
;~ MsgBox(64, "stop", "stop")
$aSheetID = StringRegExp($sRespBody, 'sheetId=(.*)">Kopfdaten', 3)
;~ _DebugArrayDisplay($aSheetID)
If IsArray($aSheetID) Then
Global $iSheetID = $aSheetID[0]
For $i = 0 To UBound($aInhalt) - 1
$sHtml = _HttpGet($oHttp, $sEVHOST & "/sheet-position/index?c=1&sheetId=" & $aSheetID[0], "https://www.evergabe.telekom.de/" & "/sheet/index?c=1&importId=" & $sDetailsID) ;evtl nicht direkt eingabe
$sPositionNr = $aInhalt[$i][1]
Local $sCsrfField = ""
Local $sCsrfValue = _ExtractCsrf($sHtml, $sCsrfField)
$sPost = "_csrf=" & $sCsrfValue & "%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)
$sHtml = _HttpPost($oHttp, $sEVHOST & "/sheet-position/index?c=1&sheetId=" & $aSheetID[0], $sPost, "https://www.evergabe.telekom.de/sheet-position/index?c=1&sheetId=" & $aSheetID[0])
$sHtml = $oHttp.ResponseText
;~ ClipPut($sHtml)
;~ MsgBox(64, "stop", "stop")
$aPosID = StringRegExp($sHtml, 'positionId=([^&]+)', 3)
If IsArray($aPosID) Then
$iSheetID = $aSheetID[0]
;~ $sHTML = _send_WinhttpS_GET($aHosts[1][1], "/sheet-position/create?insertPosition=0&positionId=" & $aPosID[0] & "&c=1&sheetId=" & $iSheetID, "")
$sHtml = _HttpGet($oHttp, $sEVHOST & "/sheet-position/create?insertPosition=0&positionId=" & $aPosID[0] & "&c=1&sheetId=" & $iSheetID, "https://www.evergabe.telekom.de/" & "/sheet/index?c=1&importId=" & $sDetailsID) ;evtl nicht direkt eingabe
Local $sCsrfField = ""
Local $sCsrfValue = _ExtractCsrf($sHtml, $sCsrfField)
Local $sCSRF = $sCsrfValue
Select
Case $aInhalt[$i][7] = "ST"
;bei Stück
_EV_ADD_ST_insert_obj($i, $aInhalt[$i][0], $aInhalt[$i][9], $aInhalt[$i][10], $aPosID[0], $iSheetID, $sCSRF, $aInhalt[$i][1] & "|" & $aInhalt[$i][8])
;~ _EV_ADD_ST_insert($aInhalt[$i][0], $aInhalt[$i][9], $aInhalt[$i][10], $aPosID[0], $iSheetID, $sCSRF)
;~ GUICtrlSetData($lbl_status,"Position: "&$aInhalt[$i][1] & " "& $aInhalt[$i][0] " hinzugefügt!")
Case $aInhalt[$i][7] = "M"
; bei Meter
_EV_ADD_M_insert_obj($i, $aInhalt[$i][0], $aInhalt[$i][9], $aInhalt[$i][2], $aInhalt[$i][3], $aPosID[0], $iSheetID, $sCSRF, $aInhalt[$i][1] & "|" & $aInhalt[$i][8]) ; alt
;~ _EV_ADD_M_insert($aInhalt[$i][0], $aInhalt[$i][9], $aInhalt[$i][2], $aInhalt[$i][3], $aPosID[0], $iSheetID, $sCSRF, $aInhalt[$i][1] & "|" & $aInhalt[$i][8])
;~ GUICtrlSetData($lbl_status,"Position: "&$aInhalt[$i][1] & " "& $aInhalt[$i][0] " hinzugefügt!")
Case $aInhalt[$i][7] = "M2"
; bei m2
_EV_ADD_M2_insert_obj($i, $aInhalt[$i][0], $aInhalt[$i][9], $aInhalt[$i][2], $aInhalt[$i][3], $aInhalt[$i][4], $aPosID[0], $iSheetID, $sCSRF, $aInhalt[$i][1] & "|" & $aInhalt[$i][8])
;~ GUICtrlSetData($lbl_status,"Position: "&$aInhalt[$i][1] & " "& $aInhalt[$i][0] " hinzugefügt!")
Case $aInhalt[$i][7] = "M3"
;m3
_EV_ADD_M3_insert_obj($i, $aInhalt[$i][0], $aInhalt[$i][9], $aInhalt[$i][2], $aInhalt[$i][3], $aInhalt[$i][4], $aInhalt[$i][5], $aPosID[0], $iSheetID, $sCSRF, $aInhalt[$i][1] & "|" & $aInhalt[$i][8])
;~ GUICtrlSetData($lbl_status,"Position: "&$aInhalt[$i][1] & " "& $aInhalt[$i][0] " hinzugefügt!")
Case $aInhalt[$i][7] = "STD"
; STD
_EV_ADD_STD_insert_obj($i, $aInhalt[$i][0], $aInhalt[$i][9], $aInhalt[$i][10], $aPosID[0], $iSheetID, $sCSRF, $aInhalt[$i][1] & "|" & $aInhalt[$i][8])
;~ GUICtrlSetData($lbl_status,"Position: "&$aInhalt[$i][1] & " "& $aInhalt[$i][0] " hinzugefügt!")
Case $aInhalt[$i][7] = "LE"
; LE
_EV_ADD_LE_insert_obj($i, $aInhalt[$i][0], $aInhalt[$i][9], $aInhalt[$i][10], $aPosID[0], $iSheetID, $sCSRF, $aInhalt[$i][1] & "|" & $aInhalt[$i][8])
;~ GUICtrlSetData($lbl_status,"Position: "&$aInhalt[$i][1] & " "& $aInhalt[$i][0] " hinzugefügt!")
EndSelect
EndIf
Next
Else
_Write_to_Console("sheetID link=> " & $sHtml & " Pattern: " & "sheetId=(.*)")
EndIf
EndIf
Else
_Write_to_Console("kein Aufmaß gefunden!")
EndIf
Else
_Write_to_Console("Login Fehler!!!")
EndIf
EndFunc ;==>_EV_Pos_eintragen_obj
Func _EV_ADD_LE_insert_obj($iZeile, $sAbschnitt, $sLangtext, $iLE, $iPosNrID, $iSheetID, $sCSRF, $sPosNrKurztext)
If StringLen($sAbschnitt) >= 25 Then
$sAbschnitt = StringMid($sAbschnitt, 1, 25)
EndIf
$sAbschnitt = _UrlEncode_obj($sAbschnitt)
$sLongText = _UrlEncode_obj($sLangtext) ; max 40
$iLE = StringReplace($iLE, ",", "%2C")
$sPost = "_csrf=" & $sCSRF & "%3D%3D&ServicePosition%5B0%5D%5BsectionText%5D=" & $sAbschnitt & "&ServicePosition%5B0%5D%5Bquantity%5D=" & $iLE & "&ServicePosition%5B0%5D%5BlongText%5D=" & $sLongText & "&ServicePosition%5B0%5D%5Bid%5D=" & $iPosNrID & "&clientId=1&sheetId=" & $iSheetID & "&insertPosition=" & $iZeile & "&save="
;~ &ServicePosition%5B0%5D%5BsectionText%5D=VAO &ServicePosition%5B0%5D%5Bquantity%5D=100 &ServicePosition%5B0%5D%5BlongText%5D=VAO &ServicePosition%5B0%5D%5Bid%5D=43945349 &clientId=1&sheetId=0006425482&insertPosition=0&save=
;~ $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
;~ $aHTML = _WinHttpSimpleSSLRequest($aHosts[1][1], "POST", "/sheet-position/create?insertPosition=" & $iZeile & "&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID, "https://www.evergabe.telekom.de//sheet-position/create?insertPosition=0&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID, $sPost, $sHeader, True)
$sHtml = _HttpPost($oHttp, $sEVHOST & "/sheet-position/create?insertPosition=" & $iZeile & "&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID, $sPost, "https://www.evergabe.telekom.de//sheet-position/create?insertPosition=0&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID)
$sHtml = $oHttp.ResponseText
;~ ClipPut($sHtml)
;~ MsgBox(64, "stop", "stop")
If StringInStr($sHtml, "erfolgreich gespeichert") Then
_Write_to_Console($sPosNrKurztext & "|" & "... eingetragen!")
Else
_Write_to_Console($sPosNrKurztext & "|" & "... Fehlgeschlagen")
EndIf
EndFunc ;==>_EV_ADD_LE_insert_obj
Func _EV_ADD_STD_insert_obj($iZeile, $sAbschnitt, $sLangtext, $iStueck, $iPosNrID, $iSheetID, $sCSRF, $sPosNrKurztext)
If StringLen($sAbschnitt) >= 25 Then
$sAbschnitt = StringMid($sAbschnitt, 1, 25)
EndIf
$sAbschnitt = _UrlEncode_obj($sAbschnitt)
$sLongText = _UrlEncode_obj($sLangtext) ; max 40
$iStueck = StringReplace($iStueck, ",", "%2C")
;~ $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&ServicePosition%5B0%5D%5BsectionText%5D=" & $sAbschnitt & "&ServicePosition%5B0%5D%5Bquantity%5D=" & $iStueck & "&ServicePosition%5B0%5D%5BlongText%5D=" & $sLongText & "&ServicePosition%5B0%5D%5Bid%5D=" & $iPosNrID & "&clientId=1&sheetId=" & $iSheetID & "&insertPosition=" & $iZeile & "&save="
;~ $aHTML = _WinHttpSimpleSSLRequest($aHosts[1][1], "POST", "/sheet-position/create?insertPosition=" & $iZeile & "&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID, "https://www.evergabe.telekom.de/sheet-position/create?insertPosition=0&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID, $sPost, $sHeader, True)
$sHtml = _HttpPost($oHttp, $sEVHOST & "/sheet-position/create?insertPosition=" & $iZeile & "&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID, $sPost, "https://www.evergabe.telekom.de//sheet-position/create?insertPosition=0&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID)
$sHtml = $oHttp.ResponseText
;~ ClipPut($sHtml)
;~ MsgBox(64, "stop", "stop")
If StringInStr($sHtml, "erfolgreich gespeichert") Then
_Write_to_Console($sPosNrKurztext & "|" & "... eingetragen!")
Else
_Write_to_Console($sPosNrKurztext & "|" & "... Fehlgeschlagen")
EndIf
EndFunc ;==>_EV_ADD_STD_insert_obj
Func _EV_ADD_M3_insert_obj($iZeile, $sAbschnitt, $sLangtext, $sFaktor, $iLang, $iBreit, $iTief, $iPosNrID, $iSheetID, $sCSRF, $sPosNrKurztext)
If StringLen($sAbschnitt) >= 25 Then
$sAbschnitt = StringMid($sAbschnitt, 1, 25)
EndIf
$sAbschnitt = _UrlEncode_obj($sAbschnitt)
$sFaktor = StringReplace($sFaktor, ",", "%2C")
$sLongText = _UrlEncode_obj($sLangtext) ; max 40
$iLang = StringReplace($iLang, ",", "%2C")
$iBreit = StringReplace($iBreit, ",", "%2C")
$iTief = StringReplace($iTief, ",", "%2C")
$sPost = "_csrf=" & $sCSRF & "%3D%3D&ServicePosition%5B0%5D%5BsectionText%5D=" & $sAbschnitt & "&ServicePosition%5B0%5D%5BformulaSymbol%5D=MV&ServicePosition%5B0%5D%5BformulaValueMultiplier%5D=" & $sFaktor & "&ServicePosition%5B0%5D%5BformulaValueLength%5D=" & $iLang & "&ServicePosition%5B0%5D%5BformulaValueWidth%5D=" & $iBreit & "&ServicePosition%5B0%5D%5BformulaValueDepth%5D=" & $iTief & "&ServicePosition%5B0%5D%5BlongText%5D=" & $sLongText & "&ServicePosition%5B0%5D%5Bid%5D=" & $iPosNrID & "&clientId=1&sheetId=" & $iSheetID & "&insertPosition=" & $iZeile & "&save="
;~ $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
;~ $aHTML = _WinHttpSimpleSSLRequest($aHosts[1][1], "POST", "/sheet-position/create?insertPosition=" & $iZeile & "&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID, "https://www.evergabe.telekom.de/sheet-position/create?insertPosition=0&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID, $sPost, $sHeader, True)
;~ _DebugArrayDisplay($aHTML)
$sHtml = _HttpPost($oHttp, $sEVHOST & "/sheet-position/create?insertPosition=" & $iZeile & "&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID, $sPost, "https://www.evergabe.telekom.de//sheet-position/create?insertPosition=0&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID)
$sHtml = $oHttp.ResponseText
If StringInStr($sHtml, "erfolgreich gespeichert") Then
_Write_to_Console($sPosNrKurztext & "|" & "... eingetragen!")
Else
_Write_to_Console($sPosNrKurztext & "|" & "... Fehlgeschlagen")
EndIf
EndFunc ;==>_EV_ADD_M3_insert_obj
Func _EV_ADD_M2_insert_obj($iZeile, $sAbschnitt, $sLangtext, $sFaktor, $iLang, $iBreit, $iPosNrID, $iSheetID, $sCSRF, $sPosNrKurztext)
If StringLen($sAbschnitt) >= 25 Then
$sAbschnitt = StringMid($sAbschnitt, 1, 25)
EndIf
$sAbschnitt = _UrlEncode_obj($sAbschnitt)
;~ $sFaktor = StringReplace($sFaktor, ",", ".")
;~ If $sFaktor = "1.0" Then
;~ $sFaktor = "1"
;~ EndIf
;~ If $sFaktor = "1,0" Then
;~ $sFaktor = "1"
;~ EndIf
$sFaktor = StringReplace($sFaktor, ",", "%2C")
$sLongText = _UrlEncode_obj($sLangtext) ; max 40
$iLang = StringReplace($iLang, ",", "%2C")
$iBreit = StringReplace($iBreit, ",", "%2C")
;~ $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&ServicePosition%5B0%5D%5BsectionText%5D=" & $sAbschnitt & "&ServicePosition%5B0%5D%5BformulaSymbol%5D=MF&ServicePosition%5B0%5D%5BformulaValueMultiplier%5D=" & $sFaktor & "&ServicePosition%5B0%5D%5BformulaValueLength%5D=" & $iLang & "&ServicePosition%5B0%5D%5BformulaValueWidth%5D=" & $iBreit & "&ServicePosition%5B0%5D%5BlongText%5D=" & $sLongText & "&ServicePosition%5B0%5D%5Bid%5D=" & $iPosNrID & "&clientId=1&sheetId=" & $iSheetID & "&insertPosition=" & $iZeile & "&save="
;~ $aHTML = _WinHttpSimpleSSLRequest($aHosts[1][1], "POST", "/sheet-position/create?insertPosition=" & $iZeile & "&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID, "https://www.evergabe.telekom.de/sheet-position/create?insertPosition=0&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID, $sPost, $sHeader, True)
;~ _DebugArrayDisplay($aHTML)
$sHtml = _HttpPost($oHttp, $sEVHOST & "/sheet-position/create?insertPosition=" & $iZeile & "&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID, $sPost, "https://www.evergabe.telekom.de//sheet-position/create?insertPosition=0&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID)
$sHtml = $oHttp.ResponseText
;~ ClipPut($sHtml)
;~ MsgBox(64, "stop", "stop")
If StringInStr($sHtml, "erfolgreich gespeichert") Then
_Write_to_Console($sPosNrKurztext & "|" & "... eingetragen!")
Else
_Write_to_Console($sPosNrKurztext & "|" & "... Fehlgeschlagen")
EndIf
EndFunc ;==>_EV_ADD_M2_insert_obj
Func _EV_ADD_ST_insert_obj($iZeile, $sAbschnitt, $sLangtext, $iStueck, $iPosNrID, $iSheetID, $sCSRF, $sPosNrKurztext)
If StringLen($sAbschnitt) >= 25 Then
$sAbschnitt = StringMid($sAbschnitt, 1, 25)
EndIf
$sAbschnitt = _UrlEncode_obj($sAbschnitt)
$sLongText = _UrlEncode_obj($sLangtext) ; max 40
$iStueck = StringReplace($iStueck, ",", "%2C")
;~ $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&ServicePosition%5B0%5D%5BsectionText%5D=" & $sAbschnitt & "&ServicePosition%5B0%5D%5Bquantity%5D=" & $iStueck & "&ServicePosition%5B0%5D%5BlongText%5D=" & $sLongText & "&ServicePosition%5B0%5D%5Bid%5D=" & $iPosNrID & "&clientId=1&sheetId=" & $iSheetID & "&insertPosition=" & $iZeile & "&save="
;~ $aHTML = _WinHttpSimpleSSLRequest($aHosts[1][1], "POST", "/sheet-position/create?insertPosition=" & $iZeile & "&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID, "https://www.evergabe.telekom.de/sheet-position/create?insertPosition=0&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID, $sPost, $sHeader, True)
;~ _DebugArrayDisplay($aHTML)
$sHtml = _HttpPost($oHttp, $sEVHOST & "/sheet-position/create?insertPosition=" & $iZeile & "&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID, $sPost, "https://www.evergabe.telekom.de//sheet-position/create?insertPosition=0&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID)
$sHtml = $oHttp.ResponseText
;~ ClipPut($sHtml)
;~ MsgBox(64, "stop", "stop")
If StringInStr($sHtml, "erfolgreich gespeichert") Then
_Write_to_Console($sPosNrKurztext & "|" & "... eingetragen!")
Else
_Write_to_Console($sPosNrKurztext & "|" & "... Fehlgeschlagen")
EndIf
EndFunc ;==>_EV_ADD_ST_insert_obj
Func _EV_ADD_M_insert_obj($iZeile, $sAbschnitt, $sLangtext, $sFaktor, $sMeter, $iPosNrID, $iSheetID, $sCSRF, $sPosNrKurztext)
If StringLen($sAbschnitt) >= 25 Then
$sAbschnitt = StringMid($sAbschnitt, 1, 25)
EndIf
$sAbschnitt = _UrlEncode_obj($sAbschnitt)
$sFaktor = StringReplace($sFaktor, ",", "%2C")
$sMeter = StringReplace($sMeter, ",", "%2C")
$sLongText = _UrlEncode_obj($sLangtext) ; max 40
;~ $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 & "Origin: https://www.evergabe.telekom.de" & @CRLF
$sPost = "_csrf=" & $sCSRF & "%3D%3D&ServicePosition%5B0%5D%5BsectionText%5D=" & $sAbschnitt & "&ServicePosition%5B0%5D%5BformulaSymbol%5D=ME&ServicePosition%5B0%5D%5BformulaValueMultiplier%5D=" & $sFaktor & "&ServicePosition%5B0%5D%5BformulaValueLength%5D=" & $sMeter & "&ServicePosition%5B0%5D%5BlongText%5D=" & $sLongText & "&ServicePosition%5B0%5D%5Bid%5D=" & $iPosNrID & "&clientId=1&sheetId=" & $iSheetID & "&insertPosition=" & $iZeile & "&save="
;~ ;&ServicePosition[0][sectionText]=Abschnitt&ServicePosition[0][formulaSymbol]=ME&ServicePosition[0][formulaValueMultiplier]=1&ServicePosition[0][formulaValueLength]=95&ServicePosition[0][longText]=Langtext&ServicePosition[0][id]=82627311&clientId=1&sheetId=0008943838&insertPosition=&save=
;~ ConsoleWrite($sPost & @crlf)
;~ MsgBox(64, "", "")
;~ $aHTML = _WinHttpSimpleSSLRequest($aHosts[1][1], "POST", "/sheet-position/create?insertPosition=" & $iZeile & "&positionId=" & $iPosNrID & "&c=1&per-page=20&sheetId=" & $iSheetID, "https://www.evergabe.telekom.de/sheet-position/create?insertPosition=0&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID, $sPost, $sHeader, True)
;~ _DebugArrayDisplay($aHTML)
$sHtml = _HttpPost($oHttp, $sEVHOST & "/sheet-position/create?insertPosition=" & $iZeile & "&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID, $sPost, "https://www.evergabe.telekom.de//sheet-position/create?insertPosition=0&positionId=" & $iPosNrID & "&c=1&sheetId=" & $iSheetID)
$sHtml = $oHttp.ResponseText
;~ ClipPut($sHtml)
;~ MsgBox(64, "stop", "stop")
If StringInStr($sHtml, "erfolgreich gespeichert") Then
_Write_to_Console($sPosNrKurztext & "|" & "... eingetragen!")
Else
_Write_to_Console($sPosNrKurztext & "|" & "... Fehlgeschlagen")
EndIf
EndFunc ;==>_EV_ADD_M_insert_obj
Func _EV_Aspa_obj($sDetailsID)
$sUrl = "https://evergabe.telekom.de/framework-agreement-call/details?id=" & $sDetailsID & "&c=1"
$sRefer = "https://evergabe.telekom.de/framework-agreement-call/"
$sHtml = _HttpGet($oHttp, $sUrl, $sRefer = "")
Dim $aAspa[3]
;~ ClipPut($sHtml)
;~ MsgBox(64, "Read Aspa", "")
$aAspaName = StringRegExp($sHtml, "Name</th><td>([^<]+)</td>", 3)
$aAspaMail = StringRegExp($sHtml, 'mailto:([^"]+)', 3)
$aAspaTel = StringRegExp($sHtml, 'th>Telefon</th><td>([^<]+)', 3)
If IsArray($aAspaTel) Then
$aAspa[2] = $aAspaTel[0]
Else
$aAspa[2] = ""
EndIf
If IsArray($aAspaName) Then
$aAspa[0] = $aAspaName[0]
Else
$aAspa[0] = ""
EndIf
If IsArray($aAspaMail) Then
$aAspa[1] = $aAspaMail[1]
Else
$aAspa[1] = ""
EndIf
;~ _DebugArrayDisplay($aAspa)
Return $aAspa
EndFunc ;==>_EV_Aspa_obj
Func _EV_Abrufliste_GET_Title_obj($sQuellcode)
;Rückgabe Array sonst $error string
;~ local $aTitle = StringRegExp($sQuellcode, 'no-wrap" title="([^"]+)', 3)
Local $aTitle = StringRegExp($sQuellcode, '(?m)no-wrap" title="([^"]+)', 3)
;~ _DebugArrayDisplay($aTitle)
If IsArray($aTitle) Then
For $i = 0 To UBound($aTitle) - 1
$aTitle[$i] = StringReplace($aTitle[$i], "SM Auftragsnummer: 000", " SM ")
$aTitle[$i] = StringReplace($aTitle[$i], @CR, " ") ;CR out
$aTitle[$i] = StringReplace($aTitle[$i], @LF, " ") ;LF out
Next
Return $aTitle
Else
Return "Error"
EndIf
EndFunc ;==>_EV_Abrufliste_GET_Title_obj
Func _EV_Abrufliste_GET_Bedarfnr_obj($sQuellcode)
;SMNr
;Rückgabe Array sonst $error string
Local $aBedarfnr = StringRegExp($sQuellcode, 'Bedarfsnr.: 0([^<]+)<', 3)
;~ ConsoleWrite($sQuellcode & @CRLF)
;~ _DebugArrayDisplay($aBedarfnr)
;~ MsgBox(64, "", "")
If IsArray($aBedarfnr) Then
Return $aBedarfnr
Else
Return "Error"
EndIf
EndFunc ;==>_EV_Abrufliste_GET_Bedarfnr_obj
Func _EV_Abrufliste_GET_Belegeingang_obj($sQuellcode)
;42Nr
;Rückgabe Array sonst $error string
;~ Local $aBelegeingang = StringRegExp($sQuellcode, 'Bedarfsnr.: [^<]+</td><td>[^<]+</td><td>([^<]+)', 3)
Local $aBelegeingang = StringRegExp($sQuellcode, '(\d\d\.\d\d\.\d\d\d\d)', 3)
If IsArray($aBelegeingang) Then
Return $aBelegeingang
Else
Return "Error"
EndIf
EndFunc ;==>_EV_Abrufliste_GET_Belegeingang_obj
Func _EV_Abrufliste_GET_Belegnr_obj($sQuellcode)
;42Nr
;Rückgabe Array sonst $error string
Local $aBelegnr = StringRegExp($sQuellcode, '(42[^\/]+)\/0001', 3)
If IsArray($aBelegnr) Then
Return $aBelegnr
Else
Return "Error"
EndIf
EndFunc ;==>_EV_Abrufliste_GET_Belegnr_obj
Func _EV_Abrufliste_GET_Ausfuehrungsfrist_obj($sQuellcode)
;Ausführungsfrist
;Rückgabe Array sonst $error string
Local $aAusfuehrungsfrist = StringRegExp($sQuellcode, '(\d\d\.\d\d\.\d\d\d\d)</td><td><a href', 3)
If IsArray($aAusfuehrungsfrist) Then
Return $aAusfuehrungsfrist
Else
Return "Error"
EndIf
EndFunc ;==>_EV_Abrufliste_GET_Ausfuehrungsfrist_obj
Func _EV_Abrufliste_GET_DetailsID_obj($sQuellcode)
;DetailsID intern für E-Vergabe
;Rückgabe Array sonst $error string
Local $aDetailsID = StringRegExp($sQuellcode, 'call/details.id=([^&]+)&c=1', 3)
If IsArray($aDetailsID) Then
Return $aDetailsID
Else
Return "Error"
EndIf
EndFunc ;==>_EV_Abrufliste_GET_DetailsID_obj
Func _EV_Abrufliste_GET_RV_obj($sQuellcode)
;Rahmenvertrag
;Rückgabe Array sonst $error string
Local $aRV = StringRegExp($sQuellcode, '/framework-agreement/details.id=[^"]+">([^/]+)', 3)
If IsArray($aRV) Then
Return $aRV
Else
Return "Error"
EndIf
EndFunc ;==>_EV_Abrufliste_GET_RV_obj
Func _EV_Abrufliste_GET_Status_obj($sQuellcode)
;Stauts
;Rückgabe Array sonst $error string
Local $aStatus = StringRegExp($sQuellcode, '/framework-agreement/details.id=[^"]+">[^"]+"[^>]+>([^<]+)', 3)
If IsArray($aStatus) Then
Return $aStatus
Else
Return "Error"
EndIf
EndFunc ;==>_EV_Abrufliste_GET_Status_obj
Func _ComErrFunc()
Local $sMsg = "COM-Fehler!" & @CRLF & _
"Beschreibung: " & @error & @CRLF & _
"Zusatzzahl: " & @extended & @CRLF
ConsoleWrite("! " & $sMsg & @CRLF)
MsgBox(16, "COM-Fehler", $sMsg)
EndFunc ;==>_ComErrFunc
Func _HttpCreate()
Global $oHttp = ObjCreate("WinHttp.WinHttpRequest.5.1")
If Not IsObj($oHttp) Then
MsgBox(16, "Fehler", "WinHttp-Objekt konnte nicht erzeugt werden.")
Exit
EndIf
; Cookie Handling aktivieren
$oHttp.Option(6) = True ; WinHttpRequestOption_EnableCookie
Return $oHttp
EndFunc ;==>_HttpCreate
Func _HttpGet($oHttp, $sUrl, $sRefer = "")
If Not IsObj($oHttp) Then
MsgBox(16, "Fehler", "HTTP-Objekt ist ungültig vor GET.")
Exit
EndIf
Local $sMethod = "GET"
Local $sReqHeaders = ""
Local $sReqBody = ""
;~ ConsoleWrite("+ GET " & $sUrl & @CRLF)
$oHttp.Open($sMethod, $sUrl, False)
$oHttp.SetRequestHeader("User-Agent", $sUserAgent)
$oHttp.SetRequestHeader("Content-Type", "application/x-www-form-urlencoded")
If $sRefer = "" Then
;kein Refer angeben
Else
;refer übergeben
$oHttp.SetRequestHeader("Referer", $sRefer)
EndIf
; Für Logging: Request-Header rekonstruieren (was wir selbst gesetzt haben)
$sReqHeaders &= "User-Agent: " & $sUserAgent & @CRLF
$sReqHeaders &= "Content-Type: application/x-www-form-urlencoded" & @CRLF
If $sRefer = "" Then
;kein Refer angeben
$sReqHeaders &= "User-Agent: " & $sUserAgent & @CRLF
Else
;refer übergeben
$sReqHeaders &= "User-Agent: " & $sUserAgent & @CRLF
$sReqHeaders &= "Referer: " & $sRefer & @CRLF
EndIf
$oHttp.Send()
Local $iStatus = $oHttp.Status
; Response-Header holen
Local $sAllRespHeaders = $oHttp.GetAllResponseHeaders()
Local $sRespBody = $oHttp.ResponseText
$sRespBody = StringReplace($sRespBody, "amp;", "")
_Write_to_Console("öffne link: " & $sUrl)
If $iDebug = "True" Then
_LogRequestResponse($sMethod, $sUrl, $sReqHeaders, $sReqBody, $iStatus, $sAllRespHeaders, $sRespBody)
EndIf
Return $sRespBody
EndFunc ;==>_HttpGet
Func _HttpPost($oHttp, $sUrl, $sBody, $sRefer = "")
If Not IsObj($oHttp) Then
MsgBox(16, "Fehler", "HTTP-Objekt ist ungültig vor POST.")
Exit
EndIf
Local $sMethod = "POST"
Local $sReqHeaders = ""
Local $sReqBody = $sBody
;~ ConsoleWrite("+ POST " & $sUrl & @CRLF)
$oHttp.Open($sMethod, $sUrl, False)
$oHttp.SetRequestHeader("User-Agent", $sUserAgent)
$oHttp.SetRequestHeader("Content-Type", "application/x-www-form-urlencoded")
If $sRefer = "" Then
;kein Refer angeben
Else
;refer übergeben
$oHttp.SetRequestHeader("Referer", $sRefer)
EndIf
; Request-Header fürs Logging
;~ $sReqHeaders &= "User-Agent: " & $sUserAgent & @CRLF
;~ $sReqHeaders &= "Content-Type: application/x-www-form-urlencoded" & @CRLF
;~ $sReqHeaders &= "Referer: " & $sRefer & @CRLF
$oHttp.Send($sBody)
Local $iStatus = $oHttp.Status
Local $sAllRespHeaders = $oHttp.GetAllResponseHeaders()
Local $sRespBody = $oHttp.ResponseText
$sRespBody = StringReplace($sRespBody, "amp;", "")
$oHttp.ResponseText = StringReplace($oHttp.ResponseText, "amp;", "")
_Write_to_Console("öffne link: " & $sUrl)
If $iDebug = "True" Then
_LogRequestResponse($sMethod, $sUrl, $sReqHeaders, $sReqBody, $iStatus, $sAllRespHeaders, $sRespBody)
EndIf
Return $oHttp
EndFunc ;==>_HttpPost
; =================== Hilfsfunktionen ============================
Func _ExtractCsrf($sHtml, ByRef $sFieldName)
; Meta-Tag
Local $aMeta = StringRegExp($sHtml, '(?i)<meta[^>]+name="csrf-token"[^>]+content="([^"]+)"', 3)
If Not @error And UBound($aMeta) >= 1 Then
$sFieldName = "_csrf"
ConsoleWrite("+ CSRF (meta): " & $aMeta[0] & @CRLF)
Return $aMeta[0]
EndIf
; Hidden input
Local $a = StringRegExp($sHtml, '(?i)name="([^"]*csrf[^"]*)"[^>]*value="([^"]+)"', 3)
If @error Or UBound($a) < 2 Then
ConsoleWrite("! CSRF-Token nicht gefunden" & @CRLF)
FileWrite("debug_login_page.html", $sHtml)
Exit
EndIf
$sFieldName = $a[0]
ConsoleWrite("+ CSRF Feld: " & $a[0] & " = " & $a[1] & @CRLF)
Return $a[1]
EndFunc ;==>_ExtractCsrf
Func _UrlEncode_obj($s)
Local $i, $ch, $sOut = ""
For $i = 1 To StringLen($s)
$ch = StringMid($s, $i, 1)
Local $asc = Asc($ch)
If ($asc >= 48 And $asc <= 57) Or _
($asc >= 65 And $asc <= 90) Or _
($asc >= 97 And $asc <= 122) Or _
$ch = "-" Or $ch = "_" Or $ch = "." Or $ch = "~" Then
$sOut &= $ch
Else
$sOut &= "%" & Hex($asc, 2)
EndIf
Next
Return $sOut
EndFunc ;==>_UrlEncode_obj
Func _Pad2($i)
If $i < 10 Then
Return "0" & $i
EndIf
Return $i
EndFunc ;==>_Pad2
; Speichert Request- und Response-Daten als NN.header.txt / NN.response.txt
Func _LogRequestResponse($sMethod, $sUrl, $sReqHeaders, $sReqBody, _
$iStatus, $sRespHeaders, $sRespBody)
$g_iReqCounter += 1
Local $sIdx = _Pad2($g_iReqCounter)
; ----- Header-Datei -----
Local $sHeaderFile = $sIdx & ".header.txt"
Local $sHeaderContent = ""
$sHeaderContent &= "=== REQUEST " & $sIdx & " ===" & @CRLF
$sHeaderContent &= "Method: " & $sMethod & @CRLF
$sHeaderContent &= "URL: " & $sUrl & @CRLF & @CRLF
$sHeaderContent &= "[Request Headers]" & @CRLF & $sReqHeaders & @CRLF & @CRLF
$sHeaderContent &= "[Request Body]" & @CRLF & $sReqBody & @CRLF
FileWrite($sHeaderFile, $sHeaderContent)
; ----- Response-Datei -----
Local $sRespFile = $sIdx & ".response.txt"
Local $sRespContent = ""
$sRespContent &= "=== RESPONSE " & $sIdx & " ===" & @CRLF
$sRespContent &= "Status: " & $iStatus & @CRLF & @CRLF
$sRespContent &= "[Response Headers]" & @CRLF & $sRespHeaders & @CRLF & @CRLF
$sRespContent &= "[Response Body]" & @CRLF & $sRespBody & @CRLF
FileWrite($sRespFile, $sRespContent)
; ----- Konsolen-Ausgabe -----
ConsoleWrite("+ ==== REQUEST " & $sIdx & " " & $sMethod & " " & $sUrl & " ====" & @CRLF)
ConsoleWrite($sReqHeaders & @CRLF)
If $sReqBody <> "" Then
ConsoleWrite("Body:" & @CRLF & $sReqBody & @CRLF)
EndIf
ConsoleWrite("+ ==== RESPONSE " & $sIdx & " (HTTP " & $iStatus & ") ====" & @CRLF)
ConsoleWrite($sRespHeaders & @CRLF)
ConsoleWrite("Body :" & @CRLF & $sRespBody & @CRLF)
_Write_to_Console("+ ==== REQUEST " & $sIdx & " " & $sMethod & " " & $sUrl & " ====")
_Write_to_Console($sReqHeaders)
If $sReqBody <> "" Then
_Write_to_Console("Body:" & @CRLF & $sReqBody)
EndIf
_Write_to_Console("+ ==== RESPONSE " & $sIdx & " (HTTP " & $iStatus & ") ====")
_Write_to_Console($sRespHeaders)
_Write_to_Console("Body :" & @CRLF & $sRespBody)
EndFunc ;==>_LogRequestResponse
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+131
View File
@@ -0,0 +1,131 @@
;Lizens.au3
;~ #include-once <Crypt.au3>
Global $sAPPName = "AufmaßCreater"
Global $sPassAPP = "FKC0D!nG2021"
func _Lizens_GET_UserID()
$sUser = IniRead(@ScriptDir & "\daten\conf.ini", "Firma", "User", "NA")
$id = @ComputerName &"_" & @UserName&"_" & @CPUArch & @OSArch & @OSVersion
;~ ConsoleWrite($id & @CRLF)
$IDMD5 = _md5($sAPPName & $id & $sPassAPP)
;~ ConsoleWrite($IDMD5 & @CRLF)
IniWrite(@ScriptDir & "\daten\conf.ini", "Firma", "User", $IDMD5)
Return $IDMD5
EndFunc
Func _creatLizenDatei()
$sSerial = _license_userid()
_register_serial($sSerial)
_encryptLicensFile()
FileDelete(@ScriptDir & "\" & _licenseFile(True))
EndFunc
func _license_userid()
$id = @ComputerName &"_" & @UserName&"_" & @CPUArch & @OSArch & @OSVersion
;~ ConsoleWrite($id & @CRLF)
$IDMD5 = _md5($id)
;~ ConsoleWrite($IDMD5 & @CRLF)
Return $IDMD5
EndFunc
Func _md5($str) ; md5 encryption
Return StringTrimLeft(_Crypt_HashData($str, $CALG_MD5), 2)
EndFunc
Func _register_serial($sSerial)
IniWrite(@ScriptDir & "\" & _licenseFile(True), "license", "serial", $sSerial)
EndFunc
Func _licenseFile($returnAppData = True) ; returns license file location
$file = _md5($sAPPName & _license_userid() & $sPassAPP) & ".dat"
;~ $file = @ScriptDir & "\" & $file
If $returnAppData Then
EndIf
Return $file
EndFunc
func _encryptLicensFile()
_Crypt_EncryptFile(@ScriptDir & "\" & _licenseFile(True), @ScriptDir & "\daten\" & _licenseFile(True), $sPassAPP, $CALG_RC4)
EndFunc
func _decryptLicensFile()
_Crypt_DecryptFile(@ScriptDir & "\daten\" & _licenseFile(True), @ScriptDir & "\" & _licenseFile(True), $sPassAPP, $CALG_RC4)
$sLizensLocal = IniRead(@ScriptDir & "\" & _licenseFile(True), "license", "serial", "")
FileDelete(@ScriptDir & "\" & _licenseFile(True))
Return $sLizensLocal
EndFunc
func _UserHash2Ini()
$sUser = _licenseFile(True)
$aUser = StringRegExp($sUser, '(.*).dat', 3)
if IsArray($aUser) Then
IniWrite(@ScriptDir & "\daten\conf.ini", "Firma","User",$aUser[0])
Return $aUser[0]
Else
IniWrite(@ScriptDir & "\daten\conf.ini", "Firma","User","N/A")
EndIf
EndFunc
func _getSerialFromServer()
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] = "creater.fk-coding.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
$sLink = IniRead(@ScriptDir & "\daten\conf.ini", "Firma", "Data", "xxx")
$sUser = IniRead(@ScriptDir & "\daten\conf.ini", "Firma", "User", "xxx")
$sHTML = _send_Winhttp_GET_low($aHosts[1][1], "/FA/" &$sLink &"/" &$sUser &".dat" , "https://local-Tool/")
;~ ConsoleWrite($sHTML& @CRLF)
;~ MsgBox(64, "", "")
$aServerLizens = StringRegExp($sHTML, 'serial=(.*)', 3)
if IsArray($aServerLizens) Then
$sServerLizens = $aServerLizens[0]
Return $sServerLizens
else
return "noSerieal"
EndIf
EndFunc
Func _send_Winhttp_GET_low($sHost, $sLink, $sReferer)
Local $sHeader = "Content-Type: application/x-www-form-urlencoded"
$aHTML = _WinHttpSimpleRequest($sHost, "GET", $sLink, $sReferer, Default, $sHeader, True, 1)
;~ _Write_to_Console("laden| " & $aHosts[1][0] & $sLink)
If IsArray($aHTML) Then
$aHTML[1] = StringReplace($aHTML[1], "amp;", "")
$aHTML[1] = BinaryToString($aHTML[1], 4)
Return $aHTML[1]
Else
$aHTML = _WinHttpSimpleRequest($sHost, "GET", $sLink, $sReferer)
$aHTML = StringReplace($aHTML, "amp;", "")
$aHTML = BinaryToString($aHTML, 4)
Return $aHTML
EndIf
EndFunc ;==>_send_Winhttp_GET
Func _send_Winhttp_GET_DatUm($sHost, $sLink, $sReferer)
Local $sHeader = "Content-Type: application/x-www-form-urlencoded"
$aHTML = _WinHttpSimpleRequest($sHost, "GET", $sLink, $sReferer, Default, $sHeader, True, 1)
;~ _Write_to_Console("laden| " & $aHosts[1][0] & $sLink)
If IsArray($aHTML) Then
$aHTML[1] = StringReplace($aHTML[1], "amp;", "")
;~ $aHTML[1] = BinaryToString($aHTML[1], 4)
Return $aHTML[1]
Else
$aHTML = _WinHttpSimpleRequest($sHost, "GET", $sLink, $sReferer)
$aHTML = StringReplace($aHTML, "amp;", "")
;~ $aHTML = BinaryToString($aHTML, 4)
Return $aHTML
EndIf
EndFunc ;==>_send_Winhttp_GET
@@ -0,0 +1,89 @@
;ahelper_absperrung.au3
Func _add_Absperrung()
Global $aLVListe[1][13]
Dim $aProzent[6]
$sIni_Kategorie = "Absperrung"
$sIniReadString = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Absperr", "NA")
$sText_Bemerkung = GUICtrlRead($tab_ab_txt_bemerkung)
$aProzent[1] = GUICtrlRead($tab_ab_txt_abschnitt) ; Abschnitt
$aProzent[2] = $sText_Bemerkung ;Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Absperr", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$iMproTag = GUICtrlRead($tab_ab_txt_anzTGe)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iMproTag)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
_ArrayDelete($aLVListe, 0)
$iCount = -1
_GUIListViewEx_InsertSpec($iLV_Aufma_Index, $iCount, $aLVListe)
Global $aLVListe[1][13]
EndFunc
func _absperrungsPosAktu()
_ReadInputs2Array_Absperrung()
EndFunc
func _ReadInputs2Array_Absperrung()
Global $sIniDatei = GUICtrlRead($chb_vertrag)
If GUICtrlRead($chb_vertrag) = "" Then
MsgBox(64, "Bitte Vertrag auswählen", "Bitte Vertrag auswählen")
Else
$sIni_Kategorie = "Absperrung"
$sIniReadString = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Absperr", "NA")
;~ ConsoleWrite($sIniReadString& @CRLF)
$aSplitt = StringSplit($sIniReadString, "|")
GUICtrlSetData($tab_ab_ePreis, $aSplitt[12])
$stxt_meter = Int(GUICtrlRead($tab_ab_txt_Meter)); anzahl Meter der Absperrung
$stxt_m_rpo_st =GUICtrlRead($tab_ab_txt_m_rpo_st); Meter Pro Stück 10
$stxt_anz_tage =GUICtrlRead($tab_ab_txt_anz_tage); eingabe Dauer
$stxt_anz_tag =GUICtrlRead($tab_ab_txt_anz_tag); laut Position
$stxt_ab_ePreist =GUICtrlRead($tab_ab_ePreis); Preis
$stxt_abschnitt = GUICtrlRead($tab_ab_txt_abschnitt)
;~ $stxt_bemerkung =GUICtrlRead($tab_ab_txt_bemerkung)
$stxt_bemerkung = "(" &$stxt_meter& " Meter Absperrung / "&$stxt_m_rpo_st & "m pro Stück) x ("& $stxt_anz_tage& " Anzahl Tage - ab "& $stxt_anz_tag& " Tag )"
GUICtrlSetData($tab_ab_txt_bemerkung, $stxt_bemerkung)
$iMeter = _replaceKom2Punkt($stxt_meter) /_replaceKom2Punkt($stxt_m_rpo_st); Anzahl M Absperrung / Meter Pro Stück
$iDauerTage = _replaceKom2Punkt($stxt_anz_tage) - _replaceKom2Punkt($stxt_anz_tag) ;Tage der Absperrung Minus - 5
If StringInStr($iDauerTage, "-") Then
MsgBox(64, "Achtung", "Die Anzahl der Tage ist kleiner gleich (<=) " & $iDauerTage)
GUICtrlSetData($tab_ab_txt_anzTGe, "")
Else
$iMproTag = _replacePunkt2Koma($iMeter * $iDauerTage)
GUICtrlSetData($tab_ab_txt_anzTGe, $iMproTag)
$iGPreis = _replaceKom2Punkt($aSplitt[12]) * _replaceKom2Punkt($iMproTag)
GUICtrlSetData($tab_ab_txt_GP, _replacePunkt2Koma($iGPreis))
;~ $stxt_GPt =GUICtrlRead($tab_ab_txt_GP)
EndIf
EndIf
EndFunc
;~ Func _string_replace_Prozent($sString, $aArray)
;~
;~
;~ $sString = _replacePunkt2Koma(StringReplace($sString, "%Leange%", $aArray[3]))
;~ $sString = _replacePunkt2Koma(StringReplace($sString, "%Breite%", $aArray[4]))
;~ $sString = _replacePunkt2Koma(StringReplace($sString, "%Tiefe%", $aArray[5]))
;~ $sString = StringReplace($sString, "%Abschnitt%", $aArray[1])
;~ $sString = StringReplace($sString, "%Bemerkung%", $aArray[2])
;~
;~ Return $sString
;~ EndFunc ;==>_string_replace_Prozent
@@ -0,0 +1,182 @@
;ahelper_ftth.au3
func _add_ftth()
Dim $aProzent[6]
Global $sIni_Kategorie = "FTTH"
$sText_Bemerkung = ""
Global $aAngaben_FTTH[2][2] = [["Abschnitt", "Länge Privat"]]
_ReadInputs2Array_ftth()
$sVertragString = GUICtrlRead($chb_vertrag)
If StringInStr($sVertragString, "4650000697") Then ; 4650000697__SW32-FTTx_17/18
if GUICtrlRead($tab7_chb_oO) = $GUI_CHECKED Then
_check_FTTH_TB_HsEinfoo
_check_FTTH_TB_HsEinfZoo
_check_FTTH_TB_Rausl()
_check_FTTH_TB_Kausl()
Else
_check_FTTH_TB_HsEinfmo()
_check_FTTH_TB_HsEinfZmo()
_check_FTTH_TB_Rausl()
_check_FTTH_TB_Kausl()
EndIf
if GUICtrlRead($tab7_chb_ring_gg) = $GUI_CHECKED Then
_check_FTTH_TB_GGRing()
; 5m Ring auslegen 3 + (2 in der Func)
$aAngaben_FTTH[0][2] = 3
_check_FTTH_TB_Kausl()
EndIf
EndIf
If StringInStr($sVertragString, "4650001474") Then ; 4650001474__SW32-Regelgeschäft_Los_3b_Rvbg
EndIf
If StringInStr($sVertragString, "4650003044") Then ;4650003044__SW32-RVProjektgeschäft_Los_3b_Rvbg
EndIf
If StringInStr($sVertragString, "4650003822") Then ;4600413398__SW32-RVProjektgeschäft_Los_3b_Rvbg_alt
EndIf
EndFunc
func _ReadInputs2Array_ftth()
$aAngaben_FTTH[0][1] = GUICtrlRead($tab7_txt_abschnitt)
$aAngaben_FTTH[0][2] = _replaceKom2Punkt(GUICtrlRead)($tab7_txt_lang_privat))
EndFunc
Func _check_FTTH_TB_HsEinfmo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[0][1] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfmo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1,0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_FTTH_TB_HsEinfZmo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfZmo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", _replacePunkt2Koma($aAngaben_FTTH[0][2] -1))
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_FTTH_TB_HsEinfoo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[0][1] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfoo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1, 0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_FTTH_TB_HsEinfZoo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfZoo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", _replacePunkt2Koma($aAngaben_FTTH[0][2] -1))
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_FTTH_TB_Rausl()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Rausl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", _replacePunkt2Koma($aAngaben_FTTH[0][2] + 1))
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_FTTH_TB_Kausl()
$sText_Bemerkung = "2x7 SNR"
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Kausl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", _replacePunkt2Koma($aAngaben_FTTH[0][2] + 2))
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_FTTH_TB_GGRing()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[0][1] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GGRing", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1,0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,192 @@
;ahelper_ftth.au3
Func _add_ftth()
Dim $aProzent[6]
Global $sIni_Kategorie = "FTTH"
$sText_Bemerkung = ""
Global $aAngaben_FTTH[2][2] = [["Abschnitt", "Länge Privat"]]
Global $sIniDatei = GUICtrlRead($chb_vertrag)
If GUICtrlRead($chb_vertrag) = "" Then
MsgBox(64, "Bitte Vertrag auswählen", "Bitte Vertrag auswählen")
Else
_ini_umwandeln_pfad($sIniDateiPfad & $sIniDatei)
_ReadInputs2Array_ftth()
$sVertragString = GUICtrlRead($chb_vertrag)
If StringInStr($sVertragString, "4650000697") Then ; 4650000697__SW32-FTTx_17/18
If GUICtrlRead($tab7_chb_oO) = $GUI_CHECKED Then
_check_FTTH_TB_HsEinfoo
_check_FTTH_TB_HsEinfZoo
_check_FTTH_TB_Rausl()
_check_FTTH_TB_Kausl()
Else
_check_FTTH_TB_HsEinfmo()
_check_FTTH_TB_HsEinfZmo()
_check_FTTH_TB_Rausl()
_check_FTTH_TB_Kausl()
EndIf
If GUICtrlRead($tab7_chb_ring_gg) = $GUI_CHECKED Then
_check_FTTH_TB_GGRing()
; 5m Ring auslegen 3 + (2 in der Func)
$aAngaben_FTTH[0][2] = 3
_check_FTTH_TB_Kausl()
EndIf
EndIf
If StringInStr($sVertragString, "4650001474") Then ; 4650001474__SW32-Regelgeschäft_Los_3b_Rvbg
EndIf
If StringInStr($sVertragString, "4650003044") Then ;4650003044__SW32-RVProjektgeschäft_Los_3b_Rvbg
EndIf
If StringInStr($sVertragString, "4650003822") Then ;4600413398__SW32-RVProjektgeschäft_Los_3b_Rvbg_alt
EndIf
EndIf
EndFunc ;==>_add_ftth
Func _ReadInputs2Array_ftth()
$aAngaben_FTTH[0][0] = GUICtrlRead($tab7_txt_abschnitt)
$aAngaben_FTTH[0][1] = _replaceKom2Punkt(GUICtrlRead($tab7_txt_lang_privat))
EndFunc ;==>_ReadInputs2Array_ftth
Func _check_FTTH_TB_HsEinfmo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[0][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfmo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1,0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfmo
Func _check_FTTH_TB_HsEinfZmo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfZmo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", _replacePunkt2Koma($aAngaben_FTTH[0][2] - 1))
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfZmo
Func _check_FTTH_TB_HsEinfoo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[0][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfoo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1, 0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfoo
Func _check_FTTH_TB_HsEinfZoo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfZoo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", _replacePunkt2Koma($aAngaben_FTTH[0][1] - 1))
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfZoo
Func _check_FTTH_TB_Rausl()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Rausl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", _replacePunkt2Koma($aAngaben_FTTH[0][1] + 1))
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_Rausl
Func _check_FTTH_TB_Kausl()
$sText_Bemerkung = "2x7 SNR"
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Kausl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", _replacePunkt2Koma($aAngaben_FTTH[0][1] + 2))
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_Kausl
Func _check_FTTH_TB_GGRing()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[0][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GGRing", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1,0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_GGRing
@@ -0,0 +1,437 @@
;ahelper_ftth.au3
Func _add_ftth()
Dim $aProzent[6]
Global $sIni_Kategorie = "FTTH"
$sText_Bemerkung = ""
Global $aAngaben_FTTH[2][11] = [["Abschnitt", "Länge Privat", "NVT", "APNr", "AnzWE", "Str", "HsNr", "GF-Kabel", "GF-BlasLang", "InstalRohrlang", "Ausgabe"]]
Global $sIniDatei = GUICtrlRead($chb_vertrag)
If GUICtrlRead($chb_vertrag) = "" Then
MsgBox(64, "Bitte Vertrag auswählen", "Bitte Vertrag auswählen")
Else
_ini_umwandeln_pfad($sIniDateiPfad & $sIniDatei)
_ReadInputs2Array_ftth()
;~ _DebugArrayDisplay($aAngaben_FTTH)
$sVertragString = GUICtrlRead($chb_vertrag)
If StringInStr($sVertragString, "4650000697") Then ; 4650000697__SW32-FTTx_17/18
If GUICtrlRead($tab7_chb_oO) = $GUI_CHECKED Then
_check_FTTH_TB_HsEinfoo()
_check_FTTH_TB_HsEinfZoo()
_check_FTTH_TB_Rausl()
_check_FTTH_TB_Kausl()
EndIf
If GUICtrlRead($tab7_chb_oO) = $GUI_UNCHECKED Then
_check_FTTH_TB_HsEinfmo()
_check_FTTH_TB_HsEinfZmo()
_check_FTTH_TB_Rausl()
_check_FTTH_TB_Kausl()
EndIf
If GUICtrlRead($tab7_chb_ring_gg) = $GUI_CHECKED Then
_check_FTTH_TB_GGRing()
; 5m Ring auslegen 3 + (2 in der Func)
$aAngaben_FTTH[1][1] = 3
_check_FTTH_TB_Kausl()
EndIf
EndIf
If StringInStr($sVertragString, "4650001474") Then ; 4650001474__SW32-Regelgeschäft_Los_3b_Rvbg
EndIf
If StringInStr($sVertragString, "4650003044") Then ;4650003044__SW32-RVProjektgeschäft_Los_3b_Rvbg
EndIf
If StringInStr($sVertragString, "4650003822") Then ;4600413398__SW32-RVProjektgeschäft_Los_3b_Rvbg_alt
EndIf
_ArrayDelete($aLVListe, 0)
$iCount = -1
_GUIListViewEx_InsertSpec($iLV_Aufma_Index, $iCount, $aLVListe)
Global $aLVListe[1][13]
EndIf
EndFunc ;==>_add_ftth
Func _ReadInputs2Array_ftth()
$aAngaben_FTTH[1][0] = GUICtrlRead($tab7_txt_abschnitt)
$aAngaben_FTTH[1][1] = _replaceKom2Punkt(GUICtrlRead($tab7_txt_lang_privat))
$aAngaben_FTTH[1][2] = GUICtrlRead($tab7_txt_nvtname)
$aAngaben_FTTH[1][3] = GUICtrlRead($tab7_txt_apnr)
$aAngaben_FTTH[1][4] = GUICtrlRead($tab7_txt_anzWE)
$aAngaben_FTTH[1][5] = GUICtrlRead($tab7_txt_str)
$aAngaben_FTTH[1][6] = GUICtrlRead($tab7_txt_hsnr)
$aAngaben_FTTH[1][7] = GUICtrlRead($tab7_dl_gfkabel)
$aAngaben_FTTH[1][8] = _replaceKom2Punkt(GUICtrlRead($tab7_txt_einblang))
$aAngaben_FTTH[1][9] = _replaceKom2Punkt(GUICtrlRead($tab7_txt_instrohr))
$aAngaben_FTTH[1][10] = GUICtrlRead($tab7_txt_ausgabe)
EndFunc ;==>_ReadInputs2Array_ftth
Func _add_ftth_GFMontage()
Global $sAPNr = $aListeImport[$i][11]
$sKabelstark = $aListeImport[$i][10]
$sStr = $aListeImport[$i][12]
$sHsZu = $aListeImport[$i][13] & $aListeImport[$i][14]
Global $sAnzWE = $aListeImport[$i][15]
$sGFlang = $aListeImport[$i][24] ; Kabelzug länge
Global $sStringName = "NVT_" & $sNVTName & "_GF_" & $sStr & "_HS_" & $sHsZu & "_AP_" & $sAPNr
$sStringName = StringReplace($sStringName, " ", "_")
$sStringName = StringReplace($sStringName, ".", "")
EndFunc
Func _check_FTTH_TB_HsEinfmo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfmo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1,0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfmo
Func _check_FTTH_TB_HsEinfZmo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = _replacePunkt2Koma($aAngaben_FTTH[1][1] - 1) ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfZmo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", _replacePunkt2Koma($aAngaben_FTTH[1][1] - 1))
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfZmo
Func _check_FTTH_TB_HsEinfoo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfoo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1, 0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfoo
Func _check_FTTH_TB_HsEinfZoo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = _replacePunkt2Koma($aAngaben_FTTH[1][1] - 1) ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfZoo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", $aAngaben_FTTH[1][1] - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfZoo
Func _check_FTTH_TB_Rausl()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = _replacePunkt2Koma($aAngaben_FTTH[1][1] + 1) ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Rausl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", )
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_Rausl
Func _check_FTTH_TB_Kausl()
$sText_Bemerkung = "2x7 SNR"
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = _replacePunkt2Koma($aAngaben_FTTH[1][1] + 2) ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Kausl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", )
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_Kausl
Func _check_FTTH_TB_GGRing()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GGRing", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1,0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_GGRing
Func _check_GF_AP($iNVTVerb, $iNVTab, $iAPVerb, $iAPab)
$sIni_Kategorie = "FTTH-GF-NVT-APL"
Dim $aProzent[6]
$aProzent[1] = "Am NVT " & $sNVTName ;Abschnitt
If $iNVTVerb <= 0 Then
Else
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_NVT_Verb", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iNVTVerb)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If $iNVTab <= 0 Then
Else
$aProzent[1] = "" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_FAabl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iNVTab)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
$aProzent[1] = "Am APL " & $sAPNr ;Abschnitt
If $iAPVerb <= 0 Then
Else
$aProzent[2] = _check_WE_AP_Bemerkung()
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_AP_Verb", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAPVerb)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
$aProzent[2] = ""
;~ ; ab Hier GF-Verbinden apl mit Zulage 1. Verbinden zulage jede weitere
;~ If $iAPVerb >= 1 Then
;~ $aProzent[2] =_check_WE_AP_Bemerkung()
;~ $sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_AP_Verb", "NA")
;~ $sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ _ArrayAdd($aLVListe, $sINI_String, 0, "|")
;~ $aProzent[2] = ""
;~
;~ $aProzent[2] =_check_WE_AP_Bemerkung()
;~ $sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_AP_VerbZU", "NA")
;~ $sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
;~ $sINI_String = StringReplace($sINI_String, "%Menge%",$iAPVerb - 1)
;~ _ArrayAdd($aLVListe, $sINI_String, 0, "|")
;~ $aProzent[2] = ""
;~
;~ EndIf
;~ If $iAPVerb <= 1 Then
;~ $aProzent[2] =_check_WE_AP_Bemerkung()
;~ $sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_AP_Verb", "NA")
;~ $sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAPVerb)
;~ _ArrayAdd($aLVListe, $sINI_String, 0, "|")
;~ $aProzent[2] = ""
;~
;~ EndIf
EndIf
If $iAPab <= 0 Then
Else
$aProzent[1] = "" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_FAabl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAPab)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc ;==>_check_GF_AP
Func _check_WE_AP_Bemerkung()
If $sAnzWE >= 1 And $sAnzWE <= 3 Then
Return "GF-AP 1-3 WE" ; Bemerkung
EndIf
If $sAnzWE = 4 Then
Return "GF-AP 4 WE" ; Bemerkung
EndIf
If $sAnzWE >= 5 And $sAnzWE <= 8 Then
Return "GF-AP 5-8 WE"
EndIf
;9-12 WE
If $sAnzWE >= 9 And $sAnzWE <= 12 Then
Return "GF-AP 9-12 WE" ; Bemerkung
EndIf
;13-16 WE
If $sAnzWE >= 13 And $sAnzWE <= 16 Then
Return "GF-AP 13-16 WE" ; Bemerkung
EndIf
;17-20 WE
If $sAnzWE >= 17 And $sAnzWE <= 20 Then
Return "GF-AP 17-20 WE" ; Bemerkung
EndIf
;21-24 WE
If $sAnzWE >= 21 And $sAnzWE <= 24 Then
Return "GF-AP 21-24 WE" ; Bemerkung
EndIf
;25-28 WE
If $sAnzWE >= 25 And $sAnzWE <= 28 Then
Return "GF-AP 25-28 WE" ; Bemerkung
EndIf
;29-32 WE
If $sAnzWE >= 29 And $sAnzWE <= 32 Then
Return "GF-AP 29-32 WE" ; Bemerkung
EndIf
;33-36 WE
If $sAnzWE >= 33 And $sAnzWE <= 36 Then
Return "GF-AP 33-36 WE" ; Bemerkung
EndIf
;37-40 WE
If $sAnzWE >= 37 And $sAnzWE <= 40 Then
Return "GF-AP 37-40 WE" ; Bemerkung
EndIf
;41-64 WE
If $sAnzWE >= 41 And $sAnzWE <= 64 Then
Return "GF-AP 41-64 WE" ; Bemerkung
EndIf
;65-96 WE
If $sAnzWE >= 65 And $sAnzWE <= 96 Then
Return "GF-AP 65-96 WE" ; Bemerkung
EndIf
EndFunc ;==>_check_WE_AP_Bemerkung
Func _check_GF_AP_Koordination()
Dim $aProzent[6]
$sIni_Kategorie = "FTTH-GF-NVT-APL"
$aProzent[1] = "Koordination mit KD" ;Abschnitt
$aProzent[2] = "Koordination mit KD" ; Bemerkung
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Koordination", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_GF_AP_Koordination
Func _check_GF_AP_Messen($sAnzahlMessen)
Dim $aProzent[6]
$sIni_Kategorie = "FTTH-GF-NVT-APL"
If $sAnzahlMessen >= 1 Then
$aProzent[1] = "APL Messen" ;Abschnitt
$aProzent[2] = "1. Faser messen" ; Bemerkung
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GPON_1", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = "jede weitere Faser messen" ; Bemerkung
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GPON_02", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $sAnzahlMessen - 1)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If $sAnzahlMessen <= 1 Then
$aProzent[1] = "APL Messen" ;Abschnitt
$aProzent[2] = "Faser messen" ; Bemerkung
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GPON_1", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc ;==>_check_GF_AP_Messen
Func _check_GF_AP_einbl($iMeter)
Dim $aProzent[6]
$sIni_Kategorie = "FTTH-GF-NVT-APL"
If $iMeter <= 300 Then
$aProzent[1] = "GF-Einblasen < 300m" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GFbis300", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If $iMeter >= 300 Then
$aProzent[1] = "GF-Einblasen > 300m" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GFbis300", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
$aProzent[1] = "" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GFgr300", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iMeter - 300)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc ;==>_check_GF_AP_einbl
@@ -0,0 +1,593 @@
;ahelper_ftth.au3
Func _add_ftth()
Dim $aProzent[6]
Global $sIni_Kategorie = "FTTH"
$sText_Bemerkung = ""
Global $aAngaben_FTTH[2][11] = [["Abschnitt", "Länge Privat", "NVT", "APNr", "AnzWE", "Str", "HsNr", "GF-Kabel", "GF-BlasLang", "InstalRohrlang", "Ausgabe"]]
Global $sIniDatei = GUICtrlRead($chb_vertrag)
If GUICtrlRead($chb_vertrag) = "" Then
MsgBox(64, "Bitte Vertrag auswählen", "Bitte Vertrag auswählen")
Else
_ini_umwandeln_pfad($sIniDateiPfad & $sIniDatei)
_ReadInputs2Array_ftth()
;~ _DebugArrayDisplay($aAngaben_FTTH)
$sVertragString = GUICtrlRead($chb_vertrag)
If StringInStr($sVertragString, "4650000697") Then ; 4650000697__SW32-FTTx_17/18
If GUICtrlRead($tab7_chb_oO) = $GUI_CHECKED Then
_check_FTTH_TB_HsEinfoo()
_check_FTTH_TB_HsEinfZoo()
_check_FTTH_TB_Rausl()
_check_FTTH_TB_Kausl()
EndIf
If GUICtrlRead($tab7_chb_oO) = $GUI_UNCHECKED Then
_check_FTTH_TB_HsEinfmo()
_check_FTTH_TB_HsEinfZmo()
_check_FTTH_TB_Rausl()
_check_FTTH_TB_Kausl()
EndIf
If GUICtrlRead($tab7_chb_ring_gg) = $GUI_CHECKED Then
_check_FTTH_TB_GGRing()
; 5m Ring auslegen 3 + (2 in der Func)
$aAngaben_FTTH[1][1] = 3
_check_FTTH_TB_Kausl()
EndIf
EndIf
If StringInStr($sVertragString, "4650001474") Then ; 4650001474__SW32-Regelgeschäft_Los_3b_Rvbg
EndIf
If StringInStr($sVertragString, "4650003044") Then ;4650003044__SW32-RVProjektgeschäft_Los_3b_Rvbg
EndIf
If StringInStr($sVertragString, "4650003822") Then ;4600413398__SW32-RVProjektgeschäft_Los_3b_Rvbg_alt
EndIf
_ArrayDelete($aLVListe, 0)
$iCount = -1
_GUIListViewEx_InsertSpec($iLV_Aufma_Index, $iCount, $aLVListe)
Global $aLVListe[1][13]
EndIf
EndFunc ;==>_add_ftth
Func _ReadInputs2Array_ftth()
$aAngaben_FTTH[1][0] = GUICtrlRead($tab7_txt_abschnitt)
$aAngaben_FTTH[1][1] = _replaceKom2Punkt(GUICtrlRead($tab7_txt_lang_privat))
$aAngaben_FTTH[1][2] = GUICtrlRead($tab7_txt_nvtname)
$aAngaben_FTTH[1][3] = GUICtrlRead($tab7_txt_apnr)
$aAngaben_FTTH[1][4] = GUICtrlRead($tab7_txt_anzWE)
$aAngaben_FTTH[1][5] = GUICtrlRead($tab7_txt_str)
$aAngaben_FTTH[1][6] = GUICtrlRead($tab7_txt_hsnr)
$aAngaben_FTTH[1][7] = GUICtrlRead($tab7_dl_gfkabel)
$aAngaben_FTTH[1][8] = _replaceKom2Punkt(GUICtrlRead($tab7_txt_einblang))
$aAngaben_FTTH[1][9] = _replaceKom2Punkt(GUICtrlRead($tab7_txt_instrohr))
$aAngaben_FTTH[1][10] = GUICtrlRead($tab7_txt_ausgabe)
EndFunc ;==>_ReadInputs2Array_ftth
Func _add_ftth_GFMontage()
Global $sAPNr = $aAngaben_FTTH[1][3]
$sKabelstark =$aAngaben_FTTH[1][7]
$sStr = $aAngaben_FTTH[1][5]
$sHsZu = $aAngaben_FTTH[1][6]
Global $sAnzWE = $aAngaben_FTTH[1][4]
$sGFlang =$aAngaben_FTTH[1][8] ; Kabelzug länge
Global $sStringName = "NVT_" & $sNVTName & "_GF_" & $sStr & "_HS_" & $sHsZu & "_AP_" & $sAPNr
$sStringName = StringReplace($sStringName, " ", "_")
$sStringName = StringReplace($sStringName, ".", "")
GUICtrlSetData($tab7_txt_ausgabe, $sStringName)
;1-3 WE AP
If $sAnzWE > 1 And $sAnzWE <= 3 Then
;~ ConsoleWrite($sStringName & @CRLF)
If $sKabelstark = "4E" Then
_check_GF_AP(1, 3, 3, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
If $sKabelstark = "12E" Then
_check_GF_AP(1, 11, 3, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
_check_GF_AP_Messen("2")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;4WE AP
If $sAnzWE = 4 Then
;~ ConsoleWrite($sStringName & @CRLF)
If $sKabelstark = "4E" Then
_check_GF_AP(1, 3, 1, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
If $sKabelstark = "12E" Then
_check_GF_AP(1, 11, 1, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
_check_GF_AP_Messen("4")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;5-8 WE
If $sAnzWE > 5 And $sAnzWE <= 8 Then
;~ ConsoleWrite($sStringName & @CRLF)
If $sKabelstark = "4E" Then
_check_GF_AP(2, 2, 2, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
If $sKabelstark = "12E" Then
_check_GF_AP(2, 10, 2, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
_check_GF_AP_Messen("8")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;9-12 WE
If $sAnzWE > 9 And $sAnzWE <= 12 Then
;~ ConsoleWrite($sStringName & @CRLF)
If $sKabelstark = "4E" Then
_check_GF_AP(3, 1, 3, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
If $sKabelstark = "12E" Then
_check_GF_AP(3, 9, 3, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
_check_GF_AP_Messen("12")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;13-16 WE
If $sAnzWE > 13 And $sAnzWE <= 16 Then
;~ ConsoleWrite($sStringName & @CRLF)
If $sKabelstark = "4E" Then
_check_GF_AP(4, 0, 4, 0) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
If $sKabelstark = "12E" Then
_check_GF_AP(4, 8, 4, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
_check_GF_AP_Messen("16")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;17-20 WE
If $sAnzWE > 17 And $sAnzWE <= 20 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(5, 7, 5, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("20")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;21-24 WE
If $sAnzWE > 21 And $sAnzWE <= 24 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(6, 6, 6, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("24")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;25-28 WE
If $sAnzWE > 25 And $sAnzWE <= 28 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(7, 5, 7, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("28")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;29-32 WE
If $sAnzWE > 29 And $sAnzWE <= 32 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(8, 4, 8, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("32")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;33-36 WE
If $sAnzWE > 33 And $sAnzWE <= 36 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(9, 3, 9, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("36")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;37-40 WE
If $sAnzWE > 37 And $sAnzWE <= 40 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(10, 2, 10, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("40")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;41-64 WE
If $sAnzWE > 41 And $sAnzWE <= 64 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(2, 10, 2, 10) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("64")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;65-96 WE
If $sAnzWE > 65 And $sAnzWE <= 96 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(3, 9, 3, 9) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("96")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
EndFunc ;==>_add_ftth_GFMontage
Func _check_FTTH_TB_HsEinfmo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfmo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1,0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfmo
Func _check_FTTH_TB_HsEinfZmo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = _replacePunkt2Koma($aAngaben_FTTH[1][1] - 1) ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfZmo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", _replacePunkt2Koma($aAngaben_FTTH[1][1] - 1))
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfZmo
Func _check_FTTH_TB_HsEinfoo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfoo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1, 0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfoo
Func _check_FTTH_TB_HsEinfZoo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = _replacePunkt2Koma($aAngaben_FTTH[1][1] - 1) ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfZoo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", $aAngaben_FTTH[1][1] - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfZoo
Func _check_FTTH_TB_Rausl()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = _replacePunkt2Koma($aAngaben_FTTH[1][1] + 1) ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Rausl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", )
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_Rausl
Func _check_FTTH_TB_Kausl()
$sText_Bemerkung = "2x7 SNR"
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = _replacePunkt2Koma($aAngaben_FTTH[1][1] + 2) ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Kausl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", )
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_Kausl
Func _check_FTTH_TB_GGRing()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GGRing", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1,0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_GGRing
Func _check_GF_AP($iNVTVerb, $iNVTab, $iAPVerb, $iAPab)
$sIni_Kategorie = "FTTH-GF-NVT-APL"
Dim $aProzent[6]
$aProzent[1] = "Am NVT " & $sNVTName ;Abschnitt
If $iNVTVerb <= 0 Then
Else
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_NVT_Verb", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iNVTVerb)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If $iNVTab <= 0 Then
Else
$aProzent[1] = "" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_FAabl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iNVTab)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
$aProzent[1] = "Am APL " & $sAPNr ;Abschnitt
If $iAPVerb <= 0 Then
Else
$aProzent[2] = _check_WE_AP_Bemerkung()
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_AP_Verb", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAPVerb)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
$aProzent[2] = ""
;~ ; ab Hier GF-Verbinden apl mit Zulage 1. Verbinden zulage jede weitere
;~ If $iAPVerb >= 1 Then
;~ $aProzent[2] =_check_WE_AP_Bemerkung()
;~ $sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_AP_Verb", "NA")
;~ $sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ _ArrayAdd($aLVListe, $sINI_String, 0, "|")
;~ $aProzent[2] = ""
;~
;~ $aProzent[2] =_check_WE_AP_Bemerkung()
;~ $sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_AP_VerbZU", "NA")
;~ $sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
;~ $sINI_String = StringReplace($sINI_String, "%Menge%",$iAPVerb - 1)
;~ _ArrayAdd($aLVListe, $sINI_String, 0, "|")
;~ $aProzent[2] = ""
;~
;~ EndIf
;~ If $iAPVerb <= 1 Then
;~ $aProzent[2] =_check_WE_AP_Bemerkung()
;~ $sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_AP_Verb", "NA")
;~ $sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAPVerb)
;~ _ArrayAdd($aLVListe, $sINI_String, 0, "|")
;~ $aProzent[2] = ""
;~
;~ EndIf
EndIf
If $iAPab <= 0 Then
Else
$aProzent[1] = "" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_FAabl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAPab)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc ;==>_check_GF_AP
Func _check_WE_AP_Bemerkung()
If $sAnzWE >= 1 And $sAnzWE <= 3 Then
Return "GF-AP 1-3 WE" ; Bemerkung
EndIf
If $sAnzWE = 4 Then
Return "GF-AP 4 WE" ; Bemerkung
EndIf
If $sAnzWE >= 5 And $sAnzWE <= 8 Then
Return "GF-AP 5-8 WE"
EndIf
;9-12 WE
If $sAnzWE >= 9 And $sAnzWE <= 12 Then
Return "GF-AP 9-12 WE" ; Bemerkung
EndIf
;13-16 WE
If $sAnzWE >= 13 And $sAnzWE <= 16 Then
Return "GF-AP 13-16 WE" ; Bemerkung
EndIf
;17-20 WE
If $sAnzWE >= 17 And $sAnzWE <= 20 Then
Return "GF-AP 17-20 WE" ; Bemerkung
EndIf
;21-24 WE
If $sAnzWE >= 21 And $sAnzWE <= 24 Then
Return "GF-AP 21-24 WE" ; Bemerkung
EndIf
;25-28 WE
If $sAnzWE >= 25 And $sAnzWE <= 28 Then
Return "GF-AP 25-28 WE" ; Bemerkung
EndIf
;29-32 WE
If $sAnzWE >= 29 And $sAnzWE <= 32 Then
Return "GF-AP 29-32 WE" ; Bemerkung
EndIf
;33-36 WE
If $sAnzWE >= 33 And $sAnzWE <= 36 Then
Return "GF-AP 33-36 WE" ; Bemerkung
EndIf
;37-40 WE
If $sAnzWE >= 37 And $sAnzWE <= 40 Then
Return "GF-AP 37-40 WE" ; Bemerkung
EndIf
;41-64 WE
If $sAnzWE >= 41 And $sAnzWE <= 64 Then
Return "GF-AP 41-64 WE" ; Bemerkung
EndIf
;65-96 WE
If $sAnzWE >= 65 And $sAnzWE <= 96 Then
Return "GF-AP 65-96 WE" ; Bemerkung
EndIf
EndFunc ;==>_check_WE_AP_Bemerkung
Func _check_GF_AP_Koordination()
Dim $aProzent[6]
$sIni_Kategorie = "FTTH-GF-NVT-APL"
$aProzent[1] = "Koordination mit KD" ;Abschnitt
$aProzent[2] = "Koordination mit KD" ; Bemerkung
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Koordination", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_GF_AP_Koordination
Func _check_GF_AP_Messen($sAnzahlMessen)
Dim $aProzent[6]
$sIni_Kategorie = "FTTH-GF-NVT-APL"
If $sAnzahlMessen >= 1 Then
$aProzent[1] = "APL Messen" ;Abschnitt
$aProzent[2] = "1. Faser messen" ; Bemerkung
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GPON_1", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = "jede weitere Faser messen" ; Bemerkung
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GPON_02", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $sAnzahlMessen - 1)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If $sAnzahlMessen <= 1 Then
$aProzent[1] = "APL Messen" ;Abschnitt
$aProzent[2] = "Faser messen" ; Bemerkung
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GPON_1", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc ;==>_check_GF_AP_Messen
Func _check_GF_AP_einbl($iMeter)
Dim $aProzent[6]
$sIni_Kategorie = "FTTH-GF-NVT-APL"
If $iMeter <= 300 Then
$aProzent[1] = "GF-Einblasen < 300m" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GFbis300", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If $iMeter >= 300 Then
$aProzent[1] = "GF-Einblasen > 300m" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GFbis300", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
$aProzent[1] = "" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GFgr300", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iMeter - 300)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc ;==>_check_GF_AP_einbl
@@ -0,0 +1,595 @@
;ahelper_ftth.au3
Func _add_ftth()
Dim $aProzent[6]
Global $sIni_Kategorie = "FTTH"
$sText_Bemerkung = ""
Global $aAngaben_FTTH[2][11] = [["Abschnitt", "Länge Privat", "NVT", "APNr", "AnzWE", "Str", "HsNr", "GF-Kabel", "GF-BlasLang", "InstalRohrlang", "Ausgabe"]]
Global $sIniDatei = GUICtrlRead($chb_vertrag)
If GUICtrlRead($chb_vertrag) = "" Then
MsgBox(64, "Bitte Vertrag auswählen", "Bitte Vertrag auswählen")
Else
_ini_umwandeln_pfad($sIniDateiPfad & $sIniDatei)
_ReadInputs2Array_ftth()
;~ _DebugArrayDisplay($aAngaben_FTTH)
$sVertragString = GUICtrlRead($chb_vertrag)
If StringInStr($sVertragString, "4650000697") Then ; 4650000697__SW32-FTTx_17/18
If GUICtrlRead($tab7_chb_oO) = $GUI_CHECKED Then
_check_FTTH_TB_HsEinfoo()
_check_FTTH_TB_HsEinfZoo()
_check_FTTH_TB_Rausl()
_check_FTTH_TB_Kausl()
EndIf
If GUICtrlRead($tab7_chb_oO) = $GUI_UNCHECKED Then
_check_FTTH_TB_HsEinfmo()
_check_FTTH_TB_HsEinfZmo()
_check_FTTH_TB_Rausl()
_check_FTTH_TB_Kausl()
EndIf
If GUICtrlRead($tab7_chb_ring_gg) = $GUI_CHECKED Then
_check_FTTH_TB_GGRing()
; 5m Ring auslegen 3 + (2 in der Func)
$aAngaben_FTTH[1][1] = 3
_check_FTTH_TB_Kausl()
EndIf
EndIf
If StringInStr($sVertragString, "4650001474") Then ; 4650001474__SW32-Regelgeschäft_Los_3b_Rvbg
EndIf
If StringInStr($sVertragString, "4650003044") Then ;4650003044__SW32-RVProjektgeschäft_Los_3b_Rvbg
EndIf
If StringInStr($sVertragString, "4650003822") Then ;4600413398__SW32-RVProjektgeschäft_Los_3b_Rvbg_alt
EndIf
_ArrayDelete($aLVListe, 0)
$iCount = -1
_GUIListViewEx_InsertSpec($iLV_Aufma_Index, $iCount, $aLVListe)
Global $aLVListe[1][13]
EndIf
EndFunc ;==>_add_ftth
Func _ReadInputs2Array_ftth()
$aAngaben_FTTH[1][0] = GUICtrlRead($tab7_txt_abschnitt)
$aAngaben_FTTH[1][1] = _replaceKom2Punkt(GUICtrlRead($tab7_txt_lang_privat))
$aAngaben_FTTH[1][2] = GUICtrlRead($tab7_txt_nvtname)
$aAngaben_FTTH[1][3] = GUICtrlRead($tab7_txt_apnr)
$aAngaben_FTTH[1][4] = GUICtrlRead($tab7_txt_anzWE)
$aAngaben_FTTH[1][5] = GUICtrlRead($tab7_txt_str)
$aAngaben_FTTH[1][6] = GUICtrlRead($tab7_txt_hsnr)
$aAngaben_FTTH[1][7] = GUICtrlRead($tab7_dl_gfkabel)
$aAngaben_FTTH[1][8] = _replaceKom2Punkt(GUICtrlRead($tab7_txt_einblang))
$aAngaben_FTTH[1][9] = _replaceKom2Punkt(GUICtrlRead($tab7_txt_instrohr))
$aAngaben_FTTH[1][10] = GUICtrlRead($tab7_txt_ausgabe)
EndFunc ;==>_ReadInputs2Array_ftth
Func _add_ftth_GFMontage()
Global $sAPNr = $aAngaben_FTTH[1][3]
$sKabelstark = $aAngaben_FTTH[1][7]
$sStr = $aAngaben_FTTH[1][5]
$sHsZu = $aAngaben_FTTH[1][6]
Global $sAnzWE = $aAngaben_FTTH[1][4]
$sGFlang = $aAngaben_FTTH[1][8] ; Kabelzug länge
Global $sStringName = "NVT_" & $sNVTName & "_GF_" & $sStr & "_HS_" & $sHsZu & "_AP_" & $sAPNr
$sStringName = StringReplace($sStringName, " ", "_")
$sStringName = StringReplace($sStringName, ".", "")
GUICtrlSetData($tab7_txt_ausgabe, $sStringName)
;1-3 WE AP
If $sAnzWE > 1 And $sAnzWE <= 3 Then
;~ ConsoleWrite($sStringName & @CRLF)
If $sKabelstark = "4E" Then
_check_GF_AP(1, 3, 3, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
If $sKabelstark = "12E" Then
_check_GF_AP(1, 11, 3, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
_check_GF_AP_Messen("2")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;4WE AP
If $sAnzWE = 4 Then
;~ ConsoleWrite($sStringName & @CRLF)
If $sKabelstark = "4E" Then
_check_GF_AP(1, 3, 1, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
If $sKabelstark = "12E" Then
_check_GF_AP(1, 11, 1, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
_check_GF_AP_Messen("4")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;5-8 WE
If $sAnzWE > 5 And $sAnzWE <= 8 Then
;~ ConsoleWrite($sStringName & @CRLF)
If $sKabelstark = "4E" Then
_check_GF_AP(2, 2, 2, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
If $sKabelstark = "12E" Then
_check_GF_AP(2, 10, 2, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
_check_GF_AP_Messen("8")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;9-12 WE
If $sAnzWE > 9 And $sAnzWE <= 12 Then
;~ ConsoleWrite($sStringName & @CRLF)
If $sKabelstark = "4E" Then
_check_GF_AP(3, 1, 3, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
If $sKabelstark = "12E" Then
_check_GF_AP(3, 9, 3, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
_check_GF_AP_Messen("12")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;13-16 WE
If $sAnzWE > 13 And $sAnzWE <= 16 Then
;~ ConsoleWrite($sStringName & @CRLF)
If $sKabelstark = "4E" Then
_check_GF_AP(4, 0, 4, 0) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
If $sKabelstark = "12E" Then
_check_GF_AP(4, 8, 4, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
_check_GF_AP_Messen("16")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;17-20 WE
If $sAnzWE > 17 And $sAnzWE <= 20 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(5, 7, 5, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("20")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;21-24 WE
If $sAnzWE > 21 And $sAnzWE <= 24 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(6, 6, 6, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("24")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;25-28 WE
If $sAnzWE > 25 And $sAnzWE <= 28 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(7, 5, 7, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("28")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;29-32 WE
If $sAnzWE > 29 And $sAnzWE <= 32 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(8, 4, 8, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("32")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;33-36 WE
If $sAnzWE > 33 And $sAnzWE <= 36 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(9, 3, 9, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("36")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;37-40 WE
If $sAnzWE > 37 And $sAnzWE <= 40 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(10, 2, 10, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("40")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;41-64 WE
If $sAnzWE > 41 And $sAnzWE <= 64 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(2, 10, 2, 10) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("64")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;65-96 WE
If $sAnzWE > 65 And $sAnzWE <= 96 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(3, 9, 3, 9) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("96")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
EndFunc ;==>_add_ftth_GFMontage
Func _check_FTTH_TB_HsEinfmo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfmo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1,0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfmo
Func _check_FTTH_TB_HsEinfZmo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = _replacePunkt2Koma($aAngaben_FTTH[1][1] - 1) ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfZmo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", _replacePunkt2Koma($aAngaben_FTTH[1][1] - 1))
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfZmo
Func _check_FTTH_TB_HsEinfoo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfoo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1, 0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfoo
Func _check_FTTH_TB_HsEinfZoo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = _replacePunkt2Koma($aAngaben_FTTH[1][1] - 1) ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfZoo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", $aAngaben_FTTH[1][1] - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfZoo
Func _check_FTTH_TB_Rausl()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = _replacePunkt2Koma($aAngaben_FTTH[1][1] + 1) ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Rausl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", )
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_Rausl
Func _check_FTTH_TB_Kausl()
$sText_Bemerkung = "2x7 SNR"
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = _replacePunkt2Koma($aAngaben_FTTH[1][1] + 2) ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Kausl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", )
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_Kausl
Func _check_FTTH_TB_GGRing()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GGRing", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1,0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_GGRing
Func _check_GF_AP($iNVTVerb, $iNVTab, $iAPVerb, $iAPab)
$sIni_Kategorie = "FTTH-GF-NVT-APL"
Dim $aProzent[6]
$aProzent[1] = "Am NVT " & $sNVTName ;Abschnitt
If $iNVTVerb <= 0 Then
Else
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_NVT_Verb", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iNVTVerb)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If $iNVTab <= 0 Then
Else
$aProzent[1] = "" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_FAabl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iNVTab)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
$aProzent[1] = "Am APL " & $sAPNr ;Abschnitt
If $iAPVerb <= 0 Then
Else
$aProzent[2] = _check_WE_AP_Bemerkung()
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_AP_Verb", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAPVerb)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
$aProzent[2] = ""
;~ ; ab Hier GF-Verbinden apl mit Zulage 1. Verbinden zulage jede weitere
;~ If $iAPVerb >= 1 Then
;~ $aProzent[2] =_check_WE_AP_Bemerkung()
;~ $sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_AP_Verb", "NA")
;~ $sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ _ArrayAdd($aLVListe, $sINI_String, 0, "|")
;~ $aProzent[2] = ""
;~
;~ $aProzent[2] =_check_WE_AP_Bemerkung()
;~ $sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_AP_VerbZU", "NA")
;~ $sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
;~ $sINI_String = StringReplace($sINI_String, "%Menge%",$iAPVerb - 1)
;~ _ArrayAdd($aLVListe, $sINI_String, 0, "|")
;~ $aProzent[2] = ""
;~
;~ EndIf
;~ If $iAPVerb <= 1 Then
;~ $aProzent[2] =_check_WE_AP_Bemerkung()
;~ $sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_AP_Verb", "NA")
;~ $sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAPVerb)
;~ _ArrayAdd($aLVListe, $sINI_String, 0, "|")
;~ $aProzent[2] = ""
;~
;~ EndIf
EndIf
If $iAPab <= 0 Then
Else
$aProzent[1] = "" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_FAabl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAPab)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc ;==>_check_GF_AP
Func _check_WE_AP_Bemerkung()
If $sAnzWE >= 1 And $sAnzWE <= 3 Then
Return "GF-AP 1-3 WE" ; Bemerkung
EndIf
If $sAnzWE = 4 Then
Return "GF-AP 4 WE" ; Bemerkung
EndIf
If $sAnzWE >= 5 And $sAnzWE <= 8 Then
Return "GF-AP 5-8 WE"
EndIf
;9-12 WE
If $sAnzWE >= 9 And $sAnzWE <= 12 Then
Return "GF-AP 9-12 WE" ; Bemerkung
EndIf
;13-16 WE
If $sAnzWE >= 13 And $sAnzWE <= 16 Then
Return "GF-AP 13-16 WE" ; Bemerkung
EndIf
;17-20 WE
If $sAnzWE >= 17 And $sAnzWE <= 20 Then
Return "GF-AP 17-20 WE" ; Bemerkung
EndIf
;21-24 WE
If $sAnzWE >= 21 And $sAnzWE <= 24 Then
Return "GF-AP 21-24 WE" ; Bemerkung
EndIf
;25-28 WE
If $sAnzWE >= 25 And $sAnzWE <= 28 Then
Return "GF-AP 25-28 WE" ; Bemerkung
EndIf
;29-32 WE
If $sAnzWE >= 29 And $sAnzWE <= 32 Then
Return "GF-AP 29-32 WE" ; Bemerkung
EndIf
;33-36 WE
If $sAnzWE >= 33 And $sAnzWE <= 36 Then
Return "GF-AP 33-36 WE" ; Bemerkung
EndIf
;37-40 WE
If $sAnzWE >= 37 And $sAnzWE <= 40 Then
Return "GF-AP 37-40 WE" ; Bemerkung
EndIf
;41-64 WE
If $sAnzWE >= 41 And $sAnzWE <= 64 Then
Return "GF-AP 41-64 WE" ; Bemerkung
EndIf
;65-96 WE
If $sAnzWE >= 65 And $sAnzWE <= 96 Then
Return "GF-AP 65-96 WE" ; Bemerkung
EndIf
EndFunc ;==>_check_WE_AP_Bemerkung
Func _check_GF_AP_Koordination()
If GUICtrlRead($tab7_chb_koordinationp) = $GUI_CHECKED Then
Dim $aProzent[6]
$sIni_Kategorie = "FTTH-GF-NVT-APL"
$aProzent[1] = "Koordination mit KD" ;Abschnitt
$aProzent[2] = "Koordination mit KD" ; Bemerkung
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Koordination", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc ;==>_check_GF_AP_Koordination
Func _check_GF_AP_Messen($sAnzahlMessen)
Dim $aProzent[6]
$sIni_Kategorie = "FTTH-GF-NVT-APL"
If $sAnzahlMessen >= 1 Then
$aProzent[1] = "APL Messen" ;Abschnitt
$aProzent[2] = "1. Faser messen" ; Bemerkung
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GPON_1", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = "jede weitere Faser messen" ; Bemerkung
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GPON_02", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $sAnzahlMessen - 1)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If $sAnzahlMessen <= 1 Then
$aProzent[1] = "APL Messen" ;Abschnitt
$aProzent[2] = "Faser messen" ; Bemerkung
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GPON_1", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc ;==>_check_GF_AP_Messen
Func _check_GF_AP_einbl($iMeter)
Dim $aProzent[6]
$sIni_Kategorie = "FTTH-GF-NVT-APL"
If $iMeter <= 300 Then
$aProzent[1] = "GF-Einblasen < 300m" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GFbis300", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If $iMeter >= 300 Then
$aProzent[1] = "GF-Einblasen > 300m" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GFbis300", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
$aProzent[1] = "" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GFgr300", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iMeter - 300)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc ;==>_check_GF_AP_einbl
@@ -0,0 +1,601 @@
;ahelper_ftth.au3
Func _add_ftth()
Dim $aProzent[6]
Global $sIni_Kategorie = "FTTH"
$sText_Bemerkung = ""
Global $aAngaben_FTTH[2][11] = [["Abschnitt", "Länge Privat", "NVT", "APNr", "AnzWE", "Str", "HsNr", "GF-Kabel", "GF-BlasLang", "InstalRohrlang", "Ausgabe"]]
Global $sIniDatei = GUICtrlRead($chb_vertrag)
If GUICtrlRead($chb_vertrag) = "" Then
MsgBox(64, "Bitte Vertrag auswählen", "Bitte Vertrag auswählen")
Else
_ini_umwandeln_pfad($sIniDateiPfad & $sIniDatei)
_ReadInputs2Array_ftth()
;~ _DebugArrayDisplay($aAngaben_FTTH)
$sVertragString = GUICtrlRead($chb_vertrag)
If StringInStr($sVertragString, "4650000697") Then ; 4650000697__SW32-FTTx_17/18
If GUICtrlRead($tab7_chb_adGFMontage) = $GUI_CHECKED Then
_add_ftth_GFMontage()
Else
If GUICtrlRead($tab7_chb_oO) = $GUI_CHECKED Then
_check_FTTH_TB_HsEinfoo()
_check_FTTH_TB_HsEinfZoo()
_check_FTTH_TB_Rausl()
_check_FTTH_TB_Kausl()
EndIf
If GUICtrlRead($tab7_chb_oO) = $GUI_UNCHECKED Then
_check_FTTH_TB_HsEinfmo()
_check_FTTH_TB_HsEinfZmo()
_check_FTTH_TB_Rausl()
_check_FTTH_TB_Kausl()
EndIf
If GUICtrlRead($tab7_chb_ring_gg) = $GUI_CHECKED Then
_check_FTTH_TB_GGRing()
; 5m Ring auslegen 3 + (2 in der Func)
$aAngaben_FTTH[1][1] = 3
_check_FTTH_TB_Kausl()
EndIf
EndIf
EndIf
If StringInStr($sVertragString, "4650001474") Then ; 4650001474__SW32-Regelgeschäft_Los_3b_Rvbg
EndIf
If StringInStr($sVertragString, "4650003044") Then ;4650003044__SW32-RVProjektgeschäft_Los_3b_Rvbg
EndIf
If StringInStr($sVertragString, "4650003822") Then ;4600413398__SW32-RVProjektgeschäft_Los_3b_Rvbg_alt
EndIf
_ArrayDelete($aLVListe, 0)
$iCount = -1
_GUIListViewEx_InsertSpec($iLV_Aufma_Index, $iCount, $aLVListe)
Global $aLVListe[1][13]
EndIf
EndFunc ;==>_add_ftth
Func _ReadInputs2Array_ftth()
$aAngaben_FTTH[1][0] = GUICtrlRead($tab7_txt_abschnitt)
$aAngaben_FTTH[1][1] = _replaceKom2Punkt(GUICtrlRead($tab7_txt_lang_privat))
$aAngaben_FTTH[1][2] = GUICtrlRead($tab7_txt_nvtname)
$aAngaben_FTTH[1][3] = GUICtrlRead($tab7_txt_apnr)
$aAngaben_FTTH[1][4] = GUICtrlRead($tab7_txt_anzWE)
$aAngaben_FTTH[1][5] = GUICtrlRead($tab7_txt_str)
$aAngaben_FTTH[1][6] = GUICtrlRead($tab7_txt_hsnr)
$aAngaben_FTTH[1][7] = GUICtrlRead($tab7_dl_gfkabel)
$aAngaben_FTTH[1][8] = _replaceKom2Punkt(GUICtrlRead($tab7_txt_einblang))
$aAngaben_FTTH[1][9] = _replaceKom2Punkt(GUICtrlRead($tab7_txt_instrohr))
$aAngaben_FTTH[1][10] = GUICtrlRead($tab7_txt_ausgabe)
EndFunc ;==>_ReadInputs2Array_ftth
Func _add_ftth_GFMontage()
Global $sAPNr = $aAngaben_FTTH[1][3]
$sKabelstark = $aAngaben_FTTH[1][7]
$sStr = $aAngaben_FTTH[1][5]
$sHsZu = $aAngaben_FTTH[1][6]
Global $sAnzWE = $aAngaben_FTTH[1][4]
$sGFlang = $aAngaben_FTTH[1][8] ; Kabelzug länge
Global $sStringName = "NVT_" & $sNVTName & "_GF_" & $sStr & "_HS_" & $sHsZu & "_AP_" & $sAPNr
$sStringName = StringReplace($sStringName, " ", "_")
$sStringName = StringReplace($sStringName, ".", "")
GUICtrlSetData($tab7_txt_ausgabe, $sStringName)
;1-3 WE AP
If $sAnzWE > 1 And $sAnzWE <= 3 Then
;~ ConsoleWrite($sStringName & @CRLF)
If $sKabelstark = "4E" Then
_check_GF_AP(1, 3, 3, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
If $sKabelstark = "12E" Then
_check_GF_AP(1, 11, 3, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
_check_GF_AP_Messen("2")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;4WE AP
If $sAnzWE = 4 Then
;~ ConsoleWrite($sStringName & @CRLF)
If $sKabelstark = "4E" Then
_check_GF_AP(1, 3, 1, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
If $sKabelstark = "12E" Then
_check_GF_AP(1, 11, 1, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
_check_GF_AP_Messen("4")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;5-8 WE
If $sAnzWE > 5 And $sAnzWE <= 8 Then
;~ ConsoleWrite($sStringName & @CRLF)
If $sKabelstark = "4E" Then
_check_GF_AP(2, 2, 2, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
If $sKabelstark = "12E" Then
_check_GF_AP(2, 10, 2, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
_check_GF_AP_Messen("8")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;9-12 WE
If $sAnzWE > 9 And $sAnzWE <= 12 Then
;~ ConsoleWrite($sStringName & @CRLF)
If $sKabelstark = "4E" Then
_check_GF_AP(3, 1, 3, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
If $sKabelstark = "12E" Then
_check_GF_AP(3, 9, 3, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
_check_GF_AP_Messen("12")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;13-16 WE
If $sAnzWE > 13 And $sAnzWE <= 16 Then
;~ ConsoleWrite($sStringName & @CRLF)
If $sKabelstark = "4E" Then
_check_GF_AP(4, 0, 4, 0) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
If $sKabelstark = "12E" Then
_check_GF_AP(4, 8, 4, 1) ;NVT verb, NVT abl, APL verb, APL abl.
EndIf
_check_GF_AP_Messen("16")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;17-20 WE
If $sAnzWE > 17 And $sAnzWE <= 20 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(5, 7, 5, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("20")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;21-24 WE
If $sAnzWE > 21 And $sAnzWE <= 24 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(6, 6, 6, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("24")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;25-28 WE
If $sAnzWE > 25 And $sAnzWE <= 28 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(7, 5, 7, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("28")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;29-32 WE
If $sAnzWE > 29 And $sAnzWE <= 32 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(8, 4, 8, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("32")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;33-36 WE
If $sAnzWE > 33 And $sAnzWE <= 36 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(9, 3, 9, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("36")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;37-40 WE
If $sAnzWE > 37 And $sAnzWE <= 40 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(10, 2, 10, 1) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("40")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;41-64 WE
If $sAnzWE > 41 And $sAnzWE <= 64 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(2, 10, 2, 10) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("64")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
;65-96 WE
If $sAnzWE > 65 And $sAnzWE <= 96 Then
;~ ConsoleWrite($sStringName & @CRLF)
_check_GF_AP(3, 9, 3, 9) ;NVT verb, NVT abl, APL verb, APL abl.
_check_GF_AP_Messen("96")
_check_GF_AP_Koordination()
_check_GF_AP_einbl($sGFlang)
EndIf
EndFunc ;==>_add_ftth_GFMontage
Func _check_FTTH_TB_HsEinfmo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfmo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1,0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfmo
Func _check_FTTH_TB_HsEinfZmo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = _replacePunkt2Koma($aAngaben_FTTH[1][1] - 1) ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfZmo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", _replacePunkt2Koma($aAngaben_FTTH[1][1] - 1))
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfZmo
Func _check_FTTH_TB_HsEinfoo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfoo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1, 0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfoo
Func _check_FTTH_TB_HsEinfZoo()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = _replacePunkt2Koma($aAngaben_FTTH[1][1] - 1) ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "HsEinfZoo", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", $aAngaben_FTTH[1][1] - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_HsEinfZoo
Func _check_FTTH_TB_Rausl()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = _replacePunkt2Koma($aAngaben_FTTH[1][1] + 1) ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Rausl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", )
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_Rausl
Func _check_FTTH_TB_Kausl()
$sText_Bemerkung = "2x7 SNR"
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = _replacePunkt2Koma($aAngaben_FTTH[1][1] + 2) ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Kausl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", )
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_Kausl
Func _check_FTTH_TB_GGRing()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_FTTH[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GGRing", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1,0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_TB_GGRing
Func _check_GF_AP($iNVTVerb, $iNVTab, $iAPVerb, $iAPab)
$sIni_Kategorie = "FTTH-GF-NVT-APL"
Dim $aProzent[6]
$aProzent[1] = "Am NVT " & $sNVTName ;Abschnitt
If $iNVTVerb <= 0 Then
Else
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_NVT_Verb", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iNVTVerb)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If $iNVTab <= 0 Then
Else
$aProzent[1] = "" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_FAabl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iNVTab)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
$aProzent[1] = "Am APL " & $sAPNr ;Abschnitt
If $iAPVerb <= 0 Then
Else
$aProzent[2] = _check_WE_AP_Bemerkung()
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_AP_Verb", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAPVerb)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
$aProzent[2] = ""
;~ ; ab Hier GF-Verbinden apl mit Zulage 1. Verbinden zulage jede weitere
;~ If $iAPVerb >= 1 Then
;~ $aProzent[2] =_check_WE_AP_Bemerkung()
;~ $sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_AP_Verb", "NA")
;~ $sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ _ArrayAdd($aLVListe, $sINI_String, 0, "|")
;~ $aProzent[2] = ""
;~
;~ $aProzent[2] =_check_WE_AP_Bemerkung()
;~ $sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_AP_VerbZU", "NA")
;~ $sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
;~ $sINI_String = StringReplace($sINI_String, "%Menge%",$iAPVerb - 1)
;~ _ArrayAdd($aLVListe, $sINI_String, 0, "|")
;~ $aProzent[2] = ""
;~
;~ EndIf
;~ If $iAPVerb <= 1 Then
;~ $aProzent[2] =_check_WE_AP_Bemerkung()
;~ $sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_AP_Verb", "NA")
;~ $sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAPVerb)
;~ _ArrayAdd($aLVListe, $sINI_String, 0, "|")
;~ $aProzent[2] = ""
;~
;~ EndIf
EndIf
If $iAPab <= 0 Then
Else
$aProzent[1] = "" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF_FAabl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAPab)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc ;==>_check_GF_AP
Func _check_WE_AP_Bemerkung()
If $sAnzWE >= 1 And $sAnzWE <= 3 Then
Return "GF-AP 1-3 WE" ; Bemerkung
EndIf
If $sAnzWE = 4 Then
Return "GF-AP 4 WE" ; Bemerkung
EndIf
If $sAnzWE >= 5 And $sAnzWE <= 8 Then
Return "GF-AP 5-8 WE"
EndIf
;9-12 WE
If $sAnzWE >= 9 And $sAnzWE <= 12 Then
Return "GF-AP 9-12 WE" ; Bemerkung
EndIf
;13-16 WE
If $sAnzWE >= 13 And $sAnzWE <= 16 Then
Return "GF-AP 13-16 WE" ; Bemerkung
EndIf
;17-20 WE
If $sAnzWE >= 17 And $sAnzWE <= 20 Then
Return "GF-AP 17-20 WE" ; Bemerkung
EndIf
;21-24 WE
If $sAnzWE >= 21 And $sAnzWE <= 24 Then
Return "GF-AP 21-24 WE" ; Bemerkung
EndIf
;25-28 WE
If $sAnzWE >= 25 And $sAnzWE <= 28 Then
Return "GF-AP 25-28 WE" ; Bemerkung
EndIf
;29-32 WE
If $sAnzWE >= 29 And $sAnzWE <= 32 Then
Return "GF-AP 29-32 WE" ; Bemerkung
EndIf
;33-36 WE
If $sAnzWE >= 33 And $sAnzWE <= 36 Then
Return "GF-AP 33-36 WE" ; Bemerkung
EndIf
;37-40 WE
If $sAnzWE >= 37 And $sAnzWE <= 40 Then
Return "GF-AP 37-40 WE" ; Bemerkung
EndIf
;41-64 WE
If $sAnzWE >= 41 And $sAnzWE <= 64 Then
Return "GF-AP 41-64 WE" ; Bemerkung
EndIf
;65-96 WE
If $sAnzWE >= 65 And $sAnzWE <= 96 Then
Return "GF-AP 65-96 WE" ; Bemerkung
EndIf
EndFunc ;==>_check_WE_AP_Bemerkung
Func _check_GF_AP_Koordination()
If GUICtrlRead($tab7_chb_koordinationp) = $GUI_CHECKED Then
Dim $aProzent[6]
$sIni_Kategorie = "FTTH-GF-NVT-APL"
$aProzent[1] = "Koordination mit KD" ;Abschnitt
$aProzent[2] = "Koordination mit KD" ; Bemerkung
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Koordination", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc ;==>_check_GF_AP_Koordination
Func _check_GF_AP_Messen($sAnzahlMessen)
Dim $aProzent[6]
$sIni_Kategorie = "FTTH-GF-NVT-APL"
If $sAnzahlMessen >= 1 Then
$aProzent[1] = "APL Messen" ;Abschnitt
$aProzent[2] = "1. Faser messen" ; Bemerkung
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GPON_1", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = "jede weitere Faser messen" ; Bemerkung
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GPON_02", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $sAnzahlMessen - 1)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If $sAnzahlMessen <= 1 Then
$aProzent[1] = "APL Messen" ;Abschnitt
$aProzent[2] = "Faser messen" ; Bemerkung
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GPON_1", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc ;==>_check_GF_AP_Messen
Func _check_GF_AP_einbl($iMeter)
Dim $aProzent[6]
$sIni_Kategorie = "FTTH-GF-NVT-APL"
If $iMeter <= 300 Then
$aProzent[1] = "GF-Einblasen < 300m" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GFbis300", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If $iMeter >= 300 Then
$aProzent[1] = "GF-Einblasen > 300m" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GFbis300", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
$aProzent[1] = "" ;Abschnitt
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GFgr300", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iMeter - 300)
;~ ConsoleWrite($sINI_String & @CRLF)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc ;==>_check_GF_AP_einbl
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,468 @@
;ahelper_gf.au3
#Region GF - Montage
Func _add_GF_Montage()
Global $sIniDatei = GUICtrlRead($chb_vertrag)
If GUICtrlRead($chb_vertrag) = "" Then
MsgBox(64, "Bitte Vertrag auswählen", "Bitte Vertrag auswählen")
Else
_ini_umwandeln_pfad($sIniDateiPfad & $sIniDatei)
_ReadInputs2Array_GF()
_check_Fasern_messen()
_ArrayDelete($aLVListe, 0)
$iCount = -1
_GUIListViewEx_InsertSpec($iLV_Aufma_Index, $iCount, $aLVListe)
Global $aLVListe[1][13]
EndIf
EndFunc ;==>_add_GF_Montage
Func _check_Fasern_messen()
Dim $aProzent[6]
;~ $aAngaben_GF[1][0] = $sMuffenbezeichnung ;Muffenbezeichnung
;~ $aAngaben_GF[1][1] = _replaceKom2Punkt($iAF_A1)
;~ $aAngaben_GF[1][2] = _replaceKom2Punkt($iAF_G1)
;~ $aAngaben_GF[1][3] = _replaceKom2Punkt($iAF_G2)
;~ $aAngaben_GF[1][4] = _replaceKom2Punkt($iAF_G3)
;~ $aAngaben_GF[1][5] = _replaceKom2Punkt($iAF_G4)
;~ $aAngaben_GF[1][6] = _replaceKom2Punkt($iAF_G5)
;~ $aAngaben_GF[1][7] = _replaceKom2Punkt($iAF_verb)
;~ $aAngaben_GF[1][8] = _replaceKom2Punkt($iAF_mess)
;~ $aAngaben_GF[1][9] = _replaceKom2Punkt($iAP_e_in)
;~ $aAngaben_GF[1][10] = _replaceKom2Punkt($iAP_e_out)
;~ $aAngaben_GF[1][11] = _replaceKom2Punkt($iAP_g)
;~ $aAngaben_GF[1][12] = _replaceKom2Punkt($iAM_verl)
;~ _DebugArrayDisplay($aAngaben_GF)
;;Gräben ohne Oberbau
Global $sIni_Kategorie = "GlasFaser"
$sText_Bemerkung = " "
Global $iAF = $aAngaben_GF[1][8]
$sVertragString = GUICtrlRead($chb_vertrag)
If StringInStr($sVertragString, "4650000697") Then ; 4650000697__SW32-FTTx_17/18
#Region -Messen
If $iAF <= 1 Then
; wenn Anzahl Fasern 1 dann
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
_check_HKINDI_1()
EndIf
If GUICtrlRead($tab4_chb_mess_gpon) = $GUI_CHECKED Then
_check_FTTH_GPON_1()
EndIf
Else
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKMASS_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKMASS_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKINDI_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_gpon) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_FTTH_GPON_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_FTTH_GPON_02()
EndIf
EndIf
#EndRegion
#Region Baugruppe einbauen
If GUICtrlRead($tab4_chb_s_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_p_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Patch-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_sp_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß&Patch-Baugruppe einbauen")
EndIf
#EndRegion Baugruppe einbauen
EndIf
If StringInStr($sVertragString, "4650001474") Then ; 4650001474__SW32-Regelgeschäft_Los_3b_Rvbg
#Region -Messen
If $iAF <= 1 Then
; wenn Anzahl Fasern 1 dann
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
_check_HKINDI_1()
EndIf
Else
;zuerst die erste Faser 1 Stück
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKMASS_02()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKINDI_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
EndIf
#EndRegion
#Region Baugruppe einbauen
If GUICtrlRead($tab4_chb_s_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_p_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Patch-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_sp_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß&Patch-Baugruppe einbauen")
EndIf
#EndRegion Baugruppe einbauen
EndIf
If StringInStr($sVertragString, "4650003044") Then ;4650003044__SW32-RVProjektgeschäft_Los_3b_Rvbg
#Region -Messen
If $iAF <= 1 Then
; wenn Anzahl Fasern 1 dann
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
_check_HKINDI_1()
EndIf
Else
;zuerst die erste Faser 1 Stück
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKMASS_02()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKINDI_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
EndIf
#EndRegion
#Region Baugruppe einbauen
If GUICtrlRead($tab4_chb_s_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_p_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Patch-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_sp_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß&Patch-Baugruppe einbauen")
EndIf
#EndRegion Baugruppe einbauen
EndIf
If StringInStr($sVertragString, "4650003822") Then ;4600413398__SW32-RVProjektgeschäft_Los_3b_Rvbg_alt
#Region -Messen
If $iAF <= 1 Then
; wenn Anzahl Fasern 1 dann
_check_MESS_1te_Faser()
Else
_check_MESS_xte_Faser()
EndIf
#EndRegion
#Region Baugruppe einbauen
If GUICtrlRead($tab4_chb_s_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_p_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Patch-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_sp_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß&Patch-Baugruppe einbauen")
EndIf
#EndRegion Baugruppe einbauen
EndIf
EndFunc ;==>_check_Fasern_messen
func _check_MESS_1te_Faser()
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
_check_HKINDI_1()
EndIf
If GUICtrlRead($tab4_chb_mess_kontro) = $GUI_CHECKED Then
_check_FTTH_kontroll_1()
EndIf
If GUICtrlRead($tab4_chb_mess_pegel) = $GUI_CHECKED Then
_check_pegelmess_1()
EndIf
EndFunc
func _check_MESS_xte_Faser()
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKMASS_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKMASS_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKINDI_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_FTTH_kontroll_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_pegel) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_pegelmess_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_pegelmess_Z()
EndIf
EndFunc
Func _check_HKMASS_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKMASS", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKMASS_1
Func _check_HKMASS_02()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_graben[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKMASS", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "0,2")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKMASS_02
Func _check_HKMASS_Z()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_graben[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKMASSZU", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKMASS_Z
Func _check_HKINDI_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKINDI", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKINDI_1
Func _check_HKINDI_02()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_graben[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKINDI", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "0,2")
$sINI_String = StringReplace($sINI_String, $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKINDI_02
Func _check_HKINDI_Z()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_graben[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKINDIZU", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKINDI_Z
func _check_FTTH_kontroll_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenFTTH", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_FTTH_kontroll_02()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenFTTH", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "0,2")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_FTTH_GPON_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenGPON", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_FTTH_GPON_02()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenGPON", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "0,2")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_pegelmess_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenPegel", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_pegelmess_Z()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenPegelZU", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", "1")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_Baugruppe_einbauen($sText_Bemerkung)
;~ $sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = "HVT-Baugruppe einbauen" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "BauGruppeEinAusbauen", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
#EndRegion GF - Montage
@@ -0,0 +1,472 @@
;ahelper_gf.au3
#Region GF - Montage
Func _add_GF_Montage()
Global $sIniDatei = GUICtrlRead($chb_vertrag)
If GUICtrlRead($chb_vertrag) = "" Then
MsgBox(64, "Bitte Vertrag auswählen", "Bitte Vertrag auswählen")
Else
_ini_umwandeln_pfad($sIniDateiPfad & $sIniDatei)
_ReadInputs2Array_GF()
_check_Fasern_messen()
_ArrayDelete($aLVListe, 0)
$iCount = -1
_GUIListViewEx_InsertSpec($iLV_Aufma_Index, $iCount, $aLVListe)
Global $aLVListe[1][13]
EndIf
EndFunc ;==>_add_GF_Montage
Func _check_Fasern_messen()
Dim $aProzent[6]
;~ $aAngaben_GF[1][0] = $sMuffenbezeichnung ;Muffenbezeichnung
;~ $aAngaben_GF[1][1] = _replaceKom2Punkt($iAF_A1)
;~ $aAngaben_GF[1][2] = _replaceKom2Punkt($iAF_G1)
;~ $aAngaben_GF[1][3] = _replaceKom2Punkt($iAF_G2)
;~ $aAngaben_GF[1][4] = _replaceKom2Punkt($iAF_G3)
;~ $aAngaben_GF[1][5] = _replaceKom2Punkt($iAF_G4)
;~ $aAngaben_GF[1][6] = _replaceKom2Punkt($iAF_G5)
;~ $aAngaben_GF[1][7] = _replaceKom2Punkt($iAF_verb)
;~ $aAngaben_GF[1][8] = _replaceKom2Punkt($iAF_mess)
;~ $aAngaben_GF[1][9] = _replaceKom2Punkt($iAP_e_in)
;~ $aAngaben_GF[1][10] = _replaceKom2Punkt($iAP_e_out)
;~ $aAngaben_GF[1][11] = _replaceKom2Punkt($iAP_g)
;~ $aAngaben_GF[1][12] = _replaceKom2Punkt($iAM_verl)
;~ _DebugArrayDisplay($aAngaben_GF)
;;Gräben ohne Oberbau
Global $sIni_Kategorie = "GlasFaser"
$sText_Bemerkung = " "
Global $iAF = $aAngaben_GF[1][8]
$sVertragString = GUICtrlRead($chb_vertrag)
If StringInStr($sVertragString, "4650000697") Then ; 4650000697__SW32-FTTx_17/18
#Region -Messen
If $iAF <= 1 Then
; wenn Anzahl Fasern 1 dann
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
_check_HKINDI_1()
EndIf
If GUICtrlRead($tab4_chb_mess_gpon) = $GUI_CHECKED Then
_check_FTTH_GPON_1()
EndIf
Else
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKMASS_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKMASS_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKINDI_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_gpon) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_FTTH_GPON_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_FTTH_GPON_02()
EndIf
EndIf
#EndRegion -Messen
#Region Baugruppe einbauen
If GUICtrlRead($tab4_chb_s_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_p_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Patch-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_sp_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß&Patch-Baugruppe einbauen")
EndIf
#EndRegion Baugruppe einbauen
EndIf
If StringInStr($sVertragString, "4650001474") Then ; 4650001474__SW32-Regelgeschäft_Los_3b_Rvbg
#Region -Messen
If $iAF <= 1 Then
; wenn Anzahl Fasern 1 dann
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
_check_HKINDI_1()
EndIf
Else
;zuerst die erste Faser 1 Stück
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKMASS_02()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKINDI_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
EndIf
#EndRegion -Messen
#Region Baugruppe einbauen
If GUICtrlRead($tab4_chb_s_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_p_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Patch-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_sp_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß&Patch-Baugruppe einbauen")
EndIf
#EndRegion Baugruppe einbauen
EndIf
If StringInStr($sVertragString, "4650003044") Then ;4650003044__SW32-RVProjektgeschäft_Los_3b_Rvbg
#Region -Messen
If $iAF <= 1 Then
; wenn Anzahl Fasern 1 dann
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
_check_HKINDI_1()
EndIf
Else
;zuerst die erste Faser 1 Stück
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKMASS_02()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKINDI_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
EndIf
#EndRegion -Messen
#Region Baugruppe einbauen
If GUICtrlRead($tab4_chb_s_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_p_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Patch-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_sp_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß&Patch-Baugruppe einbauen")
EndIf
#EndRegion Baugruppe einbauen
EndIf
If StringInStr($sVertragString, "4650003822") Then ;4600413398__SW32-RVProjektgeschäft_Los_3b_Rvbg_alt
#Region -Messen
If $iAF <= 1 Then
; wenn Anzahl Fasern 1 dann
_check_MESS_1te_Faser()
Else
_check_MESS_xte_Faser()
EndIf
#EndRegion -Messen
#Region Baugruppe einbauen
If GUICtrlRead($tab4_chb_s_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_p_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Patch-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_sp_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß&Patch-Baugruppe einbauen")
EndIf
#EndRegion Baugruppe einbauen
EndIf
EndFunc ;==>_check_Fasern_messen
Func _check_MESS_1te_Faser()
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
_check_HKINDI_1()
EndIf
If GUICtrlRead($tab4_chb_mess_kontro) = $GUI_CHECKED Then
_check_FTTH_kontroll_1()
EndIf
If GUICtrlRead($tab4_chb_mess_pegel) = $GUI_CHECKED Then
_check_pegelmess_1()
EndIf
If GUICtrlRead($tab4_chb_mess_gpon) = $GUI_CHECKED Then
_check_FTTH_GPON_1()
EndIf
EndFunc ;==>_check_MESS_1te_Faser
Func _check_MESS_xte_Faser()
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKMASS_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKMASS_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKINDI_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_FTTH_kontroll_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_pegel) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_pegelmess_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_pegelmess_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_gpon) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_FTTH_GPON_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_FTTH_GPON_02()
EndIf
EndFunc ;==>_check_MESS_xte_Faser
Func _check_HKMASS_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKMASS", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKMASS_1
Func _check_HKMASS_02()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_graben[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKMASS", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "0,2")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKMASS_02
Func _check_HKMASS_Z()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_graben[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKMASSZU", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKMASS_Z
Func _check_HKINDI_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKINDI", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKINDI_1
Func _check_HKINDI_02()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_graben[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKINDI", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "0,2")
$sINI_String = StringReplace($sINI_String, $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKINDI_02
Func _check_HKINDI_Z()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_graben[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKINDIZU", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKINDI_Z
Func _check_FTTH_kontroll_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenFTTH", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_kontroll_1
Func _check_FTTH_kontroll_02()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenFTTH", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "0,2")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_kontroll_02
Func _check_FTTH_GPON_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenGPON", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_GPON_1
Func _check_FTTH_GPON_02()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenGPON", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "0,2")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_GPON_02
Func _check_pegelmess_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenPegel", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_pegelmess_1
Func _check_pegelmess_Z()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenPegelZU", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", "1")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_pegelmess_Z
Func _check_Baugruppe_einbauen($sText_Bemerkung)
;~ $sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = "HVT-Baugruppe einbauen" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "BauGruppeEinAusbauen", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_Baugruppe_einbauen
#EndRegion GF - Montage
@@ -0,0 +1,480 @@
;ahelper_gf.au3
#Region GF - Montage
Func _add_GF_Montage()
Global $sIniDatei = GUICtrlRead($chb_vertrag)
If GUICtrlRead($chb_vertrag) = "" Then
MsgBox(64, "Bitte Vertrag auswählen", "Bitte Vertrag auswählen")
Else
_ini_umwandeln_pfad($sIniDateiPfad & $sIniDatei)
_ReadInputs2Array_GF()
_check_Fasern_messen()
_ArrayDelete($aLVListe, 0)
$iCount = -1
_GUIListViewEx_InsertSpec($iLV_Aufma_Index, $iCount, $aLVListe)
Global $aLVListe[1][13]
EndIf
EndFunc ;==>_add_GF_Montage
Func _check_Fasern_messen()
Dim $aProzent[6]
;~ $aAngaben_GF[1][0] = $sMuffenbezeichnung ;Muffenbezeichnung
;~ $aAngaben_GF[1][1] = _replaceKom2Punkt($iAF_A1)
;~ $aAngaben_GF[1][2] = _replaceKom2Punkt($iAF_G1)
;~ $aAngaben_GF[1][3] = _replaceKom2Punkt($iAF_G2)
;~ $aAngaben_GF[1][4] = _replaceKom2Punkt($iAF_G3)
;~ $aAngaben_GF[1][5] = _replaceKom2Punkt($iAF_G4)
;~ $aAngaben_GF[1][6] = _replaceKom2Punkt($iAF_G5)
;~ $aAngaben_GF[1][7] = _replaceKom2Punkt($iAF_verb)
;~ $aAngaben_GF[1][8] = _replaceKom2Punkt($iAF_mess)
;~ $aAngaben_GF[1][9] = _replaceKom2Punkt($iAP_e_in)
;~ $aAngaben_GF[1][10] = _replaceKom2Punkt($iAP_e_out)
;~ $aAngaben_GF[1][11] = _replaceKom2Punkt($iAP_g)
;~ $aAngaben_GF[1][12] = _replaceKom2Punkt($iAM_verl)
;~ _DebugArrayDisplay($aAngaben_GF)
;;Gräben ohne Oberbau
Global $sIni_Kategorie = "GlasFaser"
$sText_Bemerkung = " "
Global $iAF = $aAngaben_GF[1][8]
$sVertragString = GUICtrlRead($chb_vertrag)
If StringInStr($sVertragString, "4650000697") Then ; 4650000697__SW32-FTTx_17/18
#Region -Messen
If $iAF <= 1 Then
; wenn Anzahl Fasern 1 dann
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
_check_HKINDI_1()
EndIf
If GUICtrlRead($tab4_chb_mess_gpon) = $GUI_CHECKED Then
_check_FTTH_GPON_1()
EndIf
Else
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKMASS_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKMASS_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKINDI_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_gpon) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_FTTH_GPON_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_FTTH_GPON_02()
EndIf
EndIf
#EndRegion -Messen
#Region Baugruppe einbauen
If GUICtrlRead($tab4_chb_s_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_p_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Patch-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_sp_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß&Patch-Baugruppe einbauen")
EndIf
#EndRegion Baugruppe einbauen
EndIf
If StringInStr($sVertragString, "4650001474") Then ; 4650001474__SW32-Regelgeschäft_Los_3b_Rvbg
#Region -Messen
If $iAF <= 1 Then
; wenn Anzahl Fasern 1 dann
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
_check_HKINDI_1()
EndIf
Else
;zuerst die erste Faser 1 Stück
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKMASS_02()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKINDI_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
EndIf
#EndRegion -Messen
#Region Baugruppe einbauen
If GUICtrlRead($tab4_chb_s_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_p_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Patch-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_sp_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß&Patch-Baugruppe einbauen")
EndIf
#EndRegion Baugruppe einbauen
EndIf
If StringInStr($sVertragString, "4650003044") Then ;4650003044__SW32-RVProjektgeschäft_Los_3b_Rvbg
#Region -Messen
If $iAF <= 1 Then
; wenn Anzahl Fasern 1 dann
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
_check_HKINDI_1()
EndIf
Else
;zuerst die erste Faser 1 Stück
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKMASS_02()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKINDI_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
EndIf
#EndRegion -Messen
#Region Baugruppe einbauen
If GUICtrlRead($tab4_chb_s_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_p_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Patch-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_sp_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß&Patch-Baugruppe einbauen")
EndIf
#EndRegion Baugruppe einbauen
EndIf
If StringInStr($sVertragString, "4650003822") Then ;4600413398__SW32-RVProjektgeschäft_Los_3b_Rvbg_alt
#Region -Messen
If $iAF <= 1 Then
; wenn Anzahl Fasern 1 dann
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
_check_HKINDI_1()
EndIf
If GUICtrlRead($tab4_chb_mess_kontro) = $GUI_CHECKED Then
_check_FTTH_kontroll_1()
EndIf
If GUICtrlRead($tab4_chb_mess_pegel) = $GUI_CHECKED Then
_check_pegelmess_1()
EndIf
If GUICtrlRead($tab4_chb_mess_gpon) = $GUI_CHECKED Then
_check_FTTH_GPON_1()
EndIf
Else
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKMASS_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKMASS_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKINDI_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_FTTH_kontroll_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_pegel) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_pegelmess_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_pegelmess_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_gpon) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_FTTH_GPON_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_FTTH_GPON_02()
EndIf
EndIf
#EndRegion -Messen
#Region Baugruppe einbauen
If GUICtrlRead($tab4_chb_s_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_p_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Patch-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_sp_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß&Patch-Baugruppe einbauen")
EndIf
#EndRegion Baugruppe einbauen
EndIf
EndFunc ;==>_check_Fasern_messen
Func _check_MESS_1te_Faser()
EndFunc ;==>_check_MESS_1te_Faser
Func _check_MESS_xte_Faser()
EndFunc ;==>_check_MESS_xte_Faser
Func _check_HKMASS_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKMASS", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKMASS_1
Func _check_HKMASS_02()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_graben[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKMASS", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "0,2")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKMASS_02
Func _check_HKMASS_Z()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_graben[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKMASSZU", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKMASS_Z
Func _check_HKINDI_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKINDI", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKINDI_1
Func _check_HKINDI_02()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_graben[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKINDI", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "0,2")
$sINI_String = StringReplace($sINI_String, $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKINDI_02
Func _check_HKINDI_Z()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_graben[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKINDIZU", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKINDI_Z
Func _check_FTTH_kontroll_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenFTTH", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_kontroll_1
Func _check_FTTH_kontroll_02()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenFTTH", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "0,2")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_kontroll_02
Func _check_FTTH_GPON_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenGPON", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_GPON_1
Func _check_FTTH_GPON_02()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenGPON", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "0,2")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_GPON_02
Func _check_pegelmess_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenPegel", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_pegelmess_1
Func _check_pegelmess_Z()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenPegelZU", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", "1")
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_pegelmess_Z
Func _check_Baugruppe_einbauen($sText_Bemerkung)
;~ $sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = "HVT-Baugruppe einbauen" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "BauGruppeEinAusbauen", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_Baugruppe_einbauen
#EndRegion GF - Montage
@@ -0,0 +1,847 @@
;ahelper_gf.au3
#Region GF - Montage
Func _add_GF_Montage()
Global $sIniDatei = GUICtrlRead($chb_vertrag)
If GUICtrlRead($chb_vertrag) = "" Then
MsgBox(64, "Bitte Vertrag auswählen", "Bitte Vertrag auswählen")
Else
_ini_umwandeln_pfad($sIniDateiPfad & $sIniDatei)
_ReadInputs2Array_GF()
_check_Vertrag()
_ArrayDelete($aLVListe, 0)
$iCount = -1
_GUIListViewEx_InsertSpec($iLV_Aufma_Index, $iCount, $aLVListe)
Global $aLVListe[1][13]
EndIf
EndFunc ;==>_add_GF_Montage
Func _check_Vertrag()
Dim $aProzent[6]
;~ $aAngaben_GF[1][0] = $sMuffenbezeichnung ;Muffenbezeichnung
;~ $aAngaben_GF[1][1] = _replaceKom2Punkt($iAF_A1)
;~ $aAngaben_GF[1][2] = _replaceKom2Punkt($iAF_G1)
;~ $aAngaben_GF[1][3] = _replaceKom2Punkt($iAF_G2)
;~ $aAngaben_GF[1][4] = _replaceKom2Punkt($iAF_G3)
;~ $aAngaben_GF[1][5] = _replaceKom2Punkt($iAF_G4)
;~ $aAngaben_GF[1][6] = _replaceKom2Punkt($iAF_G5)
;~ $aAngaben_GF[1][7] = _replaceKom2Punkt($iAF_verb)
;~ $aAngaben_GF[1][8] = _replaceKom2Punkt($iAF_mess)
;~ $aAngaben_GF[1][9] = _replaceKom2Punkt($iAP_e_in)
;~ $aAngaben_GF[1][10] = _replaceKom2Punkt($iAP_e_out)
;~ $aAngaben_GF[1][11] = _replaceKom2Punkt($iAP_g)
;~ $aAngaben_GF[1][12] = _replaceKom2Punkt($iAM_verl)
;~ _DebugArrayDisplay($aAngaben_GF)
;;Gräben ohne Oberbau
Global $sIni_Kategorie = "GlasFaser"
$sText_Bemerkung = " "
Global $iAF = $aAngaben_GF[1][8]
$sVertragString = GUICtrlRead($chb_vertrag)
If StringInStr($sVertragString, "4650000697") Then ; 4650000697__SW32-FTTx_17/18
#Region -Messen
;~ Mass = x, Indi = 0, GPON = x, Kontroll = 0, Pegel = 0
If $iAF <= 1 Then
; wenn Anzahl Fasern 1 dann
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
_check_HKINDI_1()
EndIf
If GUICtrlRead($tab4_chb_mess_gpon) = $GUI_CHECKED Then
_check_FTTH_GPON_1()
EndIf
If GUICtrlRead($tab4_chb_mess_kontro) = $GUI_CHECKED Then
_check_FTTH_kontroll_1()
EndIf
If GUICtrlRead($tab4_chb_mess_pegel) = $GUI_CHECKED Then
_check_pegelmess_1()
EndIf
Else
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKMASS_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKMASS_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKINDI_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_gpon) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_FTTH_GPON_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_FTTH_GPON_02()
EndIf
If GUICtrlRead($tab4_chb_mess_kontro) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_FTTH_kontroll_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_FTTH_kontroll_02()
EndIf
If GUICtrlRead($tab4_chb_mess_pegel) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_pegelmess_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_pegelmess_Z()
EndIf
EndIf
#EndRegion -Messen
#Region Baugruppe einbauen
If GUICtrlRead($tab4_chb_s_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_p_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Patch-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_sp_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß&Patch-Baugruppe einbauen")
EndIf
#EndRegion Baugruppe einbauen
#Region GF-Innen/Verlegen/SNR
If GUICtrlRead($tab4_chb_GFInnen) = $GUI_CHECKED Then
_check_GF_Innen()
EndIf
If GUICtrlRead($tab4_chb_kanSNr) = $GUI_CHECKED Then
_check_InKaSNRBef()
EndIf
If GUICtrlRead($tab4_chb_ausenbe) = $GUI_CHECKED Then
_check_Auskabelbef()
EndIf
#EndRegion GF-Innen
#Region GF-Muffen
;Muffe mit Kabel aufnehmen 15m und wieder hinlegen
_check_Kabelaufnwiederein()
;GF -Fasern verbinden
_check_fasernverbinden()
;GF-Fasern ablegen
_check_Fasernablegen()
;Muffe herstellen
_check_Muffe_bauen()
;Kabelschacht öffnen
_check_GFMuffeKsch()
#EndRegion GF-Muffen
EndIf
If StringInStr($sVertragString, "4650001474") Then ; 4650001474__SW32-Regelgeschäft_Los_3b_Rvbg
#Region -Messen
;~ Mass = x, Indi = 0, GPON = 0, Kontroll = 0, Pegel = 0
If $iAF <= 1 Then
; wenn Anzahl Fasern 1 dann
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
_check_HKINDI_1()
EndIf
If GUICtrlRead($tab4_chb_mess_gpon) = $GUI_CHECKED Then
_check_FTTH_GPON_1()
EndIf
If GUICtrlRead($tab4_chb_mess_kontro) = $GUI_CHECKED Then
_check_FTTH_kontroll_1()
EndIf
If GUICtrlRead($tab4_chb_mess_pegel) = $GUI_CHECKED Then
_check_pegelmess_1()
EndIf
Else
;zuerst die erste Faser 1 Stück
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKMASS_02()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKINDI_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_gpon) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_FTTH_GPON_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_FTTH_GPON_02()
EndIf
If GUICtrlRead($tab4_chb_mess_kontro) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_FTTH_kontroll_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_FTTH_kontroll_02()
EndIf
If GUICtrlRead($tab4_chb_mess_pegel) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_pegelmess_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_pegelmess_Z()
EndIf
EndIf
#EndRegion -Messen
#Region Baugruppe einbauen
If GUICtrlRead($tab4_chb_s_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_p_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Patch-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_sp_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß&Patch-Baugruppe einbauen")
EndIf
#EndRegion Baugruppe einbauen
#Region GF-Innen/Verlegen/SNR
If GUICtrlRead($tab4_chb_GFInnen) = $GUI_CHECKED Then
_check_GF_Innen()
EndIf
If GUICtrlRead($tab4_chb_kanSNr) = $GUI_CHECKED Then
_check_InKaSNRBef()
EndIf
If GUICtrlRead($tab4_chb_ausenbe) = $GUI_CHECKED Then
_check_Auskabelbef()
EndIf
#EndRegion GF-Innen
EndIf
If StringInStr($sVertragString, "4650003044") Then ;4650003044__SW32-RVProjektgeschäft_Los_3b_Rvbg
#Region -Messen
If $iAF <= 1 Then
; wenn Anzahl Fasern 1 dann
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
_check_HKINDI_1()
EndIf
Else
;zuerst die erste Faser 1 Stück
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKMASS_02()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKINDI_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
EndIf
#EndRegion -Messen
#Region Baugruppe einbauen
If GUICtrlRead($tab4_chb_s_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_p_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Patch-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_sp_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß&Patch-Baugruppe einbauen")
EndIf
#EndRegion Baugruppe einbauen
#Region GF-Innen/Verlegen/SNR
If GUICtrlRead($tab4_chb_GFInnen) = $GUI_CHECKED Then
_check_GF_Innen()
EndIf
If GUICtrlRead($tab4_chb_kanSNr) = $GUI_CHECKED Then
_check_InKaSNRBef()
EndIf
If GUICtrlRead($tab4_chb_ausenbe) = $GUI_CHECKED Then
_check_Auskabelbef()
EndIf
#EndRegion GF-Innen
EndIf
If StringInStr($sVertragString, "4650003822") Then ;4600413398__SW32-RVProjektgeschäft_Los_3b_Rvbg_alt
#Region -Messen
If $iAF <= 1 Then
; wenn Anzahl Fasern 1 dann
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
_check_HKMASS_1()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
_check_HKINDI_1()
EndIf
If GUICtrlRead($tab4_chb_mess_kontro) = $GUI_CHECKED Then
_check_FTTH_kontroll_1()
EndIf
If GUICtrlRead($tab4_chb_mess_pegel) = $GUI_CHECKED Then
_check_pegelmess_1()
EndIf
If GUICtrlRead($tab4_chb_mess_gpon) = $GUI_CHECKED Then
_check_FTTH_GPON_1()
EndIf
Else
If GUICtrlRead($tab4_chb_mess_mass) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKMASS_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKMASS_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_indi) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_HKINDI_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_HKINDI_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_kontro) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_FTTH_kontroll_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_FTTH_kontroll_02()
EndIf
If GUICtrlRead($tab4_chb_mess_pegel) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_pegelmess_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_pegelmess_Z()
EndIf
If GUICtrlRead($tab4_chb_mess_gpon) = $GUI_CHECKED Then
;zuerst die erste Faser 1 Stück
_check_FTTH_GPON_1()
; jeder Weiter Fasern mit 0,2 oder Zulage je nach Vertrag
_check_FTTH_GPON_02()
EndIf
EndIf
#EndRegion -Messen
#Region Baugruppe einbauen
If GUICtrlRead($tab4_chb_s_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_p_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Patch-Baugruppe einbauen")
EndIf
If GUICtrlRead($tab4_chb_sp_bau_ein) = $GUI_CHECKED Then
_check_Baugruppe_einbauen("Spleiß&Patch-Baugruppe einbauen")
EndIf
#EndRegion Baugruppe einbauen
#Region GF-Innen/Verlegen/SNR
If GUICtrlRead($tab4_chb_GFInnen) = $GUI_CHECKED Then
_check_GF_Innen()
EndIf
If GUICtrlRead($tab4_chb_kanSNr) = $GUI_CHECKED Then
_check_InKaSNRBef()
EndIf
If GUICtrlRead($tab4_chb_ausenbe) = $GUI_CHECKED Then
_check_Auskabelbef()
EndIf
#EndRegion GF-Innen
EndIf
EndFunc ;==>_check_Fasern_messen
Func _check_HKMASS_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKMASS", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKMASS_1
Func _check_HKMASS_02()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_graben[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKMASS", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "0,2")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKMASS_02
Func _check_HKMASS_Z()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_graben[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKMASSZU", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKMASS_Z
Func _check_HKINDI_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKINDI", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKINDI_1
Func _check_HKINDI_02()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_graben[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKINDI", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "0,2")
$sINI_String = StringReplace($sINI_String, $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKINDI_02
Func _check_HKINDI_Z()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_graben[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenHKINDIZU", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_HKINDI_Z
Func _check_FTTH_kontroll_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenFTTH", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_kontroll_1
Func _check_FTTH_kontroll_02()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenFTTH", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "0,2")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_kontroll_02
Func _check_FTTH_GPON_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenGPON", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_GPON_1
Func _check_FTTH_GPON_02()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenGPON", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "0,2")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_FTTH_GPON_02
Func _check_pegelmess_1()
$sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenPegel", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_pegelmess_1
Func _check_pegelmess_Z()
$sText_Bemerkung = "weitere Faser-messen"
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "MessenPegelZU", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", "1")
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_pegelmess_Z
Func _check_Baugruppe_einbauen($sText_Bemerkung)
;~ $sText_Bemerkung = "1. Faser-messen"
Dim $aProzent[6]
$aProzent[1] = "HVT-Baugruppe einbauen" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "BauGruppeEinAusbauen", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Menge%", "1")
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_Baugruppe_einbauen
func _check_GF_Innen()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = $aAngaben_GF[1][12] ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GF-Innen", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", $aAngaben_GF[1][12])
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_InKaSNRBef()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = $aAngaben_GF[1][12] ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "InstKanSNRbe", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", $aAngaben_GF[1][12])
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_Auskabelbef()
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = $aAngaben_GF[1][12] ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "AusKBef", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", $aAngaben_GF[1][12])
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_Kabelaufnwiederein()
;~ $aAngaben_GF[1][0] = $sMuffenbezeichnung ;Muffenbezeichnung
;~ $aAngaben_GF[1][1] = _replaceKom2Punkt($iAF_A1)
;~ $aAngaben_GF[1][2] = _replaceKom2Punkt($iAF_G1)
;~ $aAngaben_GF[1][3] = _replaceKom2Punkt($iAF_G2)
;~ $aAngaben_GF[1][4] = _replaceKom2Punkt($iAF_G3)
;~ $aAngaben_GF[1][5] = _replaceKom2Punkt($iAF_G4)
;~ $aAngaben_GF[1][6] = _replaceKom2Punkt($iAF_G5)
;~ $aAngaben_GF[1][7] = _replaceKom2Punkt($iAF_verb)
local $iAnzahl = 0
if $aAngaben_GF[1][1] <> "" and GUICtrlRead($tab4_chb_A1_neu) = $GUI_UNCHECKED Then
$iAnzahl = $iAnzahl + 1
EndIf
if $aAngaben_GF[1][2] <> "" and GUICtrlRead($tab4_chb_G1_neu) = $GUI_UNCHECKED Then
$iAnzahl =$iAnzahl + 1
EndIf
if $aAngaben_GF[1][3] <> "" and GUICtrlRead($tab4_chb_G2_neu) = $GUI_UNCHECKED Then
$iAnzahl =$iAnzahl + 1
EndIf
if $aAngaben_GF[1][4] <> "" and GUICtrlRead($tab4_chb_G3_neu) = $GUI_UNCHECKED Then
$iAnzahl =$iAnzahl + 1
EndIf
if $aAngaben_GF[1][5] <> "" and GUICtrlRead($tab4_chb_G4_neu) = $GUI_UNCHECKED Then
$iAnzahl =$iAnzahl + 1
EndIf
if $aAngaben_GF[1][6] <> "" and GUICtrlRead($tab4_chb_G5_neu) = $GUI_UNCHECKED Then
$iAnzahl =$iAnzahl + 1
EndIf
If $iAnzahl = 0 Then
Return
EndIf
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $iAnzahl & " Kabel aufnehmen sichern und nach Montage wieder ablegen" ; Bemerkung
$aProzent[3] = "15,0" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GFMKabelaufnw", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", $iAnzahl)
$sINI_String = StringReplace($sINI_String, "%Menge%", "15,0")
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_Fasernablegen()
local $iFasernablage = 0
local $iAnzFaserverb = _replaceKom2Punkt($aAngaben_GF[1][7])
Local $iSumme = 0
ConsoleWrite("1: " & $aAngaben_GF[1][1] & @CRLF)
ConsoleWrite("2: " & $aAngaben_GF[1][2] & @CRLF)
ConsoleWrite("3: " & $aAngaben_GF[1][3] & @CRLF)
ConsoleWrite("4: " & $aAngaben_GF[1][4] & @CRLF)
ConsoleWrite("5: " & $aAngaben_GF[1][5] & @CRLF)
ConsoleWrite("6: " & $aAngaben_GF[1][6] & @CRLF)
;~ $iSumme = $aAngaben_GF[1][1] + $aAngaben_GF[1][2] + $aAngaben_GF[1][3] + $aAngaben_GF[1][4] + $aAngaben_GF[1][5] + $aAngaben_GF[1][6]
;~ ConsoleWrite("Summe: " & $iSumme & @CRLF)
if GUICtrlRead($tab4_chb_A1_neu) = $GUI_CHECKED then
$iSumme = $iSumme + $iFasernablage + $aAngaben_GF[1][1]
ConsoleWrite("Fasernablegen1: " & $iSumme & @CRLF)
EndIf
if GUICtrlRead($tab4_chb_G1_neu) = $GUI_CHECKED then
$iSumme = $iSumme + $iFasernablage + $aAngaben_GF[1][2]
ConsoleWrite("Fasernablegen2: " & $iSumme & @CRLF)
EndIf
if GUICtrlRead($tab4_chb_G2_neu) = $GUI_CHECKED then
$iSumme = $iSumme + $iFasernablage + $aAngaben_GF[1][3]
ConsoleWrite("Fasernablegen3: " & $iSumme & @CRLF)
EndIf
if GUICtrlRead($tab4_chb_G3_neu) = $GUI_CHECKED then
$iSumme = $iSumme + $iFasernablage + $aAngaben_GF[1][4]
ConsoleWrite("Fasernablegen4: " & $iSumme & @CRLF)
EndIf
if GUICtrlRead($tab4_chb_G4_neu) = $GUI_CHECKED then
$iSumme = $iSumme + $iFasernablage + $aAngaben_GF[1][5]
ConsoleWrite("Fasernablegen5: " & $iSumme & @CRLF)
EndIf
if GUICtrlRead($tab4_chb_G5_neu) = $GUI_CHECKED then
$iSumme = $iSumme + $iFasernablage + $aAngaben_GF[1][6]
ConsoleWrite("Fasernablegen: 6" & $iSumme & @CRLF)
EndIf
$iAblegen = ($iSumme - $iAnzFaserverb) / 2
ConsoleWrite("Fasernablegen: " & $iSumme & @CRLF)
ConsoleWrite("Fasernverbinden: " &$iAnzFaserverb & @CRLF)
if $iAblegen <= 0 Then
Return
EndIf
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = "" ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GFFaseernAbl", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", _replacePunkt2Koma($iAblegen))
;~ $sINI_String = StringReplace($sINI_String, "%Menge%", $iAF - 1)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_fasernverbinden()
local $iInOu = ""
if GUICtrlRead($tab4_chb_indoor) = $GUI_CHECKED Then
$iInOu = "GFFasernVerbin"
EndIf
if GUICtrlRead($tab4_chb_outdoor) = $GUI_CHECKED Then
$iInOu = "GFFasernVerbout"
EndIf
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, $iInOu, "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", $aAngaben_GF[1][7])
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_Muffe_bauen()
local $MFaktor = 1.0
if GUICtrlRead($tab4_chb_Muffe_neu) = $GUI_CHECKED then
if GUICtrlRead($tab4_chb_A1_neu) = $GUI_CHECKED then
$iSumme = $iSumme + $iFasernablage + $aAngaben_GF[1][1]
ConsoleWrite("Fasernablegen1: " & $iSumme & @CRLF)
EndIf
if GUICtrlRead($tab4_chb_G1_neu) = $GUI_CHECKED then
$iSumme = $iSumme + $iFasernablage + $aAngaben_GF[1][2]
ConsoleWrite("Fasernablegen2: " & $iSumme & @CRLF)
EndIf
if GUICtrlRead($tab4_chb_G2_neu) = $GUI_CHECKED then
$iSumme = $iSumme + $iFasernablage + $aAngaben_GF[1][3]
ConsoleWrite("Fasernablegen3: " & $iSumme & @CRLF)
EndIf
if GUICtrlRead($tab4_chb_G3_neu) = $GUI_CHECKED then
$iSumme = $iSumme + $iFasernablage + $aAngaben_GF[1][4]
ConsoleWrite("Fasernablegen4: " & $iSumme & @CRLF)
EndIf
if GUICtrlRead($tab4_chb_G4_neu) = $GUI_CHECKED then
$iSumme = $iSumme + $iFasernablage + $aAngaben_GF[1][5]
ConsoleWrite("Fasernablegen5: " & $iSumme & @CRLF)
EndIf
if GUICtrlRead($tab4_chb_G5_neu) = $GUI_CHECKED then
$iSumme = $iSumme + $iFasernablage + $aAngaben_GF[1][6]
ConsoleWrite("Fasernablegen: 6" & $iSumme & @CRLF)
EndIf
$sText_Bemerkung = ""
Dim $aProzent[6]
$aProzent[1] = $aAngaben_GF[1][0] ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "GFMuffebauen", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1,0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc
func _check_GFMuffeKsch()
if GUICtrlRead($tab4_chb_MuffeKsch) = $GUI_CHECKED then
$sText_Bemerkung = "Ksch öffnen"
Dim $aProzent[6]
$aProzent[1] = "" ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, "Sonstiges", "Kschoffnen", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", "1,0")
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
Else
Return
EndIf
EndFunc
#EndRegion GF - Montage
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,261 @@
;ahelper_kabelzug.au3
Global $aAngaben_kabelzug[2][5] = [["Abschnitt von", "Abschnit bis", "Länge", "Anzahl Ksch", "Bezeichn Ksch"]]
Func _ReadInputs2Array_Kabelzug()
$aAngaben_kabelzug[1][0] = GUICtrlRead($tab6_txt_abschn_von) ;Abschnitt von
$aAngaben_kabelzug[1][1] = GUICtrlRead($tab6_txt_abschnitt_bis) ; Abschnitt bis
$aAngaben_kabelzug[1][2] = _replaceKom2Punkt(GUICtrlRead($tab6_txt_lang)) ; Länge
$aAngaben_kabelzug[1][3] = GUICtrlRead($tab6_txt_anzksch)
$aAngaben_kabelzug[1][4] = GUICtrlRead($tab6_txt_bezeichKsch)
EndFunc ;==>_ReadInputs2Array_GF
Func _felder_tab6_zurucksetzen()
GUICtrlSetData($tab6_txt_abschn_von, "")
GUICtrlSetData($tab6_txt_abschnitt_bis, "")
GUICtrlSetData($tab6_txt_lang, "")
GUICtrlSetData($tab6_txt_anzksch, "")
GUICtrlSetData($tab6_txt_bezeichKsch, "")
GUICtrlSetState($tab6_chb_12gf, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_22x7, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_24gf, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_36gf, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_3pipes, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_48gf, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_5pipes, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_72gf, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_7pipes, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_7x12, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_8x7, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_96gf, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_cugr, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_cukl, $GUI_UNCHECKED)
GUICtrlSetState($tab6_belegtrh, $GUI_UNCHECKED)
EndFunc ;==>_felder_tab4_zurucksetzen
func _add_Kabelzug()
Global $sIniDatei = GUICtrlRead($chb_vertrag)
If GUICtrlRead($chb_vertrag) = "" Then
MsgBox(64, "Bitte Vertrag auswählen", "Bitte Vertrag auswählen")
Else
_ini_umwandeln_pfad($sIniDateiPfad & $sIniDatei)
_ReadInputs2Array_Kabelzug()
$sVertragString = GUICtrlRead($chb_vertrag)
If StringInStr($sVertragString, "4650000697") Then
;Kabelschächte
if GUICtrlRead($tab6_txt_anzksch) <> "" Then
_check_Kabelschaechte()
EndIf
;3 Pipes in MFR
If GUICtrlRead($tab6_chb_3pipes) = $GUI_CHECKED Then
_check_Einblassen()
EndIf
; 5 Pipes in MFR
EndIf
If StringInStr($sVertragString, "4650001474") Then
;Kabelschächte
if GUICtrlRead($tab6_txt_anzksch) <> "" Then
_check_Kabelschaechte()
EndIf
EndIf
If StringInStr($sVertragString, "4650003044") Then
;Kabelschächte
if GUICtrlRead($tab6_txt_anzksch) <> "" Then
_check_Kabelschaechte()
EndIf
EndIf
If StringInStr($sVertragString, "4650003822") Then
;Kabelschächte
if GUICtrlRead($tab6_txt_anzksch) <> "" Then
_check_Kabelschaechte()
EndIf
EndIf
_ArrayDelete($aLVListe, 0)
$iCount = -1
_GUIListViewEx_InsertSpec($iLV_Aufma_Index, $iCount, $aLVListe)
Global $aLVListe[1][13]
EndIf
EndFunc
func _check_Kabelschaechte()
$sText_Bemerkung = $aAngaben_kabelzug[1][4]; Bezeichnung der kabelschächte
Dim $aProzent[6]
$aProzent[1] = "Kabelschächte öffnen " ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, "Kabelzug", "ZuKsch", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", $aAngaben_kabelzug[1][3])
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
func _check_Einblassen()
Dim $aProzent[6]
$sAbschnitt = $aAngaben_kabelzug[1][0] & " bis " & $aAngaben_kabelzug[1][1]
If GUICtrlRead($tab6_chb_3pipes) = $GUI_CHECKED Then
$sText_Bemerkung = "3 Pipes in MFR-kl"
EndIf
If GUICtrlRead($tab6_chb_5pipes) = $GUI_CHECKED Then
$sText_Bemerkung = "5 Pipes in MFR-gr"
EndIf
If GUICtrlRead($tab6_chb_7pipes) = $GUI_CHECKED Then
$sText_Bemerkung = "7 in DN 50"
EndIf
If GUICtrlRead($tab6_chb_12gf) = $GUI_CHECKED Then
$sText_Bemerkung = "12 FS GF-Kabel in Pipes " & GUICtrlRead($tab6_cb_pipefarbe)
EndIf
If GUICtrlRead($tab6_chb_24gf) = $GUI_CHECKED Then
$sText_Bemerkung = "24 FS GF-Kabel in Pipes " & GUICtrlRead($tab6_cb_pipefarbe)
EndIf
If GUICtrlRead($tab6_chb_36gf) = $GUI_CHECKED Then
$sText_Bemerkung = "36 FS GF-Kabel in Pipes " & GUICtrlRead($tab6_cb_pipefarbe)
EndIf
If GUICtrlRead($tab6_chb_48gf) = $GUI_CHECKED Then
$sText_Bemerkung = "48 FS GF-Kabel in Pipes " & GUICtrlRead($tab6_cb_pipefarbe)
EndIf
If GUICtrlRead($tab6_chb_72gf) = $GUI_CHECKED Then
$sText_Bemerkung = "72 FS GF-Kabel in Pipes " & GUICtrlRead($tab6_cb_pipefarbe)
EndIf
If GUICtrlRead($tab6_chb_96gf) = $GUI_CHECKED Then
$sText_Bemerkung ="96 FS GF-Kabel in Pipes " & GUICtrlRead($tab6_cb_pipefarbe)
EndIf
$aProzent[1] = $sAbschnitt ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = $aAngaben_kabelzug[1][2] ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
If GUICtrlRead($tab6_belegtrh) = $GUI_CHECKED Then
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, "Kabelzug", "EinBlbe", "NA")
Else
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, "Kabelzug", "EinBlunbe", "NA")
EndIf
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", $aAngaben_FTTH[1][1] - 1)
If GUICtrlRead($tab6_chb_3pipes) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_5pipes) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_7pipes) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_12gf) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_24gf) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_36gf) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_48gf) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_72gf) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_96gf) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc
Func _check_Einbringen()
Dim $aProzent[6]
$sText_Bemerkung = ""
$sAbschnitt = $aAngaben_kabelzug[1][0] & " bis " & $aAngaben_kabelzug[1][1]
If GUICtrlRead($tab6_chb_7x12) = $GUI_CHECKED Then
$sText_Bemerkung = "SNRVe 7x12"
EndIf
If GUICtrlRead($tab6_chb_8x7) = $GUI_CHECKED Then
$sText_Bemerkung = "SNRVE 8x7 " & GUICtrlRead($tab6_dl_verbfarbe)
EndIf
If GUICtrlRead($tab6_chb_22x7) = $GUI_CHECKED Then
$sText_Bemerkung = "SNRVE 22x7 " & GUICtrlRead($tab6_dl_verbfarbe)
EndIf
If GUICtrlRead($tab6_chb_cugr) = $GUI_CHECKED Then
$sText_Bemerkung = "CU 6-100 DA"
EndIf
If GUICtrlRead($tab6_chb_cukl) = $GUI_CHECKED Then
$sText_Bemerkung = "CU > 100 DA"
EndIf
$aProzent[1] = $sAbschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = $aAngaben_kabelzug[1][2] ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
If GUICtrlRead($tab6_belegtrh) = $GUI_CHECKED Then
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, "Kabelzug", "EinBRbe", "NA")
$aProzent[2] = $sText_Bemerkung & " in belegtes Rohr"
Else
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, "Kabelzug", "EinBRunbe", "NA")
EndIf
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", $aAngaben_FTTH[1][1] - 1)
If GUICtrlRead($tab6_chb_7x12) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_8x7) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_22x7) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_cugr) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_cukl) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc
@@ -0,0 +1,92 @@
;ahelper_absperrung.au3
Func _add_Absperrung()
Global $aLVListe[1][13]
$sIniDateiPfad = $sPfadIni
Dim $aProzent[6]
$sIni_Kategorie = "Absperrung"
$sIniReadString = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Absperr", "NA")
$sText_Bemerkung = GUICtrlRead($tab_ab_txt_bemerkung)
$aProzent[1] = GUICtrlRead($tab_ab_txt_abschnitt) ; Abschnitt
$aProzent[2] = $sText_Bemerkung ;Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Absperr", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$iMproTag = GUICtrlRead($tab_ab_txt_anzTGe)
$sINI_String = StringReplace($sINI_String, "%Menge%", $iMproTag)
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
_ArrayDelete($aLVListe, 0)
$iCount = -1
_GUIListViewEx_InsertSpec($iLV_Aufma_Index, $iCount, $aLVListe)
Global $aLVListe[1][13]
EndFunc ;==>_add_Absperrung
Func _absperrungsPosAktu()
_ReadInputs2Array_Absperrung()
EndFunc ;==>_absperrungsPosAktu
Func _ReadInputs2Array_Absperrung()
Global $sIniDatei = GUICtrlRead($chb_vertrag)
If GUICtrlRead($chb_vertrag) = "" Then
MsgBox(64, "Bitte Vertrag auswählen", "Bitte Vertrag auswählen")
Else
$sIni_Kategorie = "Absperrung"
$sIniReadString = IniRead($sIniDateiPfad & $sIniDatei, $sIni_Kategorie, "Absperr", "NA")
;~ ConsoleWrite($sIniReadString& @CRLF)
$aSplitt = StringSplit($sIniReadString, "|")
GUICtrlSetData($tab_ab_ePreis, $aSplitt[12])
$stxt_meter = Int(GUICtrlRead($tab_ab_txt_Meter)) ; anzahl Meter der Absperrung
$stxt_m_rpo_st = GUICtrlRead($tab_ab_txt_m_rpo_st) ; Meter Pro Stück 10
$stxt_anz_tage = GUICtrlRead($tab_ab_txt_anz_tage) ; eingabe Dauer
$stxt_anz_tag = GUICtrlRead($tab_ab_txt_anz_tag) ; laut Position
$stxt_ab_ePreist = GUICtrlRead($tab_ab_ePreis) ; Preis
$stxt_abschnitt = GUICtrlRead($tab_ab_txt_abschnitt)
;~ $stxt_bemerkung =GUICtrlRead($tab_ab_txt_bemerkung)
$stxt_bemerkung = "(" & $stxt_meter & " Meter Absperrung / " & $stxt_m_rpo_st & "m pro Stück) x (" & $stxt_anz_tage & " Anzahl Tage - ab " & $stxt_anz_tag & " Tag )"
GUICtrlSetData($tab_ab_txt_bemerkung, $stxt_bemerkung)
$iMeter = _replaceKom2Punkt($stxt_meter) / _replaceKom2Punkt($stxt_m_rpo_st) ; Anzahl M Absperrung / Meter Pro Stück
$iDauerTage = _replaceKom2Punkt($stxt_anz_tage) - _replaceKom2Punkt($stxt_anz_tag) ;Tage der Absperrung Minus - 5
If StringInStr($iDauerTage, "-") Then
MsgBox(64, "Achtung", "Die Anzahl der Tage ist kleiner gleich (<=) " & $iDauerTage)
GUICtrlSetData($tab_ab_txt_anzTGe, "")
Else
$iMproTag = _replacePunkt2Koma($iMeter * $iDauerTage)
GUICtrlSetData($tab_ab_txt_anzTGe, $iMproTag)
$iGPreis = _replaceKom2Punkt($aSplitt[12]) * _replaceKom2Punkt($iMproTag)
GUICtrlSetData($tab_ab_txt_GP, _replacePunkt2Koma($iGPreis))
;~ $stxt_GPt =GUICtrlRead($tab_ab_txt_GP)
EndIf
EndIf
EndFunc ;==>_ReadInputs2Array_Absperrung
;~ Func _string_replace_Prozent($sString, $aArray)
;~
;~
;~ $sString = _replacePunkt2Koma(StringReplace($sString, "%Leange%", $aArray[3]))
;~ $sString = _replacePunkt2Koma(StringReplace($sString, "%Breite%", $aArray[4]))
;~ $sString = _replacePunkt2Koma(StringReplace($sString, "%Tiefe%", $aArray[5]))
;~ $sString = StringReplace($sString, "%Abschnitt%", $aArray[1])
;~ $sString = StringReplace($sString, "%Bemerkung%", $aArray[2])
;~
;~ Return $sString
;~ EndFunc ;==>_string_replace_Prozent
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,262 @@
;ahelper_kabelzug.au3
Global $aAngaben_kabelzug[2][5] = [["Abschnitt von", "Abschnit bis", "Länge", "Anzahl Ksch", "Bezeichn Ksch"]]
Func _ReadInputs2Array_Kabelzug()
$aAngaben_kabelzug[1][0] = GUICtrlRead($tab6_txt_abschn_von) ;Abschnitt von
$aAngaben_kabelzug[1][1] = GUICtrlRead($tab6_txt_abschnitt_bis) ; Abschnitt bis
$aAngaben_kabelzug[1][2] = _replaceKom2Punkt(GUICtrlRead($tab6_txt_lang)) ; Länge
$aAngaben_kabelzug[1][3] = GUICtrlRead($tab6_txt_anzksch)
$aAngaben_kabelzug[1][4] = GUICtrlRead($tab6_txt_bezeichKsch)
EndFunc ;==>_ReadInputs2Array_Kabelzug
Func _felder_tab6_zurucksetzen()
GUICtrlSetData($tab6_txt_abschn_von, "")
GUICtrlSetData($tab6_txt_abschnitt_bis, "")
GUICtrlSetData($tab6_txt_lang, "")
GUICtrlSetData($tab6_txt_anzksch, "")
GUICtrlSetData($tab6_txt_bezeichKsch, "")
GUICtrlSetState($tab6_chb_12gf, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_22x7, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_24gf, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_36gf, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_3pipes, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_48gf, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_5pipes, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_72gf, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_7pipes, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_7x12, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_8x7, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_96gf, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_cugr, $GUI_UNCHECKED)
GUICtrlSetState($tab6_chb_cukl, $GUI_UNCHECKED)
GUICtrlSetState($tab6_belegtrh, $GUI_UNCHECKED)
EndFunc ;==>_felder_tab6_zurucksetzen
Func _add_Kabelzug()
Global $sIniDatei = GUICtrlRead($chb_vertrag)
If GUICtrlRead($chb_vertrag) = "" Then
MsgBox(64, "Bitte Vertrag auswählen", "Bitte Vertrag auswählen")
Else
_ini_umwandeln_pfad($sIniDateiPfad & $sIniDatei)
_ReadInputs2Array_Kabelzug()
$sVertragString = GUICtrlRead($chb_vertrag)
If StringInStr($sVertragString, "4650000697") Then
;Kabelschächte
If GUICtrlRead($tab6_txt_anzksch) <> "" Then
_check_Kabelschaechte()
EndIf
_check_Einblassen()
_check_Einbringen()
; 5 Pipes in MFR
EndIf
If StringInStr($sVertragString, "4650001474") Then
;Kabelschächte
If GUICtrlRead($tab6_txt_anzksch) <> "" Then
_check_Kabelschaechte()
EndIf
EndIf
If StringInStr($sVertragString, "4650003044") Then
;Kabelschächte
If GUICtrlRead($tab6_txt_anzksch) <> "" Then
_check_Kabelschaechte()
EndIf
_check_Einblassen()
_check_Einbringen()
EndIf
If StringInStr($sVertragString, "4650003822") Then
;Kabelschächte
If GUICtrlRead($tab6_txt_anzksch) <> "" Then
_check_Kabelschaechte()
EndIf
_check_Einblassen()
_check_Einbringen()
EndIf
_ArrayDelete($aLVListe, 0)
$iCount = -1
_GUIListViewEx_InsertSpec($iLV_Aufma_Index, $iCount, $aLVListe)
Global $aLVListe[1][13]
EndIf
EndFunc ;==>_add_Kabelzug
Func _check_Kabelschaechte()
$sText_Bemerkung = $aAngaben_kabelzug[1][4] ; Bezeichnung der kabelschächte
Dim $aProzent[6]
$aProzent[1] = "Kabelschächte öffnen " ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = "" ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma(1) ; Menge bei Stück
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, "Kabelzug", "ZuKsch", "NA")
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
$sINI_String = StringReplace($sINI_String, "%Menge%", $aAngaben_kabelzug[1][3])
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_check_Kabelschaechte
Func _check_Einblassen()
Dim $aProzent[6]
$sAbschnitt = $aAngaben_kabelzug[1][0] & " bis " & $aAngaben_kabelzug[1][1]
If GUICtrlRead($tab6_chb_3pipes) = $GUI_CHECKED Then
$sText_Bemerkung = "3 Pipes in MFR-kl"
EndIf
If GUICtrlRead($tab6_chb_5pipes) = $GUI_CHECKED Then
$sText_Bemerkung = "5 Pipes in MFR-gr"
EndIf
If GUICtrlRead($tab6_chb_7pipes) = $GUI_CHECKED Then
$sText_Bemerkung = "7 in DN 50"
EndIf
If GUICtrlRead($tab6_chb_12gf) = $GUI_CHECKED Then
$sText_Bemerkung = "12 FS GF-Kabel in Pipes " & GUICtrlRead($tab6_cb_pipefarbe)
EndIf
If GUICtrlRead($tab6_chb_24gf) = $GUI_CHECKED Then
$sText_Bemerkung = "24 FS GF-Kabel in Pipes " & GUICtrlRead($tab6_cb_pipefarbe)
EndIf
If GUICtrlRead($tab6_chb_36gf) = $GUI_CHECKED Then
$sText_Bemerkung = "36 FS GF-Kabel in Pipes " & GUICtrlRead($tab6_cb_pipefarbe)
EndIf
If GUICtrlRead($tab6_chb_48gf) = $GUI_CHECKED Then
$sText_Bemerkung = "48 FS GF-Kabel in Pipes " & GUICtrlRead($tab6_cb_pipefarbe)
EndIf
If GUICtrlRead($tab6_chb_72gf) = $GUI_CHECKED Then
$sText_Bemerkung = "72 FS GF-Kabel in Pipes " & GUICtrlRead($tab6_cb_pipefarbe)
EndIf
If GUICtrlRead($tab6_chb_96gf) = $GUI_CHECKED Then
$sText_Bemerkung = "96 FS GF-Kabel in Pipes " & GUICtrlRead($tab6_cb_pipefarbe)
EndIf
$aProzent[1] = $sAbschnitt ;Abschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = $aAngaben_kabelzug[1][2] ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
If GUICtrlRead($tab6_belegtrh) = $GUI_CHECKED Then
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, "Kabelzug", "EinBlbe", "NA")
Else
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, "Kabelzug", "EinBlunbe", "NA")
EndIf
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", $aAngaben_FTTH[1][1] - 1)
If GUICtrlRead($tab6_chb_3pipes) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_5pipes) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_7pipes) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_12gf) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_24gf) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_36gf) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_48gf) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_72gf) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_96gf) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc ;==>_check_Einblassen
Func _check_Einbringen()
Dim $aProzent[6]
$sText_Bemerkung = ""
$sAbschnitt = $aAngaben_kabelzug[1][0] & " bis " & $aAngaben_kabelzug[1][1]
If GUICtrlRead($tab6_chb_7x12) = $GUI_CHECKED Then
$sText_Bemerkung = "SNRVe 7x12"
EndIf
If GUICtrlRead($tab6_chb_8x7) = $GUI_CHECKED Then
$sText_Bemerkung = "SNRVE 8x7 " & GUICtrlRead($tab6_dl_verbfarbe)
EndIf
If GUICtrlRead($tab6_chb_22x7) = $GUI_CHECKED Then
$sText_Bemerkung = "SNRVE 22x7 " & GUICtrlRead($tab6_dl_verbfarbe)
EndIf
If GUICtrlRead($tab6_chb_cugr) = $GUI_CHECKED Then
$sText_Bemerkung = "CU 6-100 DA"
EndIf
If GUICtrlRead($tab6_chb_cukl) = $GUI_CHECKED Then
$sText_Bemerkung = "CU > 100 DA"
EndIf
$aProzent[1] = $sAbschnitt
$aProzent[2] = $sText_Bemerkung ; Bemerkung
$aProzent[3] = $aAngaben_kabelzug[1][2] ; Länge
$aProzent[4] = "" ; Breite
$aProzent[5] = "" ; Tiefe
;~ $aProzent[6] = _replacePunkt2Koma($iAF) -1 ; Menge bei Stück
If GUICtrlRead($tab6_belegtrh) = $GUI_CHECKED Then
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, "Kabelzug", "EinBRbe", "NA")
$aProzent[2] = $sText_Bemerkung & " in belegtes Rohr"
Else
$sINI_String = IniRead($sIniDateiPfad & $sIniDatei, "Kabelzug", "EinBRunbe", "NA")
EndIf
$sINI_String = _string_replace_Prozent($sINI_String, $aProzent)
$sINI_String = StringReplace($sINI_String, "%Faktor%", "1,0")
;~ $sINI_String = StringReplace($sINI_String, "%Leange%", $aAngaben_FTTH[1][1] - 1)
If GUICtrlRead($tab6_chb_7x12) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_8x7) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_22x7) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_cugr) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab6_chb_cukl) = $GUI_CHECKED Then
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc ;==>_check_Einbringen
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,681 @@
;ahelper_sasmecka.au3
Func _add_Mecka_HA()
Global $aVertragsPos = _read_VertragsPositionen2Array()
;~ _DebugArrayDisplay($aVertragsPos)
If GUICtrlRead($tab_sas_chb_ha) <> "" Then
_add_HAPos($aVertragsPos, "01.06.0001")
_add_HAPos($aVertragsPos, "01.06.0003")
_add_HAPos($aVertragsPos, "01.06.0007")
EndIf
If GUICtrlRead($tab_sas_txt_anz_qkr) <> "" Then
_add_HA_QkR($aVertragsPos)
EndIf
If GUICtrlRead($tab_sas_txt_trmeter) <> "" Then
_add_HATBm($aVertragsPos)
_add_HARM($aVertragsPos)
EndIf
If GUICtrlRead($tab_sas_txt_kabelm) <> "" Then
_add_HA_kabelsm($aVertragsPos)
EndIf
If GUICtrlRead($tab_sas_txt_strqm) <> "" Then
_add_HA_Strq($aVertragsPos)
EndIf
If GUICtrlRead($tab_sas_txt_anzsuchgr) <> "" Then
_add_HA_Suchgrube($aVertragsPos)
EndIf
_ArrayDelete($aLVListe, 0)
$iCount = -1
_GUIListViewEx_InsertSpec($iLV_Aufma_Index, $iCount, $aLVListe)
Global $aLVListe[1][13]
EndFunc ;==>_add_Mecka_HA
Func _add_Mecka_TB()
$aVertragsPos = _read_VertragsPositionen2Array()
Global $aNumb = "Error"
If GUICtrlRead($tab_sas_txt_tb_lang) <> "" And GUICtrlRead($tab_sas_txt_tb_tief) <> "" Then
_add_regelgrabenTB($aVertragsPos)
If GUICtrlRead($tab_sas_txt_tb_anz_4x20) <> "" Then
_add_Rohr_4x20($aVertragsPos)
EndIf
If GUICtrlRead($tab_sas_txt_tb_anz_12x10) <> "" Then
_add_Rohr_12x10($aVertragsPos)
EndIf
EndIf
If GUICtrlRead($tab_sas_txt_tb_anzqs) <> "" Then
_add_HA_QkR_tb($aVertragsPos)
EndIf
If GUICtrlRead($tab_sas_txt_tb_kabelm) <> "" Then
_add_HA_kabelsm_tb($aVertragsPos)
EndIf
If GUICtrlRead($tab_sas_txt_tb_anzsuchgr) <> "" Then
_add_TB_Suchgrube($aVertragsPos)
EndIf
_ArrayDelete($aLVListe, 0)
$iCount = -1
_GUIListViewEx_InsertSpec($iLV_Aufma_Index, $iCount, $aLVListe)
Global $aLVListe[1][13]
;~ 01.03.0019 1,00 1,00 1,00 M Zulage für Aushub in Handarbeit
;~ 01.03.0020 1,00 1,00 M Kabel und Rohrleitungen sichern
;~ 01.03.0001 1,00 1,00 1,00 M Regelgraben zur Verlegung von bis zu 2 Rohrverbänden mit einer Überdeckung der Rohranlage von min. 60 cm in unbefestigte Oberfläche herstellen (z.B. Schotter, Erde, Rasen)
;~ 01.03.0002 1,00 1,00 1,00 M Regelgraben zur Verlegung von bis zu 2 Rohrverbänden mit einer Überdeckung der Rohranlage von min. 80 cm in unbefestigte Oberfläche herstellen (z.B. Schotter, Erde, Rasen)
;~ 01.03.0003 1,00 1,00 1,00 M Regelgraben zur Verlegung von bis zu 2 Rohrverbänden mit einer Überdeckung der Rohranlage von min. 120 cm in unbefestigte Oberfläche herstellen (z.B. Schotter, Erde, Rasen)
;~ 01.03.0004 1,00 1,00 1,00 M Regelgraben zur Verlegung von bis zu 2 Rohrverbänden mit einer Überdeckung der Rohranlage von min. 60 cm in befestigte Oberfläche herstellen (z.B. Pflaster, Asphalt- und Betonoberfläche)
;~ 01.03.0005 1,00 1,00 1,00 M Regelgraben zur Verlegung von bis zu 4 Rohrverbänden mit einer Überdeckung der Rohranlage von min. 60 cm in befestigte Oberfläche herstellen (z.B. Pflaster, Asphalt- und Betonoberfläche)
;~ 01.03.0006 1,00 1,00 0,00 M Regelgraben zur Verlegung von bis zu 6 Rohrverbänden mit einer Überdeckung der Rohranlage von min. 60 cm in befestigte Oberfläche herstellen (z.B. Pflaster, Asphalt- und Betonoberfläche
;~ 01.03.0008 1,00 1,00 0,00 M Regelgraben zur Verlegung von bis zu 2 Rohrverbänden mit einer Überdeckung der Rohranlage von min. 80 cm in befestigte Oberfläche herstellen (z.B. Pflaster, Asphalt- und Betonoberfläche)
;~ 01.03.0009 1,00 1,00 0,00 M Regelgraben zur Verlegung von bis zu 4 Rohrverbänden mit einer Überdeckung der Rohranlage von min. 80 cm in befestigte Oberfläche herstellen (z.B. Pflaster, Asphalt- und Betonoberfläche)
;~ 01.03.0010 1,00 1,00 0,00 M Regelgraben zur Verlegung von bis zu 6 Rohrverbänden mit einer Überdeckung der Rohranlage von min. 80 cm in befestigte Oberfläche herstellen (z.B. Pflaster, Asphalt- und Betonoberfläche)
;~ 01.03.0012 1,00 1,00 0,00 M Regelgraben zur Verlegung von bis zu 2 Rohrverbänden mit einer Überdeckung der Rohranlage von min. 120 cm in befestigte Oberfläche herstellen (z.B. Pflaster, Asphalt- und Betonoberfläche)
;~ 01.03.0013 1,00 1,00 0,00 M Regelgraben zur Verlegung von bis zu 4 Rohrverbänden mit einer Überdeckung der Rohranlage von min. 120 cm in befestigte Oberfläche herstellen (z.B. Pflaster, Asphalt- und Betonoberfläche)
;~ 01.03.0014 1,00 1,00 0,00 M Regelgraben zur Verlegung von bis zu 6 Rohrverbänden mit einer Überdeckung der Rohranlage von min. 120 cm in befestigte Oberfläche herstellen (z.B. Pflaster, Asphalt- und Betonoberfläche)
;~ 01.04.0001 1,00 1,00 0,00 M Rohrverband 4x20/15 oder vergleichbarer Rohrverband auf Zuleitungsebene für die Verbindungen BB-AP zu POP und POP zu Netzverteiler, Lieferung und Verlegung
;~ 01.04.0002 1,00 1,00 0,00 M Rohrverbund 12x10/6 oder vergleichbarer Rohrverband auf Verteilebene für die Verbindungen POP/Netzverteiler zu den Gebäuden, Lieferung und Verlegung
;~ 01.03.0007 1,00 1,00 1,00 M Mehrbreite 10 cm, Regelgraben mit einer Überdeckung der Rohranlage von min. 60 cm in befestigte Oberfläche herstellen (z.B. Pflaster,Asphalt- und Betonoberfläche)
;~
;~ 01.03.0001 1,00 1,00 1,00 M Regelgraben zur Verlegung von bis zu 2 Rohrverbänden mit einer Überdeckung der Rohranlage von min. 60 cm in unbefestigte Oberfläche herstellen (z.B. Schotter, Erde, Rasen)
;~ 01.04.0001 1,00 2,00 0,00 M Rohrverband 4x20/15 oder vergleichbarer Rohrverband auf Zuleitungsebene für die Verbindungen BB-AP zu POP und POP zu Netzverteiler, Lieferung und Verlegung
;~ 01.04.0002 1,00 2,00 0,00 M Rohrverbund 12x10/6 oder vergleichbarer Rohrverband auf Verteilebene für die Verbindungen POP/Netzverteiler zu den Gebäuden, Lieferung und Verlegung
;~ 01.03.0007 2,00 1,00 M Mehrbreite 10 cm, Regelgraben mit einer Überdeckung der Rohranlage von min. 60 cm in befestigte Oberfläche herstellen (z.B. Pflaster,Asphalt- und Betonoberfläche)
;~
;~ 01.03.0006 1,00 1,00 0,00 M Regelgraben zur Verlegung von bis zu 6 Rohrverbänden mit einer Überdeckung der Rohranlage von min. 60 cm in befestigte Oberfläche herstellen (z.B. Pflaster, Asphalt- und Betonoberfläche
;~ 01.03.0011 2,00 0,00 M Mehrbreite 10 cm, Regelgraben mit einer Überdeckung der Rohranlage von min. 80 cm in befestigte Oberfläche herstellen (z.B. Pflaster,Asphalt- und Betonoberfläche)
EndFunc ;==>_add_Mecka_TB
Func _add_regelgrabenTB($aVertragsPos)
If GUICtrlRead($tab_sas_chb_unbe) = $GUI_CHECKED Then
If GUICtrlRead($tab_sas_txt_tb_tief) = "0,6" or GUICtrlRead($tab_sas_txt_tb_tief) = "0,60" Then
$aNumb = "01.03.0001"
ConsoleWrite($aNumb & @CRLF)
EndIf
If GUICtrlRead($tab_sas_txt_tb_tief) = "0,8" or GUICtrlRead($tab_sas_txt_tb_tief) = "0,80" Then
$aNumb = "01.03.0002"
ConsoleWrite($aNumb & @CRLF)
EndIf
If GUICtrlRead($tab_sas_txt_tb_tief) = "1,2" or GUICtrlRead($tab_sas_txt_tb_tief) = "1,20" Then
$aNumb = "01.03.0003"
ConsoleWrite($aNumb & @CRLF)
EndIf
$sText_Bemerkung = GUICtrlRead($tab_sas_txt_scantb)
$sAbschnitt = GUICtrlRead($tab_sas_txt_scantb) ;Abschnitt
$iFaktor = "1,0"
$sLeange = GUICtrlRead($tab_sas_txt_tb_lang)
$sBreite = ""
$sTiefe = ""
$sMenge = "1" ;GUICtrlRead($tab_tvum_txt_TVumAP_anz_spl)
;~ ConsoleWrite($aNumb & "=12315 "& @CRLF)
Dim $aPosNr = [$aNumb]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab_sas_chb_be) = $GUI_CHECKED Then
If GUICtrlRead($tab_sas_chb_kg2) = $GUI_CHECKED Then
If GUICtrlRead($tab_sas_txt_tb_tief) = "0,6" or GUICtrlRead($tab_sas_txt_tb_tief) = "0,60" Then
$aNumb = "01.03.0004"
ConsoleWrite($aNumb & @CRLF)
EndIf
If GUICtrlRead($tab_sas_txt_tb_tief) = "0,8" or GUICtrlRead($tab_sas_txt_tb_tief) = "0,80" Then
$aNumb = "01.03.0008"
ConsoleWrite($aNumb & @CRLF)
EndIf
If GUICtrlRead($tab_sas_txt_tb_tief) = "1,2" or GUICtrlRead($tab_sas_txt_tb_tief) = "1,20" Then
$aNumb = "01.03.0012"
ConsoleWrite($aNumb & @CRLF)
EndIf
$sText_Bemerkung = GUICtrlRead($tab_sas_txt_scantb)
$sAbschnitt = GUICtrlRead($tab_sas_txt_scantb) ;Abschnitt
$iFaktor = "1,0"
$sLeange = GUICtrlRead($tab_sas_txt_tb_lang)
$sBreite = ""
$sTiefe = ""
$sMenge = "1" ;GUICtrlRead($tab_tvum_txt_TVumAP_anz_spl)
;~ ConsoleWrite($aNumb & "=12315 "& @CRLF)
Dim $aPosNr = [$aNumb]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab_sas_chb_kg4) = $GUI_CHECKED Then
If GUICtrlRead($tab_sas_txt_tb_tief) = "0,6" or GUICtrlRead($tab_sas_txt_tb_tief) = "0,60" Then
$aNumb = "01.03.0005"
ConsoleWrite($aNumb & @CRLF)
EndIf
If GUICtrlRead($tab_sas_txt_tb_tief) = "0,8" or GUICtrlRead($tab_sas_txt_tb_tief) = "0,80" Then
$aNumb = "01.03.0009"
ConsoleWrite($aNumb & @CRLF)
EndIf
If GUICtrlRead($tab_sas_txt_tb_tief) = "1,2" or GUICtrlRead($tab_sas_txt_tb_tief) = "1,20" Then
$aNumb = "01.03.0013"
ConsoleWrite($aNumb & @CRLF)
EndIf
$sText_Bemerkung = GUICtrlRead($tab_sas_txt_scantb)
$sAbschnitt = GUICtrlRead($tab_sas_txt_scantb) ;Abschnitt
$iFaktor = "1,0"
$sLeange = GUICtrlRead($tab_sas_txt_tb_lang)
$sBreite = ""
$sTiefe = ""
$sMenge = "1" ;GUICtrlRead($tab_tvum_txt_TVumAP_anz_spl)
;~ ConsoleWrite($aNumb & "=12315 "& @CRLF)
Dim $aPosNr = [$aNumb]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
If GUICtrlRead($tab_sas_chb_kg6) = $GUI_CHECKED Then
If GUICtrlRead($tab_sas_txt_tb_tief) = "0,6" or GUICtrlRead($tab_sas_txt_tb_tief) = "0,60" Then
$aNumb = "01.03.0006"
ConsoleWrite($aNumb & @CRLF)
EndIf
If GUICtrlRead($tab_sas_txt_tb_tief) = "0,8" or GUICtrlRead($tab_sas_txt_tb_tief) = "0,80"Then
$aNumb = "01.03.0010"
ConsoleWrite($aNumb & @CRLF)
EndIf
If GUICtrlRead($tab_sas_txt_tb_tief) = "1,2" or GUICtrlRead($tab_sas_txt_tb_tief) = "1,20" Then
$aNumb = "01.03.0014"
ConsoleWrite($aNumb & @CRLF)
EndIf
$sText_Bemerkung = GUICtrlRead($tab_sas_txt_scantb)
$sAbschnitt = GUICtrlRead($tab_sas_txt_scantb) ;Abschnitt
$iFaktor = "1,0"
$sLeange = GUICtrlRead($tab_sas_txt_tb_lang)
$sBreite = ""
$sTiefe = ""
$sMenge = "1" ;GUICtrlRead($tab_tvum_txt_TVumAP_anz_spl)
Dim $aPosNr = [$aNumb]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndIf
EndFunc ;==>_add_regelgrabenTB
Func _add_Rohr_4x20($aVertragsPos)
$aNumb = "01.04.0001"
;~ $iAnzahlrohre = _replaceKom2Punkt(GUICtrlRead($tab_sas_txt_tb_anz_12x10)) + _replaceKom2Punkt(GUICtrlRead($tab_sas_txt_tb_anz_4x20))
$sText_Bemerkung = GUICtrlRead($tab_sas_txt_tb_anz_4x20) & "x 4x20 Rohre"
$sAbschnitt = GUICtrlRead($tab_sas_txt_scantb) ;Abschnitt
$iFaktor = GUICtrlRead($tab_sas_txt_tb_anz_4x20)
$sLeange = GUICtrlRead($tab_sas_txt_tb_lang)
$sBreite = ""
$sTiefe = ""
$sMenge = GUICtrlRead($tab_sas_txt_tb_lang)
Dim $aPosNr = [$aNumb]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_add_Rohr_4x20
Func _add_Rohr_12x10($aVertragsPos)
$aNumb = "01.04.0002"
;~ $iAnzahlrohre = _replaceKom2Punkt(GUICtrlRead($tab_sas_txt_tb_anz_12x10)) + _replaceKom2Punkt(GUICtrlRead($tab_sas_txt_tb_anz_4x20))
$sText_Bemerkung = GUICtrlRead($tab_sas_txt_tb_anz_12x10) & "x 12x10 Rohre"
$sAbschnitt = GUICtrlRead($tab_sas_txt_scantb) ;Abschnitt
$iFaktor = GUICtrlRead($tab_sas_txt_tb_anz_12x10)
$sLeange = GUICtrlRead($tab_sas_txt_tb_lang)
$sBreite = ""
$sTiefe = ""
$sMenge = GUICtrlRead($tab_sas_txt_tb_lang)
Dim $aPosNr = [$aNumb]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_add_Rohr_12x10
Func _add_HAPos($aVertragsPos, $aNumb)
$sText_Bemerkung = GUICtrlRead($tab_sas_txtscanname)
$sAbschnitt = GUICtrlRead($tab_sas_txtscanname) ;Abschnitt
$iFaktor = "1,0"
$sLeange = ""
$sBreite = ""
$sTiefe = ""
$sMenge = "1" ;GUICtrlRead($tab_tvum_txt_TVumAP_anz_spl)
Dim $aPosNr = [$aNumb]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_add_HAPos
Func _add_HATBm($aVertragsPos)
$sText_Bemerkung = ""
$sAbschnitt = GUICtrlRead($tab_sas_txtscanname) ;GUICtrlRead($tab_zw_rv_txt_abschnitt)
$iFaktor = "1,0"
$sLeange = GUICtrlRead($tab_sas_txt_trmeter)
$sBreite = ""
$sTiefe = ""
$sMenge = "1" ;GUICtrlRead($tab_tvum_txt_TVumAP_anz_spl)
;$sText_Bemerkung = ""
Dim $aPosNr = ["01.06.0004"]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_add_HATBm
Func _add_HARM($aVertragsPos)
If GUICtrlRead($tab_sas_chb_einzug10) = $GUI_CHECKED Then
;einzug die neuen Positionen
$sText_Bemerkung = ""
$sAbschnitt = GUICtrlRead($tab_sas_txtscanname) ;GUICtrlRead($tab_zw_rv_txt_abschnitt)
$iFaktor = "1,0"
$sLeange = GUICtrlRead($tab_sas_txt_trmeter)
$sBreite = ""
$sTiefe = ""
$sMenge = GUICtrlRead($tab_sas_txt_trmeter)
;$sText_Bemerkung = ""
Dim $aPosNr = ["01.04.0003"]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
$sText_Bemerkung = ""
$sAbschnitt = GUICtrlRead($tab_sas_txtscanname) ;GUICtrlRead($tab_zw_rv_txt_abschnitt)
$iFaktor = "1,0"
$sLeange = GUICtrlRead($tab_sas_txt_trmeter)
$sBreite = ""
$sTiefe = ""
$sMenge = GUICtrlRead($tab_sas_txt_trmeter)
;$sText_Bemerkung = ""
Dim $aPosNr = ["01.06.0006"]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
Else
$sText_Bemerkung = ""
$sAbschnitt = GUICtrlRead($tab_sas_txtscanname) ;GUICtrlRead($tab_zw_rv_txt_abschnitt)
$iFaktor = "1,0"
$sLeange = _replaceKom2Punkt(GUICtrlRead($tab_sas_txt_trmeter)) + 1 + _replaceKom2Punkt(GUICtrlRead($tab_sas_txt_strqm))
$sBreite = ""
$sTiefe = ""
$sMenge = "1" ;GUICtrlRead($tab_tvum_txt_TVumAP_anz_spl)
;$sText_Bemerkung = ""
Dim $aPosNr = ["01.06.0006"]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndIf
EndFunc ;==>_add_HARM
Func _add_HA_QkR($aVertragsPos)
;Pos 19
$sText_Bemerkung = "Siehe Bild: "
$sAbschnitt = GUICtrlRead($tab_sas_txtscanname)
$iFaktor = 1 * _replaceKom2Punkt(GUICtrlRead($tab_sas_txt_anzqst))
$sLeange = "1,0"
$sBreite = ""
$sTiefe = ""
$sMenge = "1,0" ;GUICtrlRead($tab_tvum_txt_TVumAP_anz_spl)
;$sText_Bemerkung = ""
Dim $aPosNr = ["01.03.0019"]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
;Pos20
$sText_Bemerkung = "Siehe Bild: "
$sAbschnitt = GUICtrlRead($tab_sas_txtscanname)
$iFaktor = GUICtrlRead($tab_sas_txt_anz_qkr)
$sLeange = "0,5"
$sBreite = ""
$sTiefe = ""
$sMenge = "0,5" ;GUICtrlRead($tab_tvum_txt_TVumAP_anz_spl)
;$sText_Bemerkung = ""
Dim $aPosNr = ["01.03.0020"]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_add_HA_QkR
Func _add_HA_Strq($aVertragsPos)
$sText_Bemerkung = "Öffentlicherbereich "
$sAbschnitt = GUICtrlRead($tab_sas_txtscanname)
$iFaktor = "1,0"
$sLeange = GUICtrlRead($tab_sas_txt_strqm)
$sBreite = ""
$sTiefe = ""
$sMenge = GUICtrlRead($tab_sas_txt_strqm);GUICtrlRead($tab_tvum_txt_TVumAP_anz_spl)
;$sText_Bemerkung = ""
Dim $aPosNr = ["01.03.0008"]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
Func _add_HA_Suchgrube($aVertragsPos)
$sText_Bemerkung = "Öffentlicherbereich "
$sAbschnitt = GUICtrlRead($tab_sas_txtscanname)
$iFaktor = "1,0"
$sLeange = ""
$sBreite = ""
$sTiefe = ""
$sMenge = GUICtrlRead($tab_sas_txt_anzsuchgr);GUICtrlRead($tab_tvum_txt_TVumAP_anz_spl)
;$sText_Bemerkung = ""
Dim $aPosNr = ["01.03.0018"]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
; Pos 19 = Anzahl Querungs Stellen
; Pos 20 = Anzahl der Kabelquerungen
Func _add_HA_kabelsm($aVertragsPos)
$sText_Bemerkung = "Siehe Bild: "
$sAbschnitt = GUICtrlRead($tab_sas_txtscanname)
$iFaktor = "1,0"
$sLeange = GUICtrlRead($tab_sas_txt_kabelm)
$sBreite = ""
$sTiefe = ""
$sMenge = GUICtrlRead($tab_sas_txt_kabelm)
;$sText_Bemerkung = ""
Dim $aPosNr = ["01.03.0019"]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
;Pos20
$sText_Bemerkung = "Siehe Bild: "
$sAbschnitt = GUICtrlRead($tab_sas_txtscanname)
$iFaktor = "1,0"
$sLeange = GUICtrlRead($tab_sas_txt_kabelm)
$sBreite = ""
$sTiefe = ""
$sMenge = GUICtrlRead($tab_sas_txt_kabelm)
;$sText_Bemerkung = ""
Dim $aPosNr = ["01.03.0020"]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_add_HA_kabelsm
;$tab_sas_kabelm
;~ Global $Label86 = GUICtrlCreateLabel("Anzahl Q Kabel Rohre:", 698, 120, 120, 17)
;~ Global $tab_sas_txt_tbanzqk = GUICtrlCreateInput("", 827, 116, 45, 22)
;~ Global $Label87 = GUICtrlCreateLabel("Anzahl Querungs Stellen:", 698, 145, 127, 18)
;~ Global $tab_sas_txt_tb_anzqs = GUICtrlCreateInput("", 827, 142, 45, 22)
;~ Global $Label88 = GUICtrlCreateLabel("Kabelsichern Meter:", 697, 173, 98, 17)
Func _add_HA_QkR_tb($aVertragsPos)
;Pos 19
$sText_Bemerkung = "Siehe Bild: "
$sAbschnitt = GUICtrlRead($tab_sas_txt_scantb)
$iFaktor = 1 * _replaceKom2Punkt(GUICtrlRead($tab_sas_txt_tb_anzqs))
$sLeange = "1,0"
$sBreite = ""
$sTiefe = ""
$sMenge = "1,0" ;GUICtrlRead($tab_tvum_txt_TVumAP_anz_spl)
;$sText_Bemerkung = ""
Dim $aPosNr = ["01.03.0019"]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
;Pos20
$sText_Bemerkung = "Siehe Bild: "
$sAbschnitt = GUICtrlRead($tab_sas_txt_scantb)
$iFaktor = GUICtrlRead($tab_sas_txt_tbanzqk)
$sLeange = "0,5"
$sBreite = ""
$sTiefe = ""
$sMenge = "0,5" ;GUICtrlRead($tab_tvum_txt_TVumAP_anz_spl)
;$sText_Bemerkung = ""
Dim $aPosNr = ["01.03.0020"]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_add_HA_QkR_tb
Func _add_HA_kabelsm_tb($aVertragsPos)
$sText_Bemerkung = "Siehe Bild: "
$sAbschnitt = GUICtrlRead($tab_sas_txt_scantb)
$iFaktor = "1,0"
$sLeange = GUICtrlRead($tab_sas_txt_tb_kabelm)
$sBreite = ""
$sTiefe = ""
$sMenge = GUICtrlRead($tab_sas_txt_tb_kabelm)
;$sText_Bemerkung = ""
Dim $aPosNr = ["01.03.0019"]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
;Pos20
$sText_Bemerkung = "Siehe Bild: "
$sAbschnitt = GUICtrlRead($tab_sas_txt_scantb)
$iFaktor = "1,0"
$sLeange = GUICtrlRead($tab_sas_txt_tb_kabelm)
$sBreite = ""
$sTiefe = ""
$sMenge = GUICtrlRead($tab_sas_txt_tb_kabelm)
;$sText_Bemerkung = ""
Dim $aPosNr = ["01.03.0020"]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc ;==>_add_HA_kabelsm_tb
Func _add_TB_Suchgrube($aVertragsPos)
$sText_Bemerkung = "Öffentlicherbereich "
$sAbschnitt = GUICtrlRead($tab_sas_txt_scantb)
$iFaktor = "1,0"
$sLeange = ""
$sBreite = ""
$sTiefe = ""
$sMenge = GUICtrlRead($tab_sas_txt_tb_anzsuchgr)
;$sText_Bemerkung = ""
Dim $aPosNr = ["01.03.0018"]
_Find_Pos_From_Array($aPosNr, $aVertragsPos)
$sNotImVer = "nicht im Vertrag|xxxx|1,0|%Leange%|%Breite%|%Tiefe%||%Einheit%|%Kurztext%|%Bemerkung%||0,00|"
If $sIPosNr <> "" Then
$sINI_String = $sAbschnitt & "|" & $sIPosNr & "|" & _replacePunkt2Koma($iFaktor) & "|" & _replacePunkt2Koma($sLeange) & "|" & _replacePunkt2Koma($sBreite) & "|" & _replacePunkt2Koma($sTiefe) & "|" & $sMenge & "|" & $sIEinheit & "|" & $sIKurztext & "|" & $sText_Bemerkung & "||" & $sIPReis & "|"
Else
$sINI_String = $sNotImVer
EndIf
_ArrayAdd($aLVListe, $sINI_String, 0, "|")
EndFunc
Func _feld_back_tb()
GUICtrlSetData($tab_sas_txt_scantb, "")
GUICtrlSetData($tab_sas_txt_tb_lang, "")
GUICtrlSetData($tab_sas_txt_tb_tief, "")
GUICtrlSetData($tab_sas_txt_tb_anz_12x10, "")
GUICtrlSetData($tab_sas_txt_tb_anz_4x20, "")
GUICtrlSetData($tab_sas_txt_tbanzqk, "")
GUICtrlSetData($tab_sas_txt_tb_anzqs, "")
GUICtrlSetData($tab_sas_txt_tb_kabelm, "")
GUICtrlSetData($tab_sas_txt_tb_anzsuchgr, "")
GUICtrlSetState($tab_sas_chb_unbe, $GUI_UNCHECKED)
GUICtrlSetState($tab_sas_chb_be, $GUI_UNCHECKED)
GUICtrlSetState($tab_sas_chb_kg2, $GUI_UNCHECKED)
GUICtrlSetState($tab_sas_chb_kg4, $GUI_UNCHECKED)
GUICtrlSetState($tab_sas_chb_kg6, $GUI_UNCHECKED)
GUICtrlSetState($tab_sas_chb_einzug10, $GUI_UNCHECKED)
EndFunc ;==>_feld_back_tb
Func _feld_back_ha()
GUICtrlSetData($tab_sas_txtscanname, "")
GUICtrlSetData($tab_sas_txt_trmeter, "")
GUICtrlSetData($tab_sas_txt_kabelm, "")
GUICtrlSetData($tab_sas_txt_anz_qkr, "")
GUICtrlSetData($tab_sas_txt_anzqst, "")
GUICtrlSetData($tab_sas_txt_anzsuchgr, "")
GUICtrlSetData($tab_sas_txt_strqm, "")
GUICtrlSetState($tab_sas_chb_ha, $GUI_UNCHECKED)
EndFunc ;==>_feld_back_ha
+568
View File
@@ -0,0 +1,568 @@
;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, '€</span></div></td><td>([^<]+)</td><td>', 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, '€</span></div></td><td>([^<]+)</td><td>', 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
File diff suppressed because it is too large Load Diff
+650
View File
@@ -0,0 +1,650 @@
; ==============================================================================
; _X31_Export Hauptfunktion
; ==============================================================================
Func _X31_Export($sImportTxt, $sAusgabeX31)
; 1. Datei einlesen
Local $hLese = FileOpen($sImportTxt, 0)
If $hLese = -1 Then
MsgBox(16, "Fehler", "Importdatei nicht gefunden:" & @CRLF & $sImportTxt)
Return SetError(1, 0, False)
EndIf
Local $aRawLines[10001]
$aRawLines[0] = 0
While True
Local $sZ = FileReadLine($hLese)
If @error = -1 Then ExitLoop
$sZ = StringReplace($sZ, Chr(13), "")
If $aRawLines[0] < 10000 Then
$aRawLines[0] += 1
$aRawLines[$aRawLines[0]] = $sZ
EndIf
WEnd
FileClose($hLese)
If $aRawLines[0] = 0 Then
MsgBox(16, "Fehler", "Importdatei ist leer.")
Return SetError(2, 0, False)
EndIf
; 2. Kopfdaten lesen
Local $aKopf[30][2]
Local $iKopfN = 0
Local $bInKopf = False
For $i = 1 To $aRawLines[0]
Local $sL = StringStripWS($aRawLines[$i], 3)
If StringInStr($sL, "[Kopfdaten]") Then
$bInKopf = True
ContinueLoop
EndIf
If StringLeft($sL, 1) = "[" And $bInKopf Then
$bInKopf = False
ContinueLoop
EndIf
If $bInKopf Then
Local $iG = StringInStr($sL, "=")
If $iG > 0 And $iKopfN < 28 Then
$aKopf[$iKopfN][0] = StringStripWS(StringLeft($sL, $iG - 1), 3)
$aKopf[$iKopfN][1] = StringStripWS(StringMid($sL, $iG + 1), 3)
$iKopfN += 1
EndIf
EndIf
Next
; Fallback: erste 15 Zeilen
If $iKopfN = 0 Then
For $i = 1 To ($aRawLines[0] < 15 ? $aRawLines[0] : 15)
Local $sF = StringStripWS($aRawLines[$i], 3)
Local $pF = StringInStr($sF, "=")
If $pF > 0 And $iKopfN < 28 Then
$aKopf[$iKopfN][0] = StringStripWS(StringLeft($sF, $pF - 1), 3)
$aKopf[$iKopfN][1] = StringStripWS(StringMid($sF, $pF + 1), 3)
$iKopfN += 1
EndIf
Next
EndIf
Local $sDatum = _KopfGet($aKopf, "Datum")
Local $sBaustelle = _KopfGet($aKopf, "Baustelle")
Local $sBauabs = _KopfGet($aKopf, "Bauabschnitt")
Local $sVertrag = _KopfGet($aKopf, "Vertrag")
Local $sAspaN = _KopfGet($aKopf, "AspaN")
Local $sAspaTel = _KopfGet($aKopf, "AspaTel")
Local $sISODatum = _DatumISO($sDatum)
Local $sUID = _UUID()
Local $sBoQUID = _UUID()
Local $sLVName = ($sVertrag <> "") ? $sVertrag : ($sBaustelle & " " & $sBauabs)
; Feldlängen auf Dataflor-Limits kürzen
Local $sLVName20 = StringLeft($sLVName, 20)
Local $sBaust50 = StringLeft($sBaustelle, 50)
; 3. Aufmassdaten parsen
; Spalten (0-basiert nach Split mit |):
; 0=Ort, 1=OZ, 2=Faktor, 3=Einzelmenge, 4,5=leer, 6=GesamtMenge,
; 7=Einheit, 8=Beschreibung, 9=Bemerkung, 10=Menge2, 11=EP, 12=GP
Local $aPosData[10001][9]
; [n][0]=OZ, [n][1]=Qty(float), [n][2]=Ort, [n][3]=Beschreibung
; [n][4]=Bemerkung, [n][5]=Einheit, [n][6]=EP, [n][7]=Faktor, [n][8]=EinzelMenge
Local $iPosN = 0
Local $bInData = False
For $i = 1 To $aRawLines[0]
Local $sLine = StringStripWS($aRawLines[$i], 3)
If StringInStr($sLine, "[Aufma") Then
$bInData = True
ContinueLoop
EndIf
If StringLeft($sLine, 1) = "[" And $bInData Then
$bInData = False
ContinueLoop
EndIf
If Not $bInData Then ContinueLoop
If $sLine = "" Then ContinueLoop
If StringStripWS(StringReplace($sLine, "|", ""), 3) = "" Then ContinueLoop
If Not StringInStr($sLine, "|") Then ContinueLoop
Local $aS = StringSplit($sLine, "|", $STR_NOCOUNT)
Local $nS = UBound($aS)
If $nS < 2 Then ContinueLoop
Local $sOZ = ($nS > 1) ? StringStripWS($aS[1], 3) : ""
If Not _IsValidOZ($sOZ) Then ContinueLoop
Local $sOrt = ($nS > 0) ? StringStripWS($aS[0], 3) : ""
Local $sFaktor = ($nS > 2) ? StringStripWS($aS[2], 3) : "1"
Local $sEinzel = ($nS > 3) ? StringStripWS($aS[3], 3) : ""
Local $sGesamt = ($nS > 10) ? StringStripWS($aS[10], 3) : ""
Local $sEinh = ($nS > 7) ? StringStripWS($aS[7], 3) : ""
Local $sBeschr = ($nS > 8) ? StringStripWS($aS[8], 3) : ""
Local $sBemerk = ($nS > 9) ? StringStripWS($aS[9], 3) : ""
Local $sEP = ($nS > 11) ? StringStripWS($aS[11], 3) : ""
; Qty: Spalte 6 (Gesamtmenge) hat immer Vorrang sie ist bereits mit Faktor berechnet.
; Faktor * Einzelmenge wird NICHT selbst gerechnet, da Spalte 6 das Ergebnis enthält.
; Nur wenn Spalte 6 leer/0: Einzelmenge als Fallback, dann Faktor.
Local $fFaktor = _ToFloat($sFaktor)
Local $fEinzel = _ToFloat($sEinzel)
Local $fGesamt = _ToFloat($sGesamt)
Local $fQty = $fGesamt
;~ If $fGesamt <> 0 Then
;~ $fQty = $fGesamt
;~ ElseIf $fEinzel <> 0 Then
;~ $fQty = $fEinzel
;~ Else
;~ $fQty = $fFaktor
;~ EndIf
$aPosData[$iPosN][0] = $sOZ
$aPosData[$iPosN][1] = $fQty
$aPosData[$iPosN][2] = $sOrt
$aPosData[$iPosN][3] = $sBeschr
$aPosData[$iPosN][4] = $sBemerk
$aPosData[$iPosN][5] = $sEinh
$aPosData[$iPosN][6] = $sEP
$aPosData[$iPosN][7] = $sFaktor
$aPosData[$iPosN][8] = $sEinzel
$iPosN += 1
If $iPosN >= 10000 Then ExitLoop
Next
If $iPosN = 0 Then
MsgBox(16, "Fehler", "Keine gueltigen Positionen gefunden.")
Return SetError(3, 0, False)
EndIf
; 4. OZ-Schema ermitteln
; KORREKTUR: Dataflor-kompatible Lengths aus dem echten Dataflor-Export
; Für Typ B (X.X.XX.XXXX):
; Titel(E1): Length=1 '1', '2', '3', ...
; Bauteil(E2): Length=1 '2', '3', '4', ... (NICHT 2!)
; Abschnitt(E3): Length=2 '01', '02', '03', ... (NICHT 3!)
; Position: Length=4 '0470', '0010', ...
; Für Typ A (XX.XX.XXXX):
; Titel(E1): Length=2
; Bauteil(E2): Length=2
; Position: Length=4
Local $sOZTyp = "A"
Local $iMaxPos = 4
For $i = 0 To $iPosN - 1
Local $aOZ = _OZInfo($aPosData[$i][0])
If $aOZ[0] = "B" Then $sOZTyp = "B"
If $aOZ[0] = "C" And $sOZTyp = "A" Then $sOZTyp = "C"
If $aOZ[9] > $iMaxPos Then $iMaxPos = $aOZ[9]
Next
; 5. OZ-Hierarchie aufbauen
; (wie v5, unverändert)
; 6. Zeit
Local $sTime = StringRight("0" & @HOUR, 2) & ":" & StringRight("0" & @MIN, 2) & ":" & StringRight("0" & @SEC, 2)
; 7. XML aufbauen
Local $sX = ""
$sX &= '<?xml version="1.0" encoding="UTF-8"?>' & @CRLF
$sX &= '<!-- REB 23.003 (2009) - X31 Export AutoIt v8 (Dataflor-kompatibel) -->' & @CRLF
$sX &= '<GAEB xmlns="http://www.gaeb.de/GAEB_DA_XML/DA31/3.3" xmlns:BVBS="BVBS">'
; GAEBInfo (kompakt, kein CRLF zwischen Tags - wie Dataflor-Referenz)
$sX &= '<GAEBInfo>'
$sX &= '<Version>3.3</Version>'
$sX &= '<VersDate>2023-01</VersDate>'
$sX &= '<Date>' & $sISODatum & '</Date>'
$sX &= '<Time>' & $sTime & '</Time>'
$sX &= '<ProgSystem>AutoIt REB Engine V1.2</ProgSystem>'
$sX &= '<ProgName>AutoIt REB X31 Export</ProgName>'
$sX &= '</GAEBInfo>'
; QtyDeterm
$sX &= '<QtyDeterm>'
; PrjInfo
$sX &= '<PrjInfo>'
$sX &= '<RefPrjName>' & _XE($sBaust50) & '</RefPrjName>'
$sX &= '<RefPrjID>' & _XE($sLVName20) & '</RefPrjID>'
$sX &= '</PrjInfo>'
; QtyDetermInfo
$sX &= '<QtyDetermInfo ID="' & $sUID & '">'
$sX &= '<MethodDescription>REB23003-2009</MethodDescription>'
$sX &= '</QtyDetermInfo>'
; DP
$sX &= '<DP>31</DP>'
; OWN
$sX &= '<OWN><Address>'
$sX &= '<Name1>' & _XE($sAspaN) & '</Name1>'
$sX &= '<Name2></Name2><Name3/><Name4/>'
$sX &= '<Street></Street><PCode></PCode><City></City>'
$sX &= '<Contact/><Phone>' & _XE($sAspaTel) & '</Phone><Fax/><Email/>'
$sX &= '</Address></OWN>'
; CTR
$sX &= '<CTR><Address><Name1/><Name2></Name2><Name3/><Name4/>'
$sX &= '<Street></Street><PCode></PCode><City></City>'
$sX &= '<Contact/><Phone/><Fax/><Email/></Address></CTR>'
; BoQ
$sX &= '<BoQ ID="DF_' & _NextID() & '">'
$sX &= '<RefBoQName>' & _XE($sLVName20) & '</RefBoQName>'
$sX &= '<RefBoQID>' & $sBoQUID & '</RefBoQID>'
;
; BoQBkdn KORRIGIERT für Dataflor-Kompatibilität
; Dataflor liest die OZ-Segmentlängen exakt aus diesen Length-Feldern.
; Falsche Werte Import wird lautlos abgebrochen!
;
; Typ B (X.X.XX.XXXX) Dataflor-Referenz-Schema:
; Titel Length=1 (E1: 1 Stelle)
; Bauteil Length=1 (E2: 1 Stelle, z.B. '3')
; Abschnitt Length=2 (E3: 2 Stellen, z.B. '01')
; Position Length=4 (Pos: 4 Stellen, z.B. '0470')
; Index Length=1 (immer)
;
; Typ A (XX.XX.XXXX):
; Titel Length=2 (E1)
; Bauteil Length=2 (E2)
; Position Length=4
; Index Length=1
;
Select
Case $sOZTyp = "A"
$sX &= '<BoQBkdn><Type>BoQLevel</Type><LblBoQBkdn>Titel</LblBoQBkdn><Length>2</Length><Num>No</Num></BoQBkdn>'
$sX &= '<BoQBkdn><Type>BoQLevel</Type><LblBoQBkdn>Bauteil</LblBoQBkdn><Length>2</Length><Num>No</Num></BoQBkdn>'
$sX &= '<BoQBkdn><Type>Item</Type><LblBoQBkdn>Position</LblBoQBkdn><Length>' & $iMaxPos & '</Length><Num>No</Num></BoQBkdn>'
$sX &= '<BoQBkdn><Type>Index</Type><LblBoQBkdn>Index</LblBoQBkdn><Length>1</Length><Num>No</Num></BoQBkdn>'
Case $sOZTyp = "B"
; Dataflor-Referenz (verifiziert): Titel L=1, Bauteil L=1, Abschnitt L=2
; Labels exakt wie Dataflor-Export: 'Titel', 'Bauteil', 'Abschnitt'
$sX &= '<BoQBkdn><Type>BoQLevel</Type><LblBoQBkdn>Titel</LblBoQBkdn><Length>1</Length><Num>No</Num></BoQBkdn>'
$sX &= '<BoQBkdn><Type>BoQLevel</Type><LblBoQBkdn>Bauteil</LblBoQBkdn><Length>1</Length><Num>No</Num></BoQBkdn>'
$sX &= '<BoQBkdn><Type>BoQLevel</Type><LblBoQBkdn>Abschnitt</LblBoQBkdn><Length>2</Length><Num>No</Num></BoQBkdn>'
$sX &= '<BoQBkdn><Type>Item</Type><LblBoQBkdn>Position</LblBoQBkdn><Length>' & $iMaxPos & '</Length><Num>No</Num></BoQBkdn>'
$sX &= '<BoQBkdn><Type>Index</Type><LblBoQBkdn>Index</LblBoQBkdn><Length>1</Length><Num>No</Num></BoQBkdn>'
Case $sOZTyp = "C"
$sX &= '<BoQBkdn><Type>BoQLevel</Type><LblBoQBkdn>Titel</LblBoQBkdn><Length>2</Length><Num>No</Num></BoQBkdn>'
$sX &= '<BoQBkdn><Type>Item</Type><LblBoQBkdn>Position</LblBoQBkdn><Length>' & $iMaxPos & '</Length><Num>No</Num></BoQBkdn>'
$sX &= '<BoQBkdn><Type>Index</Type><LblBoQBkdn>Index</LblBoQBkdn><Length>1</Length><Num>No</Num></BoQBkdn>'
EndSelect
; Ctlg
$sX &= '<Ctlg><CtlgID>idDIN276_1993</CtlgID>'
$sX &= '<CtlgType>cost group DIN 276-93</CtlgType>'
$sX &= '<CtlgName>DIN 276-93</CtlgName></Ctlg>'
; BoQBody
$sX &= '<BoQBody>'
; OZ-Zähler für QTakeoff-Blattadressen
Local $iOZCnt = 0
; Eindeutige OZ in TXT-Reihenfolge sammeln
Local $aOZOrder[10000][4]
Local $iOZOrderN = 0
For $i = 0 To $iPosN - 1
Local $aOZi = _OZInfo($aPosData[$i][0])
Local $bFound = False
For $j = 0 To $iOZOrderN - 1
If $aOZOrder[$j][0] = $aOZi[1] And $aOZOrder[$j][1] = $aOZi[2] And _
$aOZOrder[$j][2] = $aOZi[3] And $aOZOrder[$j][3] = $aOZi[4] Then
$bFound = True
ExitLoop
EndIf
Next
If Not $bFound Then
$aOZOrder[$iOZOrderN][0] = $aOZi[1]
$aOZOrder[$iOZOrderN][1] = $aOZi[2]
$aOZOrder[$iOZOrderN][2] = $aOZi[3]
$aOZOrder[$iOZOrderN][3] = $aOZi[4]
$iOZOrderN += 1
EndIf
Next
; Items ausgeben hierarchische Struktur
Local $sCurE1 = ""
Local $sCurE2 = ""
Local $sCurE3 = ""
Local $bIL = False
For $oi = 0 To $iOZOrderN - 1
Local $sE1 = $aOZOrder[$oi][0]
Local $sE2 = $aOZOrder[$oi][1]
Local $sE3 = $aOZOrder[$oi][2]
Local $sPos = $aOZOrder[$oi][3]
Local $bSameE1 = ($sE1 = $sCurE1)
Local $bSameE2 = ($sE2 = $sCurE2) And $bSameE1
Local $bSameE3 = ($sE3 = $sCurE3) And $bSameE2
; Schließen bei Wechsel
If $sOZTyp = "B" And Not $bSameE3 And $bIL Then
$sX &= '</Itemlist></BoQBody>'
$sX &= '</BoQCtgy>'
$bIL = False
$sCurE3 = ""
EndIf
If Not $bSameE2 And $bIL Then
$sX &= '</Itemlist></BoQBody>'
$sX &= '</BoQCtgy>'
$bIL = False
$sCurE3 = ""
EndIf
If $sOZTyp = "B" And Not $bSameE2 And $sCurE2 <> "" Then
$sX &= '</BoQBody>'
$sX &= '</BoQCtgy>'
$sCurE2 = ""
$sCurE3 = ""
EndIf
If Not $bSameE1 And $sCurE1 <> "" Then
$sX &= '</BoQBody>'
$sX &= '</BoQCtgy>'
$sCurE1 = ""
EndIf
; Öffnen
If $sE1 <> $sCurE1 Then
$sX &= '<BoQCtgy RNoPart="' & _XE($sE1) & '" ID="DF_' & _NextID() & '">'
$sX &= '<BoQBody>'
$sCurE1 = $sE1
EndIf
If $sOZTyp = "B" And $sE2 <> $sCurE2 Then
$sX &= '<BoQCtgy RNoPart="' & _XE($sE2) & '" ID="DF_' & _NextID() & '">'
$sX &= '<BoQBody>'
$sCurE2 = $sE2
$sCurE3 = ""
EndIf
If $sOZTyp <> "B" Then $sCurE2 = $sE2
If $sOZTyp = "B" Then $sCurE3 = $sE3
If Not $bIL Then
If $sOZTyp = "B" Then
$sX &= '<BoQCtgy RNoPart="' & _XE($sCurE3) & '" ID="DF_' & _NextID() & '">'
Else
$sX &= '<BoQCtgy RNoPart="' & _XE($sCurE2) & '" ID="DF_' & _NextID() & '">'
EndIf
$sX &= '<BoQBody><Itemlist>'
$bIL = True
EndIf
; Gesamtmenge dieser Position summieren
Local $fQtySum = 0
For $i = 0 To $iPosN - 1
Local $aOZck = _OZInfo($aPosData[$i][0])
If $aOZck[1] <> $sE1 Or $aOZck[2] <> $sE2 Then ContinueLoop
If $sOZTyp = "B" And $aOZck[3] <> $sE3 Then ContinueLoop
If $aOZck[4] <> $sPos Then ContinueLoop
$fQtySum += $aPosData[$i][1]
Next
; Item schreiben
$sX &= '<Item ID="DF_' & _NextID() & '" RNoPart="' & _XE($sPos) & '">'
$sX &= '<QtyDeterm>'
; Qty mit Punkt als Dezimaltrenner (XML-Standard)
$sX &= '<Qty>' & StringReplace(_FmtQty($fQtySum), ",", ".") & '</Qty>'
; Alle Ansätze dieser Position ausgeben
For $i = 0 To $iPosN - 1
Local $aOZan = _OZInfo($aPosData[$i][0])
If $aOZan[1] <> $sE1 Or $aOZan[2] <> $sE2 Then ContinueLoop
If $sOZTyp = "B" And $aOZan[3] <> $sE3 Then ContinueLoop
If $aOZan[4] <> $sPos Then ContinueLoop
; KORREKTUR: _MakeQDetermPair mit BVBS:Explanation
$sX &= _MakeQDetermPair($aPosData[$i][2], $aPosData[$i][1], $iOZCnt)
Next
$sX &= '</QtyDeterm>'
$sX &= '</Item>'
Next
; Alle offenen Tags schließen
If $bIL Then
$sX &= '</Itemlist></BoQBody>'
$sX &= '</BoQCtgy>'
EndIf
If $sOZTyp = "B" And $sCurE2 <> "" Then
$sX &= '</BoQBody>'
$sX &= '</BoQCtgy>'
EndIf
If $sCurE1 <> "" Then
$sX &= '</BoQBody>'
$sX &= '</BoQCtgy>'
EndIf
$sX &= '</BoQBody>'
$sX &= '</BoQ>'
$sX &= '</QtyDeterm>'
$sX &= '</GAEB>'
; 8. Als echtes UTF-8 mit BOM speichern
If FileExists($sAusgabeX31) Then FileDelete($sAusgabeX31)
Local $binBOM = Binary("0xEFBBBF")
Local $binBody = StringToBinary($sX, 4)
Local $binFull = $binBOM & $binBody
Local $bOK = FileWrite($sAusgabeX31, $binFull)
If Not $bOK Or Not FileExists($sAusgabeX31) Then
MsgBox(16, "Fehler", "Ausgabedatei konnte nicht geschrieben werden:" & @CRLF & $sAusgabeX31)
Return SetError(4, 0, False)
EndIf
;~ MsgBox(64, "X31 Export", "X31-Datei erfolgreich erstellt!" & @CRLF & @CRLF & _
;~ "Datei: " & $sAusgabeX31 & @CRLF & _
;~ "Positionen: " & $iPosN & @CRLF & _
;~ "OZ-Typ: " & $sOZTyp & @CRLF & _
;~ "Format: GAEB DA XML 3.3 / DA31 / REB 23.003 - Dataflor-kompatibel")
Return True
EndFunc
; ==============================================================================
; _MakeQDetermPair($sOrt, $fQty, $iOZCnt)
; Erzeugt EIN K+L-Zeilenpaar als zwei QDetermItem-Blöcke
;
; REIHENFOLGE: K-Zeile (Ort) zuerst, dann L-Zeile (Menge)
; QDetermItem { QTakeoff Row="*Ort..."
; BVBS:Explanation "Ort" } K-Zeile zuerst
; QDetermItem { QTakeoff Row="Menge..." } L-Zeile danach
; ==============================================================================
Func _MakeQDetermPair($sOrt, $fQty, ByRef $iOZCnt)
Local $sQty = _FmtQty($fQty)
Local $sOZ1 = _REBOZCode($iOZCnt) ; OZ1 = K-Zeile
$iOZCnt += 1
Local $sOZ2 = _REBOZCode($iOZCnt) ; OZ2 = L-Zeile
$iOZCnt += 1
Local $sOut = ""
; 1. K-Zeile (Ortsbezeichnung) + BVBS:Explanation ZUERST
$sOut &= '<QDetermItem>'
$sOut &= '<QTakeoff Row="' & _XE(_KZeile($sOrt, $sOZ1)) & '"/>'
$sOut &= '<BVBS:Explanation>' & _XE(StringStripWS($sOrt, 3)) & '</BVBS:Explanation>'
$sOut &= '</QDetermItem>'
; 2. L-Zeile (Mengenzeile Formel 91) DANACH
$sOut &= '<QDetermItem>'
$sOut &= '<QTakeoff Row="' & _XE(_LZeile($sQty, $sOZ2)) & '"/>'
$sOut &= '</QDetermItem>'
Return $sOut
EndFunc
; ==============================================================================
; Hilfsfunktionen
; ==============================================================================
; K-Zeile: 12 Leerzeichen + '*' + Ort(56 Zeichen padded) + OZCode(6) + 5 Leerzeichen = 80 Zeichen
Func _KZeile($sOrt, $sOZCode)
Local $sOrtPad = StringLeft($sOrt & " ", 56)
Return " *" & $sOrtPad & $sOZCode & " "
EndFunc
; L-Zeile: 25 Leerzeichen + '100091' + Menge + '=' + (Padding auf 44) + OZCode(6) + 5 Leerzeichen = 80 Zeichen
; Menge mit Komma (DA11-Standard), kein Faktor-Parameter (Menge ist bereits die Gesamtmenge)
Func _LZeile($sMenge, $sOZCode)
Local $sMengeK = StringReplace(StringStripWS($sMenge, 3), ".", ",")
Local $sFormel = "100091" & $sMengeK & "="
While StringLen($sFormel) < 44
$sFormel &= " "
WEnd
$sFormel = StringLeft($sFormel, 44)
Return " " & $sFormel & $sOZCode & " "
EndFunc
; REB Blattadresse aus Zähler (z.B. 0"1000A0", 25"1000Z0", 26"1001A0")
Func _REBOZCode($iIdx)
Local $iBlatt = 1000 + Int($iIdx / 26)
Local $iZeile = Mod($iIdx, 26)
Local $sZeile = Chr(65 + $iZeile)
Return String($iBlatt) & $sZeile & "0"
EndFunc
; Qty formatieren: Komma als Dezimaltrenner, 3 Dezimalstellen (trailing zeros entfernt)
Func _FmtQty($fVal)
Local $fAbs = $fVal
If $fAbs < 0 Then $fAbs = -$fAbs
Local $iGanz = Int($fAbs)
Local $fDez = $fAbs - $iGanz
Local $iD3 = Int($fDez * 1000 + 0.5)
If $iD3 >= 1000 Then
$iGanz += 1
$iD3 = 0
EndIf
Local $sVorz = ""
If $fVal < 0 Then $sVorz = "-"
If $iD3 = 0 Then
Return $sVorz & String($iGanz)
EndIf
Local $sDez = String($iD3)
While StringLen($sDez) < 3
$sDez = "0" & $sDez
WEnd
While StringRight($sDez, 1) = "0" And StringLen($sDez) > 1
$sDez = StringLeft($sDez, StringLen($sDez) - 1)
WEnd
Return $sVorz & String($iGanz) & "," & $sDez
EndFunc
; OZ analysieren: Gibt Array zurück
; [0]=Typ(A/B/C), [1]=E1, [2]=E2, [3]=E3, [4]=Pos, [5]=OZOriginal
Func _OZInfo($sOZ)
Local $aI[10]
$aI[0] = "?"
$aI[1] = ""
$aI[2] = ""
$aI[3] = ""
$aI[4] = $sOZ
$aI[5] = $sOZ
$aI[6] = 0
$aI[7] = 0
$aI[8] = 0
$aI[9] = 0
If $sOZ = "" Then Return $aI
If StringRegExp($sOZ, "^\d{6,10}$") Then
$aI[0] = "C"
$aI[4] = $sOZ
$aI[9] = StringLen($sOZ)
Return $aI
EndIf
Local $aS = StringSplit($sOZ, ".", $STR_NOCOUNT)
Local $n = UBound($aS)
If $n = 3 Then
$aI[0] = "A"
$aI[1] = $aS[0]
$aI[6] = StringLen($aS[0])
$aI[2] = $aS[1]
$aI[7] = StringLen($aS[1])
$aI[4] = $aS[2]
$aI[9] = StringLen($aS[2])
ElseIf $n = 4 Then
$aI[0] = "B"
$aI[1] = $aS[0]
$aI[6] = StringLen($aS[0])
$aI[2] = $aS[1]
$aI[7] = StringLen($aS[1])
$aI[3] = $aS[2]
$aI[8] = StringLen($aS[2])
$aI[4] = $aS[3]
$aI[9] = StringLen($aS[3])
EndIf
$aI[5] = $sOZ
Return $aI
EndFunc
; OZ-Typ prüfen
Func _IsValidOZ($sOZ)
If $sOZ = "" Then Return False
If StringRegExp($sOZ, "^\d{1,4}\.\d{1,4}\.\d{1,6}$") Then Return True
If StringRegExp($sOZ, "^\d{1,4}\.\d{1,4}\.\d{1,4}\.\d{1,6}$") Then Return True
If StringRegExp($sOZ, "^\d{6,10}$") Then Return True
Return False
EndFunc
; Kopfdaten-Wert lesen
Func _KopfGet(ByRef $aKopf, $sKey)
For $i = 0 To UBound($aKopf) - 1
If $aKopf[$i][0] = $sKey Then Return $aKopf[$i][1]
Next
Return ""
EndFunc
; XML-Sonderzeichen kodieren
Func _XE($s)
$s = StringReplace($s, "&", "&amp;")
$s = StringReplace($s, "<", "&lt;")
$s = StringReplace($s, ">", "&gt;")
$s = StringReplace($s, '"', "&quot;")
$s = StringReplace($s, "'", "&apos;")
Return $s
EndFunc
; String zu Float (KommaPunkt)
Func _ToFloat($s)
If $s = "" Then Return 0
$s = StringStripWS($s, 3)
While StringRight($s, 1) = "," Or StringRight($s, 1) = "."
$s = StringLeft($s, StringLen($s) - 1)
WEnd
$s = StringReplace($s, ",", ".")
Return Number($s)
EndFunc
; Datum DD.MM.YYYY YYYY-MM-DD
Func _DatumISO($s)
$s = StringStripWS($s, 3)
If StringRegExp($s, "^\d{2}\.\d{2}\.\d{4}$") Then
Local $aD = StringSplit($s, ".", $STR_NOCOUNT)
Return $aD[2] & "-" & $aD[1] & "-" & $aD[0]
EndIf
Return $s
EndFunc
; Fortlaufende DF_-ID
Func _NextID()
$g_iIDCnt += 1
Return $g_iIDCnt
EndFunc
; Pseudo-UUID
Func _UUID()
Local $sHex = "0123456789abcdef"
Local $sUID = ""
Local $aLen[5]
$aLen[0] = 8
$aLen[1] = 4
$aLen[2] = 4
$aLen[3] = 4
$aLen[4] = 12
For $i = 0 To 4
If $i > 0 Then $sUID &= "-"
For $j = 1 To $aLen[$i]
$sUID &= StringMid($sHex, Random(1, 16, 1), 1)
Next
Next
Return $sUID
EndFunc