TotalApp Docs

Site Materials

From the truck at the gate to the batch consumed on a task — receiving bulk construction materials, holding them as gate inventory, and issuing them against crew requisitions.

What this group does

Bulk materials — ready-mix concrete, rebar steel, aggregates, precast blocks — enter a jobsite through the gate, sit as tracked stock batches, and are drawn down as crews consume them against tasks or milestones. This is the most fully wired of the three Construction groups shipped this session: every hand-off below is a genuine read-modify-write between the underlying stores, not a UI-only status change.

Material Deliveries
Stock at Gate
Consumption Requests

All three screens share their record types and cross-screen logic, and Consumption Requests can target the same Subcontractor Tasks and Project Milestones tracked in Site Execution.

1. Material Deliveries

Purpose: Intake a truck at the gate — record the waybill, weighbridge weight against the ordered quantity, and a quality sample check — then receive the load into gate inventory and log the receipt on the day's site record.

Key features

  • Four-type material taxonomyready_mix_concrete / rebar_steel / aggregates / precast_blocks, tracked in tons, m3, or units.
  • Weighbridge variance — each delivery records both orderedQuantity (from the linked purchase order) and the actual weighbridgeWeight reading, so gate staff can spot a short or over-delivered load before it's received.
  • Five-state gate statusen_routeat_gateinspection_passed / rejectedunloaded, with a free-text qualitySampleNotes field for the inspection.
  • Vendor and PO directory — the supplier list is derived from suppliers already on record (no separate master-data screen yet), and the linked purchase order auto-populates the ordered quantity for the variance check.

Integration triggers

ActionWhat it does
Receive into Gate InventoryAdds the delivered quantity onto a gate stock line keyed by jobsite + material type + unit (creating it if it doesn't exist), and links the delivery to that stock line. Rejected if the quantity is not positive.
Sync Delivery to Daily Site LogFinds (or creates) that day's Daily Site Log for the delivery's jobsite and appends a one-line material-receipt note (delivery code, quantity, unit, material type, supplier); marks the delivery as synced so it's not double-logged.

2. Stock at Gate

Purpose: The batch-level inventory ledger for everything received through the gate — on-hand and reserved quantities per storage zone, certificate/expiry status, and the audit trail of adjustments and zone transfers applied to each batch.

Key features

  • Batch-level tracking — each SiteStockRecord carries a batchCode, material catalog code, storage zone label, quantityOnHand, reservedQuantity, reorderPoint, and a certStatus (valid / expiring_soon / expired / not_applicable).
  • Three adjustment typesaudit_correction, wastage_spillage, and zone_transfer, each logged as a SiteStockAdjustment entry.
  • Zone-transfer double-entry — a zone_transfer adjustment debits quantityDelta from the source batch and credits the same absolute amount to destinationStockId, so material moved between zones stays reconciled across both records.
  • Auto-Reorder Procurement Trigger — automatically raises a draft requisition once a batch's stock drops toward its reorder point, requesting the shortfall (or the full reorder point if on-hand is already at zero) and linking the resulting draft purchase order to the batch.

Integration triggers

ActionWhat it does
Apply Stock AdjustmentWrites a new stock adjustment entry, updates the on-hand quantity on the source batch (floored at zero), and for a zone_transfer, credits the destination batch by the same quantity if it exists.
Auto-Reorder TriggerRaises a draft requisition entry and links it to the batch — the same draft queue Material Deliveries' purchase-order picker is intended to fulfill once ordered.
Check Stock Availability (read-only)Sums on-hand quantity minus reserved quantity across every batch matching a material code, and is what Consumption Requests checks live as a crew requisition is being filled in.

3. Consumption Requests

Purpose: The crew-facing requisition screen — request material against a task or milestone, check it can be covered before submitting, issue it against a specific gate-stock batch, and link the resulting usage back to the target's progress notes.

Key features

  • Task or milestone targeting — a target-kind selector (task / milestone / none) drives which picker shows, populated from the Site Execution group's Subcontractor Tasks and Project Milestones.
  • Live availability check — as the material or requested quantity changes, the availability check runs immediately and shows an inline warning (with an alert icon) if the requested amount exceeds what's available.
  • Usage-variance meter — compares the issued quantity against a bill-of-quantities budgeted quantity for the target task, turning red once issued volume exceeds the budgeted estimate.
  • Issue & Dispatch modal — picks a specific eligible stock batch (filtered to the requisition's material code, showing each batch's available quantity inline), the quantity to issue, an issuing signature, and the pickup crew code.
  • Five-state status pipelinedraftapprovedpartially_issued / issued, or rejected; status advances automatically to issued once the issued quantity reaches the requested quantity, or partially_issued otherwise.
  • Three requisition originsfield_construction, maintenance_spare_parts, subcontractor_request, distinguishing why the material is being pulled.

Integration triggers

ActionWhat it does
Issue & Deduct Gate StockValidates the issue quantity against the chosen batch's available balance (rejected as insufficient stock if it doesn't cover it), deducts it from that Stock at Gate batch, and advances the requisition's issued quantity, status, and linked stock batch accordingly.
Link Consumption to Task ProgressAppends a consumption-summary line (requisition code, quantity, material) to the notes of the linked Subcontractor Task and/or Project Milestone in Site Execution, then marks the requisition as linked so the action can't be repeated.

End-to-end data flow

Source screenActionTarget screen / record
Material DeliveriesReceive into Gate InventoryGate stock line quantity increased → Stock at Gate
Material DeliveriesSync Delivery to Daily Site LogReceipt note appended → that jobsite's Daily Site Log (Site Execution)
Stock at GateApply Stock Adjustment (zone_transfer)Source batch debited, destination batch credited — both remain Stock at Gate records
Stock at GateAuto-Reorder TriggerDraft requisition raised and linked to the batch, for Material Deliveries to fulfill
Consumption RequestsIssue & Deduct Gate StockBatch on-hand quantity reduced → Stock at Gate
Consumption RequestsLink Consumption to Task ProgressConsumption note appended → target Subcontractor Task / Project Milestone (Site Execution)

AI Assistant on every screen in this group

Material Deliveries, Stock at Gate, and Consumption Requests each carry an embedded AI Assistant — the same right-edge panel used across TotalApp, opened from the vertical AI Assistant tab. Every panel reads the live rows on screen (or your current selection), can summarize stock levels and weight variances, flag batches below their reorder point or over-budget requisitions, and answer natural-language questions in Markdown (Turkish or English), and ships with Save as Report and Add Knowledge.

Frequently Asked Questions

Do all three screens in this group have an AI Assistant?
Yes — Material Deliveries, Stock at Gate, and Consumption Requests each ship with an embedded AI Assistant (selection-aware on Material Deliveries and Consumption Requests; view-scoped on Stock at Gate, with Save as Report and Add Knowledge on all three). Open it from the right-edge AI Assistant tab on any of the three screens.
Can I receive a delivery into gate inventory with a zero or negative quantity?
No. Receiving into gate inventory rejects the entry with a validation error if the quantity is not greater than zero, so the receipt is rejected before any stock line is touched.
What happens if I try to issue more material than a batch actually has available?
Issuing compares the requested issue quantity against the on-hand quantity minus reserved quantity for the chosen batch and rejects the issue as insufficient stock rather than allowing the batch to go negative — the Issue & Dispatch modal surfaces this as an inline error message.
Does a zone transfer between two stock batches create a new record?
No, it moves quantity between two existing batches. Applying the adjustment requires the destination to already reference a real stock record — if it doesn't exist, the destination side of the transfer is silently skipped and only the source batch is debited.
Can a Consumption Request be issued partially, more than once?
Yes. Each Issue & Deduct Gate Stock action adds to the issued quantity rather than replacing it, and the status is recalculated as issued once the cumulative issued quantity reaches the requested quantity, or stays partially_issued otherwise — so a requisition can be fulfilled across multiple batches or multiple gate visits.
What does "Link Consumption to Task Progress" actually change on the target task?
It appends a one-line consumption summary to the target Subcontractor Task's (and/or Project Milestone's) free-text notes — a Subcontractor Task has no dedicated cost field, so this is the mechanism used to keep actual material usage visible alongside a task's progress in Site Execution.
Where does the vendor list on Material Deliveries come from?
It's derived from suppliers already recorded on existing deliveries (deduplicated by supplier ID) rather than a separate master-data screen — there is no standalone vendor directory for this add-on yet.