;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
