• No results found

Xml Inst2 Page - Complete Education

N/A
N/A
Protected

Academic year: 2021

Share "Xml Inst2 Page - Complete Education"

Copied!
7
0
0

Loading.... (view fulltext now)

Full text

(1)

Inst2Page.aspx Imports System.Xml

Partial Class Inst2Form

Inherits System.Web.UI.Page

Protected Sub InitVent(ByRef XMLDoc As XmlDocument) For Each elem As String In Std.ventType

Type1.Items.Add(elem) Next

Dim n0 As XmlNode

Dim Elements As XmlNodeList = XMLDoc.GetElementsByTagName("VENTILATION") For Each n0 In Elements

Dim part As Integer = n0.Item("part").InnerText Dim typ As Integer = Std.GetTyp(part)

Dim im As Integer = Std.GetImp(part) Type1.SelectedIndex = typ

Return Next

End Sub

Protected Sub UpdateVent(ByRef XMLDoc As XmlDocument) Dim i0 As Integer = Type1.SelectedIndex

Be06.UpdateVent(XMLDoc, i0) End Sub

Protected Sub ShowDistHt()

For Each elem As String In Std.DistHt Type2.Items.Add(elem)

Next End Sub

Protected Sub ShowBoiler(ByVal type As Integer) If type > 11 Then

Loss.Text = "0" Else

Loss.Text = CType(Session("boiler_loss"), String) End If

Dim elem As String Type2.Items.Clear() Select Case type Case 0, 2

For Each elem In Std.BoilerGroup_02 Type2.Items.Add(elem)

Next Return Case 1, 3

For Each elem In Std.BoilerGroup_13 Type2.Items.Add(elem)

Next Return Case 4

For Each elem In Std.BoilerGroup_4 Type2.Items.Add(elem)

Next Return Case 5

For Each elem In Std.BoilerGroup_5 Type2.Items.Add(elem)

Next Return Case 6

For Each elem In Std.BoilerGroup_6 Type2.Items.Add(elem)

Next Return Case Else

For Each elem In Std.BoilerGroup_7 Type2.Items.Add(elem)

(2)

Inst2Page.aspx Return

End Select End Sub

Protected Sub InitHeating(ByRef xml As XmlDocument) For Each elem As String In Std.VpType

VpType.Items.Add(elem) Next

Dim item As String = Be06.GetElement(xml, "BOILER", "id") Dim heat As Integer = Be06.GetHeatType(xml)

If heat = 1 Then HeatType.Text = "Fjernvarme" ShowDistHt() VpType.Enabled = True Type2.SelectedValue = item Boiler.Items.Add("Intet valg") Boiler.Visible = False

ElseIf heat = 0 Then VpType.Enabled = True

Dim fuel_oil As Boolean = Be06.FuelOil(xml) If fuel_oil Then

HeatType.Text = "Oliekedel"

For Each elem As String In Std.BoilerType Boiler.Items.Add(elem)

Next

Dim group As Integer = Be06.GetElement(xml, "DESCRIPT", "id") If group < 0 Then

Dim year As Integer = CType(Session("year"), Integer) group = Std.BoilerGroup(year) End If Boiler.SelectedIndex = group ShowBoiler(group) Type2.SelectedValue = item SelBoiler.Visible = True LabelLoss.Visible = True Loss.Visible = True Else HeatType.Text = "Gaskedel"

For Each elem As String In Std.GasBoilerType Type2.Items.Add(elem) Next Type2.SelectedValue = item Boiler.Visible = False End If Else HeatType.Text = "El" Type2.Items.Add("Intet valg") Type2.Enabled = False VpType.Enabled = True Boiler.Items.Add("Intet valg") Boiler.Visible = False End If

Dim ht_sup As Integer = CType(Session("heat_sup"), Integer) Dim fu_sup As Integer = CType(Session("fuel_sup"), Integer) Dim cons_sup As String = CType(Session("cons_sup"), String) If cons_sup.Length < 1 Then ConsSup.Text = "0" End If If ht_sup > 0 Then HeatSup.Text = Std.NameSupFuel(fu_sup) ConsSup.Enabled = True ConsSup.Text = cons_sup Else

HeatSup.Text = "Ingen supplerende opvarmning" ConsSup.Enabled = False

ConsSup.BackColor = Drawing.Color.LightGray End If

(3)

Inst2Page.aspx

Protected Sub UpdateHeating(ByRef xml As XmlDocument) Dim i0 As Integer = Type2.SelectedIndex

Dim id0 As String = Type2.SelectedItem.Text Dim ht_type = Be06.GetHeatType(xml)

Select Case ht_type Case 0 ' kedel

If Be06.FuelOil(xml) Then

Dim i2 As Integer = Boiler.SelectedIndex

Be06.UpdateBoiler(xml, Std.oil2_table, i2, id0)

Be06.EditModel(xml, "DESCRIPT", "id", i2) ' boiler group Session.Item("boiler_loss") = Loss.Text

Else

Be06.UpdateBoiler(xml, Std.gas_table, i0, id0) End If

Case 1 ' fjernvarme

Be06.UpdateDistHt(xml, i0) Case 2 ' el

End Select

Be06.EditModel(xml, "COOLING", "id", Loss.Text)

Be06.EditModel(xml, "BOILER", "id", Type2.SelectedItem.Text)

Be06.EditModel(xml, "DESCRIPT", "bbr", ConsSup.Text) ' Consumption sup Session.Item("cons_sup") = ConsSup.Text

End Sub

Protected Sub ShowSolarPanel(ByRef xml As XmlDocument) Svtype.Items.Clear()

For Each elem As String In Std.SunColType Svtype.Items.Add(elem)

Next

Dim active As Boolean = Be06.IsTrue(Be06.GetElement(xml, "BUILDING", "solarpanel"))

Area.Text = Be06.GetElement(xml, "SOLAR_COLLECTOR", "area").Replace(".", ",")

Orient.Text = Be06.GetElement(xml, "SOLAR_COLLECTOR", "orient").Replace(".", ",")

Slope.Text = Be06.GetElement(xml, "SOLAR_COLLECTOR", "slope").Replace(".", ",")

Dim type As String = Be06.GetElement(xml, "SOLAR_COLLECTOR", "has_type") If Not active Then

Svtype.SelectedIndex = 0 ElseIf type = ".K_TYPE." Then Svtype.SelectedIndex = 2 Else Svtype.SelectedIndex = 1 End If VpType.SelectedIndex = Session.Item("heatpump") Session.Item("hp_ex") = VpType.SelectedIndex End Sub

Protected Sub UpdateSolarPanel(ByRef xml As XmlDocument) Dim hpump As Integer = VpType.SelectedIndex

Session.Item("heatpump") = hpump Be06.UpdateHeatPump(xml, hpump)

Dim a0 As Double = Area.Text.Replace(".", ",") Dim col As Integer = Svtype.SelectedIndex

Be06.EditModel(xml, "BUILDING", "solarpanel", Be06.GetBool(col > 0 And a0 > 0.0))

Dim n0 As XmlNode

Dim Elements As XmlNodeList = xml.GetElementsByTagName("SOLAR_COLLECTOR") For Each n0 In Elements

n0.Item("area").InnerText = Area.Text.Replace(",", ".") n0.Item("orient").InnerText = Orient.Text.Replace(",", ".") n0.Item("slope").InnerText = Slope.Text.Replace(",", ".") If col > 1 Then n0.Item("has_type").InnerText = ".K_TYPE." Else n0.Item("has_type").InnerText = ".B_TYPE." End If

(4)

Inst2Page.aspx If Area.Text > 0.0 Then

If hpump < 1 Then

If col = 1 Then ' brugsvand

Be06.EditModel(xml, "DHW_TANK", "vol", "192")

Be06.EditModel(xml, "DHW_TANK", "heat_loss", "2.7") Else

Be06.EditModel(xml, "DHW_TANK", "vol", "400")

Be06.EditModel(xml, "DHW_TANK", "heat_loss", "3.2") End If

End If

Be06.EditModel(xml, "DHW_TANK", "has_el_heat", ".DHW_S.") Be06.EditModel(xml, "DHW_TANK", "solar_heat", ".T.") ElseIf hpump < 1 Then

Be06.EditModel(xml, "DHW_TANK", "vol", "60")

Be06.EditModel(xml, "DHW_TANK", "heat_loss", "0.9")

Be06.EditModel(xml, "DHW_TANK", "has_el_heat", ".DHW_N.") Be06.EditModel(xml, "DHW_TANK", "solar_heat", ".F.") End If

Return Next

End Sub

Protected Function GetData(ByRef data As String) As String Dim m0 As Integer = data.IndexOf(";")

Dim str As String = data.Substring(0, m0) data = data.Substring(m0 + 1)

Return str End Function

Protected Function UpdateBuildingData(ByRef xml As XmlDocument, ByVal cons As String) As Boolean

Dim data As String = Be06.GetElement(xml, "COMMENTS", "id") Try

If data.Length > 0 Then

Dim id As String = GetData(data) If id = Be06.model_id Then

For i = 1 To 5

Dim parm0 As String = GetData(data) id += ";" + parm0

Next

Dim parm As String = GetData(data) id += ";" + cons

id += ";" + data

Be06.EditModel(xml, "COMMENTS", "id", id) ' Bygningsdata Return True End If End If Catch ex As Exception End Try Return False End Function

Protected Sub SaveModel()

Dim ex As Integer = CType(Session("exist"), Integer) Dim xml2 As String = CType(Session("savexmldoc"), String) Dim xml As XmlDocument = New XmlDocument

If ex > 0 Then xml = CType(Session("xmldoc"), XmlDocument) Else xml.LoadXml(xml2) End If UpdateVent(xml) UpdateSolarPanel(xml) UpdateHeating(xml) UpdateBuildingData(xml, Consumption.Text)

Dim kr As Double = CType(Session("eprice"), Double)

Dim el_price As Double = CType(Session("el_price"), Double) Dim ht As Integer = CType(Session("heating"), Double)

(5)

Inst2Page.aspx If ex < 1 Then

Dim no_change As Boolean = xml0.Equals(xml2) If no_change Then Return End If Session.Item("exist") = 2 End If Session.Item("xmldoc") = xml Dim price, el0 As Double

Dim dem As Double = Be06.GetDemand(xml, kr, el_price, price, el0) Dim std_cons = Be06.GetConsUnit(ht, dem - el0) ' forbrug i valgte enhed/m2 If Math.Abs(std_cons) < 0.001 Then std_cons = dem End If Session.Item("consump") = Consumption.Text Session.Item("consump_kr") = Consumption.Text * kr Session.Item("std_cons0") = std_cons Session.Item("cons0") = dem Session.Item("last_kwh") = dem Session.Item("last_kr0") = price Session.Item("el0") = el0 Session.Item("kr0") = price Session.Item("savexmldoc") = xml0 End Sub

Protected Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init

If Not Page.IsPostBack Then

Dim ex As Integer = CType(Session("exist"), Integer) Dim ht As Integer = Session("heating")

Dim tmp As String = ""

Be06.ShowCons(ht, Cons.Text, tmp)

Dim cons0 As String = CType(Session("consump"), String) Consumption.Text = cons0

Dim xml As XmlDocument = New XmlDocument If ex > 0 Then

xml = CType(Session("xmldoc"), XmlDocument) Else

Dim doc As String = CType(Session("savexmldoc"), String) xml.LoadXml(doc) End If InitVent(xml) InitHeating(xml) ShowSolarPanel(xml) End If End Sub

Protected Function CheckVars() As Boolean Dim ok As Boolean = True

Message.Text = ""

If Not Be06.IsNum(Loss.Text) Then Message.Text += " Røggastab" ok = False

Else

Dim ls As Double = Loss.Text If ls < 0.0 Or ls > 50.0 Then

Message.Text += " Ikke tilladt røggastab" ok = False

End If End If

If Not Be06.IsNum(Consumption.Text) Then Message.Text += " Varmeforbrug" ok = False

End If

If Not Be06.IsNum(ConsSup.Text) Then

Message.Text += " Varmeforbrug, supplerende" ok = False

(6)

Inst2Page.aspx If Not Be06.IsNum(Area.Text) Then

Message.Text += " Areal" ok = False

End If

If Not Be06.IsNum(Slope.Text) Then Message.Text += " Hældning" ok = False End If If Not ok Then Message.Text += " er udefineret." End If Return ok End Function

Protected Sub RedirSession(ByRef link As String) If CheckVars() Then

SaveModel()

Page.Response.Redirect(link) End If

End Sub

Protected Sub ButtonBack_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ButtonBack.Click

RedirSession("WinexPage.aspx") End Sub

Protected Sub ButtonNext_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ButtonNext.Click

RedirSession("WallPage.aspx") End Sub

Protected Sub ImageAbout_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ImageAbout.Click

SaveModel()

Session.Item("PrevPage") = "Inst2Page.aspx" Page.Response.Redirect("AboutPage.aspx") End Sub

Protected Sub ImageHelp_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ImageHelp.Click

SaveModel()

Session.Item("PrevPage") = "Inst2Page.aspx" Page.Response.Redirect("HelpPage.aspx") End Sub

Protected Sub ImageMain_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ImageMain.Click

RedirSession("Default.aspx") End Sub

Protected Sub ImageWall0_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ImageWall0.Click

RedirSession("EnvPage.aspx") End Sub

Protected Sub ImageWin0_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ImageWin0.Click

RedirSession("WinexPage.aspx") End Sub

Protected Sub ImageWall1_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ImageWall1.Click

RedirSession("WallPage.aspx") End Sub

Protected Sub ImageWin1_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ImageWin1.Click

RedirSession("WinPage.aspx") End Sub

(7)

Inst2Page.aspx

Protected Sub ImageInst1_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ImageInst1.Click

RedirSession("Install2Page.aspx") End Sub

Protected Sub ImageDoc_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ImageDoc.Click

RedirSession("ResPage.aspx") End Sub

Protected Sub Boiler_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Boiler.SelectedIndexChanged

ShowBoiler(Boiler.SelectedIndex) End Sub

Protected Sub Check_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Check.Click

If CheckVars() Then SaveModel()

Dim ht As Integer = Session("heating")

Dim area As Double = CType(Session("area"), Double)

Dim cons0 As Double = CType(Session("std_cons0"), Double) cons0 = Math.Round(area * cons0, 0)

Dim unit As String = Be06.Unit(ht)

Dim cons As Double = CType(Consumption.Text, Double)

Dim dif As Double = Math.Round(100.0 * (cons - cons0) / cons0, 0) dif = Math.Abs(dif)

Message.Text = "Teoretisk varmeforbrug: " & cons0 & " " & unit & " + opgivet biobrændsel. Opgivet forbrug afviger " & dif & "%"

End If End Sub

Protected Sub ImageButton1_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ImageButton1.Click

RedirSession("http://tools.sparolie.dk/positivliste.asp") End Sub

References

Related documents

Individual Performance Team level Individual level Team Learning Orientation Cross-Understanding Team Performance (Prove) Orientation Team Performance (Avoid) Orientation H2 + H4b

This decision remained largely dependent on patient and clinician preference.[6] Although there have been recent network meta-analyses published attempting to answer

The coefficient of friction (the ratio between the force required to move an object and its weight) is a measure of the slip resistance of a surface for a certain object. Friction

Results confirm the endogeneity of the residential tenure status variable, which displays a negative but small effect on the hazard rate of leaving unemployment: unemployment

Substantial progress in the negotiations was made in April 2013 that covered all aspects of trade in goods, trade in services, investment, customs procedures, trade

The system will be operated under dual-license model, which means that anyone involved in OSIA open source community can use and develop the software freely under open source

small- group health insurance market provides another example of between-group adverse selection, in which high prices and low coverage resulting from adverse

Napisati program na programskom jeziku C koji učitava jedan znakovni niz (string) S1 i jedan ceo broj M, a zatim formira novi znakovni niz S2 samo od onih znakova na