파일 열기 메뉴 펑션으로 분리
데이터 정정 작업을 펑션으로 분리하고, import 기능에서도 추가 호출 가져오기시 메뉴 자동 업데이트 되도록 함
This commit is contained in:
@@ -711,155 +711,7 @@ Public Class MdiMain
|
||||
Frm_Work.Label1.Text = "데이터를 확인하고 있습니다"
|
||||
Frm_Work.Show()
|
||||
|
||||
If DSET1.tbl_buha.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_buha.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_bunbae.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_bunbae.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_kongjo.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_kongjo.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_kongkub.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_kongkub.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_myoun.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_myoun.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_nanbangkiki.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_nanbangkiki.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_nangbangkiki.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_nangbangkiki.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_nbunbae.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_nbunbae.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_new.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_new.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_profile.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_profile.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_weather.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_weather.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_zone.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_zone.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_yk.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_yk.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_Desc.Rows.Count < 1 Then
|
||||
MsgBox("건물개요데이터가 없으므로 초기자료를 생성합니다", MsgBoxStyle.Critical, "확인")
|
||||
Dim newdescdr As DS.tbl_DescRow = DSET1.tbl_Desc.NewRow
|
||||
newdescdr.name = "오류"
|
||||
newdescdr.buildarea = "010100"
|
||||
DSET1.tbl_Desc.Addtbl_DescRow(newdescdr)
|
||||
DSET1.tbl_Desc.AcceptChanges()
|
||||
Else
|
||||
If isNew Then '//신규작성파일이 ㄴ경우
|
||||
Dim drDesc1 As DS.tbl_DescRow = DSET1.tbl_Desc.Rows(0)
|
||||
drDesc1.buildarea = "010100" '//서울로 지정
|
||||
drDesc1.EndEdit()
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
'//건물용도기본값
|
||||
Dim 용도 As String = DSET1.tbl_Desc.Rows(0)("isjugo").ToString
|
||||
If IsNumeric(용도) = False Then
|
||||
pLog.Add(String.Format("건물개요의 용도값이 숫자가아니므로 1로 설정합니다"))
|
||||
DSET1.tbl_Desc.Rows(0)("isjugo") = "1"
|
||||
End If
|
||||
|
||||
'//그룹명이없는경우 처리함(130810:arin)
|
||||
For Each dr As DS.tbl_zoneRow In DSET1.tbl_zone.Select("isnull(그룹,'')=''")
|
||||
pLog.Add(String.Format("그룹명이없는 경우이므로 '기본'으로 설정합니다 Zone Code={0}", dr.code))
|
||||
dr.그룹 = "기본"
|
||||
Next
|
||||
|
||||
'//월별에너지사용량데이터영역생성(130819:arin)
|
||||
If DSET1.tbl_monuse.Rows.Count = 0 Then
|
||||
For y As Integer = 1 To 3
|
||||
Dim idx As String = y.ToString("0000")
|
||||
For i As Integer = 1 To 12
|
||||
DSET1.tbl_monuse.Rows.Add(New String() {y.ToString() + "차년도", i.ToString("00"), "0", "0", "0", idx}) '//년,월,도시가스,전력,지역난방,코드
|
||||
Next
|
||||
Next
|
||||
End If
|
||||
|
||||
'//140808 데이터 기본값 처리
|
||||
'//입력존
|
||||
If Not DSET1 Is Nothing Then
|
||||
For i As Integer = 1 To DSET1.tbl_zone.Rows.Count
|
||||
|
||||
'//순실체적 재계산 150111
|
||||
'순실체적NTb.Text = TOST(TOSG(면적NTb.Text) * TOSG(천장고NTb.Text))
|
||||
Dim 면적 As String = ""
|
||||
Dim 천장고 As String = ""
|
||||
Dim 순실체적 As String = ""
|
||||
Try
|
||||
면적 = DSET1.tbl_zone.Rows(i - 1)("면적").ToString
|
||||
Catch ex As Exception
|
||||
면적 = ""
|
||||
End Try
|
||||
Try
|
||||
천장고 = DSET1.tbl_zone.Rows(i - 1)("천장고p").ToString
|
||||
Catch ex As Exception
|
||||
천장고 = ""
|
||||
End Try
|
||||
Try
|
||||
순실체적 = DSET1.tbl_zone.Rows(i - 1)("순실체적").ToString
|
||||
Catch ex As Exception
|
||||
순실체적 = ""
|
||||
End Try
|
||||
If IsNumeric(면적) AndAlso IsNumeric(천장고) Then
|
||||
If Not IsNumeric(순실체적) Then
|
||||
' MsgBox("순실체적값이 없으므로 재계산 합니다", MsgBoxStyle.Information, "확인")
|
||||
DSET1.tbl_zone.Rows(i - 1)("순실체적") = CSng(면적) * CSng(천장고)
|
||||
End If
|
||||
End If
|
||||
If DSET1.tbl_zone.Rows(i - 1).RowState = DataRowState.Deleted OrElse _
|
||||
DSET1.tbl_zone.Rows(i - 1).RowState = DataRowState.Detached Then
|
||||
Continue For
|
||||
End If
|
||||
Dim StrCode As String = DSET1.tbl_zone.Rows(i - 1)("code").ToString
|
||||
If StrCode.Length = 4 Then
|
||||
DSET1.tbl_zone.Rows(i - 1)("code") = "0" + StrCode
|
||||
End If
|
||||
Next
|
||||
DSET1.tbl_zone.AcceptChanges()
|
||||
End If
|
||||
|
||||
If Not DSET2 Is Nothing Then
|
||||
For i As Integer = 1 To DSET2.tbl_zone.Rows.Count
|
||||
If DSET2.tbl_zone.Rows(i - 1).RowState = DataRowState.Deleted OrElse _
|
||||
DSET2.tbl_zone.Rows(i - 1).RowState = DataRowState.Detached Then
|
||||
Continue For
|
||||
End If
|
||||
Dim StrCode As String = DSET2.tbl_zone.Rows(i - 1)("code").ToString
|
||||
If StrCode.Length = 4 Then
|
||||
DSET2.tbl_zone.Rows(i - 1)("code") = "0" + StrCode
|
||||
End If
|
||||
Next
|
||||
DSET2.tbl_zone.AcceptChanges()
|
||||
End If
|
||||
|
||||
'//입력면
|
||||
If Not DSET1 Is Nothing Then
|
||||
For i As Integer = 1 To DSET1.tbl_myoun.Rows.Count
|
||||
If DSET1.tbl_myoun.Rows(i - 1).RowState = DataRowState.Deleted OrElse _
|
||||
DSET1.tbl_myoun.Rows(i - 1).RowState = DataRowState.Detached Then
|
||||
Continue For
|
||||
End If
|
||||
Dim StrCode As String = DSET1.tbl_myoun.Rows(i - 1)("code").ToString
|
||||
If StrCode.Length = 4 Then
|
||||
DSET1.tbl_myoun.Rows(i - 1)("code") = "0" + StrCode
|
||||
End If
|
||||
|
||||
Dim StrCode2 As String = DSET1.tbl_myoun.Rows(i - 1)("존분류").ToString
|
||||
If StrCode2.Length = 4 Then
|
||||
DSET1.tbl_myoun.Rows(i - 1)("존분류") = "0" + StrCode2
|
||||
End If
|
||||
Next
|
||||
DSET1.tbl_myoun.AcceptChanges()
|
||||
End If
|
||||
|
||||
If Not DSET2 Is Nothing Then
|
||||
For i As Integer = 1 To DSET2.tbl_myoun.Rows.Count
|
||||
If DSET2.tbl_myoun.Rows(i - 1).RowState = DataRowState.Deleted OrElse _
|
||||
DSET2.tbl_myoun.Rows(i - 1).RowState = DataRowState.Detached Then
|
||||
Continue For
|
||||
End If
|
||||
Dim StrCode As String = DSET2.tbl_myoun.Rows(i - 1)("code").ToString
|
||||
If StrCode.Length = 4 Then
|
||||
DSET2.tbl_myoun.Rows(i - 1)("code") = "0" + StrCode
|
||||
End If
|
||||
|
||||
Dim StrCode2 As String = DSET2.tbl_myoun.Rows(i - 1)("존분류").ToString
|
||||
If StrCode2.Length = 4 Then
|
||||
DSET2.tbl_myoun.Rows(i - 1)("존분류") = "0" + StrCode2
|
||||
End If
|
||||
|
||||
Next
|
||||
DSET2.tbl_myoun.AcceptChanges()
|
||||
End If
|
||||
FixData(isNew) '//221218 chi import 기능과 공유하기 위해 데이터 보정기능을 분리
|
||||
|
||||
Frm_Work.Close()
|
||||
|
||||
@@ -999,10 +851,6 @@ Public Class MdiMain
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Read_WeatherFile()
|
||||
|
||||
Menu_건물개요()
|
||||
@@ -1077,6 +925,160 @@ Public Class MdiMain
|
||||
|
||||
End Sub
|
||||
|
||||
Sub FixData(isNew As Boolean)
|
||||
|
||||
If DSET1.tbl_buha.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_buha.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_bunbae.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_bunbae.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_kongjo.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_kongjo.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_kongkub.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_kongkub.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_myoun.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_myoun.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_nanbangkiki.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_nanbangkiki.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_nangbangkiki.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_nangbangkiki.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_nbunbae.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_nbunbae.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_new.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_new.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_profile.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_profile.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_weather.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_weather.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_zone.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_zone.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_yk.Select("code='0'").GetUpperBound(0) = -1 Then DSET1.tbl_yk.Rows.Add(New String() {"0", "(없음)"})
|
||||
If DSET1.tbl_Desc.Rows.Count < 1 Then
|
||||
MsgBox("건물개요데이터가 없으므로 초기자료를 생성합니다", MsgBoxStyle.Critical, "확인")
|
||||
Dim newdescdr As DS.tbl_DescRow = DSET1.tbl_Desc.NewRow
|
||||
newdescdr.name = "오류"
|
||||
newdescdr.buildarea = "010100"
|
||||
DSET1.tbl_Desc.Addtbl_DescRow(newdescdr)
|
||||
DSET1.tbl_Desc.AcceptChanges()
|
||||
Else
|
||||
If isNew Then '//신규작성파일이 ㄴ경우
|
||||
Dim drDesc1 As DS.tbl_DescRow = DSET1.tbl_Desc.Rows(0)
|
||||
drDesc1.buildarea = "010100" '//서울로 지정
|
||||
drDesc1.EndEdit()
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
'//건물용도기본값
|
||||
Dim 용도 As String = DSET1.tbl_Desc.Rows(0)("isjugo").ToString
|
||||
If IsNumeric(용도) = False Then
|
||||
pLog.Add(String.Format("건물개요의 용도값이 숫자가아니므로 1로 설정합니다"))
|
||||
DSET1.tbl_Desc.Rows(0)("isjugo") = "1"
|
||||
End If
|
||||
|
||||
'//그룹명이없는경우 처리함(130810:arin)
|
||||
For Each dr As DS.tbl_zoneRow In DSET1.tbl_zone.Select("isnull(그룹,'')=''")
|
||||
pLog.Add(String.Format("그룹명이없는 경우이므로 '기본'으로 설정합니다 Zone Code={0}", dr.code))
|
||||
dr.그룹 = "기본"
|
||||
Next
|
||||
|
||||
'//월별에너지사용량데이터영역생성(130819:arin)
|
||||
If DSET1.tbl_monuse.Rows.Count = 0 Then
|
||||
For y As Integer = 1 To 3
|
||||
Dim idx As String = y.ToString("0000")
|
||||
For i As Integer = 1 To 12
|
||||
DSET1.tbl_monuse.Rows.Add(New String() {y.ToString() + "차년도", i.ToString("00"), "0", "0", "0", idx}) '//년,월,도시가스,전력,지역난방,코드
|
||||
Next
|
||||
Next
|
||||
End If
|
||||
|
||||
'//140808 데이터 기본값 처리
|
||||
'//입력존
|
||||
If Not DSET1 Is Nothing Then
|
||||
For i As Integer = 1 To DSET1.tbl_zone.Rows.Count
|
||||
|
||||
'//순실체적 재계산 150111
|
||||
'순실체적NTb.Text = TOST(TOSG(면적NTb.Text) * TOSG(천장고NTb.Text))
|
||||
Dim 면적 As String = ""
|
||||
Dim 천장고 As String = ""
|
||||
Dim 순실체적 As String = ""
|
||||
Try
|
||||
면적 = DSET1.tbl_zone.Rows(i - 1)("면적").ToString
|
||||
Catch ex As Exception
|
||||
면적 = ""
|
||||
End Try
|
||||
Try
|
||||
천장고 = DSET1.tbl_zone.Rows(i - 1)("천장고p").ToString
|
||||
Catch ex As Exception
|
||||
천장고 = ""
|
||||
End Try
|
||||
Try
|
||||
순실체적 = DSET1.tbl_zone.Rows(i - 1)("순실체적").ToString
|
||||
Catch ex As Exception
|
||||
순실체적 = ""
|
||||
End Try
|
||||
If IsNumeric(면적) AndAlso IsNumeric(천장고) Then
|
||||
If Not IsNumeric(순실체적) Then
|
||||
' MsgBox("순실체적값이 없으므로 재계산 합니다", MsgBoxStyle.Information, "확인")
|
||||
DSET1.tbl_zone.Rows(i - 1)("순실체적") = CSng(면적) * CSng(천장고)
|
||||
End If
|
||||
End If
|
||||
If DSET1.tbl_zone.Rows(i - 1).RowState = DataRowState.Deleted OrElse _
|
||||
DSET1.tbl_zone.Rows(i - 1).RowState = DataRowState.Detached Then
|
||||
Continue For
|
||||
End If
|
||||
Dim StrCode As String = DSET1.tbl_zone.Rows(i - 1)("code").ToString
|
||||
If StrCode.Length = 4 Then
|
||||
DSET1.tbl_zone.Rows(i - 1)("code") = "0" + StrCode
|
||||
End If
|
||||
Next
|
||||
DSET1.tbl_zone.AcceptChanges()
|
||||
End If
|
||||
|
||||
If Not DSET2 Is Nothing Then
|
||||
For i As Integer = 1 To DSET2.tbl_zone.Rows.Count
|
||||
If DSET2.tbl_zone.Rows(i - 1).RowState = DataRowState.Deleted OrElse _
|
||||
DSET2.tbl_zone.Rows(i - 1).RowState = DataRowState.Detached Then
|
||||
Continue For
|
||||
End If
|
||||
Dim StrCode As String = DSET2.tbl_zone.Rows(i - 1)("code").ToString
|
||||
If StrCode.Length = 4 Then
|
||||
DSET2.tbl_zone.Rows(i - 1)("code") = "0" + StrCode
|
||||
End If
|
||||
Next
|
||||
DSET2.tbl_zone.AcceptChanges()
|
||||
End If
|
||||
|
||||
'//입력면
|
||||
If Not DSET1 Is Nothing Then
|
||||
For i As Integer = 1 To DSET1.tbl_myoun.Rows.Count
|
||||
If DSET1.tbl_myoun.Rows(i - 1).RowState = DataRowState.Deleted OrElse _
|
||||
DSET1.tbl_myoun.Rows(i - 1).RowState = DataRowState.Detached Then
|
||||
Continue For
|
||||
End If
|
||||
Dim StrCode As String = DSET1.tbl_myoun.Rows(i - 1)("code").ToString
|
||||
If StrCode.Length = 4 Then
|
||||
DSET1.tbl_myoun.Rows(i - 1)("code") = "0" + StrCode
|
||||
End If
|
||||
|
||||
Dim StrCode2 As String = DSET1.tbl_myoun.Rows(i - 1)("존분류").ToString
|
||||
If StrCode2.Length = 4 Then
|
||||
DSET1.tbl_myoun.Rows(i - 1)("존분류") = "0" + StrCode2
|
||||
End If
|
||||
Next
|
||||
DSET1.tbl_myoun.AcceptChanges()
|
||||
End If
|
||||
|
||||
If Not DSET2 Is Nothing Then
|
||||
For i As Integer = 1 To DSET2.tbl_myoun.Rows.Count
|
||||
If DSET2.tbl_myoun.Rows(i - 1).RowState = DataRowState.Deleted OrElse _
|
||||
DSET2.tbl_myoun.Rows(i - 1).RowState = DataRowState.Detached Then
|
||||
Continue For
|
||||
End If
|
||||
Dim StrCode As String = DSET2.tbl_myoun.Rows(i - 1)("code").ToString
|
||||
If StrCode.Length = 4 Then
|
||||
DSET2.tbl_myoun.Rows(i - 1)("code") = "0" + StrCode
|
||||
End If
|
||||
|
||||
Dim StrCode2 As String = DSET2.tbl_myoun.Rows(i - 1)("존분류").ToString
|
||||
If StrCode2.Length = 4 Then
|
||||
DSET2.tbl_myoun.Rows(i - 1)("존분류") = "0" + StrCode2
|
||||
End If
|
||||
|
||||
Next
|
||||
DSET2.tbl_myoun.AcceptChanges()
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Public Sub Open_File_Only_weather(ByVal FileName As String, Optional ByVal SyncServer As Boolean = False, Optional checkVersion As Boolean = True, Optional silent As Boolean = False, Optional isNew As Boolean = False)
|
||||
|
||||
|
||||
@@ -2484,6 +2486,10 @@ ENDSTAT: '//
|
||||
End Sub
|
||||
|
||||
Private Sub 열기ToolStripMenuItem_Click(sender As System.Object, e As System.EventArgs) Handles btOpen.Click
|
||||
OpenFile()
|
||||
End Sub
|
||||
|
||||
Sub OpenFile()
|
||||
If Prj.LoginTime = "" Then
|
||||
MsgBox("먼저 로그인을 하세요", MsgBoxStyle.Information, "확인")
|
||||
Frm_Intro.Activate()
|
||||
@@ -2800,7 +2806,7 @@ ENDSTAT: '//
|
||||
End Sub
|
||||
|
||||
Private Sub ToolStripButton2_Click(sender As System.Object, e As System.EventArgs) Handles ToolStripButton2.Click
|
||||
btOpen.PerformClick()
|
||||
OpenFile()
|
||||
End Sub
|
||||
|
||||
|
||||
@@ -3392,6 +3398,12 @@ ENDSTAT: '//
|
||||
Pub.DSET1.AcceptChanges()
|
||||
Dim xr As XmlReadMode = Pub.DSET1.ReadXml(od.FileName)
|
||||
Pub.DSET1.AcceptChanges()
|
||||
|
||||
FixData(False) '//데이터보정
|
||||
Calc.validation() '//null보정
|
||||
Menu_건물개요()
|
||||
Me.RefreshMenuList("")
|
||||
|
||||
Catch ex As Exception
|
||||
MsgboxE("외부파일 가져오기 실패\n" + ex.Message)
|
||||
End Try
|
||||
|
||||
Reference in New Issue
Block a user