﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<StiSerializer version="1.02" type="Net" application="StiReport">
  <AutoLocalizeReportOnRun>True</AutoLocalizeReportOnRun>
  <Culture>en-GB</Culture>
  <Dictionary Ref="1" type="Dictionary" isKey="true">
    <BusinessObjects isList="true" count="0" />
    <Databases isList="true" count="1">
      <Cypher1 Ref="2" type="Stimulsoft.Report.Dictionary.StiOdbcDatabase" isKey="true">
        <Alias>Cypher1</Alias>
        <ConnectionStringEncrypted>9BzVLUZdQt35fU29bQQqKuLu+wlbXaPdbUuc8OVco3eNxMkMxWjCxWkT/Zh6wGF70W7BCUhdMfV9WITc63Tgu9/Eje/IDHuBRQhJ7HIAqPPRWvfCSWpaRXtLUYluPbVj9HyZwk1MMaRraqGNYRji49FAzUPoVbOtaV6lhGSAZW7VWsVISFnzgH9Kvaz5SQ==</ConnectionStringEncrypted>
        <Name>Cypher1</Name>
      </Cypher1>
    </Databases>
    <DataSources isList="true" count="0" />
    <Relations isList="true" count="0" />
    <Report isRef="0" />
    <Resources isList="true" count="1">
      <value>Name=download, Alias=download, Content=_x0039_25Its3YseGklwcIB5HJrXDHOJIDLd_x002F_kH8gUI_x002F_bUDh7AaBUGDt5feT7wi7p0_x002B_teM2i2D6mEg_x002B_o2VB_x002B_54KOkRMF9MFRXnygBMWbwwA1kRZIwxaFerjvWxcLh2hFtwG8r2ykN0WBmQgphg9APgJbnSURHV6QU0F1D3qzZ7capcuhlgUU9I76IEXct7YR_x002F__x002F_aERcrQ4ccgpzjXVa84prnHuxgH2h9g_x002F_6a1PE5CdPXUYnCtSejHKoivX_x002F_CAyAF3njm7bqnHh0eLFdXbHvQSolq8KYF_x002B_TZ1pK45PjzYcaKJNIJL1xMtwkxbwB9_x002B_kN_x002F_OV4G42wGbxrYAOkq982UJMQZtCWIVaIznf0TkBUsTrR803dSeLARvYTTOWheCw_x002F_atWLFMm5eIMnUnEoOI3chylSCfzV17frzgi5tKtkQ8ww44nwkLJPU2CTD62bsz1jQG2YDJqu3Ly01g8NstaEfDcManzVc3DpJWzFB40TQSDYEFAwBqSClJK90hSY3DW088IHXLl_x002F_uiIg3mRi4SbI0117oombRazyHhqW_x002F_KtiE9PWsr5J0rf2IOhD_x002F_CBYEqhQTEunUatbAyHzKfJWyAuF4nQZUaBI_x002B_b7lJUGmqegNowxbJnr9jEdQGCDkPk9MIapAL1xuNdRqRAyEmi2CFXCNTHgqrkbAOPxHCh0l1K4F2kXE2af6ao81kLRPc6EQjPmbRbvOPEkTwhWZQx1xQu_x002B_CDW_x002B_L_x002F_jqvRuoh2cwgwN2HOgWHyGxK789s2bhuwt9M5qt5rhLtU2DMFWBluRXJPkk_x002F_ihFe_x002F_22RvSNvdQcomtYxDfGAR5RIl8Ca8sYw1MADjPnENNBlO96BSBBi3VQ70NC9pZ3XDwHsoOHxWEE98mr7ijTUVMWZy_x002B_Jn_x002B_75WFLnT6l9f3iL1nr0ifmx7XZreGHRzJHBw0WkI005yqrqxWCAlUKeywIoik2QY9KbIStmEaN8XcVKLOJnptIcbl9qBSBuHdAK7dAYhF4qlzc9lp14hq1mP89L1xN0032PzFKwOc93pApbmNPzMGr6KuSk6CEklxzR5D9urpYS28TBeS2FyBFQ5sIh4jAhMD4fVzkdI3XteploweoZEjCtxnPTBzw37Yc_x002F_uXk7NqANjNxOArvomMd4Mk0NPS9ZMtX2WWAxpPQaHYTQ_x002F_Cksh8TiharoSrZBcQiMc_x002B_EMPTVB74pOR96BJxK_x002B_zbR1_x002B_RAcXTNkIEnt7tuiqymLAQ4Bbk8zt7MQ3RhYRScgRlelx7p8TR3jTxWYp6VreGbqWiBqMGaWmzElqNMeB7Hh_x002B_nqOVjv4xnooQz1Kl5ltXzpThqnlESq8jTWlH_x002F_yr3aKfqbS_x002B_HIHY33utHs5sAoCQTmy45puCb7hDs8WYOLIfoVZV_x002B_6Yq9V4TW3XkwCr5zz4Xzl3o6VpsPSVoXbVmtrajx65NBK0B6kfkPkU0JIKKENvspHyr_x002B_7IhHPYHUaOlYpE_x002B_zwHrTNNeSoXeFmGCyiH9_x002F_7VdjdQ9plY0K0VlFafOn0fR6lukFkPi9khsQsowXvrHLoCNruF1B4JDyuqHgrWHVuB0LkqpZYAJkGEbSx93E81slAHLPdV8beLLAmvd3_x002F_kbxBTgshBd6fNjfeB1e46v0ntTozu18avGrEIhSUNjeTyQFuakU6HKlTqH9xzspvR8rcTk0KjZs_x003D_</value>
    </Resources>
    <UserFunctions isList="true" count="2">
      <GetSectionLevel Ref="3" type="Stimulsoft.Report.Dictionary.StiUserFunction" isKey="true">
        <Arguments isList="true" count="1">
          <value>SectionNumber,Int,</value>
        </Arguments>
        <Description>Get the nested level of a section</Description>
        <Name>GetSectionLevel</Name>
        <ReturnType>Int</ReturnType>
        <Script>int Level = 0;

Cypher1.EstimateSection SelectedSection = (Cypher1.EstimateSection)FindSection((int)SectionNumber);
if(SelectedSection != null)
{
  while(SelectedSection.SectionParent != 0)
  {
    Level++;
    SelectedSection = (Cypher1.EstimateSection)FindSection((int)SelectedSection.SectionParent);
  }
}

return Level;
</Script>
        <ScriptBlockly />
        <ScriptCSharp>int Level = 0;

Cypher1.EstimateSection SelectedSection = (Cypher1.EstimateSection)FindSection((int)SectionNumber);
if(SelectedSection != null)
{
  while(SelectedSection.SectionParent != 0)
  {
    Level++;
    SelectedSection = (Cypher1.EstimateSection)FindSection((int)SelectedSection.SectionParent);
  }
}

return Level;
</ScriptCSharp>
        <ScriptJS />
        <ScriptMode>Code</ScriptMode>
        <ScriptVB />
      </GetSectionLevel>
      <FindSection Ref="4" type="Stimulsoft.Report.Dictionary.StiUserFunction" isKey="true">
        <Arguments isList="true" count="1">
          <value>SectionNumber,Int,</value>
        </Arguments>
        <Description>Find section by section number</Description>
        <Name>FindSection</Name>
        <ReturnType>Object</ReturnType>
        <Script>Cypher1.EstimateHeader EHeader = SelectedEstimate.Current as Cypher1.EstimateHeader;

Cypher1.EstimateSection SelectedSection = null;


foreach(Cypher1.EstimateSection SubSection in EHeader.FullSectionList)
{
  if(SubSection.SectionNumber == (int)SectionNumber)
  {
    SelectedSection = SubSection;
    break;
  }
}

return SelectedSection;
</Script>
        <ScriptBlockly />
        <ScriptCSharp>Cypher1.EstimateHeader EHeader = SelectedEstimate.Current as Cypher1.EstimateHeader;

Cypher1.EstimateSection SelectedSection = null;


foreach(Cypher1.EstimateSection SubSection in EHeader.FullSectionList)
{
  if(SubSection.SectionNumber == (int)SectionNumber)
  {
    SelectedSection = SubSection;
    break;
  }
}

return SelectedSection;
</ScriptCSharp>
        <ScriptJS />
        <ScriptMode>Code</ScriptMode>
        <ScriptVB />
      </FindSection>
    </UserFunctions>
    <Variables isList="true" count="0" />
  </Dictionary>
  <EngineVersion>EngineV2</EngineVersion>
  <GlobalizationStrings isList="true" count="1">
    <Item4 Ref="5" type="Stimulsoft.Report.StiGlobalizationContainer" isKey="true">
      <CultureName>en-GB</CultureName>
      <Items isList="true" count="0" />
    </Item4>
  </GlobalizationStrings>
  <Key>1ad917c69b074d4a861600ce2d44e558</Key>
  <MetaTags isList="true" count="0" />
  <NumberOfPass>DoublePass</NumberOfPass>
  <Pages isList="true" count="1">
    <FrontPage Ref="6" type="Page" isKey="true">
      <Border>None;Black;2;Solid;False;4;Black</Border>
      <Brush>Transparent</Brush>
      <Components isList="true" count="1">
        <RtfDescriptionBand Ref="7" type="PageHeaderBand" isKey="true">
          <Brush>Transparent</Brush>
          <CanShrink>True</CanShrink>
          <ClientRectangle>0,4,190,88</ClientRectangle>
          <Components isList="true" count="2">
            <Text139 Ref="8" type="Text" isKey="true">
              <Border>None;[0:0:0];1;Solid;False;4;[0:0:0]</Border>
              <Brush>Transparent</Brush>
              <ClientRectangle>2,2,44,6</ClientRectangle>
              <ComponentStyle>Label</ComponentStyle>
              <Conditions isList="true" count="0" />
              <Expressions isList="true" count="0" />
              <Font>Arial,10,Bold</Font>
              <Guid>c3d357cc40a0489fa0151dabb88a4804</Guid>
              <Name>Text139</Name>
              <Page isRef="6" />
              <Parent isRef="7" />
              <Text>Description of work :</Text>
              <TextBrush>[0:0:0]</TextBrush>
              <Type>Expression</Type>
            </Text139>
            <RichText1 Ref="9" type="Stimulsoft.Report.Components.StiRichText" isKey="true">
              <CanGrow>True</CanGrow>
              <ClientRectangle>2,10,184,16</ClientRectangle>
              <Conditions isList="true" count="0" />
              <DataColumn>SelectedEstimate.RtfDescription</DataColumn>
              <Expressions isList="true" count="0" />
              <Name>RichText1</Name>
              <Page isRef="6" />
              <Parent isRef="7" />
            </RichText1>
          </Components>
          <Conditions isList="true" count="0" />
          <Expressions isList="true" count="1">
            <value>Enabled,SelectedEstimate.UseRtfDescription</value>
          </Expressions>
          <Guid>139b06fa9d2a49b18fe3f0639d8bb22d</Guid>
          <Name>RtfDescriptionBand</Name>
          <Page isRef="6" />
          <Parent isRef="6" />
        </RtfDescriptionBand>
      </Components>
      <Conditions isList="true" count="0" />
      <Expressions isList="true" count="0" />
      <Guid>727acfcba6a94ff7b6420ced3e8e3780</Guid>
      <Margins>10,10,10,10</Margins>
      <Name>FrontPage</Name>
      <PageHeight>297</PageHeight>
      <PageWidth>210</PageWidth>
      <Report isRef="0" />
    </FrontPage>
  </Pages>
  <ReferencedAssemblies isList="true" count="9">
    <value>System.Dll</value>
    <value>System.Drawing.Dll</value>
    <value>System.Windows.Forms.Dll</value>
    <value>System.Data.Dll</value>
    <value>System.Xml.Dll</value>
    <value>Stimulsoft.Controls.Dll</value>
    <value>Stimulsoft.Base.Dll</value>
    <value>Stimulsoft.Report.Dll</value>
    <value>Cypher1Web.dll</value>
  </ReferencedAssemblies>
  <ReportAlias>Estimate Details</ReportAlias>
  <ReportAuthor>Chris Holland</ReportAuthor>
  <ReportChanged>8/31/2025 9:51:37 AM</ReportChanged>
  <ReportCreated>6/3/2022 10:48:56 AM</ReportCreated>
  <ReportDescription>Estimate Details</ReportDescription>
  <ReportGuid>7faa9a7f69944c6bbfd650932673dcf5</ReportGuid>
  <ReportName>Estimate Details</ReportName>
  <ReportUnit>Millimeters</ReportUnit>
  <ReportVersion>2026.1.3.0</ReportVersion>
  <Script>using System;
using System.Drawing;
using System.Windows.Forms;
using System.Data;
using Stimulsoft.Controls;
using Stimulsoft.Base.Drawing;
using Stimulsoft.Report;
using Stimulsoft.Report.Dialogs;
using Stimulsoft.Report.Components;

namespace Reports
{
    public class Report : Stimulsoft.Report.StiReport
    {
        public Report()        {
            this.InitializeComponent();
        }

        #region StiReport Designer generated code - do not modify
		#endregion StiReport Designer generated code - do not modify
    }
}
</Script>
  <ScriptLanguage>CSharp</ScriptLanguage>
  <Styles isList="true" count="9">
    <Label Ref="10" type="Stimulsoft.Report.StiStyle" isKey="true">
      <Border>None;[0:0:0];1;Solid;False;4;[0:0:0]</Border>
      <Brush>Transparent</Brush>
      <Conditions isList="true" count="0" />
      <Description>Style for labels</Description>
      <Font>Arial,10,Bold</Font>
      <Name>Label</Name>
      <NegativeTextBrush>[255:0:0]</NegativeTextBrush>
      <TextBrush>[0:0:0]</TextBrush>
      <VertAlignment>Center</VertAlignment>
    </Label>
    <BandFooter Ref="11" type="Stimulsoft.Report.StiStyle" isKey="true">
      <Border>None;[0:0:0];1;Solid;False;4;[0:0:0]</Border>
      <Brush>GradientBrush,[226:239:217],[197:224:179],0</Brush>
      <Conditions isList="true" count="0" />
      <Font>Arial,10</Font>
      <Name>BandFooter</Name>
      <NegativeTextBrush>[255:0:0]</NegativeTextBrush>
      <TextBrush>[0:0:0]</TextBrush>
    </BandFooter>
    <Column_x0020_Header Ref="12" type="Stimulsoft.Report.StiStyle" isKey="true">
      <Border>None;[0:0:0];1;Solid;False;4;[0:0:0]</Border>
      <Brush>Transparent</Brush>
      <Conditions isList="true" count="0" />
      <Font>Arial,11,Bold</Font>
      <Name>Column Header</Name>
      <NegativeTextBrush>[255:0:0]</NegativeTextBrush>
      <TextBrush>[0:0:0]</TextBrush>
      <VertAlignment>Center</VertAlignment>
    </Column_x0020_Header>
    <Bold Ref="13" type="Stimulsoft.Report.StiStyle" isKey="true">
      <Border>None;[0:0:0];1;Solid;False;4;[0:0:0]</Border>
      <Brush>Transparent</Brush>
      <Conditions isList="true" count="0" />
      <Font>Arial,8,Bold</Font>
      <Name>Bold</Name>
      <NegativeTextBrush>[255:0:0]</NegativeTextBrush>
      <TextBrush>[0:0:0]</TextBrush>
    </Bold>
    <Normal Ref="14" type="Stimulsoft.Report.StiStyle" isKey="true">
      <Border>None;[0:0:0];1;Solid;False;4;[0:0:0]</Border>
      <Brush>Transparent</Brush>
      <Conditions isList="true" count="0" />
      <Description>Normal text style</Description>
      <Font>Arial,10</Font>
      <Name>Normal</Name>
      <NegativeTextBrush>[255:0:0]</NegativeTextBrush>
      <TextBrush>[0:0:0]</TextBrush>
      <VertAlignment>Center</VertAlignment>
    </Normal>
    <BandHeader Ref="15" type="Stimulsoft.Report.StiStyle" isKey="true">
      <Border>None;[0:0:0];1;Solid;False;4;[0:0:0]</Border>
      <Brush>GradientBrush,[222:235:246],[46:117:181],0</Brush>
      <Conditions isList="true" count="0" />
      <Font>Arial,10,Bold</Font>
      <Name>BandHeader</Name>
      <NegativeTextBrush>[255:0:0]</NegativeTextBrush>
      <TextBrush>[0:0:0]</TextBrush>
      <VertAlignment>Center</VertAlignment>
    </BandHeader>
    <Small Ref="16" type="Stimulsoft.Report.StiStyle" isKey="true">
      <Border>None;[0:0:0];1;Solid;False;4;[0:0:0]</Border>
      <Brush>Transparent</Brush>
      <Conditions isList="true" count="0" />
      <Font>Arial,8,Bold</Font>
      <Name>Small</Name>
      <NegativeTextBrush>[255:0:0]</NegativeTextBrush>
      <TextBrush>[0:0:0]</TextBrush>
      <VertAlignment>Center</VertAlignment>
    </Small>
    <Title Ref="17" type="Stimulsoft.Report.StiStyle" isKey="true">
      <Border>None;[0:0:0];1;Solid;False;4;[0:0:0]</Border>
      <Brush>Transparent</Brush>
      <Conditions isList="true" count="0" />
      <Font>Arial,18,Bold</Font>
      <HorAlignment>Center</HorAlignment>
      <Name>Title</Name>
      <NegativeTextBrush>[255:0:0]</NegativeTextBrush>
      <TextBrush>[0:0:0]</TextBrush>
      <VertAlignment>Center</VertAlignment>
    </Title>
    <SubTitle Ref="18" type="Stimulsoft.Report.StiStyle" isKey="true">
      <Border>None;[0:0:0];1;Solid;False;4;[0:0:0]</Border>
      <Brush>Transparent</Brush>
      <Conditions isList="true" count="0" />
      <Font>Arial,14,Bold</Font>
      <HorAlignment>Center</HorAlignment>
      <Name>SubTitle</Name>
      <NegativeTextBrush>[255:0:0]</NegativeTextBrush>
      <TextBrush>[0:0:0]</TextBrush>
      <VertAlignment>Center</VertAlignment>
    </SubTitle>
  </Styles>
  <UsePlatformDependentScript>False</UsePlatformDependentScript>
</StiSerializer>