G Gaia

Switch factory

CYTO-11 — Balakong Jaya CTSB CYTO-29 CTSB CYTOWELL-54 — Taming Jaya PIC/S CTWSB CYTOCNGZ-602 — Guangzhou CTCNGZ

Only factories you are granted appear here (Filament tenant menu).

Leo Lim

leo@navi.my · Owner / Admin

Profile settings Change password

Theme

Sign out
RetailSellR&DMakeBuyStockPlanItemsGMPAdminInsights

Stocktakes

Stocktake # Stocktake reason 1 ▼ Created date 2 ▼ Completed date Stock adjustment # Status
Showing 1–18 of 23 (sample rows from Katana snapshot)

Project Gaia — static mockup in Filament v3 table idiom. No backend. Sample data: Katana tenant snapshot 2026-04-12.

Stocktakes — field manifest

FieldFilament componentTypeSourceFK target
(row selector)Checkbox column (BulkAction plumbing)uiUI-only; bulk-action bar not visible in capture
Stocktake #TextColumn::searchable(isIndividual)->url()string doc numberstored: auto-numbered 'STK-' prefix; sequence has gaps (15, 21, 30, 33, 36 … 63)stocktakes.id
Stocktake reasonTextColumn::searchable(isIndividual)->limit()string, nullablestored free text, optional (blank on STK-59); users encode room/category + month; 'Amend STK-15' shows amendment-by-new-stocktake
Created dateTextColumn::date()->sortable() (priority 1 DESC)datestored: document creation date
Completed dateTextColumn::date()->sortable() (priority 2 DESC)date, nullablestored: set on completion; blank for 'Not started'; can lag Created by up to 8 days (count spans days)
Stock adjustment #TextColumn::url() (linkage column)string via FK, nullablederived: adjustment auto-generated when the stocktake completes; empty until completionstock_adjustments.id
StatusTextColumn::badge() — green Completed / gray Not started (Katana shows inline dropdown caret → SelectColumn candidate)enumstored: values seen Completed, Not started; an in-progress state presumably exists between them
Location scopeSelectFilter ('All locations', toolbar-level)FK filterstocktakes are per-location documentslocations.id
(column menu ⋮)— (dropped: Filament toggle-columns icon covers it)uiheader-only column chooser control in Katana
ScopeSelect (new-stocktake form) → conditional category chips / item chipsenum (location|category|items)generation-time option — decides which balances become counting lines; not stored on lines
Blind countToggle (new-stocktake form)bool (default true)generation-time option — hides system qty on the printed counting sheet (GMP good practice)
Include zero-stock batchesToggle (new-stocktake form)bool (default false)generation-time option — whether empty batches/lots also get a counting line; not stored on lines

Engine notes

  • Completing a stocktake auto-generates a linked Stock adjustment (SA-###): every Completed row has a Stock adjustment # link, the sole Not started row (STK-59) has none — the stocktake is the counting workflow, the stock adjustment is the resulting inventory transaction.
  • Stock adjustment numbers draw from the same SA- sequence as the Stock adjustments module and reflect when the adjustment was created, not stocktake order (STK-15 → SA-229 vs earlier-numbered STK-33 → SA-221; STK-33's reason "Amend STK-15" shows a stocktake can be amended via a new stocktake).
  • Completed date ≥ Created date; identical on same-day counts, up to 8 days later on others (STK-63: created 2026-03-17, completed 2026-03-25).
  • Record count label reads "23 orders" — Katana reuses generic "orders" terminology for stocktake documents.
  • Default multi-sort: Created date desc (1), Completed date desc (2), shown as numbered sort badges in headers.
  • Location scoping via toolbar "All locations" — stocktakes are per-location documents.
  • Units rule: counted quantities are captured in each item's stock UoM (base unit mg / ml / pcs) — the unit rides on the item (admin-locked units table, never typed) and the variance adjustment posts in the same base unit; conversion factors are hard-coded.
  • New-stocktake form: Scope (location|category|items), Blind count and Include zero-stock batches are generation-time options — they shape which balances become counting lines and how the sheet prints; none are stored on the resulting lines. The Selected-items scope is prefilled when reached from the Inventory bulk "Stocktake" action (stocktakes.html#new).

Stocktake

Not saved

Editable — next STK- sequence suggested (sequence has gaps).

Counting can span days — Completed date is set separately (STK-63 took 8 days).

Free text, optional; tenant convention encodes room/category + month.

Stocktakes are per-location documents.

Prefilled from Inventory selection (2 items)

Hides system qty on the printed counting sheet (GMP good practice).

Counting lines are generated one per batch / lot for batch-tracked items; untracked items get one line. Completing the stocktake auto-creates a stock adjustment (next SA number) with this STK # as its reason.