initial commit
This commit is contained in:
147
ArinWarev1/Forms_Report/Report_설계개선.vb
Normal file
147
ArinWarev1/Forms_Report/Report_설계개선.vb
Normal file
@@ -0,0 +1,147 @@
|
||||
Public Class Report_설계개선
|
||||
|
||||
#Region "data Base 변경여부및 적용방법"
|
||||
|
||||
'''변경된내용을적용한다.
|
||||
Public Overrides Function AcceptChanged() As Boolean
|
||||
|
||||
Return True
|
||||
End Function
|
||||
|
||||
'''변경된내용이있다면 취소한다.
|
||||
Public Overrides Function RejectChanged() As Boolean
|
||||
|
||||
Return True
|
||||
End Function
|
||||
|
||||
'''데이터에변형이있었는가?
|
||||
Public Overrides Function HasChanged() As Boolean
|
||||
Return False
|
||||
End Function
|
||||
|
||||
#End Region
|
||||
|
||||
|
||||
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.월별1차에너지사용량.Merge(DSETR.월별1차에너지사용량)
|
||||
'Me.DSR.Graph_ReqUse.Merge(DSETR.Graph_ReqUse)
|
||||
|
||||
Me.ReportViewer1.ZoomMode = Microsoft.Reporting.WinForms.ZoomMode.Percent
|
||||
Me.ReportViewer1.ZoomPercent = 100
|
||||
|
||||
If MakeGraphTable() Then
|
||||
Dim 합율 As Decimal = Math.Round((1 - (변경후합 / 변경전합)) * 100, 2)
|
||||
Dim param As New Microsoft.Reporting.WinForms.ReportParameter("PSUM", 합율.ToString())
|
||||
Dim params As New Microsoft.Reporting.WinForms.ReportParameterCollection()
|
||||
params.Add(param)
|
||||
Me.ReportViewer1.LocalReport.SetParameters(params)
|
||||
|
||||
Me.ReportViewer1.RefreshReport()
|
||||
|
||||
Else
|
||||
Me.Close()
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
End Sub
|
||||
Private Function MakeGraphTable() As Boolean
|
||||
'//월별 계산별,추측별 데이터를 기록한다.
|
||||
Me.DSR.Graph_ReqUse.Clear()
|
||||
Me.DSR.Graph_ReqUse.AcceptChanges()
|
||||
|
||||
If DSETR1.월별1차에너지사용량.Rows.Count = 0 Then
|
||||
MsgBox("월별1차에너지사용량이 계산되어있지 않습니다." + vbCrLf + "계산을 먼저하세요", MsgBoxStyle.Information, "확인")
|
||||
Return False
|
||||
End If
|
||||
|
||||
'//년면적값확인
|
||||
Dim 년면적 As Decimal = TOSG(DSET1.tbl_Desc.Rows(0)("buildm23"))
|
||||
If 년면적 = 0 Then
|
||||
MsgBox("년면적값이 없습니다" + vbCrLf + "건물개요를 확인하세요", MsgBoxStyle.Information, "확인")
|
||||
Return False
|
||||
End If
|
||||
|
||||
If DSETR1.설계계산결과.Rows.Count < 1 Then
|
||||
MsgBox("설계개선결과가 없습니다" + vbCrLf + "계산을 먼저하세요", MsgBoxStyle.Information, "확인")
|
||||
Return False
|
||||
End If
|
||||
|
||||
'//설계게산파라미터확인
|
||||
Dim 기저비율 As Decimal = 0
|
||||
If DSETR1.설계계산파라미터.Rows.Count > 0 Then
|
||||
Dim dr3 As DSR.설계계산파라미터Row = DSETR1.설계계산파라미터.Rows(0)
|
||||
기저비율 = CDec(dr3.기저비율)
|
||||
End If
|
||||
|
||||
'//
|
||||
Dim 사용자입력값에너지사용량(12) As Decimal
|
||||
|
||||
'//현재 1차에너지사용량
|
||||
Dim 년면적당1(12) As Decimal
|
||||
Dim 년면적당2(12) As Decimal
|
||||
|
||||
|
||||
For i As Integer = 1 To 12
|
||||
|
||||
사용자입력값에너지사용량(i) = 0
|
||||
For Each dr1 As DSR.월별1차에너지사용량Row In DSETR1.월별1차에너지사용량.Select("월='" + i.ToString("00") + "'")
|
||||
사용자입력값에너지사용량(i) += TOSG(dr1.도시가스) + TOSG(dr1.전력) + TOSG(dr1.지역난방)
|
||||
Next
|
||||
|
||||
'//변경전의데이터
|
||||
Dim 보정결과 As DSR.설계계산결과Row = DSETR1.설계계산결과.Rows(i - 1)
|
||||
년면적당1(i) = TOSG(보정결과.난방전) + TOSG(보정결과.냉방전) + TOSG(보정결과.급탕전) + TOSG(보정결과.조명전) + TOSG(보정결과.환기전)
|
||||
|
||||
'//변경후(보정)데이터 (설계계산결과 테이블에 데이터가 있다)
|
||||
|
||||
년면적당2(i) = TOSG(보정결과.난방) + TOSG(보정결과.냉방) + TOSG(보정결과.급탕) + TOSG(보정결과.조명) + TOSG(보정결과.환기)
|
||||
|
||||
년면적당1(i) += 기저비율
|
||||
년면적당2(i) += 기저비율
|
||||
|
||||
변경전합 += 년면적당1(i)
|
||||
변경후합 += 년면적당2(i)
|
||||
|
||||
Dim dr2 As DSR.Graph_ReqUseRow
|
||||
|
||||
dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
|
||||
dr2.Gubun = i.ToString("00")
|
||||
dr2.type = "에너지사용량"
|
||||
dr2.Req = Math.Round(사용자입력값에너지사용량(i), 2)
|
||||
Me.DSR.Graph_ReqUse.Rows.Add(dr2)
|
||||
|
||||
dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
|
||||
dr2.Gubun = i.ToString("00")
|
||||
dr2.type = "1차소요량(전)"
|
||||
dr2.Req = Math.Round(년면적당1(i), 2)
|
||||
Me.DSR.Graph_ReqUse.Rows.Add(dr2)
|
||||
|
||||
dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
|
||||
dr2.Gubun = i.ToString("00")
|
||||
dr2.type = "1차소요량(후)"
|
||||
dr2.Req = Math.Round(년면적당2(i), 2)
|
||||
Me.DSR.Graph_ReqUse.Rows.Add(dr2)
|
||||
|
||||
'//결과% : (1-(결과후/결과전))*100
|
||||
dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
|
||||
dr2.Gubun = i.ToString("00")
|
||||
dr2.type = "개선결과(%)"
|
||||
dr2.Req = Math.Round((1 - (년면적당2(i) / 년면적당1(i))) * 100, 2)
|
||||
Me.DSR.Graph_ReqUse.Rows.Add(dr2)
|
||||
Next
|
||||
|
||||
'//전체합
|
||||
DSR.Graph_ReqUse.AcceptChanges()
|
||||
Return True
|
||||
End Function
|
||||
|
||||
Private Sub Report_그래프_SizeChanged(sender As Object, e As System.EventArgs) Handles Me.SizeChanged
|
||||
Me.Text = Me.Size.ToString
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
Reference in New Issue
Block a user