Trendsic Platform Service

<back to all web services

EstimateRevisionGetRequest

Requires Authentication
Requires any of the roles:Agent, Administrator
The following routes are available for this service:
GET,OPTIONS/v1/Rfp/{RfpDocumentUID}/Estimate/Revisions/{RevisionNo}

export class EstimateRevision
{
    public EstimateRevisionID: number;
    public RfpDocumentID: number;
    public RevisionNo: number;
    public Label: string;
    public Reason: string;
    public Trigger: string;
    public TotalAmount: number;
    public LineCount: number;
    public CreatedBy: string;
    public CreatedAt?: string;
    public SnapshotJson: string;

    public constructor(init?: Partial<EstimateRevision>) { (Object as any).assign(this, init); }
}

export class ResourcedPosition
{
    public PositionTag: string;
    public Hours?: number;
    public CrewSize?: number;
    public Utilization?: number;
    public FixedDays?: number;
    public Headcount?: number;
    public SourceReference: string;
    public Notes: string;
    public IsInCatalog: boolean;
    public ContactID?: number;

    public constructor(init?: Partial<ResourcedPosition>) { (Object as any).assign(this, init); }
}

export class ResourcedEquipment
{
    public EquipmentID: number;
    public EquipmentName: string;
    public MakeModel: string;
    public Quantity?: number;
    public DurationDays?: number;
    public Utilization?: number;
    public FixedDays?: number;
    public SourceReference: string;
    public Notes: string;
    public IsInCatalog: boolean;
    public SuggestedEquipmentID: number;
    public SuggestedEquipmentName: string;

    public constructor(init?: Partial<ResourcedEquipment>) { (Object as any).assign(this, init); }
}

export class ResourcedMaterial
{
    public MaterialID: number;
    public MaterialName: string;
    public MakeModel: string;
    public Quantity?: number;
    public QuantityPerUnit?: number;
    public Unit: string;
    public SourceReference: string;
    public Notes: string;
    public IsInCatalog: boolean;
    public SuggestedMaterialID: number;
    public SuggestedMaterialName: string;

    public constructor(init?: Partial<ResourcedMaterial>) { (Object as any).assign(this, init); }
}

export class TaskResourcing
{
    public Positions: ResourcedPosition[] = [];
    public Equipment: ResourcedEquipment[] = [];
    public Materials: ResourcedMaterial[] = [];
    public ResourcedForQuantity?: number;
    public ProductionRatePerDay?: number;
    public FixedDays?: number;

    public constructor(init?: Partial<TaskResourcing>) { (Object as any).assign(this, init); }
}

export class WorkPackageSpecRef
{
    public Section: string;
    public Title: string;

    public constructor(init?: Partial<WorkPackageSpecRef>) { (Object as any).assign(this, init); }
}

export class TaskWorkPackage
{
    public Scope: string;
    public LimitsOfWork: string;
    public SpecRefs: WorkPackageSpecRef[] = [];
    public Constraints: string[] = [];
    public HoldPoints: string[] = [];
    public DefinitionOfDone: string[] = [];
    public SafetyNote: string;
    public RfpRef: string;
    public Confidence?: number;
    public SpecBook: string;
    public UserScope: string;
    public DodRemoved: number[] = [];
    public DodExtra: string[] = [];
    public UserEdited: boolean;
    public DodChecked: string[] = [];
    public RedraftNote: string;

    public constructor(init?: Partial<TaskWorkPackage>) { (Object as any).assign(this, init); }
}

export class ProposedTask
{
    public Seq: number;
    public Name: string;
    public Category: string;
    public Quantity?: number;
    public Unit: string;
    public SourceItemNumber: string;
    public SourceReference: string;
    public Notes: string;
    public Resourcing: TaskResourcing;
    public DurationDays?: number;
    public DependsOn: number[] = [];
    public EstimatedStartDate?: string;
    public EstimatedEndDate?: string;
    public WorkPackage: TaskWorkPackage;
    public CreatedJobID?: number;

    public constructor(init?: Partial<ProposedTask>) { (Object as any).assign(this, init); }
}

export class AddendaChange
{
    public ChangeId: string;
    public ChangeType: string;
    public TargetSeq?: number;
    public ItemNumber: string;
    public ItemName: string;
    public Field: string;
    public OldValue: string;
    public NewValue: string;
    public Description: string;
    public Status: string;

    public constructor(init?: Partial<AddendaChange>) { (Object as any).assign(this, init); }
}

export class AddendaChangeSet
{
    public ChangeSetId: string;
    public SourceRfpDocumentID: number;
    public SourceFileName: string;
    public DocumentType: string;
    public ExtractedAtUtc?: string;
    public Summary: string;
    public Changes: AddendaChange[] = [];

    public constructor(init?: Partial<AddendaChangeSet>) { (Object as any).assign(this, init); }
}

export class WageClassification
{
    public Title: string;
    public BaseRate?: number;
    public FringeRate?: number;
    public ParishNote: string;
    public SourceLine: string;
    public BenchmarkFringeRate?: number;
    public FringeCompareNote: string;

    public constructor(init?: Partial<WageClassification>) { (Object as any).assign(this, init); }
}

export class WageDeterminationResult
{
    public SourceRfpDocumentID: number;
    public SourceFileName: string;
    public WdNumber: string;
    public ExtractedAtUtc?: string;
    public Classifications: WageClassification[] = [];
    public Source: string;
    public IsTrustworthy: boolean;
    public ExecutiveOrderFloor?: number;
    public PublishedDate: string;
    public ProjectParish: string;
    public Warnings: string[] = [];

    public constructor(init?: Partial<WageDeterminationResult>) { (Object as any).assign(this, init); }
}

export class ProjectProposal
{
    public RfpDocumentID: number;
    public Mode: string;
    public ProjectID?: number;
    public ChangeOrderID?: number;
    public ProjectName: string;
    public ClientName: string;
    public ProjectType: string;
    public ProjectLocation: string;
    public Scope: string;
    public ProjectDescription: string;
    public ContractDurationDays?: number;
    public BidDueDate: string;
    public EstimatedStartDate?: string;
    public EstimatedEndDate?: string;
    public Tasks: ProposedTask[] = [];
    public PendingAddendaDiffs: AddendaChangeSet[] = [];
    public WageDeterminations: WageDeterminationResult[] = [];

    public constructor(init?: Partial<ProjectProposal>) { (Object as any).assign(this, init); }
}

export class EstimateSettingsView
{
    public RfpEstimateID: number;
    public StartDate?: string;
    public DeadlineDate?: string;
    public WorkdaysPerWeek: number;
    public HoursPerDay: number;
    public WeatherPct: number;
    public OhpPct: number;
    public ContingencyPct: number;
    public BondPct: number;
    public Holidays: string[] = [];
    public AppliedStartDate?: string;

    public constructor(init?: Partial<EstimateSettingsView>) { (Object as any).assign(this, init); }
}

export class SpecRefView
{
    public Section: string;
    public Title: string;
    public Url: string;

    public constructor(init?: Partial<SpecRefView>) { (Object as any).assign(this, init); }
}

export class DodItemView
{
    public Key: string;
    public Text: string;
    public Checked: boolean;
    public Source: string;

    public constructor(init?: Partial<DodItemView>) { (Object as any).assign(this, init); }
}

export class WorkPackageView
{
    public HasPackage: boolean;
    public Scope: string;
    public LimitsOfWork: string;
    public SpecRefs: SpecRefView[] = [];
    public Constraints: string[] = [];
    public HoldPoints: string[] = [];
    public Dod: DodItemView[] = [];
    public SafetyNote: string;
    public Provenance: string;
    public SpecBook: string;
    public UserEdited: boolean;
    public RedraftNote: string;

    public constructor(init?: Partial<WorkPackageView>) { (Object as any).assign(this, init); }
}

export class EstimateCrewLineView
{
    public Role: string;
    public Hours: number;
    public StHours: number;
    public OtHours: number;
    public HasOt: boolean;
    public PremiumApplied: boolean;
    public NeedsRate: boolean;
    public RateKey: string;
    public Chip: string;
    public Rrop?: number;
    public StCost?: number;
    public OtCost?: number;
    public Cost?: number;
    public FringeCost?: number;

    public constructor(init?: Partial<EstimateCrewLineView>) { (Object as any).assign(this, init); }
}

export class EstimateEquipmentLineView
{
    public Name: string;
    public Quantity: number;
    public Rate?: number;
    public NeedsRate: boolean;
    public MobCost: number;
    public Cost: number;
    public IsAvailabilityTracked: boolean;
    public IsOwned: boolean;
    public AvailabilityLabel: string;
    public FreedFromProject: string;
    public AvailableFrom?: string;
    public RateKey: string;
    public Chip: string;
    public RentalExplain: string;
    public UsageDays: number;
    public BilledDays: number;

    public constructor(init?: Partial<EstimateEquipmentLineView>) { (Object as any).assign(this, init); }
}

export class EstimateMaterialLineView
{
    public Name: string;
    public Quantity: number;
    public Unit: string;
    public Rate?: number;
    public NeedsRate: boolean;
    public Cost: number;
    public RateKey: string;
    public Chip: string;

    public constructor(init?: Partial<EstimateMaterialLineView>) { (Object as any).assign(this, init); }
}

export class EstimateSubcontractView
{
    public EstimateSubcontractID: number;
    public TaskSeq: number;
    public Vendor: string;
    public Amount: number;
    public Scope: string;

    public constructor(init?: Partial<EstimateSubcontractView>) { (Object as any).assign(this, init); }
}

export class EstimateJobView
{
    public Seq: number;
    public WorkPackage: WorkPackageView;
    public ItemNo: string;
    public Name: string;
    public Category: string;
    public SourceRef: string;
    public Unit: string;
    public Quantity: number;
    public PatternCode: string;
    public Workdays: number;
    public HoursPerDay: number;
    public IsNight: boolean;
    public WeeklyHours: number;
    public OtFraction: number;
    public Days: number;
    public EffectiveProdPerDay?: number;
    public CrewPremiumApplied: boolean;
    public CrewCost: number;
    public FringeCost: number;
    public EquipmentCost: number;
    public MaterialCost: number;
    public SubcontractCost: number;
    public Direct: number;
    public PricingBasis: string;
    public PricingRuleId: string;
    public PricingBandP25?: number;
    public PricingBandP75?: number;
    public PricingBandN?: number;
    public PricingBandLabel: string;
    public BenchmarkUnitPrice?: number;
    public ReferencePrice?: number;
    public ReferenceRangeMin?: number;
    public ReferenceRangeMax?: number;
    public ReferenceN?: number;
    public ReferenceDate?: string;
    public ReferenceBasis: string;
    public ReferenceUrl: string;
    public Crew: EstimateCrewLineView[] = [];
    public Equipment: EstimateEquipmentLineView[] = [];
    public Materials: EstimateMaterialLineView[] = [];
    public Subcontracts: EstimateSubcontractView[] = [];

    public constructor(init?: Partial<EstimateJobView>) { (Object as any).assign(this, init); }
}

export class BidScheduleLine
{
    public ItemNo: string;
    public Description: string;
    public Unit: string;
    public Quantity: number;
    public UnitPrice: number;
    public Extension: number;
    public PricingBasis: string;
    public PricingRuleId: string;
    public PricingBandP25?: number;
    public PricingBandP75?: number;
    public PricingBandN?: number;
    public PricingBandLabel: string;
    public BenchmarkDeltaPct?: number;
    public BenchmarkFlagged: boolean;
    public BenchmarkBasis: string;
    public Provenance: string;
    public ProvenanceNote: string;
    public UnpricedResources: number;
    public TotalResources: number;

    public constructor(init?: Partial<BidScheduleLine>) { (Object as any).assign(this, init); }
}

export class EstimateVarianceLine
{
    public Seq: number;
    public ItemNo: string;
    public Name: string;
    public Unit: string;
    public Quantity: number;
    public OurUnitPrice: number;
    public OurTotal: number;
    public BenchmarkUnitPrice: number;
    public MarketTotal: number;
    public DeltaPct: number;
    public RateMin?: number;
    public RateMax?: number;
    public SampleSize?: number;
    public OutsideRange?: boolean;
    public IsFloor: boolean;
    public IsLump: boolean;
    public Severity: string;
    public Adopted: boolean;
    public Note: string;

    public constructor(init?: Partial<EstimateVarianceLine>) { (Object as any).assign(this, init); }
}

export class EstimateVarianceView
{
    public Lines: EstimateVarianceLine[] = [];
    public ItemsTotal: number;
    public ItemsBenchmarked: number;
    public CoverageValuePct: number;
    public OursTotal: number;
    public MarketTotal: number;
    public AggregateDeltaPct?: number;
    public FlooredCount: number;
    public LumpCount: number;
    public WatchCount: number;
    public OutlierCount: number;
    public CriticalCount: number;
    public Note: string;

    public constructor(init?: Partial<EstimateVarianceView>) { (Object as any).assign(this, init); }
}

export class IndicativeLine
{
    public Seq: number;
    public ItemNo: string;
    public Name: string;
    public Unit: string;
    public Quantity: number;
    public Source: string;
    public UnitPrice: number;
    public LineTotal: number;
    public PricePoint: string;

    public constructor(init?: Partial<IndicativeLine>) { (Object as any).assign(this, init); }
}

export class IndicativeBidView
{
    public Lines: IndicativeLine[] = [];
    public BottomUpCount: number;
    public BottomUpTotal: number;
    public BenchmarkCount: number;
    public BenchmarkTotal: number;
    public UncoveredCount: number;
    public UncoveredFloorTotal: number;
    public IndicativeTotal: number;
    public FloorTotal: number;
    public Note: string;
    public Posture: string;
    public AggressiveTotal: number;
    public MarketTotal: number;
    public PremiumTotal: number;
    public NoDistributionCount: number;

    public constructor(init?: Partial<IndicativeBidView>) { (Object as any).assign(this, init); }
}

export class BidExposureLine
{
    public ItemNo: string;
    public Description: string;
    public Provenance: string;
    public Extension: number;
    public CumulativePct: number;
    public Note: string;

    public constructor(init?: Partial<BidExposureLine>) { (Object as any).assign(this, init); }
}

export class BidOwnershipView
{
    public OwnTotal: number;
    public BorrowedTotal: number;
    public UnknownFloorTotal: number;
    public ScheduleTotal: number;
    public OwnCount: number;
    public BorrowedCount: number;
    public UnknownCount: number;
    public OwnPct: number;
    public TopExposure: BidExposureLine[] = [];

    public constructor(init?: Partial<BidOwnershipView>) { (Object as any).assign(this, init); }
}

export class EstimateSummaryView
{
    public Direct: number;
    public OhpPct: number;
    public OhpAmount: number;
    public BondPct: number;
    public BondAmount: number;
    public ContingencyPct: number;
    public ContingencyAmount: number;
    public BidTotal: number;
    public LoadFactor: number;
    public MarginPct: number;

    public constructor(init?: Partial<EstimateSummaryView>) { (Object as any).assign(this, init); }
}

export class EstimateTimingView
{
    public TotalWorkdays: number;
    public CalendarDays: number;
    public Finish: string;
    public Feasible: boolean;
    public Deadline?: string;

    public constructor(init?: Partial<EstimateTimingView>) { (Object as any).assign(this, init); }
}

export class EstimateReviewItemView
{
    public TaskSeq: number;
    public TaskName: string;
    public Reason: string;
    public Status: string;

    public constructor(init?: Partial<EstimateReviewItemView>) { (Object as any).assign(this, init); }
}

export class EstimatingView
{
    public RfpDocumentID: number;
    public ProjectName: string;
    public ClientName: string;
    public BidDueDate: string;
    public ProjectType: string;
    public Settings: EstimateSettingsView;
    public Jobs: EstimateJobView[] = [];
    public Schedule: BidScheduleLine[] = [];
    public ScheduleTotal: number;
    public Variance: EstimateVarianceView;
    public Indicative: IndicativeBidView;
    public Ownership: BidOwnershipView;
    public Summary: EstimateSummaryView;
    public Timing: EstimateTimingView;
    public NeedsRateCount: number;
    public NeedsRateKeys: string[] = [];
    public ReviewItems: EstimateReviewItemView[] = [];
    public NeedsReviewCount: number;
    public CanApprove: boolean;
    public CanSeePay: boolean;

    public constructor(init?: Partial<EstimatingView>) { (Object as any).assign(this, init); }
}

export class EstimateSnapshot
{
    public TakenAtUtc: string;
    public Proposal: ProjectProposal;
    public View: EstimatingView;

    public constructor(init?: Partial<EstimateSnapshot>) { (Object as any).assign(this, init); }
}

export class EstimateRevisionGetResponse
{
    public ResponseStatus: ResponseStatus;
    public Revision: EstimateRevision;
    public Snapshot: EstimateSnapshot;

    public constructor(init?: Partial<EstimateRevisionGetResponse>) { (Object as any).assign(this, init); }
}

export class EstimateRevisionGetRequest
{
    public RfpDocumentUID: string;
    public RevisionNo: number;

    public constructor(init?: Partial<EstimateRevisionGetRequest>) { (Object as any).assign(this, init); }
}

TypeScript EstimateRevisionGetRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /v1/Rfp/{RfpDocumentUID}/Estimate/Revisions/{RevisionNo} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<EstimateRevisionGetResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
    <d2p1:ErrorCode>String</d2p1:ErrorCode>
    <d2p1:Message>String</d2p1:Message>
    <d2p1:StackTrace>String</d2p1:StackTrace>
    <d2p1:Errors>
      <d2p1:ResponseError>
        <d2p1:ErrorCode>String</d2p1:ErrorCode>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:Message>String</d2p1:Message>
        <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </d2p1:Meta>
      </d2p1:ResponseError>
    </d2p1:Errors>
    <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </d2p1:Meta>
  </ResponseStatus>
  <Revision>
    <CreatedAt>0001-01-01T00:00:00</CreatedAt>
    <CreatedBy>String</CreatedBy>
    <EstimateRevisionID>0</EstimateRevisionID>
    <Label>String</Label>
    <LineCount>0</LineCount>
    <Reason>String</Reason>
    <RevisionNo>0</RevisionNo>
    <RfpDocumentID>0</RfpDocumentID>
    <SnapshotJson>String</SnapshotJson>
    <TotalAmount>0</TotalAmount>
    <Trigger>String</Trigger>
  </Revision>
  <Snapshot>
    <Proposal>
      <BidDueDate>String</BidDueDate>
      <ChangeOrderID>0</ChangeOrderID>
      <ClientName>String</ClientName>
      <ContractDurationDays>0</ContractDurationDays>
      <EstimatedEndDate>0001-01-01T00:00:00</EstimatedEndDate>
      <EstimatedStartDate>0001-01-01T00:00:00</EstimatedStartDate>
      <Mode>String</Mode>
      <PendingAddendaDiffs>
        <AddendaChangeSet>
          <ChangeSetId>String</ChangeSetId>
          <Changes>
            <AddendaChange>
              <ChangeId>String</ChangeId>
              <ChangeType>String</ChangeType>
              <Description>String</Description>
              <Field>String</Field>
              <ItemName>String</ItemName>
              <ItemNumber>String</ItemNumber>
              <NewValue>String</NewValue>
              <OldValue>String</OldValue>
              <Status>String</Status>
              <TargetSeq>0</TargetSeq>
            </AddendaChange>
          </Changes>
          <DocumentType>String</DocumentType>
          <ExtractedAtUtc>0001-01-01T00:00:00</ExtractedAtUtc>
          <SourceFileName>String</SourceFileName>
          <SourceRfpDocumentID>0</SourceRfpDocumentID>
          <Summary>String</Summary>
        </AddendaChangeSet>
      </PendingAddendaDiffs>
      <ProjectDescription>String</ProjectDescription>
      <ProjectID>0</ProjectID>
      <ProjectLocation>String</ProjectLocation>
      <ProjectName>String</ProjectName>
      <ProjectType>String</ProjectType>
      <RfpDocumentID>0</RfpDocumentID>
      <Scope>String</Scope>
      <Tasks>
        <ProposedTask>
          <Category>String</Category>
          <CreatedJobID>0</CreatedJobID>
          <DependsOn xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
            <d6p1:int>0</d6p1:int>
          </DependsOn>
          <DurationDays>0</DurationDays>
          <EstimatedEndDate>0001-01-01T00:00:00</EstimatedEndDate>
          <EstimatedStartDate>0001-01-01T00:00:00</EstimatedStartDate>
          <Name>String</Name>
          <Notes>String</Notes>
          <Quantity>0</Quantity>
          <Resourcing>
            <Equipment>
              <ResourcedEquipment>
                <DurationDays>0</DurationDays>
                <EquipmentID>0</EquipmentID>
                <EquipmentName>String</EquipmentName>
                <FixedDays>0</FixedDays>
                <IsInCatalog>false</IsInCatalog>
                <MakeModel>String</MakeModel>
                <Notes>String</Notes>
                <Quantity>0</Quantity>
                <SourceReference>String</SourceReference>
                <SuggestedEquipmentID>0</SuggestedEquipmentID>
                <SuggestedEquipmentName>String</SuggestedEquipmentName>
                <Utilization>0</Utilization>
              </ResourcedEquipment>
            </Equipment>
            <FixedDays>0</FixedDays>
            <Materials>
              <ResourcedMaterial>
                <IsInCatalog>false</IsInCatalog>
                <MakeModel>String</MakeModel>
                <MaterialID>0</MaterialID>
                <MaterialName>String</MaterialName>
                <Notes>String</Notes>
                <Quantity>0</Quantity>
                <QuantityPerUnit>0</QuantityPerUnit>
                <SourceReference>String</SourceReference>
                <SuggestedMaterialID>0</SuggestedMaterialID>
                <SuggestedMaterialName>String</SuggestedMaterialName>
                <Unit>String</Unit>
              </ResourcedMaterial>
            </Materials>
            <Positions>
              <ResourcedPosition>
                <ContactID>0</ContactID>
                <CrewSize>0</CrewSize>
                <FixedDays>0</FixedDays>
                <Headcount>0</Headcount>
                <Hours>0</Hours>
                <IsInCatalog>false</IsInCatalog>
                <Notes>String</Notes>
                <PositionTag>String</PositionTag>
                <SourceReference>String</SourceReference>
                <Utilization>0</Utilization>
              </ResourcedPosition>
            </Positions>
            <ProductionRatePerDay>0</ProductionRatePerDay>
            <ResourcedForQuantity>0</ResourcedForQuantity>
          </Resourcing>
          <Seq>0</Seq>
          <SourceItemNumber>String</SourceItemNumber>
          <SourceReference>String</SourceReference>
          <Unit>String</Unit>
          <WorkPackage>
            <Confidence>0</Confidence>
            <Constraints xmlns:d7p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
              <d7p1:string>String</d7p1:string>
            </Constraints>
            <DefinitionOfDone xmlns:d7p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
              <d7p1:string>String</d7p1:string>
            </DefinitionOfDone>
            <DodChecked xmlns:d7p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
              <d7p1:string>String</d7p1:string>
            </DodChecked>
            <DodExtra xmlns:d7p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
              <d7p1:string>String</d7p1:string>
            </DodExtra>
            <DodRemoved xmlns:d7p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
              <d7p1:int>0</d7p1:int>
            </DodRemoved>
            <HoldPoints xmlns:d7p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
              <d7p1:string>String</d7p1:string>
            </HoldPoints>
            <LimitsOfWork>String</LimitsOfWork>
            <RedraftNote>String</RedraftNote>
            <RfpRef>String</RfpRef>
            <SafetyNote>String</SafetyNote>
            <Scope>String</Scope>
            <SpecBook>String</SpecBook>
            <SpecRefs>
              <WorkPackageSpecRef>
                <Section>String</Section>
                <Title>String</Title>
              </WorkPackageSpecRef>
            </SpecRefs>
            <UserEdited>false</UserEdited>
            <UserScope>String</UserScope>
          </WorkPackage>
        </ProposedTask>
      </Tasks>
      <WageDeterminations>
        <WageDeterminationResult>
          <Classifications>
            <WageClassification>
              <BaseRate>0</BaseRate>
              <BenchmarkFringeRate>0</BenchmarkFringeRate>
              <FringeCompareNote>String</FringeCompareNote>
              <FringeRate>0</FringeRate>
              <ParishNote>String</ParishNote>
              <SourceLine>String</SourceLine>
              <Title>String</Title>
            </WageClassification>
          </Classifications>
          <ExecutiveOrderFloor>0</ExecutiveOrderFloor>
          <ExtractedAtUtc>0001-01-01T00:00:00</ExtractedAtUtc>
          <IsTrustworthy>false</IsTrustworthy>
          <ProjectParish>String</ProjectParish>
          <PublishedDate>String</PublishedDate>
          <Source>String</Source>
          <SourceFileName>String</SourceFileName>
          <SourceRfpDocumentID>0</SourceRfpDocumentID>
          <Warnings xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
            <d6p1:string>String</d6p1:string>
          </Warnings>
          <WdNumber>String</WdNumber>
        </WageDeterminationResult>
      </WageDeterminations>
    </Proposal>
    <TakenAtUtc>0001-01-01T00:00:00</TakenAtUtc>
    <View>
      <BidDueDate>String</BidDueDate>
      <CanApprove>false</CanApprove>
      <CanSeePay>false</CanSeePay>
      <ClientName>String</ClientName>
      <Indicative>
        <AggressiveTotal>0</AggressiveTotal>
        <BenchmarkCount>0</BenchmarkCount>
        <BenchmarkTotal>0</BenchmarkTotal>
        <BottomUpCount>0</BottomUpCount>
        <BottomUpTotal>0</BottomUpTotal>
        <FloorTotal>0</FloorTotal>
        <IndicativeTotal>0</IndicativeTotal>
        <Lines>
          <IndicativeLine>
            <ItemNo>String</ItemNo>
            <LineTotal>0</LineTotal>
            <Name>String</Name>
            <PricePoint>String</PricePoint>
            <Quantity>0</Quantity>
            <Seq>0</Seq>
            <Source>String</Source>
            <Unit>String</Unit>
            <UnitPrice>0</UnitPrice>
          </IndicativeLine>
        </Lines>
        <MarketTotal>0</MarketTotal>
        <NoDistributionCount>0</NoDistributionCount>
        <Note>String</Note>
        <Posture>String</Posture>
        <PremiumTotal>0</PremiumTotal>
        <UncoveredCount>0</UncoveredCount>
        <UncoveredFloorTotal>0</UncoveredFloorTotal>
      </Indicative>
      <Jobs>
        <EstimateJobView>
          <BenchmarkUnitPrice>0</BenchmarkUnitPrice>
          <Category>String</Category>
          <Crew>
            <EstimateCrewLineView>
              <Chip>String</Chip>
              <Cost>0</Cost>
              <FringeCost>0</FringeCost>
              <HasOt>false</HasOt>
              <Hours>0</Hours>
              <NeedsRate>false</NeedsRate>
              <OtCost>0</OtCost>
              <OtHours>0</OtHours>
              <PremiumApplied>false</PremiumApplied>
              <RateKey>String</RateKey>
              <Role>String</Role>
              <Rrop>0</Rrop>
              <StCost>0</StCost>
              <StHours>0</StHours>
            </EstimateCrewLineView>
          </Crew>
          <CrewCost>0</CrewCost>
          <CrewPremiumApplied>false</CrewPremiumApplied>
          <Days>0</Days>
          <Direct>0</Direct>
          <EffectiveProdPerDay>0</EffectiveProdPerDay>
          <Equipment>
            <EstimateEquipmentLineView>
              <AvailabilityLabel>String</AvailabilityLabel>
              <AvailableFrom>0001-01-01T00:00:00</AvailableFrom>
              <BilledDays>0</BilledDays>
              <Chip>String</Chip>
              <Cost>0</Cost>
              <FreedFromProject>String</FreedFromProject>
              <IsAvailabilityTracked>false</IsAvailabilityTracked>
              <IsOwned>false</IsOwned>
              <MobCost>0</MobCost>
              <Name>String</Name>
              <NeedsRate>false</NeedsRate>
              <Quantity>0</Quantity>
              <Rate>0</Rate>
              <RateKey>String</RateKey>
              <RentalExplain>String</RentalExplain>
              <UsageDays>0</UsageDays>
            </EstimateEquipmentLineView>
          </Equipment>
          <EquipmentCost>0</EquipmentCost>
          <FringeCost>0</FringeCost>
          <HoursPerDay>0</HoursPerDay>
          <IsNight>false</IsNight>
          <ItemNo>String</ItemNo>
          <MaterialCost>0</MaterialCost>
          <Materials>
            <EstimateMaterialLineView>
              <Chip>String</Chip>
              <Cost>0</Cost>
              <Name>String</Name>
              <NeedsRate>false</NeedsRate>
              <Quantity>0</Quantity>
              <Rate>0</Rate>
              <RateKey>String</RateKey>
              <Unit>String</Unit>
            </EstimateMaterialLineView>
          </Materials>
          <Name>String</Name>
          <OtFraction>0</OtFraction>
          <PatternCode>String</PatternCode>
          <PricingBandLabel>String</PricingBandLabel>
          <PricingBandN>0</PricingBandN>
          <PricingBandP25>0</PricingBandP25>
          <PricingBandP75>0</PricingBandP75>
          <PricingBasis>String</PricingBasis>
          <PricingRuleId>String</PricingRuleId>
          <Quantity>0</Quantity>
          <ReferenceBasis>String</ReferenceBasis>
          <ReferenceDate>0001-01-01T00:00:00</ReferenceDate>
          <ReferenceN>0</ReferenceN>
          <ReferencePrice>0</ReferencePrice>
          <ReferenceRangeMax>0</ReferenceRangeMax>
          <ReferenceRangeMin>0</ReferenceRangeMin>
          <ReferenceUrl>String</ReferenceUrl>
          <Seq>0</Seq>
          <SourceRef>String</SourceRef>
          <SubcontractCost>0</SubcontractCost>
          <Subcontracts>
            <EstimateSubcontractView>
              <Amount>0</Amount>
              <EstimateSubcontractID>0</EstimateSubcontractID>
              <Scope>String</Scope>
              <TaskSeq>0</TaskSeq>
              <Vendor>String</Vendor>
            </EstimateSubcontractView>
          </Subcontracts>
          <Unit>String</Unit>
          <WeeklyHours>0</WeeklyHours>
          <WorkPackage>
            <Constraints xmlns:d7p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
              <d7p1:string>String</d7p1:string>
            </Constraints>
            <Dod>
              <RfpWorkPackageService.DodItemView>
                <Checked>false</Checked>
                <Key>String</Key>
                <Source>String</Source>
                <Text>String</Text>
              </RfpWorkPackageService.DodItemView>
            </Dod>
            <HasPackage>false</HasPackage>
            <HoldPoints xmlns:d7p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
              <d7p1:string>String</d7p1:string>
            </HoldPoints>
            <LimitsOfWork>String</LimitsOfWork>
            <Provenance>String</Provenance>
            <RedraftNote>String</RedraftNote>
            <SafetyNote>String</SafetyNote>
            <Scope>String</Scope>
            <SpecBook>String</SpecBook>
            <SpecRefs>
              <RfpWorkPackageService.SpecRefView>
                <Section>String</Section>
                <Title>String</Title>
                <Url>String</Url>
              </RfpWorkPackageService.SpecRefView>
            </SpecRefs>
            <UserEdited>false</UserEdited>
          </WorkPackage>
          <Workdays>0</Workdays>
        </EstimateJobView>
      </Jobs>
      <NeedsRateCount>0</NeedsRateCount>
      <NeedsRateKeys xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </NeedsRateKeys>
      <NeedsReviewCount>0</NeedsReviewCount>
      <Ownership>
        <BorrowedCount>0</BorrowedCount>
        <BorrowedTotal>0</BorrowedTotal>
        <OwnCount>0</OwnCount>
        <OwnPct>0</OwnPct>
        <OwnTotal>0</OwnTotal>
        <ScheduleTotal>0</ScheduleTotal>
        <TopExposure>
          <BidExposureLine>
            <CumulativePct>0</CumulativePct>
            <Description>String</Description>
            <Extension>0</Extension>
            <ItemNo>String</ItemNo>
            <Note>String</Note>
            <Provenance>String</Provenance>
          </BidExposureLine>
        </TopExposure>
        <UnknownCount>0</UnknownCount>
        <UnknownFloorTotal>0</UnknownFloorTotal>
      </Ownership>
      <ProjectName>String</ProjectName>
      <ProjectType>String</ProjectType>
      <ReviewItems>
        <EstimateReviewItemView>
          <Reason>String</Reason>
          <Status>String</Status>
          <TaskName>String</TaskName>
          <TaskSeq>0</TaskSeq>
        </EstimateReviewItemView>
      </ReviewItems>
      <RfpDocumentID>0</RfpDocumentID>
      <Schedule>
        <BidScheduleLine>
          <BenchmarkBasis>String</BenchmarkBasis>
          <BenchmarkDeltaPct>0</BenchmarkDeltaPct>
          <BenchmarkFlagged>false</BenchmarkFlagged>
          <Description>String</Description>
          <Extension>0</Extension>
          <ItemNo>String</ItemNo>
          <PricingBandLabel>String</PricingBandLabel>
          <PricingBandN>0</PricingBandN>
          <PricingBandP25>0</PricingBandP25>
          <PricingBandP75>0</PricingBandP75>
          <PricingBasis>String</PricingBasis>
          <PricingRuleId>String</PricingRuleId>
          <Provenance>String</Provenance>
          <ProvenanceNote>String</ProvenanceNote>
          <Quantity>0</Quantity>
          <TotalResources>0</TotalResources>
          <Unit>String</Unit>
          <UnitPrice>0</UnitPrice>
          <UnpricedResources>0</UnpricedResources>
        </BidScheduleLine>
      </Schedule>
      <ScheduleTotal>0</ScheduleTotal>
      <Settings>
        <AppliedStartDate>0001-01-01T00:00:00</AppliedStartDate>
        <BondPct>0</BondPct>
        <ContingencyPct>0</ContingencyPct>
        <DeadlineDate>0001-01-01T00:00:00</DeadlineDate>
        <Holidays xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:dateTime>0001-01-01T00:00:00</d5p1:dateTime>
        </Holidays>
        <HoursPerDay>0</HoursPerDay>
        <OhpPct>0</OhpPct>
        <RfpEstimateID>0</RfpEstimateID>
        <StartDate>0001-01-01T00:00:00</StartDate>
        <WeatherPct>0</WeatherPct>
        <WorkdaysPerWeek>0</WorkdaysPerWeek>
      </Settings>
      <Summary>
        <BidTotal>0</BidTotal>
        <BondAmount>0</BondAmount>
        <BondPct>0</BondPct>
        <ContingencyAmount>0</ContingencyAmount>
        <ContingencyPct>0</ContingencyPct>
        <Direct>0</Direct>
        <LoadFactor>0</LoadFactor>
        <MarginPct>0</MarginPct>
        <OhpAmount>0</OhpAmount>
        <OhpPct>0</OhpPct>
      </Summary>
      <Timing>
        <CalendarDays>0</CalendarDays>
        <Deadline>0001-01-01T00:00:00</Deadline>
        <Feasible>false</Feasible>
        <Finish>0001-01-01T00:00:00</Finish>
        <TotalWorkdays>0</TotalWorkdays>
      </Timing>
      <Variance>
        <AggregateDeltaPct>0</AggregateDeltaPct>
        <CoverageValuePct>0</CoverageValuePct>
        <CriticalCount>0</CriticalCount>
        <FlooredCount>0</FlooredCount>
        <ItemsBenchmarked>0</ItemsBenchmarked>
        <ItemsTotal>0</ItemsTotal>
        <Lines>
          <EstimateVarianceLine>
            <Adopted>false</Adopted>
            <BenchmarkUnitPrice>0</BenchmarkUnitPrice>
            <DeltaPct>0</DeltaPct>
            <IsFloor>false</IsFloor>
            <IsLump>false</IsLump>
            <ItemNo>String</ItemNo>
            <MarketTotal>0</MarketTotal>
            <Name>String</Name>
            <Note>String</Note>
            <OurTotal>0</OurTotal>
            <OurUnitPrice>0</OurUnitPrice>
            <OutsideRange>false</OutsideRange>
            <Quantity>0</Quantity>
            <RateMax>0</RateMax>
            <RateMin>0</RateMin>
            <SampleSize>0</SampleSize>
            <Seq>0</Seq>
            <Severity>String</Severity>
            <Unit>String</Unit>
          </EstimateVarianceLine>
        </Lines>
        <LumpCount>0</LumpCount>
        <MarketTotal>0</MarketTotal>
        <Note>String</Note>
        <OursTotal>0</OursTotal>
        <OutlierCount>0</OutlierCount>
        <WatchCount>0</WatchCount>
      </Variance>
    </View>
  </Snapshot>
</EstimateRevisionGetResponse>