diff --git a/.changeset/pipeline-kanban-column-total-and-sales-nav-names.md b/.changeset/pipeline-kanban-column-total-and-sales-nav-names.md new file mode 100644 index 00000000..14a06a7d --- /dev/null +++ b/.changeset/pipeline-kanban-column-total-and-sales-nav-names.md @@ -0,0 +1,36 @@ +--- +'hotcrm': patch +--- + +Write the pipeline board's column total to what a kanban can actually show, and +name the two non-object Sales sidebar entries the app really ships. + +**A kanban column carries one total, and it is unweighted.** +`content/docs/sales/pipeline-management.mdx` (and both zh pages) told a rep that +the top of every board column shows two numbers — an unweighted total and a +weighted one. A board cannot show two: `KanbanConfigSchema` in +`@objectstack/spec` declares `summarizeField` as a single optional string +("Field to sum at top of column"), so one column total is the shape of the +feature, and `pipeline_kanban` in `src/views/opportunity.view.ts` binds that one +field to `amount`. The weighted half of the promise therefore never existed, and +a rep looking for it on the board read the unweighted sum of Amount as though +the probability coefficient were already in it — the same class of error the +page's *How expected revenue is calculated* section was just corrected for, one +screen higher. The page now states the single column total for what it is and +sends the weighted forecast to where it genuinely lives: the *Expected Revenue* +column sums on **Open Deals** and **All Opportunities**. + +**Two Sales sidebar entries were named by names the sidebar does not carry.** +`content/docs/sales/index.mdx` listed *Sales Pipeline* and *Sales Dashboard* +under "Where to find things" — a section whose whole job is to say what a reader +will see in the nav. `src/apps/crm.app.ts` labels those two entries **Pipeline** +and **Sales Performance**. *Sales Pipeline* is real, but it is the label of the +kanban *view* (`pipeline_kanban`), not of the sidebar entry that opens it; +*Sales Dashboard* is neither, and is the same phantom already removed from the +pipeline page's roll-up list and its forecast paragraph. Both bullets now carry +the nav label, with the view's own label named beside it, the way +`content/docs/sales/opportunities.mdx` already describes the pair. The third +occurrence of the same mix-up — the pipeline page's "sidebar shortcut **Sales +Pipeline**" — now names the view and the sidebar entry separately too. + +Docs only, all three locales — no `src/` change. diff --git a/content/docs/sales/index.mdx b/content/docs/sales/index.mdx index e1448abe..6ec00bf4 100644 --- a/content/docs/sales/index.mdx +++ b/content/docs/sales/index.mdx @@ -60,8 +60,8 @@ Just type into the chat: *"qualify this lead"*, *"draft a follow-up email"*, *"w The **Enterprise CRM app** sidebar groups everything under **Sales**: - Leads · Accounts · Contacts · Opportunities · Quotes · Contracts -- **Sales Pipeline** — the kanban board view of opportunities -- **Sales Dashboard** — your daily KPIs +- **Pipeline** — the kanban board view of opportunities. That is the sidebar label; the view it opens carries its own label, **Sales Pipeline** (`pipeline_kanban`). +- **Sales Performance** — your daily KPIs, from the `sales_dashboard` dashboard. No sidebar item is called *Sales Dashboard*. ## Start here diff --git a/content/docs/sales/index.zh-Hans.mdx b/content/docs/sales/index.zh-Hans.mdx index 8294ef61..36d696c4 100644 --- a/content/docs/sales/index.zh-Hans.mdx +++ b/content/docs/sales/index.zh-Hans.mdx @@ -60,8 +60,8 @@ Lead ──► Account + Contact ──► Opportunity ──► Quote **Enterprise CRM 应用**的侧边栏将所有内容归到**销售**之下: - 线索 · 客户 · 联系人 · 商机 · 报价 · 合同 -- **销售管道**——商机的看板视图 -- **销售仪表盘**——你的每日 KPI +- **销售管道**(Pipeline)——商机的看板视图。侧边栏上的 label 就是这个;它打开的那个视图自身的 label 是**销售流水线**(Sales Pipeline,`pipeline_kanban`)。 +- **销售业绩**(Sales Performance)——你的每日 KPI,来自 `sales_dashboard` 仪表盘。没有任何侧边栏条目叫 *销售仪表盘* / *Sales Dashboard*。 ## 从这里开始 diff --git a/content/docs/sales/index.zh-Hant.mdx b/content/docs/sales/index.zh-Hant.mdx index 837a3617..85f37d26 100644 --- a/content/docs/sales/index.zh-Hant.mdx +++ b/content/docs/sales/index.zh-Hant.mdx @@ -60,8 +60,8 @@ Lead ──► Account + Contact ──► Opportunity ──► Quote **Enterprise CRM 應用**的側邊欄將所有內容歸到**銷售**之下: - 潛在客戶 · 客戶 · 聯絡人 · 商機 · 報價 · 合約 -- **銷售管道**——商機的看板視圖 -- **銷售儀表板**——你的每日 KPI +- **銷售管道**(Pipeline)——商機的看板視圖。側邊欄上的 label 就是這個;它打開的那個視圖自身的 label 是**銷售流水線**(Sales Pipeline,`pipeline_kanban`)。 +- **銷售業績**(Sales Performance)——你的每日 KPI,來自 `sales_dashboard` 儀表板。沒有任何側邊欄條目叫 *銷售儀表板* / *Sales Dashboard*。 ## 從這裡開始 diff --git a/content/docs/sales/pipeline-management.mdx b/content/docs/sales/pipeline-management.mdx index 5d733274..96b4ae1e 100644 --- a/content/docs/sales/pipeline-management.mdx +++ b/content/docs/sales/pipeline-management.mdx @@ -37,7 +37,7 @@ No dashboard can give you the same figure. The **Sales Performance** dashboard ( ## The pipeline kanban view -The **Pipeline Kanban** (sidebar shortcut **Sales Pipeline**) shows the pipeline as 7 columns — one per stage. Each card shows: +The kanban board is the **Sales Pipeline** view on Opportunities (`pipeline_kanban`), and the sidebar entry that opens it reads **Pipeline**. It shows the pipeline as 7 columns — one per stage. Each card shows: - Opportunity name - Account @@ -47,10 +47,9 @@ The **Pipeline Kanban** (sidebar shortcut **Sales Pipeline**) shows the pipeline To advance a deal, just **drag the card** to the next column. The system enforces the stage rules, so you can't drag from *Prospecting* directly to *Closed Won*. -At the top of each column you'll see two numbers: +At the top of each column you'll see **one** number: the sum of *Amount* across that column's deals — the unweighted total for that stage. One is all a kanban column can carry, by design: a board declares a single `summarizeField` (`src/views/opportunity.view.ts`), and this board binds it to `amount`. -- The **unweighted total** (sum of amount) -- The **weighted total** (sum of expected revenue) +The board has no weighted total. As *How expected revenue is calculated* says above, the weighted forecast is a list-view total: the *Expected Revenue* column sum on **Open Deals** and **All Opportunities**. ## Pipeline health signals diff --git a/content/docs/sales/pipeline-management.zh-Hans.mdx b/content/docs/sales/pipeline-management.zh-Hans.mdx index 4d87870f..0a19bf67 100644 --- a/content/docs/sales/pipeline-management.zh-Hans.mdx +++ b/content/docs/sales/pipeline-management.zh-Hans.mdx @@ -37,7 +37,7 @@ description: 销售管道的日常运作方式——推进交易、自动概率 ## 销售管道看板视图 -**销售管道看板**(侧边栏快捷方式**销售管道**)将销售管道显示为 7 列——每个阶段一列。每张卡片显示: +这块看板是商机上的**销售流水线**视图(`pipeline_kanban`),侧边栏上打开它的那个条目写作**销售管道**。它将销售管道显示为 7 列——每个阶段一列。每张卡片显示: - 商机名称 - 客户 @@ -47,10 +47,9 @@ description: 销售管道的日常运作方式——推进交易、自动概率 要推进一笔交易,只需**拖动卡片**到下一列。系统会强制执行阶段规则,因此你无法从*寻找客户*直接拖到*成交*。 -在每列顶部,你会看到两个数字: +在每列顶部你会看到**一个**数字:该列所有交易的*金额*之和,也就是这个阶段的未加权合计。看板每列只能有这一个数,这是设计使然:一块看板只声明一个 `summarizeField`(`src/views/opportunity.view.ts`),而这块板把它绑到了 `amount`。 -- **未加权合计**(金额之和) -- **加权合计**(预期营收之和) +看板上没有加权合计。如上面《预期营收是如何计算的》一节所述,加权预测是列表视图上的合计:**进行中商机**与**全部商机**两个视图的*预期营收*列合计。 ## 销售管道健康信号 diff --git a/content/docs/sales/pipeline-management.zh-Hant.mdx b/content/docs/sales/pipeline-management.zh-Hant.mdx index 72537dc9..916954bc 100644 --- a/content/docs/sales/pipeline-management.zh-Hant.mdx +++ b/content/docs/sales/pipeline-management.zh-Hant.mdx @@ -37,7 +37,7 @@ description: 銷售管道的日常運作方式——推進交易、自動機率 ## 銷售管道看板視圖 -**銷售管道看板**(側邊欄快捷方式**銷售管道**)將銷售管道顯示為 7 列——每個階段一列。每張卡片顯示: +這塊看板是商機上的**銷售流水線**視圖(`pipeline_kanban`),側邊欄上打開它的那個條目寫作**銷售管道**。它將銷售管道顯示為 7 列——每個階段一列。每張卡片顯示: - 商機名稱 - 客戶 @@ -47,10 +47,9 @@ description: 銷售管道的日常運作方式——推進交易、自動機率 要推進一筆交易,只需**拖動卡片**到下一列。系統會強制執行階段規則,因此你無法從*尋找客戶*直接拖到*成交*。 -在每列頂部,你會看到兩個數字: +在每列頂部你會看到**一個**數字:該列所有交易的*金額*之和,也就是這個階段的未加權合計。看板每列只能有這一個數,這是設計使然:一塊看板只宣告一個 `summarizeField`(`src/views/opportunity.view.ts`),而這塊板把它綁到了 `amount`。 -- **未加權合計**(金額之和) -- **加權合計**(預期營收之和) +看板上沒有加權合計。如上面《預期營收是如何計算的》一節所述,加權預測是清單檢視上的合計:**進行中商機**與**全部商機**兩個檢視的*預期營收*欄合計。 ## 銷售管道健康訊號