initial commit
This commit is contained in:
409
ArinWarev1/REPORT-OD/Report_검토서.vb
Normal file
409
ArinWarev1/REPORT-OD/Report_검토서.vb
Normal file
@@ -0,0 +1,409 @@
|
||||
Public Class Report_검토서
|
||||
|
||||
Dim T As String = "검토서"
|
||||
|
||||
|
||||
Dim 신재생에너지 As Decimal = 0
|
||||
Dim 난방에너지 As Decimal = 0
|
||||
Dim 냉방에너지 As Decimal = 0
|
||||
Dim 급탕에너지 As Decimal = 0
|
||||
Dim 조명에너지 As Decimal = 0
|
||||
Dim 환기에너지 As Decimal = 0
|
||||
Dim 합계 As Decimal = 0
|
||||
|
||||
|
||||
Private Sub Frm_v20091231_Result_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
|
||||
' Me.DSR.TReqUse.Merge(DSETR1.TReqUse)
|
||||
Me.DS.tbl_Desc.Merge(DSET1.tbl_Desc)
|
||||
|
||||
MakeGraphTable()
|
||||
|
||||
Dim param1 As New Microsoft.Reporting.WinForms.ReportParameter("p_heat", 난방에너지.ToString("N1"))
|
||||
Dim param2 As New Microsoft.Reporting.WinForms.ReportParameter("p_cool", 냉방에너지.ToString("N1"))
|
||||
Dim param3 As New Microsoft.Reporting.WinForms.ReportParameter("p_fan", 환기에너지.ToString("N1"))
|
||||
Dim param5 As New Microsoft.Reporting.WinForms.ReportParameter("p_light", 조명에너지.ToString("N1"))
|
||||
Dim param6 As New Microsoft.Reporting.WinForms.ReportParameter("p_kup", 급탕에너지.ToString("N1"))
|
||||
Dim param7 As New Microsoft.Reporting.WinForms.ReportParameter("p_sum", 합계.ToString("N1"))
|
||||
|
||||
Dim 큰프로파일 As String = ""
|
||||
Dim 바닥면적 As Single = 0
|
||||
For Each dr As DS.tbl_myounRow In DSET1.tbl_myoun.Select("존분류 <> '0' and 존분류 <> ''")
|
||||
If dr.바닥면적 > 바닥면적 Then
|
||||
바닥면적 = dr.바닥면적
|
||||
큰프로파일 = dr.존분류
|
||||
End If
|
||||
Next
|
||||
Dim msg As String = ""
|
||||
If 큰프로파일 = "" Then
|
||||
msg = ""
|
||||
Else
|
||||
Dim 프로파일데이터 As DS.tbl_profile_odRow = DSET1.tbl_profile_od.Select("code ='" + 큰프로파일 + "'")(0)
|
||||
If CInt(큰프로파일) < 1 Then
|
||||
msg = "[ v ] 주거용 (" + 프로파일데이터.설명 + ")"
|
||||
Else
|
||||
msg = "[ v ] 주거용 외 ( " + 프로파일데이터.설명 + " )"
|
||||
End If
|
||||
End If
|
||||
|
||||
Dim param8 As New Microsoft.Reporting.WinForms.ReportParameter("p_주용도", msg)
|
||||
|
||||
Dim 건물용도 As Integer = CInt(DSET1.tbl_myoun.Select("존분류 <> '0'")(0)("존분류").ToString())
|
||||
If 건물용도 < 10 Then '//주거
|
||||
If 합계 <= 190 Then
|
||||
msg = "[ v ] 적합 [ ] 부적합"
|
||||
Else
|
||||
msg = "[ ] 적합 [ v ] 부적합"
|
||||
End If
|
||||
Else '//비주고
|
||||
If 합계 <= 260 Then
|
||||
msg = "[ v ] 적합 [ ] 부적합"
|
||||
Else
|
||||
msg = "[ ] 적합 [ v ] 부적합"
|
||||
End If
|
||||
End If
|
||||
Dim param9 As New Microsoft.Reporting.WinForms.ReportParameter("p_1차적합여부", msg)
|
||||
|
||||
'//r간접:내벽(3,4,5) , 직접:외벽(0,1,2,)
|
||||
'//벽체(0,3),지붕(1,4),바닥(2,5),창(7,8) 계산 (열관류율)
|
||||
|
||||
'//벽체(0,3)
|
||||
Dim 직접_벽체 As Single = 0
|
||||
Dim 간접_벽체 As Single = 0
|
||||
Dim 직접_지붕 As Single = 0
|
||||
Dim 간접_지붕 As Single = 0
|
||||
Dim 직접_바닥 As Single = 0
|
||||
Dim 간접_바닥 As Single = 0
|
||||
Dim 직접_창 As Single = 0
|
||||
Dim 간접_창 As Single = 0
|
||||
Dim 평균열관류율 As Single = 0
|
||||
Dim 전체면적 As Single = 0
|
||||
msg = ""
|
||||
For Each dr면 As DS.tbl_myounRow In DSET1.tbl_myoun.Select("code <> '0'")
|
||||
Dim 열관류코드 As String = dr면.열관류율2
|
||||
If 열관류코드.Trim = "" Then Continue For
|
||||
|
||||
Dim find As Boolean = False
|
||||
Dim multi As Single = 1
|
||||
For Each dr열 As DS.tbl_ykRow In DSET1.tbl_yk.Select("code='" + 열관류코드 + "'")
|
||||
Select Case CInt(dr열.면형태)
|
||||
Case 0 '//외벽,벽체
|
||||
If TOSG(T, dr열.열관류율) > 직접_벽체 Then 직접_벽체 = TOSG(T, dr열.열관류율)
|
||||
find = True
|
||||
Case 3 '//내벽,벽체
|
||||
If TOSG(T, dr열.열관류율) > 간접_벽체 Then 간접_벽체 = TOSG(T, dr열.열관류율)
|
||||
find = True
|
||||
multi = 0.8
|
||||
Case 1 '//외벽,지붕
|
||||
If TOSG(T, dr열.열관류율) > 직접_지붕 Then 직접_지붕 = TOSG(T, dr열.열관류율)
|
||||
Case 4 '//내벽,지붕
|
||||
If TOSG(T, dr열.열관류율) > 간접_지붕 Then 간접_지붕 = TOSG(T, dr열.열관류율)
|
||||
Case 2 '//외벽,바닥
|
||||
If TOSG(T, dr열.열관류율) > 직접_바닥 Then 직접_바닥 = TOSG(T, dr열.열관류율)
|
||||
Case 5 '//내벽,바닥
|
||||
If TOSG(T, dr열.열관류율) > 간접_바닥 Then 간접_바닥 = TOSG(T, dr열.열관류율)
|
||||
Case 7 '//외부창
|
||||
If TOSG(T, dr열.열관류율) > 직접_창 Then 직접_창 = TOSG(T, dr열.열관류율)
|
||||
find = True
|
||||
Case 8 '//내부창
|
||||
If TOSG(T, dr열.열관류율) > 간접_창 Then 간접_창 = TOSG(T, dr열.열관류율)
|
||||
find = True
|
||||
multi = 0.7
|
||||
End Select
|
||||
Next
|
||||
If find Then
|
||||
평균열관류율 += TOSG(T, dr면.열관류율 * multi) * TOSG(T, dr면.건축부위면적)
|
||||
전체면적 += TOSG(T, dr면.건축부위면적)
|
||||
End If
|
||||
Next
|
||||
평균열관류율 = 평균열관류율 / 전체면적
|
||||
|
||||
|
||||
msg = ""
|
||||
If 직접_벽체 <> 0 Then msg = "직접(" + 직접_벽체.ToString() + ")"
|
||||
If 간접_벽체 <> 0 Then msg += IIf(msg = "", "", " , ") + "간접(" + 간접_벽체.ToString() + ")"
|
||||
Dim param10 As New Microsoft.Reporting.WinForms.ReportParameter("p_yk1", msg)
|
||||
|
||||
msg = ""
|
||||
If 직접_지붕 <> 0 Then msg = "직접(" + 직접_지붕.ToString() + ")"
|
||||
If 간접_지붕 <> 0 Then msg += IIf(msg = "", "", " , ") + "간접(" + 간접_지붕.ToString() + ")"
|
||||
Dim param11 As New Microsoft.Reporting.WinForms.ReportParameter("p_yk2", msg)
|
||||
|
||||
msg = ""
|
||||
If 직접_바닥 <> 0 Then msg = "직접(" + 직접_바닥.ToString() + ")"
|
||||
If 간접_바닥 <> 0 Then msg += IIf(msg = "", "", " , ") + "간접(" + 간접_바닥.ToString() + ")"
|
||||
Dim param12 As New Microsoft.Reporting.WinForms.ReportParameter("p_yk3", msg)
|
||||
|
||||
msg = ""
|
||||
If 직접_창 <> 0 Then msg = "직접(" + 직접_창.ToString() + ")"
|
||||
If 간접_창 <> 0 Then msg += IIf(msg = "", "", " , ") + "간접(" + 간접_창.ToString() + ")"
|
||||
Dim param13 As New Microsoft.Reporting.WinForms.ReportParameter("p_yk4", msg)
|
||||
|
||||
Dim param14 As New Microsoft.Reporting.WinForms.ReportParameter("p_yksum", 평균열관류율.ToString("N3"))
|
||||
|
||||
|
||||
'//
|
||||
Dim 온열원설비종류 As String = ""
|
||||
Dim 보일러정격출력 As Single = 0
|
||||
Dim 보일러효율 As Single = 0
|
||||
Dim 보일러정격출력합 As Single = 0
|
||||
Dim 순환수용펌프동력 As Single = 0
|
||||
For Each dr As DS.tbl_nanbangkikiRow In DSET1.tbl_nanbangkiki.Select("code <> '0'")
|
||||
If dr.난방급탕구분.IndexOf("난방") <> -1 Then
|
||||
If dr.보일러정격출력 > 보일러정격출력 Then
|
||||
보일러정격출력 = dr.보일러정격출력
|
||||
온열원설비종류 = dr.열생산기기방식
|
||||
보일러효율 = dr.정격보일러효율
|
||||
순환수용펌프동력 += TOSG(T, dr.펌프동력)
|
||||
End If
|
||||
보일러정격출력합 += TOSG(T, dr.보일러정격출력)
|
||||
End If
|
||||
Next
|
||||
Dim param15 As New Microsoft.Reporting.WinForms.ReportParameter("p_온열원설비종류", 온열원설비종류)
|
||||
Dim param16 As New Microsoft.Reporting.WinForms.ReportParameter("p_온열원설비합계", 보일러정격출력합)
|
||||
Dim param17 As New Microsoft.Reporting.WinForms.ReportParameter("p_온열원설비효율", 보일러효율)
|
||||
|
||||
|
||||
Dim 냉동기방식 As String = ""
|
||||
Dim 냉동기용량 As Single = 0
|
||||
Dim 냉동기효율 As Single = 0
|
||||
Dim 냉동기합 As Single = 0
|
||||
For Each dr As DS.tbl_nangbangkikiRow In DSET1.tbl_nangbangkiki.Select("code <> '0'")
|
||||
If dr.냉동기용량 > 냉동기용량 Then
|
||||
냉동기용량 = dr.냉동기용량
|
||||
냉동기방식 = dr.냉동기방식
|
||||
냉동기효율 = dr.열성능비
|
||||
End If
|
||||
냉동기합 += TOSG(T, dr.냉동기용량)
|
||||
Next
|
||||
Dim param18 As New Microsoft.Reporting.WinForms.ReportParameter("p_냉열원설비종류", 냉동기방식)
|
||||
Dim param19 As New Microsoft.Reporting.WinForms.ReportParameter("p_냉열원설비합계", 냉동기합)
|
||||
Dim param20 As New Microsoft.Reporting.WinForms.ReportParameter("p_냉열원설비효율", 냉동기효율)
|
||||
|
||||
|
||||
'//급탕
|
||||
Dim 급탕용펌프동력 As Single = 0
|
||||
Dim 급탕방식 As String = ""
|
||||
Dim 급탕용량 As Single = 0
|
||||
Dim 급탕효율 As Single = 0
|
||||
Dim 급탕용량합 As Single = 0
|
||||
For Each dr As DS.tbl_nanbangkikiRow In DSET1.tbl_nanbangkiki.Select("code <> '0'")
|
||||
If dr.난방급탕구분.IndexOf("난방") = -1 AndAlso dr.난방급탕구분.IndexOf("급탕") <> -1 Then
|
||||
If dr.보일러정격출력 > 급탕용량 Then
|
||||
급탕용량 = dr.보일러정격출력
|
||||
급탕방식 = dr.열생산기기방식
|
||||
급탕효율 = dr.정격보일러효율
|
||||
급탕용펌프동력 = TOSG(T, dr.펌프동력)
|
||||
End If
|
||||
급탕용량합 += TOSG(T, dr.보일러정격출력)
|
||||
End If
|
||||
Next
|
||||
Dim param21 As New Microsoft.Reporting.WinForms.ReportParameter("p_급탕설비종류", 급탕방식)
|
||||
Dim param22 As New Microsoft.Reporting.WinForms.ReportParameter("p_급탕설비합계", 급탕용량합)
|
||||
Dim param23 As New Microsoft.Reporting.WinForms.ReportParameter("p_급탕설비효율", 급탕효율)
|
||||
|
||||
'//공조(반송설비)
|
||||
Dim 송풍기동력 As Single = 0
|
||||
For Each dr As DS.tbl_kongjoRow In DSET1.tbl_kongjo.Select("code <> '0'")
|
||||
송풍기동력 += dr.배기팬동력 + dr.급기팬동력
|
||||
Next
|
||||
|
||||
Dim param24 As New Microsoft.Reporting.WinForms.ReportParameter("p_순환수용펌프동력", 순환수용펌프동력)
|
||||
Dim param25 As New Microsoft.Reporting.WinForms.ReportParameter("p_급탕용펌프동력", 급탕용펌프동력)
|
||||
Dim param26 As New Microsoft.Reporting.WinForms.ReportParameter("p_송풍기동력", 급탕효율)
|
||||
|
||||
'//조명설비
|
||||
Dim 주거실조명전력 As Single = 0
|
||||
Dim 주조명광원옥내 As String = ""
|
||||
Dim dre As DS.tbl_electRow = DSET1.tbl_elect.Rows(0)
|
||||
Dim param27 As New Microsoft.Reporting.WinForms.ReportParameter("p_주거실조명전력", dre.조명밀도)
|
||||
Dim param28 As New Microsoft.Reporting.WinForms.ReportParameter("p_주조명광원옥내", dre.주조명광원옥내)
|
||||
|
||||
'//지열시스템(2)
|
||||
Dim 지열_용량_난방 As Single = 0
|
||||
Dim 지열_용량_냉방 As Single = 0
|
||||
Dim 지열_효율_난방 As String = ""
|
||||
Dim 지열_효율_냉방 As String = ""
|
||||
For Each dr As DS.tbl_newRow In DSET1.tbl_new.Select("code like '2%'")
|
||||
If dr.지열냉난방구분.IndexOf("난방") <> -1 Then
|
||||
지열_용량_난방 += TOSG(T, dr.지열히트펌프용량)
|
||||
지열_효율_난방 = (dr.열성능비난방)
|
||||
ElseIf dr.지열냉난방구분.IndexOf("냉방") <> -1 Then
|
||||
지열_용량_냉방 += TOSG(T, dr.지열히트펌프용량)
|
||||
지열_효율_냉방 = (dr.열성능비냉방)
|
||||
End If
|
||||
Next
|
||||
Dim param29 As New Microsoft.Reporting.WinForms.ReportParameter("p_지열용량난방", 지열_용량_난방)
|
||||
Dim param30 As New Microsoft.Reporting.WinForms.ReportParameter("p_지열용량냉방", 지열_용량_냉방)
|
||||
Dim param31 As New Microsoft.Reporting.WinForms.ReportParameter("p_지열효율난방", 지열_효율_난방)
|
||||
Dim param32 As New Microsoft.Reporting.WinForms.ReportParameter("p_지열효율냉방", 지열_효율_냉방)
|
||||
|
||||
|
||||
'//태양열시스템(1)
|
||||
Dim 집열판면적 As Single = 0
|
||||
Dim 집열판면적합 As Single = 0
|
||||
Dim 집열판유형 As String = ""
|
||||
Dim 집열판방위 As String = ""
|
||||
Dim 태양열코드 As String = ""
|
||||
For Each dr As DS.tbl_newRow In DSET1.tbl_new.Select("code like '1%'")
|
||||
집열판면적합 += TOSG(T, dr.집열판면적)
|
||||
If TOSG(T, dr.집열판면적) > 집열판면적 Then
|
||||
태양열코드 = dr.code
|
||||
집열판면적 = dr.집열판면적
|
||||
End If
|
||||
Next
|
||||
If 태양열코드 <> "" Then
|
||||
Dim drn() As DS.tbl_newRow = DSET1.tbl_new.Select("code ='" + 태양열코드 + "'")
|
||||
If drn.GetUpperBound(0) <> -1 Then
|
||||
집열판유형 = drn(0).집열기유형
|
||||
집열판방위 = drn(0).집열판방위
|
||||
End If
|
||||
End If
|
||||
Dim param33 As New Microsoft.Reporting.WinForms.ReportParameter("p_태양열집열판면적합", 집열판면적합)
|
||||
Dim param34 As New Microsoft.Reporting.WinForms.ReportParameter("p_태양열집열판유형", 집열판유형)
|
||||
Dim param35 As New Microsoft.Reporting.WinForms.ReportParameter("p_태양열집열판방위", 집열판방위)
|
||||
|
||||
|
||||
'//태양광시스템(3)
|
||||
Dim 모듈면적 As Single = 0
|
||||
Dim 모듈면적합 As Single = 0
|
||||
Dim 모듈방위 As String = ""
|
||||
Dim 모듈기울기 As String = ""
|
||||
Dim 모듈적용타입 As String = ""
|
||||
Dim 태양광코드 As String = ""
|
||||
For Each dr As DS.tbl_newRow In DSET1.tbl_new.Select("code like '3%'")
|
||||
모듈면적합 = TOSG(T, dr.태양광모듈면적)
|
||||
If TOSG(T, dr.태양광모듈면적) > 모듈면적 Then
|
||||
태양광코드 = dr.code
|
||||
모듈면적 = dr.태양광모듈면적
|
||||
End If
|
||||
Next
|
||||
If 태양광코드 <> "" Then
|
||||
Dim drn() As DS.tbl_newRow = DSET1.tbl_new.Select("code ='" + 태양광코드 + "'")
|
||||
If drn.GetUpperBound(0) <> -1 Then
|
||||
모듈방위 = drn(0).태양광모듈방위
|
||||
모듈기울기 = drn(0).태양광모듈기울기
|
||||
모듈적용타입 = drn(0).태양광모듈적용타입
|
||||
End If
|
||||
End If
|
||||
Dim param36 As New Microsoft.Reporting.WinForms.ReportParameter("p_태양광모듈면적합", 모듈면적합)
|
||||
Dim param37 As New Microsoft.Reporting.WinForms.ReportParameter("p_태양광모듈방위", 모듈방위)
|
||||
Dim param38 As New Microsoft.Reporting.WinForms.ReportParameter("p_태양광모듈기울기", 모듈기울기)
|
||||
Dim param39 As New Microsoft.Reporting.WinForms.ReportParameter("p_태양광모듈적용타입", 모듈적용타입)
|
||||
|
||||
|
||||
Dim params As New Microsoft.Reporting.WinForms.ReportParameterCollection()
|
||||
params.Add(param1)
|
||||
params.Add(param2)
|
||||
params.Add(param3)
|
||||
params.Add(param5)
|
||||
params.Add(param6)
|
||||
params.Add(param7)
|
||||
params.Add(param8)
|
||||
params.Add(param9)
|
||||
params.Add(param10)
|
||||
params.Add(param11)
|
||||
params.Add(param12)
|
||||
params.Add(param13)
|
||||
params.Add(param14)
|
||||
params.Add(param15)
|
||||
params.Add(param16)
|
||||
params.Add(param17)
|
||||
params.Add(param18)
|
||||
params.Add(param19)
|
||||
params.Add(param20)
|
||||
params.Add(param21)
|
||||
params.Add(param22)
|
||||
params.Add(param23)
|
||||
params.Add(param24)
|
||||
params.Add(param25)
|
||||
params.Add(param26)
|
||||
params.Add(param27)
|
||||
params.Add(param28)
|
||||
params.Add(param29)
|
||||
params.Add(param30)
|
||||
params.Add(param31)
|
||||
params.Add(param32)
|
||||
params.Add(param33)
|
||||
params.Add(param34)
|
||||
params.Add(param35)
|
||||
params.Add(param36)
|
||||
params.Add(param37)
|
||||
params.Add(param38)
|
||||
params.Add(param39)
|
||||
|
||||
Me.ReportViewer1.LocalReport.SetParameters(params)
|
||||
Me.ReportViewer1.ZoomMode = Microsoft.Reporting.WinForms.ZoomMode.PageWidth
|
||||
Me.ReportViewer1.ZoomPercent = 100
|
||||
Me.ReportViewer1.RefreshReport()
|
||||
End Sub
|
||||
Private Sub MakeGraphTable()
|
||||
'If DSR.TReqUse.Rows.Count < 1 Then Return
|
||||
|
||||
'Dim Dr As DSR.Graph_ReqRow
|
||||
'For Gubun As Short = 0 To 1
|
||||
' For mon As Short = 1 To 12
|
||||
' If Gubun = 0 Then '//6번
|
||||
' Dr = Me.DSR.Graph_Req.NewGraph_ReqRow
|
||||
' Dr.Gubun = "난방에너지요구량"
|
||||
' Dr.Mon = Format(mon, "0") & "월"
|
||||
' Dr.Req = Result1o.E요구량(mon).난방면적
|
||||
' Me.DSR.Graph_Req.Rows.Add(Dr)
|
||||
' Else '//11번
|
||||
' Dr = Me.DSR.Graph_Req.NewGraph_ReqRow
|
||||
' Dr.Gubun = "냉방에너지요구량"
|
||||
' Dr.Mon = Format(mon, "0") & "월"
|
||||
' Dr.Req = Result1o.E요구량(mon).냉방면적
|
||||
' Me.DSR.Graph_Req.Rows.Add(Dr)
|
||||
' End If
|
||||
' Next
|
||||
'Next
|
||||
|
||||
'//연간에너지요구량및소요량
|
||||
'//Graph_requse gubun,type,
|
||||
' 1차에너지소요량 에너지소요량 에너지요구량
|
||||
'신재생에너지(-57)
|
||||
'난방에너지 106 91.87445415 56.14013248
|
||||
'냉방에너지 155.3678094 119.8832527 40.83005443
|
||||
'급탕에너지 42.6421498 14.21404993 14.6
|
||||
'조명에너지 144.2220948 48.07403159 73.08380082
|
||||
'환기에너지 61.68818331 20.56272777
|
||||
|
||||
신재생에너지 = 0
|
||||
If (Result1o.사용면적.H_WF = 0) Then
|
||||
난방에너지 = 0
|
||||
Else
|
||||
난방에너지 = Result1o.일차E소요량(0).난방면적2 * Result1o.사용면적.H / Result1o.사용면적.H_WF
|
||||
End If
|
||||
|
||||
If (Result1o.사용면적.C_WF = 0) Then
|
||||
냉방에너지 = 0
|
||||
Else
|
||||
냉방에너지 = TOSG(T, Result1o.일차E소요량(0).냉방면적 * Result1o.사용면적.C / Result1o.사용면적.C_WF)
|
||||
End If
|
||||
|
||||
If (Result1o.사용면적.W_WF = 0) Then
|
||||
급탕에너지 = 0
|
||||
Else
|
||||
급탕에너지 = Result1o.일차E소요량(0).급탕면적2 * Result1o.사용면적.W / Result1o.사용면적.W_WF
|
||||
End If
|
||||
|
||||
If (Result1o.사용면적.L_WF = 0) Then
|
||||
조명에너지 = 0
|
||||
Else
|
||||
조명에너지 = Result1o.일차E소요량(0).조명면적 * Result1o.사용면적.L / Result1o.사용면적.L_WF
|
||||
End If
|
||||
|
||||
'계산결과!H92*3/계산결과!H27
|
||||
If (Result1o.사용면적.V_WF = 0) Then
|
||||
환기에너지 = 0
|
||||
Else
|
||||
환기에너지 = Result1o.일차E소요량(0).환기면적 * Result1o.사용면적.V / Result1o.사용면적.V_WF
|
||||
End If
|
||||
|
||||
합계 = 난방에너지 + 냉방에너지 + 급탕에너지 + 조명에너지 + 환기에너지
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
End Class
|
||||
Reference in New Issue
Block a user