파일을 열고 무조건 열관류율탭 자동 업데이트 적용
This commit is contained in:
@@ -57,6 +57,158 @@
|
||||
Public DSHistory As New DS2
|
||||
Public Importsameaddress As Boolean = False
|
||||
|
||||
Public Sub Update_열관류율_140409()
|
||||
|
||||
|
||||
For Each DrowYK As DS.tbl_ykRow In DSET1.tbl_yk
|
||||
Dim R_value As Decimal = 0
|
||||
Dim width As Decimal = 0
|
||||
Dim filter As String = "pcode='" + DrowYK.code + "'"
|
||||
For Each Dr As DS.tbl_ykdetailRow In DSET1.tbl_ykdetail.Select(filter, "")
|
||||
If Dr.설명 = "공기층" Then
|
||||
Dr.열전도율 = ""
|
||||
If TOSG(Dr.두께) > 10.0 Then
|
||||
Dr.열저항 = TOST(0.086)
|
||||
R_value += 0.086
|
||||
Else
|
||||
Dr.열저항 = TOST(TOSG(Dr.두께) * 0.0086)
|
||||
R_value = R_value + TOSG(Dr.두께) * 0.0086
|
||||
End If
|
||||
Else '//여기아래 추가하신거에요?
|
||||
|
||||
If Dr.설명.IndexOf("열전달저항") <> -1 Then
|
||||
Dr.두께 = ""
|
||||
Dr.열전도율 = ""
|
||||
Select Case Dr.설명
|
||||
Case "실내열전달저항(벽체)"
|
||||
Dr.열저항 = TOST(0.11)
|
||||
R_value += 0.11
|
||||
Case "실외열전달저항(벽체,간접)"
|
||||
Dr.열저항 = TOST(0.11)
|
||||
R_value += 0.11
|
||||
Case "실외열전달저항(벽체,직접)"
|
||||
Dr.열저항 = TOST(0.043)
|
||||
R_value += 0.043
|
||||
Case "실내열전달저항(바닥)"
|
||||
Dr.열저항 = TOST(0.086)
|
||||
R_value += 0.086
|
||||
Case "실외열전달저항(바닥,간접)"
|
||||
Dr.열저항 = TOST(0.15)
|
||||
R_value += 0.15
|
||||
Case "실외열전달저항(바닥,직접)"
|
||||
Dr.열저항 = TOST(0.043)
|
||||
R_value += 0.043
|
||||
Case "실내열전달저항(지붕)"
|
||||
Dr.열저항 = TOST(0.086)
|
||||
R_value += 0.086
|
||||
Case "실외열전달저항(지붕,간접)"
|
||||
Dr.열저항 = TOST(0.086)
|
||||
R_value += 0.086
|
||||
Case "실외열전달저항(지붕,직접)"
|
||||
Dr.열저항 = TOST(0.043)
|
||||
R_value += 0.043
|
||||
|
||||
End Select
|
||||
|
||||
Else
|
||||
If Dr.열전도율 <> "" AndAlso TOSG(Dr.열전도율) <> 0 Then
|
||||
Dr.열저항 = TOSG(Math.Round(TOSG(Dr.두께) / 1000 / TOSG(Dr.열전도율), 4)).ToString
|
||||
R_value += TOSG(Dr.열저항) '//여부분에서는 나올수잇겟군요.?예
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
If Dr.설명.IndexOf("열전달저항") = -1 Then
|
||||
width += TOSG(Dr.두께)
|
||||
End If
|
||||
Next
|
||||
|
||||
Try
|
||||
If DrowYK.면형태 = "0" Then
|
||||
DrowYK.열관류율 = CSng(Math.Round(1 / R_value, 3)).ToString
|
||||
DrowYK.투과율 = ""
|
||||
Else
|
||||
Dim 면형태 As DS.tbl_commonRow = DSET1.tbl_common.Select("gubun='1088' and code='" + DrowYK.면형태 + "'")(0)
|
||||
If 면형태.name = "외부창" OrElse 면형태.name = "내부창" Then
|
||||
If DrowYK.발코니창호여부 Then
|
||||
DrowYK.열관류율 = Math.Round((1 / ((1 / TOSG(DrowYK.창호열관류율)) + (1 / TOSG(DrowYK.발코니창호열관류율)) * 0.5)), 3)
|
||||
DrowYK.투과율 = Math.Round(TOSG(DrowYK.발코니투과율) * TOSG(DrowYK.일사에너지투과율), 3)
|
||||
Else
|
||||
DrowYK.열관류율 = DrowYK.창호열관류율
|
||||
DrowYK.투과율 = DrowYK.일사에너지투과율
|
||||
End If
|
||||
Else
|
||||
DrowYK.열관류율 = CSng(Math.Round(1 / R_value, 3)).ToString
|
||||
DrowYK.투과율 = ""
|
||||
End If
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
DrowYK.열관류율 = ""
|
||||
DrowYK.투과율 = ""
|
||||
End Try
|
||||
|
||||
Next
|
||||
|
||||
|
||||
|
||||
'//열관류율이 링크된 모든면의 건축부위 데이터를 열관류율 화면의 건축부위 데이터로 갱신
|
||||
For Each Drow As DS.tbl_myounRow In DSET1.tbl_myoun
|
||||
|
||||
If Drow.RowState = DataRowState.Deleted OrElse Drow.RowState = DataRowState.Detached Then Continue For
|
||||
|
||||
#If DEBUG Then
|
||||
If Drow.code = "0009" Then
|
||||
MsgBox("test")
|
||||
End If
|
||||
#End If
|
||||
|
||||
If Drow.열관류율2 <> "0" Then
|
||||
Try '==========================================2014.04.17 열관류율 삭제시 코드번호가 남아 오류 발생하는 현상을 try 안으로 넣음
|
||||
Dim Dr As DS.tbl_ykRow = DSET1.tbl_yk.Select("code='" & Drow.열관류율2.ToString & "'")(0)
|
||||
Drow.건축부위방식 = Dr.면형태 '// 링크된 열관류율에서 면형태를 가져옴..
|
||||
Select Case Dr.면형태
|
||||
Case "외벽(벽체)", "0"
|
||||
Drow.건축부위방식 = "외벽"
|
||||
Case "외벽(지붕)", "0001"
|
||||
Drow.건축부위방식 = "외벽"
|
||||
'Drow.방위 = "수평"
|
||||
Case "외벽(바닥)", "0002"
|
||||
Drow.건축부위방식 = "외벽"
|
||||
'Drow.방위 = "일사없음"
|
||||
Case "내벽(벽체)", "0003", "지중벽", "0009"
|
||||
Drow.건축부위방식 = "내벽"
|
||||
Drow.방위 = "일사없음"
|
||||
Case "내벽(지붕)", "0004"
|
||||
Drow.건축부위방식 = "내벽"
|
||||
Drow.방위 = "일사없음"
|
||||
Case "내벽(바닥)", "0005"
|
||||
Drow.건축부위방식 = "내벽"
|
||||
Drow.방위 = "일사없음"
|
||||
Case "간벽", "0006"
|
||||
Drow.건축부위방식 = "간벽"
|
||||
Drow.방위 = "일사없음"
|
||||
Case "외부창", "0007"
|
||||
Drow.건축부위방식 = "외부창"
|
||||
'Drow.투과율 = Dr.일사에너지투과율
|
||||
Case "내부창", "0008"
|
||||
Drow.건축부위방식 = "내부창"
|
||||
'Drow.투과율 = Dr.일사에너지투과율
|
||||
Case Else
|
||||
MsgBox("모르는값 " & Dr("면형태").ToString & "/" & Dr.면형태)
|
||||
End Select
|
||||
|
||||
Catch ex As Exception
|
||||
|
||||
End Try
|
||||
End If
|
||||
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Public Function 프로필급탕요구량(면적별범위 As Char) As Decimal
|
||||
'Drow프로필.일일급탕요구량()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user